From b8aa076b9f25d7f249b0326bc5dc347902cc9bdb Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Sun, 30 Aug 2009 01:00:19 +0200 Subject: companion-libs: PPL/CLooG/MPC require GMP and MPFR The PPL, CLoog/ppl and MPC libraries require GMP and MPFR. Select GMP/MPFR appropriately. diff --git a/config/companion_libs.in b/config/companion_libs.in index e543faa..aa4b63a 100644 --- a/config/companion_libs.in +++ b/config/companion_libs.in @@ -33,6 +33,7 @@ endif config PPL_CLOOG_MPC bool prompt "PPL, GLooG/PPL and MPC" + select GMP_MPFR select WRAPPER_NEEDED help gcc-4.4.0 and above requires PPL and CLooG/PPL to build some parts -- cgit v0.10.2-6-g49f6 From 655be7da5b31d725573b928e8f063c91dbca533c Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Sun, 30 Aug 2009 19:33:48 +0200 Subject: config: move down companion libraries sub-menu Move the companion libraries sub-menu down the main menu. That way, the user does not need to go back and forth in the menu to change options set by the different components that select the companion libraries (binutils, gcc, gdb). diff --git a/config/config.in b/config/config.in index 14e1a41..9936035 100644 --- a/config/config.in +++ b/config/config.in @@ -2,9 +2,9 @@ source config/global.in source config/target.in source config/toolchain.in source config/kernel.in -source config/companion_libs.in source config/binutils.in source config/cc.in source config/libc.in source config/tools.in source config/debug.in +source config/companion_libs.in -- cgit v0.10.2-6-g49f6 From 94dbc02a8ba4a7acdf9f3d6de5b48926331816c1 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Sun, 30 Aug 2009 19:34:08 +0200 Subject: config: swap the debug and tools sub-menus ltrace, in the debug sub-menu, selects libelf, in the tools sub-menu. Inverse the order of the two sub-menus, so that the user does not have to go back and forth between the two sub-menus. diff --git a/config/config.in b/config/config.in index 9936035..b6e6fe5 100644 --- a/config/config.in +++ b/config/config.in @@ -5,6 +5,6 @@ source config/kernel.in source config/binutils.in source config/cc.in source config/libc.in -source config/tools.in source config/debug.in +source config/tools.in source config/companion_libs.in -- cgit v0.10.2-6-g49f6 From 8d7dcccad5718cf4c18e52bec3b009642d6cb1b4 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Sun, 30 Aug 2009 16:44:59 +0200 Subject: config: introduce the KERNEL_SUPPORTS_SHARED_LIBS silent config option The target OSes will be able to select this option if they support shared libraries, instead of having "Build shared libaries" depend on each OS. diff --git a/config/kernel.in b/config/kernel.in index 9c701e1..d3ae6dc 100644 --- a/config/kernel.in +++ b/config/kernel.in @@ -8,6 +8,13 @@ config BARE_METAL bool default n +# Each target OS (aka kernel) that support shared libraries can select +# this, so the user can decide whether or not to build a shared library +# enabled toolchain +config KERNEL_SUPPORTS_SHARED_LIBS + bool + default n + config KERNEL string -- cgit v0.10.2-6-g49f6 From 3e7ed9626282c37572c1e07b0b9956a771fb0b8c Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Sun, 30 Aug 2009 16:47:51 +0200 Subject: config: Linux kernel selectes shared libraries support The Linux kernel supports using shared libraries, so prompt the user. diff --git a/config/kernel/linux.in b/config/kernel/linux.in index abcc10f..12ae5a5 100644 --- a/config/kernel/linux.in +++ b/config/kernel/linux.in @@ -3,6 +3,7 @@ # Linux kernel options config KERNEL_linux + select KERNEL_SUPPORTS_SHARED_LIBS help Build a toolchain targeting systems running Linux as a kernel. -- cgit v0.10.2-6-g49f6 From cf053f4c0551e6d7e07b5517bc9f9aecc6d649e3 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Sun, 30 Aug 2009 16:50:30 +0200 Subject: config: make "Build shared libraries" depend on KERNEL_SUPPORTS_SHARED_LIBS Now that all kernels that support shared libraries select the correct config option, we can change the dependency rules of SHARED_LIBS accordingly. diff --git a/config/toolchain.in b/config/toolchain.in index 14db552..9c457f2 100644 --- a/config/toolchain.in +++ b/config/toolchain.in @@ -31,7 +31,7 @@ config SYSROOT_DIR_PREFIX config SHARED_LIBS bool prompt "Build shared libraries" - depends on ! BARE_METAL + depends on KERNEL_SUPPORTS_SHARED_LIBS default y help Say 'y' here, unless you don't want shared libraries. -- cgit v0.10.2-6-g49f6 From 4fa6f04c32fff2b1b4c42444875d21cda1e59a40 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Sun, 30 Aug 2009 16:54:30 +0200 Subject: config: move the "build shared libraries" option to the OS menu The "Build shared libraries" config option is dependant on the type of "Target OS". Moving this options to the "Target OS" sub-menu is also better in the user perspective: he/she no longer needs to go back and forth to see if he/she missed any option. diff --git a/config/kernel.in b/config/kernel.in index d3ae6dc..bbaec77 100644 --- a/config/kernel.in +++ b/config/kernel.in @@ -23,4 +23,17 @@ config KERNEL_VERSION source config.gen/kernel.in +comment "Common kernel options" + +config SHARED_LIBS + bool + prompt "Build shared libraries" + depends on KERNEL_SUPPORTS_SHARED_LIBS + default y + help + Say 'y' here, unless you don't want shared libraries. + + You might not want shared libraries if you're building for a target that + don't support it (maybe some nommu targets, for example, or bare metal). + endmenu diff --git a/config/toolchain.in b/config/toolchain.in index 9c457f2..9372dc4 100644 --- a/config/toolchain.in +++ b/config/toolchain.in @@ -28,17 +28,6 @@ config SYSROOT_DIR_PREFIX In fact, the sysroot path is constructed as: ${CT_PREFIX_DIR}/${CT_TARGET}/${CT_SYSROOT_DIR_PREFIX}/sys-root -config SHARED_LIBS - bool - prompt "Build shared libraries" - depends on KERNEL_SUPPORTS_SHARED_LIBS - default y - help - Say 'y' here, unless you don't want shared libraries. - - You might not want shared libraries if you're building for a target that - don't support it (maybe some nommu targets, for example, or bare metal). - comment "Tuple completion and aliasing" config TARGET_VENDOR -- cgit v0.10.2-6-g49f6