a0b6faaab4
This commit converts gdb to the package infrastructure, and therefore moves it from toolchain/gdb to package/gdb. The target package is now visible in "Package selection for the target" => "Debugging, profiling and benchmark". The main option, "gdb", forcefully selects the "gdbserver" sub-option by default. Another sub-option, "full debugger" allows to install the complete gdb on the target. When this option is enabled, then "gdbserver" is no longer forcefully selected. This ensures that at least gdbserver or the full debugger gets built/installed, so that the package is not a no-op. The host debugger is still enabled through a configuration option in "Toolchain". It is now visible regardless of the toolchain type (it used to be hidden for External Toolchains). The configuration options relative to the host debugger are now in package/gdb/Config.in.host, similar to how we have package/binutils/Config.in.host. Since gdb is now a proper package, it is no longer allowed to 'select BR2_PTHREADS_DEBUG' to ensure thread debugging is available when needed. Instead, it now 'depends on BR2_TOOLCHAIN_HAS_THREADS_DEBUG'. This option, in turn, is selected by the different toolchain backends when appropriate. The 'BR2_TOOLCHAIN_HAS_THREADS_DEBUG_IF_NEEDED' option is removed, since we no longer need to know when it is allowed to 'select BR2_PTHREADS_DEBUG'. Also, the 'BR2_PTHREADS_DEBUG' option is moved to appear right below the thread implementation selection (in the case of the Buildroot toolchain backend). Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
124 lines
3.5 KiB
Groff
124 lines
3.5 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_TOOLCHAIN_HAS_NATIVE_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_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_NATIVE if (!BR2_UCLIBC_VERSION_0_9_31) && !BR2_ARM_OABI && !(BR2_avr32 || BR2_xtensa)
|
|
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"
|
|
depends on !BR2_xtensa
|
|
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_0_9_31
|
|
depends on !BR2_ARM_OABI
|
|
depends on !BR2_x86_i386
|
|
depends on !BR2_avr32
|
|
depends on !BR2_xtensa
|
|
endchoice
|
|
|
|
config BR2_PTHREAD_DEBUG
|
|
bool "Thread library debugging"
|
|
depends on BR2_PTHREADS || BR2_PTHREADS_OLD || BR2_PTHREADS_NATIVE
|
|
select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
|
|
help
|
|
Build the thread library with debugging enabled.
|
|
|
|
source "toolchain/elf2flt/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.
|
|
|
|
endif
|