Add latest ncurses version 5.7 for use with gdb.
/trunk/config/debug/gdb.in | 5 5 0 0 +++++
1 file changed, 5 insertions(+)
1 # ===========================================================================
2 # crosstool-NG genererated config files
3 # These targets are used from top-level makefile
5 #-----------------------------------------------------------
6 # List all config files, wether sourced or generated
8 # The top-level config file to be used be configurators
9 KCONFIG_TOP = config/config.in
11 # Build the list of all source config files
12 STATIC_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(shell find $(CT_LIB_DIR)/config -type f -name '*.in' 2>/dev/null))
13 # ... and how to access them:
14 $(STATIC_CONFIG_FILES): config
16 # Build a list of per-component-type source config files
17 ARCH_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/arch/*.in))
18 KERNEL_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/kernel/*.in))
19 CC_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/cc/*.in))
20 LIBC_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/libc/*.in))
21 DEBUG_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/debug/*.in))
22 TOOL_CONFIG_FILES = $(patsubst $(CT_LIB_DIR)/%,%,$(wildcard $(CT_LIB_DIR)/config/tools/*.in))
24 # Build the list of generated config files
25 GEN_CONFIG_FILES = config.gen/arch.in \
26 config.gen/kernel.in \
31 # ... and how to access them:
32 # Generated files depends on config.mk (this file) because it has the
33 # functions needed to build the genrated files, and thus they might
34 # need re-generation if config.mk changes
35 $(GEN_CONFIG_FILES): config.gen \
36 $(CT_LIB_DIR)/config/config.mk
38 # Helper entry for the configurators
40 config_files: $(STATIC_CONFIG_FILES) $(GEN_CONFIG_FILES)
42 # Where to access to the source config files from
45 $(SILENT)ln -s $(CT_LIB_DIR)/config config
47 # Where to store the generated config files into
49 @$(ECHO) " MKDIR config.gen"
50 $(SILENT)mkdir -p config.gen
52 #-----------------------------------------------------------
53 # Build list of per-component-type items to easily build generated files
55 ARCHS = $(patsubst config/arch/%.in,%,$(ARCH_CONFIG_FILES))
56 KERNELS = $(patsubst config/kernel/%.in,%,$(KERNEL_CONFIG_FILES))
57 CCS = $(patsubst config/cc/%.in,%,$(CC_CONFIG_FILES))
58 LIBCS = $(patsubst config/libc/%.in,%,$(LIBC_CONFIG_FILES))
59 DEBUGS = $(patsubst config/debug/%.in,%,$(DEBUG_CONFIG_FILES))
60 TOOLS = $(patsubst config/tools/%.in,%,$(TOOL_CONFIG_FILES))
62 #-----------------------------------------------------------
63 # Helper functions to ease building generated config files
65 # The function 'build_gen_choice_in' builds a choice-menu of a list of
66 # components in the given list, also adding source-ing of associazted
68 # $1 : destination file
69 # $2 : name for the entries family (eg. Architecture, kernel...)
70 # $3 : prefix for the choice entries (eg. ARCH, KERNEL...)
71 # $4 : base directory containing config files
72 # $5 : list of config entries (eg. for architectures: "alpha arm ia64"...,
73 # and for kernels: "bare-metal linux"...)
74 # Example to build the kernels generated config file:
75 # $(call build_gen_choice_in,config.gen/kernel.in,Target OS,KERNEL,config/kernel,$(KERNELS))
76 define build_gen_choice_in
78 $(SILENT)(echo "# $(2) menu"; \
79 echo "# Generated file, do not edit!!!"; \
83 echo " prompt \"$(2)\""; \
85 for entry in $(5); do \
86 file="$(4)/$${entry}.in"; \
87 _entry=$$(echo "$${entry}" |$(sed) -r -s -e 's/[-.+]/_/g;'); \
88 echo "config $(3)_$${_entry}"; \
90 printf " prompt \"$${entry}"; \
91 if $(grep) -E '^# +EXPERIMENTAL$$' $${file} >/dev/null 2>&1; then \
92 echo " (EXPERIMENTAL)\""; \
93 echo " depends on EXPERIMENTAL"; \
100 for entry in $(5); do \
101 file="$(4)/$${entry}.in"; \
102 _entry=$$(echo "$${entry}" |$(sed) -r -s -e 's/[-.+]/_/g;'); \
104 echo "if $(3)_$${_entry}"; \
105 echo "config $(3)"; \
106 echo " default \"$${entry}\" if $(3)_$${_entry}"; \
107 echo "source $${file}"; \
111 for file in $(wildcard $(4)/*.in-common); do \
112 echo "source $${file}"; \
117 # The function 'build_gen_menu_in' builds a menuconfig for each component in
118 # the given list, source-ing the associated files conditionnaly:
119 # $1 : destination file
120 # $2 : name of entries family (eg. Tools, Debug...)
121 # $3 : prefix for the menu entries (eg. TOOL, DEBUG)
122 # $4 : base directory containing config files
123 # $5 : list of config entries (eg. for tools: "libelf sstrip"..., and for
124 # debug: "dmalloc duma gdb"...)
125 # Example to build the tools generated config file:
126 # $(call build_gen_menu_in,config.gen/tools.in,Tools,TOOL,config/tools,$(TOOLS))
127 define build_gen_menu_in
129 $(SILENT)(echo "# $(2) facilities menu"; \
130 echo "# Generated file, do not edit!!!"; \
132 for entry in $(5); do \
133 file="$(4)/$${entry}.in"; \
134 _entry=$$(echo "$${entry}" |$(sed) -r -s -e 's/[-.+]/_/g;'); \
135 echo "menuconfig $(3)_$${_entry}"; \
137 printf " prompt \"$${entry}"; \
138 if $(grep) -E '^# +EXPERIMENTAL$$' $${file} >/dev/null 2>&1; then \
139 echo " (EXPERIMENTAL)\""; \
140 echo " depends on EXPERIMENTAL"; \
144 echo "if $(3)_$${_entry}"; \
145 echo "source $${file}"; \
152 #-----------------------------------------------------------
153 # The rules for the generated config files
155 config.gen/arch.in: $(ARCH_CONFIG_FILES)
156 $(call build_gen_choice_in,$@,Target Architecture,ARCH,config/arch,$(ARCHS))
158 config.gen/kernel.in: $(KERNEL_CONFIG_FILES)
159 $(call build_gen_choice_in,$@,Target OS,KERNEL,config/kernel,$(KERNELS))
161 config.gen/cc.in: $(CC_CONFIG_FILES)
162 $(call build_gen_choice_in,$@,C compiler,CC,config/cc,$(CCS))
164 config.gen/libc.in: $(LIBC_CONFIG_FILES)
165 $(call build_gen_choice_in,$@,C library,LIBC,config/libc,$(LIBCS))
167 config.gen/tools.in: $(TOOL_CONFIG_FILES)
168 $(call build_gen_menu_in,$@,Tools,TOOL,config/tools,$(TOOLS))
170 config.gen/debug.in: $(DEBUG_CONFIG_FILES)
171 $(call build_gen_menu_in,$@,Debug,DEBUG,config/debug,$(DEBUGS))
173 #-----------------------------------------------------------
174 # Cleaning up the mess...
177 @$(ECHO) " CLEAN config"
178 $(SILENT)rm -f config 2>/dev/null || true
179 @$(ECHO) " CLEAN config.gen"
180 $(SILENT)rm -rf config.gen