2010-07-28 00:08:16 +02:00
|
|
|
# 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"
|
|
|
|
|
2007-02-06 19:19:38 +01:00
|
|
|
config BR2_LARGEFILE
|
|
|
|
bool "Enable large file (files > 2 GB) support?"
|
|
|
|
depends on !BR2_cris
|
|
|
|
help
|
2009-01-30 17:28:26 +01:00
|
|
|
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.
|
2007-02-06 19:19:38 +01:00
|
|
|
|
2007-06-26 18:34:45 +02:00
|
|
|
config BR2_INET_IPV6
|
|
|
|
bool "Enable IPv6"
|
|
|
|
help
|
2009-01-30 17:28:26 +01:00
|
|
|
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.
|
2007-06-26 18:34:45 +02:00
|
|
|
|
|
|
|
config BR2_INET_RPC
|
|
|
|
bool "Enable RPC"
|
|
|
|
help
|
2009-01-30 17:28:26 +01:00
|
|
|
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
|
2009-07-27 10:39:50 +02:00
|
|
|
bool "Enable toolchain locale/i18n support?"
|
|
|
|
select BR2_USE_WCHAR
|
2009-01-30 17:28:26 +01:00
|
|
|
help
|
|
|
|
If you are building your own toolchain and you want to
|
2009-07-27 10:39:50 +02:00
|
|
|
enable locale/i18n support then enable this option.
|
2009-01-30 17:28:26 +01:00
|
|
|
If you have an external binary toolchain that has been
|
2009-07-27 10:39:50 +02:00
|
|
|
built with locale/i18n support then enable this option.
|
2009-01-30 17:28:26 +01:00
|
|
|
|
2009-04-06 11:21:26 +02:00
|
|
|
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.
|
|
|
|
|
2010-05-24 21:17:50 +02:00
|
|
|
# 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.
|
|
|
|
|
Add a BR2_NEEDS_GETTEXT option
When using an external toolchain that uses the glibc or eglibc C
libraries, compiling a separate gettext and libintl is not needed and
is even a source of confusion, causing build failures. These build
failures are due to the fact that when libintl is compiled, it
replaces the C library libintl.h by its own, which does #define
gettext libintl_gettext. Then, when packages want to use gettext,
autoconf realize that gettext is available in the C library and
therefore do not add -lintl to the LDFLAGS, causing the build failure
because the program has been compiled to use libintl_gettext but this
function is not available.
Therefore, we should only use gettext if a uClibc internal toolchain
or a uClibc external toolchain. If an external glibc toolchain is
used, gettext shouldn't be used.
In order to implement that, we introduce the BR2_NEEDS_GETTEXT option,
which is hidden to the user, and whose value is computed automatically
from the rest of the configuration.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-13 22:21:08 +02:00
|
|
|
config BR2_NEEDS_GETTEXT
|
|
|
|
bool
|
2010-05-24 21:17:50 +02:00
|
|
|
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)
|
Add a BR2_NEEDS_GETTEXT option
When using an external toolchain that uses the glibc or eglibc C
libraries, compiling a separate gettext and libintl is not needed and
is even a source of confusion, causing build failures. These build
failures are due to the fact that when libintl is compiled, it
replaces the C library libintl.h by its own, which does #define
gettext libintl_gettext. Then, when packages want to use gettext,
autoconf realize that gettext is available in the C library and
therefore do not add -lintl to the LDFLAGS, causing the build failure
because the program has been compiled to use libintl_gettext but this
function is not available.
Therefore, we should only use gettext if a uClibc internal toolchain
or a uClibc external toolchain. If an external glibc toolchain is
used, gettext shouldn't be used.
In order to implement that, we introduce the BR2_NEEDS_GETTEXT option,
which is hidden to the user, and whose value is computed automatically
from the rest of the configuration.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-13 22:21:08 +02:00
|
|
|
|
2007-08-01 00:38:52 +02:00
|
|
|
config BR2_USE_WCHAR
|
|
|
|
bool "Enable WCHAR support"
|
|
|
|
help
|
2009-01-30 17:28:26 +01:00
|
|
|
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.
|
2007-08-01 00:38:52 +02:00
|
|
|
|
2009-11-09 14:53:04 +01:00
|
|
|
config BR2_PREFER_SOFT_FLOAT
|
|
|
|
bool
|
2010-03-30 17:18:25 +02:00
|
|
|
default y if BR2_arm || BR2_armeb || BR2_avr32 || BR2_mips || BR2_mipsel
|
2009-11-09 14:53:04 +01:00
|
|
|
|
2007-02-06 19:19:38 +01:00
|
|
|
config BR2_SOFT_FLOAT
|
|
|
|
bool "Use software floating point by default"
|
2010-03-30 17:18:25 +02:00
|
|
|
depends on BR2_arm || BR2_armeb || BR2_avr32 || BR2_mips || BR2_mipsel || BR2_powerpc
|
2009-11-09 14:53:04 +01:00
|
|
|
default $(BR2_PREFER_SOFT_FLOAT)
|
2007-02-06 19:19:38 +01:00
|
|
|
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).
|
|
|
|
|
2009-04-22 09:27:22 +02:00
|
|
|
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.
|
|
|
|
|
2009-01-30 17:28:26 +01:00
|
|
|
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)"
|
2010-02-21 20:52:12 +01:00
|
|
|
depends on BR2_UCLIBC_VERSION_SNAPSHOT
|
2009-01-30 17:28:26 +01:00
|
|
|
endchoice
|
|
|
|
|
2009-07-31 11:40:34 +02:00
|
|
|
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.
|
|
|
|
|
2009-01-30 17:28:26 +01:00
|
|
|
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
|
2010-08-11 16:00:20 +02:00
|
|
|
depends on !(! BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE && BR2_ENABLE_LOCALE && BR2_UCLIBC_VERSION_0_9_31)
|
2009-01-30 17:28:26 +01:00
|
|
|
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.
|
|
|
|
|
2010-08-11 16:00:20 +02:00
|
|
|
comment "C++ support broken in uClibc 0.9.31 with locale enabled with gcc 4.2"
|
|
|
|
depends on !BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE && BR2_ENABLE_LOCALE && BR2_UCLIBC_VERSION_0_9_31
|
2010-07-29 16:03:27 +02:00
|
|
|
|
2009-01-30 17:28:26 +01:00
|
|
|
config BR2_TARGET_OPTIMIZATION
|
|
|
|
string "Target Optimizations"
|
2010-06-14 14:36:04 +02:00
|
|
|
default "-pipe"
|
2009-01-30 17:28:26 +01:00
|
|
|
help
|
|
|
|
Optimizations to use when building for the target host.
|
2010-06-14 14:36:04 +02:00
|
|
|
NOTE: gcc optimization level is defined in build options.
|