From 5ae048e78b04cd25abb4adce1b53fbaf4ad18add Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Mon, 13 Oct 2008 16:58:52 +0000 Subject: Generate the choice menu for C compilers, the same way arch, kernels and C libraries are generated. /trunk/kconfig/kconfig.mk | 6 6 0 0 ++++++ /trunk/config/cc/gcc.in | 13 13 0 0 +++++++++++++ /trunk/config/cc.in | 31 3 28 0 +++---------------------------- 3 files changed, 22 insertions(+), 28 deletions(-) diff --git a/config/cc.in b/config/cc.in index a88832e..d383be3 100644 --- a/config/cc.in +++ b/config/cc.in @@ -2,38 +2,13 @@ menu "C compiler" -choice - bool - prompt "C compiler flavour" - default CC_GCC - -config CC_GCC - bool - prompt "gcc" - select CC_SUPPORT_CXX - select CC_SUPPORT_FORTRAN - select CC_SUPPORT_JAVA - select CC_SUPPORT_ADA - select CC_SUPPORT_OBJC - select CC_SUPPORT_OBJCXX - help - gcc is the full-blown GNU compiler. This is what most people will choose. - - gcc supports many languages, a powerful code parser, optimised binary - output, and lots of other features. - -endchoice - -config CC_VERSION +config CC string -config CC +config CC_VERSION string - default "gcc" if CC_GCC -if CC_GCC -source config/cc/gcc.in -endif +source config.gen/cc.in config CC_SUPPORT_CXX bool diff --git a/config/cc/gcc.in b/config/cc/gcc.in index e280ad1..ededcae 100644 --- a/config/cc/gcc.in +++ b/config/cc/gcc.in @@ -1,5 +1,18 @@ # Compiler options +config CC_gcc + select CC_SUPPORT_CXX + select CC_SUPPORT_FORTRAN + select CC_SUPPORT_JAVA + select CC_SUPPORT_ADA + select CC_SUPPORT_OBJC + select CC_SUPPORT_OBJCXX + help + gcc is the full-blown GNU compiler. This is what most people will choose. + + gcc supports many languages, a powerful code parser, optimised binary + output, and lots of other features. + choice bool prompt "gcc version" diff --git a/kconfig/kconfig.mk b/kconfig/kconfig.mk index f20f7e7..4b3321e 100644 --- a/kconfig/kconfig.mk +++ b/kconfig/kconfig.mk @@ -21,6 +21,7 @@ endif # Build a list of all config files ARCH_CONFIG_FILES = $(wildcard $(CT_LIB_DIR)/config/arch/*.in) KERNEL_CONFIG_FILES = $(wildcard $(CT_LIB_DIR)/config/kernel/*.in) +CC_CONFIG_FILES = $(wildcard $(CT_LIB_DIR)/config/cc/*.in) LIBC_CONFIG_FILES = $(wildcard $(CT_LIB_DIR)/config/libc/*.in) DEBUG_CONFIG_FILES = $(wildcard $(CT_LIB_DIR)/config/debug/*.in) TOOL_CONFIG_FILES = $(wildcard $(CT_LIB_DIR)/config/tools/*.in) @@ -28,6 +29,7 @@ TOOL_CONFIG_FILES = $(wildcard $(CT_LIB_DIR)/config/tools/*.in) STATIC_CONFIG_FILES = $(shell find $(CT_LIB_DIR)/config -type f -name '*.in') GEN_CONFIG_FILES=$(CT_TOP_DIR)/config.gen/arch.in \ $(CT_TOP_DIR)/config.gen/kernel.in \ + $(CT_TOP_DIR)/config.gen/cc.in \ $(CT_TOP_DIR)/config.gen/libc.in \ $(CT_TOP_DIR)/config.gen/tools.in \ $(CT_TOP_DIR)/config.gen/debug.in @@ -37,6 +39,7 @@ CONFIG_FILES=$(STATIC_CONFIG_FILES) $(GEN_CONFIG_FILES) # Build list of items ARCHS = $(patsubst $(CT_LIB_DIR)/config/arch/%.in,%,$(ARCH_CONFIG_FILES)) KERNELS = $(patsubst $(CT_LIB_DIR)/config/kernel/%.in,%,$(KERNEL_CONFIG_FILES)) +CCS = $(patsubst $(CT_LIB_DIR)/config/cc/%.in,%,$(CC_CONFIG_FILES)) LIBCS = $(patsubst $(CT_LIB_DIR)/config/libc/%.in,%,$(LIBC_CONFIG_FILES)) DEBUGS = $(patsubst $(CT_LIB_DIR)/config/debug/%.in,%,$(DEBUG_CONFIG_FILES)) TOOLS = $(patsubst $(CT_LIB_DIR)/config/tools/%.in,%,$(TOOL_CONFIG_FILES)) @@ -99,6 +102,9 @@ $(CT_TOP_DIR)/config.gen/arch.in: $(ARCH_CONFIG_FILES) $(CT_TOP_DIR)/config.gen/kernel.in: $(KERNEL_CONFIG_FILES) $(call build_gen_choice_in,$(patsubst $(CT_TOP_DIR)/%,%,$@),Target OS,KERNEL,config/kernel,$(KERNELS)) +$(CT_TOP_DIR)/config.gen/cc.in: $(CC_CONFIG_FILES) + $(call build_gen_choice_in,$(patsubst $(CT_TOP_DIR)/%,%,$@),C compiler,CC,config/cc,$(CCS)) + $(CT_TOP_DIR)/config.gen/libc.in: $(LIBC_CONFIG_FILES) $(call build_gen_choice_in,$(patsubst $(CT_TOP_DIR)/%,%,$@),C library,LIBC,config/libc,$(LIBCS)) -- cgit v0.10.2-6-g49f6