kumquat-buildroot/toolchain/toolchain-buildroot/Config.in.2
Thomas Petazzoni 9eaad202f1 toolchain: rework thread options
The selection of linuxthreads, linuxthreads old or NPTL doesn't make a
lot of sense for external toolchains. So, instead, we :

 * Introduce an hidden BR2_TOOLCHAIN_HAS_THREADS option, which must be
   selected by toolchain specific options when thread support is
   available. Package needing to test thread support should use this
   option.

 * Move the none/linuxthreads/linuxthreads old/NPTL selection to
   Buildroot internal toolchain configuration.

 * Add an option in external toolchain to tell if thread support is
   available or not in the external toolchain. We assume that glibc
   without threads is not possible, as Ulrich Drepper said in
   http://sourceware.org/ml/libc-alpha/2005-08/msg00091.html

ffmpeg, dmalloc and openvpn are fixed to use the new
BR2_TOOLCHAIN_HAS_THREADS option. For openvpn, --enable-threads=posix
is no longer used, as the configure script doesn't even understand
this option.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-13 22:26:41 +01:00

135 lines
4.0 KiB
Groff

# Buildroot backend specific options
if BR2_TOOLCHAIN_BUILDROOT
comment "Toolchain Options"
config BR2_TOOLCHAIN_BUILDROOT_LARGEFILE
bool "Enable large file (files > 2 GB) support"
select BR2_LARGEFILE
help
Enable this option if you want your toolchain to support
files bigger than 2 GB.
config BR2_TOOLCHAIN_BUILDROOT_INET_IPV6
bool "Enable IPv6 support"
select BR2_INET_IPV6
help
Enable this option if you want your toolchain to support
IPv6.
config BR2_TOOLCHAIN_BUILDROOT_INET_RPC
bool "Enable RPC support"
select BR2_INET_RPC
help
Enable this option if you want your toolchain to support
RPC (needed for NFS, for example).
config BR2_TOOLCHAIN_BUILDROOT_WCHAR
bool "Enable WCHAR support"
select BR2_USE_WCHAR
help
Enable this option if you want your toolchain to support
wide characters (i.e characters longer than 8 bits, needed
for locale support).
config BR2_TOOLCHAIN_BUILDROOT_LOCALE
bool "Enable toolchain locale/i18n support"
select BR2_TOOLCHAIN_BUILDROOT_WCHAR
select BR2_ENABLE_LOCALE
help
Enable this option if you want your toolchain to support
localization and internationalization.
config BR2_TOOLCHAIN_BUILDROOT_PROGRAM_INVOCATION
bool "Enable 'program invocation name' support"
select BR2_PROGRAM_INVOCATION
help
Enable this option if you want your toolchain to support 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.
config BR2_TOOLCHAIN_BUILDROOT_CXX
bool "Enable C++ support"
select BR2_INSTALL_LIBSTDCPP
depends on !(! BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE && \
BR2_TOOLCHAIN_BUILDROOT_LOCALE && \
BR2_UCLIBC_VERSION_0_9_31)
help
Enable this option if you want your toolchain to support the
C++ language and you want C++ libraries to be installed on
your target system.
comment "C++ support broken in uClibc 0.9.31 with locale enabled with gcc 4.2"
depends on !BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE && \
BR2_TOOLCHAIN_BUILDROOT_LOCALE && \
BR2_UCLIBC_VERSION_0_9_31
config BR2_TOOLCHAIN_BUILDROOT_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
Use this option to select the thread library implementation
that should be used in your toolchain. 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.
config BR2_PTHREADS_NONE
bool "none"
config BR2_PTHREADS
bool "linuxthreads"
select BR2_TOOLCHAIN_HAS_THREADS
config BR2_PTHREADS_OLD
bool "linuxthreads (stable/old)"
select BR2_TOOLCHAIN_HAS_THREADS
config BR2_PTHREADS_NATIVE
bool "Native POSIX Threading (NPTL)"
select BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_UCLIBC_VERSION_SNAPSHOT
endchoice
source "toolchain/elf2flt/Config.in"
source "toolchain/mklibs/Config.in"
source "toolchain/sstrip/Config.in"
config BR2_VFP_FLOAT
bool "Use ARM Vector Floating Point unit"
depends on !BR2_SOFT_FLOAT
depends on BR2_arm || BR2_armeb
help
Setting this option will enable the "-mfpu=vfp" option.
If your ARM CPU has a Vector Floating Point Unit (VFP)
and the toolchain supports the option, then the
code can be optimized.
Most people will answer N.
config BR2_CROSS_TOOLCHAIN_TARGET_UTILS
bool "Include target utils in cross toolchain"
default y
help
When using buildroot to build a deployable cross toolchain,
it is handy to include certain target apps with that toolchain
as a convenience.
Examples include ldd, gdbserver, and strace.
Answer Y if you want these apps (if built) copied into the
cross toolchain dir under <arch>-linux-uclibc/target_utils/.
endif