diff options
author | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2010-12-13 17:27:37 +0100 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2010-12-13 21:54:28 +0100 |
commit | fff711786a9ea6a038f5753c5d8599e5cede07c6 (patch) | |
tree | 5c6cf11dd6fca5c416506ff214ee4368ea256d83 /toolchain/toolchain-crosstool-ng | |
parent | 742f393ffb0d13c33d4f1184fbaf906ae2310470 (diff) | |
download | buildroot-fff711786a9ea6a038f5753c5d8599e5cede07c6.tar.gz buildroot-fff711786a9ea6a038f5753c5d8599e5cede07c6.zip |
toolchain: Improve C library option selection
Turn BR2_LARGEFILE, BR2_INET_IPV6, BR2_INET_RPC, BR2_USE_WCHAR,
BR2_ENABLE_LOCALE and BR2_PROGRAM_INVOCATION into hidden options.
Then, for Buildroot toolchains, external toolchains and Crosstool-NG
toolchains, provide visible options that selects the hidden options.
This allows :
* To show a different label and help text in the case of Buildroot
toolchain (do you want to enable feature X ?) and in the case of
external toolchain (is feature X available in your toolchain ?)
* To not show any option when a glibc external toolchain is selected
(since glibc is assumed to support all of largefile, IPv6, RPC,
WCHAR, locale and program invocation) and have them all selected in
that case.
There is some amount of duplication between Buildroot toolchain config
options and Crosstool-NG toolchain config options, because kconfig
doesn't allow to source the same Config.in file twice (even if under
mutually exclusive conditions). This duplication is more readable that
the hack that consists in splitting files in multiple pieces.
However, this commit changes the name of the options visible in the
configuration interface, so existing .config files will have to be
updated accordingly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'toolchain/toolchain-crosstool-ng')
-rw-r--r-- | toolchain/toolchain-crosstool-ng/Config.in | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/toolchain/toolchain-crosstool-ng/Config.in b/toolchain/toolchain-crosstool-ng/Config.in index f9b7e691d4..4f305886b5 100644 --- a/toolchain/toolchain-crosstool-ng/Config.in +++ b/toolchain/toolchain-crosstool-ng/Config.in @@ -45,6 +45,59 @@ config BR2_TOOLCHAIN_CTNG_CONFIG To finetune your toolchain, you can also call: make ctng-menuconfig +if BR2_TOOLCHAIN_CTNG_uClibc + +comment "Toolchain Options" + +config BR2_TOOLCHAIN_CTNG_uClibc_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_CTNG_uClibc_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_CTNG_uClibc_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_CTNG_uClibc_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_CTNG_uClibc_LOCALE + bool "Enable toolchain locale/i18n support" + select BR2_TOOLCHAIN_CTNG_uClibc_WCHAR + select BR2_ENABLE_LOCALE + help + Enable this option if you want your toolchain to support + localization and internationalization. + +config BR2_TOOLCHAIN_CTNG_uClibc_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. + +endif # BR2_TOOLCHAIN_CTNG_uClibc + config BR2_TOOLCHAIN_CTNG_STRIP_LIBS bool "Strip libs copied to target" default !BR2_STRIP_none |