summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2008-09-16 17:39:40 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2008-09-16 17:39:40 (GMT)
commitc36b92179069933060d51f408e079c49eb47f281 (patch)
tree12ffa93377cbef08b2b8f337cbc90bfc4d705591 /config
parent59b1a0929db05817384d6c04d60b8a707975da42 (diff)
Generate the kernel config choice, rather than having it hard-coded:
- change the menu label from 'Target OS' to 'Operating System', - bare-metal is a kind of kernel (OS), rename to 'bare-metal' from 'none', - update the kconfig.mk to generate the kernel choice entries, - update glibc&eglibc kernel version option accordingly. Update the debug & tools confiog file generation to match with arch & kernel. Print terse command lines when building in kconfig/ (a-la Linux kernel). Fix the makefile rules in kconfig/kconfig.mk to be /simple/ rules. /trunk/kconfig/kconfig.mk | 117 81 36 0 +++++++++++++++++++++---------- /trunk/config/kernel/linux.in | 4 4 0 0 + /trunk/config/kernel/bare-metal.experimental.in | 15 15 0 0 ++++ /trunk/config/kernel.in | 33 5 28 0 +-------- /trunk/config/libc/glibc-eglibc-common.in | 4 2 2 0 5 files changed, 107 insertions(+), 66 deletions(-)
Diffstat (limited to 'config')
-rw-r--r--config/kernel.in33
-rw-r--r--config/kernel/bare-metal.experimental.in15
-rw-r--r--config/kernel/linux.in4
-rw-r--r--config/libc/glibc-eglibc-common.in4
4 files changed, 26 insertions, 30 deletions
diff --git a/config/kernel.in b/config/kernel.in
index db7b802..1ae8b2e 100644
--- a/config/kernel.in
+++ b/config/kernel.in
@@ -1,42 +1,19 @@
# Kernel options
+menu "Operating System"
+
config KERNEL
string
- default "none" if BARE_METAL
- default "linux" if KERNEL_LINUX
-menu "Target OS"
+config KERNEL_VERSION
+ string
choice
bool
prompt "Target OS"
- default KERNEL_LINUX
-
-config KERNEL_LINUX
- bool
- prompt "Linux"
- help
- Build a toolchain targeting systems running Linux as a kernel.
-config BARE_METAL
- bool
- prompt "Bare metal (EXPERIMENTAL)"
- depends on EXPERIMENTAL
- help
- Say 'y' here if you want a simple C compiler with no C library.
-
- 'Bare metal' also refer to those programs that run without any kernel.
-
- You probably want to say 'y' here if you plan to use your compiler
- to build only kernels or bootloaders
+source config.gen/kernel.in
endchoice
-config KERNEL_VERSION
- string
-
-if KERNEL_LINUX
-source config/kernel/linux.in
-endif
-
endmenu
diff --git a/config/kernel/bare-metal.experimental.in b/config/kernel/bare-metal.experimental.in
new file mode 100644
index 0000000..7a4b574
--- /dev/null
+++ b/config/kernel/bare-metal.experimental.in
@@ -0,0 +1,15 @@
+# Bare metal config options
+
+config KERNEL_bare_metal
+ select BARE_METAL
+ help
+ Say 'y' here if you want a simple C compiler with no C library.
+
+ 'Bare metal' also refer to those programs that run without any kernel.
+
+ You probably want to say 'y' here if you plan to use your compiler
+ to build only kernels or bootloaders.
+
+config BARE_METAL
+ bool
+ default n
diff --git a/config/kernel/linux.in b/config/kernel/linux.in
index 18881d7..7fd0523 100644
--- a/config/kernel/linux.in
+++ b/config/kernel/linux.in
@@ -1,5 +1,9 @@
# Linux kernel options
+config KERNEL_linux
+ help
+ Build a toolchain targeting systems running Linux as a kernel.
+
choice
bool
prompt "Get kernel headers from:"
diff --git a/config/libc/glibc-eglibc-common.in b/config/libc/glibc-eglibc-common.in
index 007c524..61becfb 100644
--- a/config/libc/glibc-eglibc-common.in
+++ b/config/libc/glibc-eglibc-common.in
@@ -70,7 +70,7 @@ config LIBC_ADDONS_LIST
Eg.: crypt (for very old libces)
-if KERNEL_LINUX
+if KERNEL_linux
choice
bool
@@ -166,4 +166,4 @@ config LIBC_GLIBC_MIN_KERNEL
default KERNEL_VERSION if LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS
default LIBC_GLIBC_MIN_KERNEL_VERSION if LIBC_GLIBC_USE_HEADERS_MIN_KERNEL
-endif # KERNEL_LINUX
+endif # KERNEL_linux