# 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 "package/gdb/Config.in.host"

config BR2_LARGEFILE
	bool

config BR2_INET_IPV6
	bool

config BR2_TOOLCHAIN_HAS_NATIVE_RPC
	bool

config BR2_USE_WCHAR
	bool

config BR2_ENABLE_LOCALE
	bool

config BR2_INSTALL_LIBSTDCPP
	bool

config BR2_TOOLCHAIN_HAS_THREADS
	bool

config BR2_TOOLCHAIN_HAS_THREADS_DEBUG
	bool

config BR2_TOOLCHAIN_HAS_THREADS_NPTL
	bool

config BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS
	bool

config BR2_TOOLCHAIN_HAS_SSP
	bool

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.

config BR2_GENERATE_LOCALE
	string "Generate locale data"
	default ""
	depends on \
		BR2_TOOLCHAIN_BUILDROOT      || \
		BR2_TOOLCHAIN_USES_GLIBC
	help
	  Generate support for a list of locales. Locales can be
	  specified with or without encoding, when no encoding is
	  specified, UTF-8 is assumed. Examples of locales: en_US,
	  fr_FR.UTF-8.

# 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_USES_UCLIBC

config BR2_NEEDS_GETTEXT_IF_LOCALE
	bool
	default y if (BR2_NEEDS_GETTEXT && BR2_ENABLE_LOCALE)

config BR2_USE_MMU
	bool "Enable MMU support" if BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_sh || BR2_xtensa
	default y if !BR2_bfin
	help
	  If your target has a MMU, you should say Y here.  If you
	  are unsure, just say Y.

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.

config BR2_TARGET_LDFLAGS
	string "Target linker options"
	help
	  Extra options to pass to the linker when building for the target.

config BR2_ECLIPSE_REGISTER
	bool "Register toolchain within Eclipse Buildroot plug-in"
	help
	  This options tells Buildroot to generate the necessary
	  configuration files to make your toolchain appear within
	  Eclipse, through the Eclipse Buildroot plugin.

# Options for packages to depend on, if they require at least a
# specific version of the kernel headers.
# Toolchains should choose the adequate option (ie. the highest
# version, not all of them).
config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
	bool

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11

config BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
	bool
	select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12

# This order guarantees that the highest version is set, as kconfig
# stops affecting a value on the first matching default.
config BR2_TOOLCHAIN_HEADERS_AT_LEAST
	string
	default "3.13" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
	default "3.12" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
	default "3.11" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
	default "3.10" if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
	default "3.9"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9
	default "3.8"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
	default "3.7"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
	default "3.6"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6
	default "3.5"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
	default "3.4"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4
	default "3.3"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3
	default "3.2"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
	default "3.1"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
	default "3.0"  if BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
	default "2.6"
