From 2508b16d66cd26065af4b06576df9646a1ffdb18 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Wed, 28 Jul 2010 00:08:16 +0200 Subject: toolchain: move buildroot config files Handle the internal toolchain backend mechanism the same way we handle other backends. Signed-off-by: Yann E. MORIN Signed-off-by: Peter Korsgaard --- toolchain/toolchain-common.in | 172 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 172 insertions(+) create mode 100644 toolchain/toolchain-common.in (limited to 'toolchain/toolchain-common.in') diff --git a/toolchain/toolchain-common.in b/toolchain/toolchain-common.in new file mode 100644 index 000000000..bea0c7c43 --- /dev/null +++ b/toolchain/toolchain-common.in @@ -0,0 +1,172 @@ +# Generic toolchain options + +# we want gdb config in the middle of both source and external +# toolchains, but mconf won't let us source the same file twice, +# so put it here instead +source "toolchain/gdb/Config.in" + +comment "Common Toolchain Options" + +config BR2_LARGEFILE + bool "Enable large file (files > 2 GB) support?" + depends on !BR2_cris + help + If you are building your own toolchain and you want to + support files larger than 2GB then enable this option. + If you have an external binary toolchain that has been + built with large file support (files > 2GB) then enable + this option. + +config BR2_INET_IPV6 + bool "Enable IPv6" + help + If you are building your own toolchain and you want to + enable IPV6 support then enable this option. + If you have an external binary toolchain that has been + built with IPV6 support then enable this option. + +config BR2_INET_RPC + bool "Enable RPC" + help + Enable RPC. RPC support is needed for nfs. + If you are building your own toolchain and you want to + enable RPC support then enable this option. + If you have an external binary toolchain that has been + built with RPC support then enable this option. + +config BR2_ENABLE_LOCALE + bool "Enable toolchain locale/i18n support?" + select BR2_USE_WCHAR + help + If you are building your own toolchain and you want to + enable locale/i18n support then enable this option. + If you have an external binary toolchain that has been + built with locale/i18n support then enable this option. + +config BR2_ENABLE_LOCALE_PURGE + bool "Purge unwanted locales" + help + Explicitly specify what locales to install on target. If N + then all locales supported by packages are installed. + +config BR2_ENABLE_LOCALE_WHITELIST + string "Locales to keep" + default "C en_US de fr" + depends on BR2_ENABLE_LOCALE_PURGE + help + Whitespace seperated list of locales to allow on target. + Locales not listed here will be removed from the target. + See 'locale -a' on your host for a list of locales available + on your build host, or have a look in /usr/share/locale in + the target file system for available locales. + + Notice that listing a locale here doesn't guarantee that it + will be available on the target - That purely depends on the + support for that locale in the selected packages. + +# glibc and eglibc directly include gettext, so a separatly compiled +# gettext isn't needed and shouldn't be built to avoid conflicts. Some +# packages always need gettext, other packages only need gettext when +# locale support is enabled. See the documentation for how packages +# should rely on the following two options. + +config BR2_NEEDS_GETTEXT + bool + default y if BR2_TOOLCHAIN_BUILDROOT + default y if BR2_TOOLCHAIN_EXTERNAL_UCLIBC + +config BR2_NEEDS_GETTEXT_IF_LOCALE + bool + default y if (BR2_NEEDS_GETTEXT && BR2_ENABLE_LOCALE) + +config BR2_USE_WCHAR + bool "Enable WCHAR support" + help + If you are building your own toolchain and you want to + enable WCHAR support then enable this option. + If you have an external binary toolchain that has been built + with WCHAR support then enable this option. + +config BR2_PREFER_SOFT_FLOAT + bool + default y if BR2_arm || BR2_armeb || BR2_avr32 || BR2_mips || BR2_mipsel + +config BR2_SOFT_FLOAT + bool "Use software floating point by default" + depends on BR2_arm || BR2_armeb || BR2_avr32 || BR2_mips || BR2_mipsel || BR2_powerpc + default $(BR2_PREFER_SOFT_FLOAT) + help + If your target CPU does not have a Floating Point Unit (FPU) or a + kernel FPU emulator, but you still wish to support floating point + functions, then everything will need to be compiled with soft + floating point support (-msoft-float). + +config BR2_USE_SSP + bool "Enable stack protection support" + help + Enable stack smashing protection support using GCCs + -fstack-protector[-all] option. + + See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt + for details. + +choice + prompt "Thread library implementation" + default BR2_PTHREADS_OLD + help + If you are building your own toolchain then select the type of + libpthreads you want to use. + Not all thread variants work with all versions of uClibc, + the "linuxthreads (stable/old)" may be a working fallback + if you need threading at all. + If you have an external binary toolchain then select the type + of libpthreads it was built with. + + config BR2_PTHREADS_NONE + bool "none" + + config BR2_PTHREADS + bool "linuxthreads" + + config BR2_PTHREADS_OLD + bool "linuxthreads (stable/old)" + + config BR2_PTHREADS_NATIVE + bool "Native POSIX Threading (NPTL)" + depends on BR2_UCLIBC_VERSION_SNAPSHOT +endchoice + +config BR2_PROGRAM_INVOCATION + bool "Enable 'program invocation name'" + help + Support for the GNU-specific program_invocation_name and + program_invocation_short_name strings. Some GNU packages + (like tar and coreutils) utilize these for extra useful + output, but in general are not required. + If you have an external binary toolchain that has been built + with program invocation support then enable this option. + +config BR2_GCC_CROSS_CXX + bool + help + If you are building your own toolchain and want to build + a C++ cross-compiler this needs to be enabled. + If you have an external binary toolchain that has a C++ compiler + and you want to use it then you need to enable this option. + +config BR2_INSTALL_LIBSTDCPP + bool "Build/install c++ compiler and libstdc++?" + select BR2_GCC_CROSS_CXX + help + If you are building your own toolchain and want to build and install + the C++ compiler and library then you need to enable this option. + If you have an external toolchain that has been built with C++ + support and you want to use the compiler / library then you need + to select this option. + +config BR2_TARGET_OPTIMIZATION + string "Target Optimizations" + default "-pipe" + help + Optimizations to use when building for the target host. + NOTE: gcc optimization level is defined in build options. -- cgit v1.2.3