The cirros image was rebuilt against the 3.13.0-83 kernel, drivers e1000e, igbvf...
[packages/trusty/cirros-testvm.git] / cirros-testvm / src-cirros / buildroot-2015.05 / toolchain / toolchain-external / Config.in
diff --git a/cirros-testvm/src-cirros/buildroot-2015.05/toolchain/toolchain-external/Config.in b/cirros-testvm/src-cirros/buildroot-2015.05/toolchain/toolchain-external/Config.in
new file mode 100644 (file)
index 0000000..6ea6838
--- /dev/null
@@ -0,0 +1,1237 @@
+if BR2_TOOLCHAIN_EXTERNAL
+
+choice
+       prompt "Toolchain"
+
+comment "(e)glibc toolchains only available with shared lib support"
+       depends on BR2_STATIC_LIBS
+
+config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
+       bool "Linaro ARM 2014.09"
+       depends on BR2_arm
+       depends on BR2_ARM_CPU_ARMV7A
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on BR2_ARM_EABIHF
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
+       help
+         Linaro toolchain for the ARM architecture. It uses Linaro
+         GCC 2014.09 (based on gcc 4.9), Linaro GDB 2013.10 (based on
+         GDB 7.6), eglibc 2.19, Binutils 2014.09 (based on 2.24). It
+         generates code that runs on all Cortex-A profile devices,
+         but tuned for the Cortex-A9. The code generated is Thumb 2,
+         with the hard floating point calling convention, and uses
+         the VFPv3-D16 FPU instructions.
+
+comment "Linaro toolchains available for Cortex-A + EABIhf"
+       depends on BR2_arm
+       depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF
+       depends on !BR2_STATIC_LIBS
+
+config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
+       bool "Linaro armeb 2014.09"
+       depends on BR2_armeb
+       depends on BR2_ARM_CPU_ARMV7A
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on BR2_ARM_EABIHF
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
+       help
+         Linaro toolchain for the ARM big endian architecture. It
+         uses Linaro GCC 2014.09 (based on gcc 4.9), Linaro GDB
+         2013.10 (based on GDB 7.6), eglibc 2.19, Binutils 2014.09
+         (based on 2.24). It generates code that runs on all Cortex-A
+         profile devices, but tuned for the Cortex-A9. The code
+         generated is Thumb 2, with the hard floating point calling
+         convention, and uses the VFPv3-D16 FPU instructions.
+
+comment "Linaro toolchains available for Cortex-A + EABIhf"
+       depends on BR2_armeb
+       depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF
+       depends on !BR2_STATIC_LIBS
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201405
+       bool "Sourcery CodeBench ARM 2014.05"
+       depends on BR2_arm
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on BR2_ARM_EABI
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
+       help
+         Sourcery CodeBench toolchain for the ARM architecture, from
+         Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, glibc
+         2.18 and gdb 7.7.50, kernel headers 3.13. It has support
+         for the following variants:
+           - ARMv5TE, little endian, soft-float, glibc
+             Select ARM926T, ARM10T, XScale or another ARMv5 core
+             Select BR2_SOFT_FLOAT
+           - ARMv4T, little endian, soft-float, glibc
+             Select ARM720T, ARM920T, ARM922T or another ARMv4 core
+             Select BR2_SOFT_FLOAT
+           - ARMv7-A, Thumb 2, little endian, soft-float, glibc
+             Select Cortex-A8, Cortex-A9 or another ARMv7-A core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mthumb
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201311
+       bool "Sourcery CodeBench ARM 2013.11"
+       depends on BR2_arm
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on BR2_ARM_EABI
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_HAS_GCC_BUG_58595 # based-on gcc-4.8.1
+       select BR2_TOOLCHAIN_HAS_GCC_BUG_58854 # based-on gcc-4.8.1
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
+       help
+         Sourcery CodeBench toolchain for the ARM architecture, from
+         Mentor Graphics. It uses gcc 4.8.1, binutils 2.23.52, glibc
+         2.18 and gdb 7.6.50, kernel headers 3.11. It has support
+         for the following variants:
+           - ARMv5TE, little endian, soft-float, glibc
+             Select ARM926T, ARM10T, XScale or another ARMv5 core
+             Select BR2_SOFT_FLOAT
+           - ARMv4T, little endian, soft-float, glibc
+             Select ARM720T, ARM920T, ARM922T or another ARMv4 core
+             Select BR2_SOFT_FLOAT
+           - ARMv7-A, Thumb 2, little endian, soft-float, glibc
+             Select Cortex-A8, Cortex-A9 or another ARMv7-A core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mthumb
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201305
+       bool "Sourcery CodeBench ARM 2013.05"
+       depends on BR2_arm
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on BR2_ARM_EABI
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_HAS_GCC_BUG_58595 # based-on gcc-4.7.3
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
+       help
+         Sourcery CodeBench toolchain for the ARM architecture, from
+         Mentor Graphics. It uses gcc 4.7.3, binutils 2.23.52, glibc
+         2.17 and gdb 7.4.50, kernel headers 3.8.2. It has support
+         for the following variants:
+           - ARMv5TE, little endian, soft-float, glibc
+             Select ARM926T, ARM10T, XScale or another ARMv5 core
+             Select BR2_SOFT_FLOAT
+           - ARMv4T, little endian, soft-float, glibc
+             Select ARM720T, ARM920T, ARM922T or another ARMv4 core
+             Select BR2_SOFT_FLOAT
+           - ARMv7-A, Thumb 2, little endian, soft-float, glibc
+             Select Cortex-A8, Cortex-A9 or another ARMv7-A core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mthumb
+
+comment "Sourcery CodeBench toolchains available for the EABI ABI"
+       depends on BR2_arm
+       depends on !BR2_ARM_EABI
+       depends on !BR2_STATIC_LIBS
+
+config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A_201109
+       bool "Arago ARMv7 2011.09"
+       depends on BR2_arm
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on BR2_ARM_CPU_ARMV7A
+       depends on BR2_ARM_EABI
+       depends on BR2_ARM_CPU_HAS_VFPV3 || BR2_ARM_CPU_MAYBE_HAS_VFPV3
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       # kernel headers: 2.6.31
+       help
+         Texas Instruments Arago 2011.09 toolchain, with gcc 4.5.3,
+         binutils 2.20.1, glibc 2.12, gdb 7.2.
+
+         This toolchain uses -mfloat-abi=softfp (i.e can use FPU
+         instructions, but passes floating point function arguments
+         in integer registers), and requires a VFPv3 floating point
+         unit to work properly. This unit is available on most
+         Cortex-A ARM processors, but not all.
+
+config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE_201109
+       bool "Arago ARMv5 2011.09"
+       depends on BR2_arm
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_ARM_CPU_ARMV4
+       depends on BR2_ARM_EABI
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       # kernel headers: 2.6.31
+       help
+         Texas Instruments Arago ARMv5 2011.09 toolchain, with gcc
+         4.5.3, binutils 2.20.1, glibc 2.12, gdb 7.2.
+
+         This toolchain uses software-floating point.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201411
+       bool "Sourcery CodeBench MIPS 2014.11"
+       depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_MIPS_NABI32
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16
+       help
+         Sourcery CodeBench toolchain for the MIPS architecture, from
+         Mentor Graphics. It uses gcc 4.9.1, binutils 2.24.51, glibc
+         2.20, uClibc 0.9.30 and gdb 7.7.50, kernel headers 3.16.2. It
+         has support for the following variants:
+           - MIPS32r2 - Big-Endian, 2008 NaN, O32
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mnan=2008
+           - MIPS32r2 - Big-Endian, O32
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+           - MIPS32r2 - Big-Endian, O32, MIPS16
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Big-Endian, Soft-Float, O32
+             Select MIPS (big endian) core
+             Select BR2_SOFT_FLOAT
+           - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16
+             Select MIPS (big endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, 2008 NaN, O32
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mnan=2008
+           - MIPS32r2 - Little-Endian, O32
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+           - MIPS32r2 - Little-Endian, O32, MIPS16
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, Soft-Float, O32
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+           - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mmicromips
+           - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Big-Endian, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32
+             Not usable in Buildroot yet.
+           - MIPS64r2 - Big-Endian, N64
+             Select MIPS64 (big endian) core
+             Select the n64 ABI
+             Disable BR2_SOFT_FLOAT
+           - MIPS64r2 - Big-Endian, Soft-Float, N64
+             Select MIPS64 (big endian) core
+             Select the n64 ABI
+             Select BR2_SOFT_FLOAT
+           - MIPS64r2 - Little-Endian, N64
+             Select MIPS64 (little endian) core
+             Select the n64 ABI
+             Disable BR2_SOFT_FLOAT
+           - MIPS64r2 - Little-Endian, Soft-Float, N64
+             Select MIPS64 (little endian) core
+             Select the n64 ABI
+             Select BR2_SOFT_FLOAT
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201405
+       bool "Sourcery CodeBench MIPS 2014.05"
+       depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_MIPS_NABI32
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
+       help
+         Sourcery CodeBench toolchain for the MIPS architecture, from
+         Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, glibc
+         2.18, uClibc 0.9.30 and gdb 7.7.50, kernel headers 3.13. It
+         has support for the following variants:
+           - MIPS32r2 - Big-Endian, 2008 NaN, O32
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mnan=2008
+           - MIPS32r2 - Big-Endian, O32
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+           - MIPS32r2 - Big-Endian, O32, MIPS16
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Big-Endian, Soft-Float, O32
+             Select MIPS (big endian) core
+             Select BR2_SOFT_FLOAT
+           - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16
+             Select MIPS (big endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, 2008 NaN, O32
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mnan=2008
+           - MIPS32r2 - Little-Endian, O32
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+           - MIPS32r2 - Little-Endian, O32, MIPS16
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, Soft-Float, O32
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+           - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mmicromips
+           - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Big-Endian, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32
+             Not usable in Buildroot yet.
+           - MIPS64r2 - Big-Endian, N64
+             Select MIPS64 (big endian) core
+             Select the n64 ABI
+             Disable BR2_SOFT_FLOAT
+           - MIPS64r2 - Big-Endian, Soft-Float, N64
+             Select MIPS64 (big endian) core
+             Select the n64 ABI
+             Select BR2_SOFT_FLOAT
+           - MIPS64r2 - Little-Endian, N64
+             Select MIPS64 (little endian) core
+             Select the n64 ABI
+             Disable BR2_SOFT_FLOAT
+           - MIPS64r2 - Little-Endian, Soft-Float, N64
+             Select MIPS64 (little endian) core
+             Select the n64 ABI
+             Select BR2_SOFT_FLOAT
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201311
+       bool "Sourcery CodeBench MIPS 2013.11"
+       depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_MIPS_NABI32
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
+       help
+         Sourcery CodeBench toolchain for the MIPS architecture, from
+         Mentor Graphics. It uses gcc 4.8.1, binutils 2.23.52, glibc
+         2.18, uClibc 0.9.30 and gdb 7.6.50, kernel headers 3.11. It
+         has support for the following variants:
+           - MIPS32r2 - Big-Endian, 2008 NaN, O32
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mnan=2008
+           - MIPS32r2 - Big-Endian, O32
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+           - MIPS32r2 - Big-Endian, O32, MIPS16
+             Select MIPS (big endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Big-Endian, Soft-Float, O32
+             Select MIPS (big endian) core
+             Select BR2_SOFT_FLOAT
+           - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16
+             Select MIPS (big endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, 2008 NaN, O32
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mnan=2008
+           - MIPS32r2 - Little-Endian, O32
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+           - MIPS32r2 - Little-Endian, O32, MIPS16
+             Select MIPS (little endian) core
+             Disable BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, Soft-Float, O32
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+           - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mips16
+           - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS
+             Select MIPS (little endian) core
+             Select BR2_SOFT_FLOAT
+             Set BR2_TARGET_OPTIMIZATION to -mmicromips
+           - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Big-Endian, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, O32
+             Not usable in Buildroot yet.
+           - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32
+             Not usable in Buildroot yet.
+           - MIPS64r2 - Big-Endian, N64
+             Select MIPS64 (big endian) core
+             Select the n64 ABI
+             Disable BR2_SOFT_FLOAT
+           - MIPS64r2 - Big-Endian, Soft-Float, N64
+             Select MIPS64 (big endian) core
+             Select the n64 ABI
+             Select BR2_SOFT_FLOAT
+           - MIPS64r2 - Little-Endian, N64
+             Select MIPS64 (little endian) core
+             Select the n64 ABI
+             Disable BR2_SOFT_FLOAT
+           - MIPS64r2 - Little-Endian, Soft-Float, N64
+             Select MIPS64 (little endian) core
+             Select the n64 ABI
+             Select BR2_SOFT_FLOAT
+
+comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64"
+       depends on BR2_MIPS_NABI32
+       depends on !BR2_STATIC_LIBS
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405
+       bool "Sourcery CodeBench Nios-II 2014.05"
+       depends on BR2_nios2
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
+       help
+         Sourcery CodeBench toolchain for the Nios-II architecture,
+         from Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51,
+         glibc 2.19.90, gdb 7.7.50 and kernel headers 3.12.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305
+       bool "Sourcery CodeBench Nios-II 2013.05"
+       depends on BR2_nios2
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
+       help
+         Sourcery CodeBench toolchain for the Nios-II architecture,
+         from Mentor Graphics. It uses gcc 4.7.3, binutils 2.23.52,
+         glibc 2.17, gdb 7.4.50 and kernel headers 3.7.0.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201203
+       bool "Sourcery CodeBench PowerPC 2012.03"
+       depends on BR2_powerpc
+       depends on BR2_powerpc_SPE
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
+       help
+         Sourcery CodeBench toolchain for the PowerPC architecture,
+         from Mentor Graphics. It uses gcc 4.6.3, binutils 2.21.53,
+         glibc 2.15, gdb 7.2.50 and kernel headers 3.2.10. It has
+         support for the following variants:
+           - e500v2 glibc, SPE, 32 bits
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103
+       bool "Sourcery CodeBench PowerPC 2011.03"
+       depends on BR2_powerpc
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       # kernel headers: 2.6.38
+       help
+         Sourcery CodeBench toolchain for the PowerPC architecture,
+         from Mentor Graphics. It uses gcc 4.5.2, binutils 2.20.51,
+         glibc 2.13, gdb 7.2.50 and kernel headers 2.6.38. It has
+         support for the following variants:
+           - 603 glibc, 32 bits
+             Select a generic PowerPC core
+             Disable BR2_SOFT_FLOAT
+           - 603 soft float glibc, 32 bits
+             Select a generic PowerPC core
+             Enable BR2_SOFT_FLOAT
+           - e600 altivec glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te600
+           - e500v1 glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te500v1
+           - e500v2 glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te500v2
+           - e500mc glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te500mc
+           - 970 glibc hard-float, 64 bits
+             Set BR2_TARGET_OPTIMIZATION to -m64
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009
+       bool "Sourcery CodeBench PowerPC 2010.09"
+       depends on BR2_powerpc
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       # kernel headers: 2.6.35
+       help
+         Sourcery CodeBench toolchain for the PowerPC architecture,
+         from Mentor Graphics. It uses gcc 4.5.1, binutils 2.20,
+         glibc 2.11, gdb 7.2.50 and kernel headers 2.6.35.2. It has
+         support for the following variants:
+           - 603 glibc, 32 bits
+             Select a generic PowerPC core
+             Disable BR2_SOFT_FLOAT
+           - 603 soft float glibc, 32 bits
+             Select a generic PowerPC core
+             Enable BR2_SOFT_FLOAT
+           - e600 altivec glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te600
+           - e500v1 glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te500v1
+           - e500v2 glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te500v2
+           - e500mc glibc, 32 bits
+             Set BR2_TARGET_OPTIMIZATION to -te500mc
+           - 970 glibc hard-float, 64 bits
+             Set BR2_TARGET_OPTIMIZATION to -m64
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201209
+       bool "Sourcery CodeBench SH 2012.09"
+       depends on BR2_sh4a || BR2_sh4aeb
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
+       help
+         Sourcery CodeBench toolchain for the SuperH architecture,
+         from Mentor Graphics. It uses gcc 4.7.2, binutils 2.23.51,
+         glibc 2.16, uClibc 0.9.30, gdb 7.4.50 and kernel headers
+         3.5.4. It has support for the following variants:
+           - SH4A, glibc, little endian
+             Default.
+           - SH4A, glibc, big endian
+             Add -mb to BR2_TARGET_OPTIMIZATION
+           - SH4A, uClibc, little endian
+             Not usable in Buildroot yet.
+           - SH4A, uClibc, big endian
+             Not usable in Buildroot yet.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201203
+       bool "Sourcery CodeBench SH 2012.03"
+       depends on BR2_sh4a || BR2_sh4aeb
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
+       help
+         Sourcery CodeBench toolchain for the SuperH architecture,
+         from Mentor Graphics. It uses gcc 4.6.3, binutils 2.21.53,
+         glibc 2.15, uClibc 0.9.30, gdb 7.2.50 and kernel headers
+         3.2.10. It has support for the following variants:
+           - SH4A, glibc, little endian
+             Default.
+           - SH4A, glibc, big endian
+             Add -mb to BR2_TARGET_OPTIMIZATION
+           - SH4A, uClibc, little endian
+             Not usable in Buildroot yet.
+           - SH4A, uClibc, big endian
+             Not usable in Buildroot yet.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103
+       bool "Sourcery CodeBench SH 2011.03"
+       depends on BR2_sh4a || BR2_sh4aeb
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       # kernel headers: 2.6.38
+       help
+         Sourcery CodeBench toolchain for the SuperH architecture,
+         from Mentor Graphics. It uses gcc 4.5.2, binutils 2.20,
+         glibc 2.13, uClibc 0.9.30, gdb 7.2.50 and kernel headers
+         2.6.38. It has support for the following variants:
+           - SH4A, glibc, little endian
+             Default.
+           - SH4A, glibc, big endian
+             Add -mb to BR2_TARGET_OPTIMIZATION
+           - SH4A, uClibc, little endian
+             Not usable in Buildroot yet.
+           - SH4A, uClibc, big endian
+             Not usable in Buildroot yet.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64_201405
+       bool "Sourcery CodeBench AMD64 2014.05"
+       depends on BR2_x86_64
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       depends on BR2_x86_jaguar || BR2_x86_steamroller
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
+       help
+         Sourcery CodeBench toolchain for the amd64 (x86_64)
+         architectures, from Mentor Graphics. It uses gcc 4.8.3,
+         binutils 2.24.51, glibc 2.18, gdb 7.7.50 and kernel headers
+         3.13.0. It has support for the following variants:
+           - AMD Puma/Jaguar (family 16h), glibc
+           Default for x86_64, nothing special to do.
+           - AMD Steamroller (family 15h), glibc
+           Select a steamroller core.
+         No other architecture variants are supported since glibc
+         is optimized for one of these two baselines.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209
+       bool "Sourcery CodeBench x86/x86_64 2012.09"
+       depends on BR2_i386 || BR2_x86_64
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       depends on !BR2_x86_jaguar
+       depends on !BR2_x86_steamroller
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
+       help
+         Sourcery CodeBench toolchain for the x86/x86_64
+         architectures, from Mentor Graphics. It uses gcc 4.7.2,
+         binutils 2.23.51, glibc 2.16, gdb 7.4.50 and kernel headers
+         3.5.4. It has support for the following variants:
+           - Intel Pentium 4, glibc, 32 bits
+             Default for x86, nothing special to do.
+           - Intel Atom, glibc, 32 bits
+             Select an Atom core
+           - Intel Xeon, glibc, 64 bits
+             Default for x86_64, nothing special to do.
+           - Intel Core 2, glibc, 64 bits
+             Select a Core 2 core
+         Other architecture variants (beyond Pentium-4/Xeon) are
+         supported as well, but glibc is not optimised for it.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203
+       bool "Sourcery CodeBench x86/x86_64 2012.03"
+       depends on BR2_i386 || BR2_x86_64
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       depends on !BR2_x86_jaguar
+       depends on !BR2_x86_steamroller
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
+       help
+         Sourcery CodeBench toolchain for the x86/x86_64
+         architectures, from Mentor Graphics. It uses gcc 4.6.3,
+         binutils 2.21.53, glibc 2.15, gdb 7.2.50 and kernel headers
+         3.2.10. It has support for the following variants:
+           - Intel Pentium 4, glibc, 32 bits
+             Default for x86, nothing special to do.
+           - Intel Atom, glibc, 32 bits
+             Select an Atom core
+           - Intel Xeon, glibc, 64 bits
+             Default for x86_64, nothing special to do.
+           - Intel Core 2, glibc, 64 bits
+             Select a Core 2 core
+         Other architecture variants (beyond Pentium-4/Xeon) are
+         supported as well, but glibc is not optimised for it.
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109
+       bool "Sourcery CodeBench x86/x86_64 2011.09"
+       depends on BR2_i386 || BR2_x86_64
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       depends on !BR2_x86_jaguar
+       depends on !BR2_x86_steamroller
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
+       help
+         Sourcery CodeBench toolchain for the x86/x86_64
+         architectures, from Mentor Graphics. It uses gcc 4.6.1,
+         binutils 2.21.53, glibc 2.13, gdb 7.2.50 and kernel headers
+         3.0.1. It has support for the following variants:
+           - Intel Pentium 4, glibc, 32 bits
+             Default for x86, nothing special to do.
+           - Intel Atom, glibc, 32 bits
+             Select an Atom core
+           - Intel Xeon, glibc, 64 bits
+             Default for x86_64, nothing special to do.
+           - Intel Core 2, glibc, 64 bits
+             Select a Core 2 core
+         Other architecture variants (beyond Pentium-4/Xeon) are
+         supported as well, but glibc is not optimised for it.
+
+config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1
+       bool "Blackfin.uclinux.org 2014R1"
+       depends on BR2_bfin
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_USE_WCHAR
+       select BR2_TOOLCHAIN_HAS_THREADS
+       select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
+       help
+         Toolchain for the Blackfin architecture, from
+         http://blackfin.uclinux.org.
+
+config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1
+       bool "Blackfin.uclinux.org 2013R1"
+       depends on BR2_bfin
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_USE_WCHAR
+       select BR2_TOOLCHAIN_HAS_THREADS
+       select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
+       help
+         Toolchain for the Blackfin architecture, from
+         http://blackfin.uclinux.org.
+
+config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2
+       bool "Blackfin.uclinux.org 2012R2-RC2"
+       depends on BR2_bfin
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_USE_WCHAR
+       select BR2_TOOLCHAIN_HAS_THREADS
+       select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
+       help
+         Toolchain for the Blackfin architecture, from
+         http://blackfin.uclinux.org.
+
+config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
+       bool "Linaro AArch64 14.09"
+       depends on BR2_aarch64
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
+       help
+         Toolchain for the AArch64 architecture, from
+         http://www.linaro.org/engineering/armv8/
+
+config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
+       bool "CodeSourcery AArch64 2014.05"
+       depends on BR2_aarch64
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
+       help
+         Sourcery CodeBench toolchain for the AArch64 architecture,
+         from Mentor Graphics. It uses gcc 4.8.3, binutils 2.24,
+         glibc 2.18, gdb 7.7.50 and kernel headers 3.13.
+
+config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
+       bool "Musl 1.1.6 toolchain (experimental)"
+       depends on (BR2_arm && BR2_ARM_EABI) || (BR2_armeb && BR2_ARM_EABI) || \
+               (BR2_i386 && !BR2_x86_i386) || BR2_microblazebe || BR2_mips || \
+               BR2_mipsel || (BR2_powerpc && BR2_powerpc_CLASSIC) || BR2_x86_64
+       depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
+       select BR2_TOOLCHAIN_EXTERNAL_MUSL
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_HOSTARCH_NEEDS_IA32_LIBS
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
+       help
+         Toolchain based on the Musl C library, provided by the
+         musl-cross project. It uses gcc 4.9.2, binutils 2.25 and
+         musl 1.1.6. It does not have a cross debugger included.
+
+         The ARM toolchain is built for ARMv4t, soft-float.
+         The x86 toolchain is built for i486.
+
+         http://musl.codu.org/
+
+config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_2014_12
+       bool "Synopsys ARC 2014.12 toolchain"
+       depends on BR2_arc
+       depends on BR2_HOSTARCH = "x86_64"
+       # does not provide IPv6, and lacks many uClibc features
+       # expected by Buildroot. The next Synopsys toolchain version
+       # should fix those problems.
+       depends on BROKEN
+       select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
+       select BR2_INSTALL_LIBSTDCPP
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       select BR2_ENABLE_LOCALE
+       select BR2_USE_WCHAR
+       select BR2_TOOLCHAIN_HAS_THREADS
+       select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
+       help
+         Toolchain for the ARC cores, from
+         https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases
+
+config BR2_TOOLCHAIN_EXTERNAL_CUSTOM
+       bool "Custom toolchain"
+       help
+         Use this option to use a custom toolchain pre-installed on
+         your system.
+
+endchoice
+
+choice
+       prompt "Toolchain origin"
+       # Keep compatibility with old defconfig files that are using
+       # custom toolchains, and which are therefore assuming that
+       # "preinstalled" in the default choice.
+       default BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
+
+config BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
+       bool "Toolchain to be downloaded and installed"
+       help
+         Select this option if you want Buildroot to download and install the
+         toolchain. If you have selected a custom toolchain, specify the URL
+         in BR2_TOOLCHAIN_EXTERNAL_URL.
+
+config BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED
+       bool "Pre-installed toolchain"
+       help
+         Select this option if you want to use a pre-installed toolchain.
+         Specify the path to this toolchain in BR2_TOOLCHAIN_EXTERNAL_PATH.
+
+endchoice
+
+config BR2_TOOLCHAIN_EXTERNAL_PATH
+       string "Toolchain path"
+       default "/path/to/toolchain/usr"
+       depends on BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED
+       help
+         Path to where the external toolchain is installed.
+
+config BR2_TOOLCHAIN_EXTERNAL_URL
+       string "Toolchain URL"
+       depends on BR2_TOOLCHAIN_EXTERNAL_CUSTOM && BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
+       help
+         URL of the custom toolchain tarball to download and install.
+
+config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX
+       string "Toolchain prefix"
+       depends on BR2_TOOLCHAIN_EXTERNAL_CUSTOM
+       default "$(ARCH)-linux"
+
+config BR2_TOOLCHAIN_EXTERNAL_PREFIX
+       string
+       default "arc-linux"              if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_2014_12 && BR2_arcle
+       default "arceb-linux"            if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC_2014_12 && BR2_arceb
+       default "arm-linux-gnueabihf"    if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
+       default "armeb-linux-gnueabihf"  if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
+       default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201305
+       default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201311
+       default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM201405
+       default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A_201109
+       default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE_201109
+       default "aarch64-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
+       default "aarch64-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
+       default "mips-linux-gnu"         if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201311
+       default "mips-linux-gnu"         if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201405
+       default "mips-linux-gnu"         if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS201411
+       default "nios2-linux-gnu"        if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305
+       default "nios2-linux-gnu"        if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405
+       default "powerpc-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201009
+       default "powerpc-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201103
+       default "powerpc-mentor-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC201203
+       default "sh-linux-gnu"           if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201103
+       default "sh-linux-gnu"           if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201203
+       default "sh-linux-gnu"           if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH201209
+       default "sh-uclinux"             if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201009
+       default "sh-uclinux"             if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH2A_201103
+       default "i686-pc-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201109
+       default "i686-pc-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201203
+       default "i686-pc-linux-gnu"      if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86_201209
+       default "x86_64-amd-linux-gnu"   if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64_201405
+       default "bfin-uclinux"           if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 && BR2_BINFMT_FLAT
+       default "bfin-linux-uclibc"      if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2012R2 && BR2_BINFMT_FDPIC
+       default "bfin-uclinux"           if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 && BR2_BINFMT_FLAT
+       default "bfin-linux-uclibc"      if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2013R1 && BR2_BINFMT_FDPIC
+       default "bfin-uclinux"           if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 && BR2_BINFMT_FLAT
+       default "bfin-linux-uclibc"      if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX_2014R1 && BR2_BINFMT_FDPIC
+       default "arm-linux-musleabi"     if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm
+       default "armeb-linux-musleabi"   if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_armeb
+       default "i486-linux-musl"        if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_i386
+       default "microblaze-linux-musl"  if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_microblazebe
+       default "mips-linux-musl"        if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && (BR2_mips && !BR2_SOFT_FLOAT)
+       default "mips-sf-linux-musl"     if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && (BR2_mips && BR2_SOFT_FLOAT)
+       default "mipsel-linux-musl"      if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && (BR2_mipsel && !BR2_SOFT_FLOAT)
+       default "mipsel-sf-linux-musl"   if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && (BR2_mipsel && BR2_SOFT_FLOAT)
+       default "powerpc-linux-musl"     if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_powerpc
+       default "x86_64-linux-musl"      if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_x86_64
+       default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX \
+                                        if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
+
+config BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       bool
+       select BR2_TOOLCHAIN_USES_GLIBC
+
+config BR2_TOOLCHAIN_EXTERNAL_UCLIBC
+       bool
+       select BR2_TOOLCHAIN_USES_UCLIBC
+
+config BR2_TOOLCHAIN_EXTERNAL_MUSL
+       bool
+       select BR2_TOOLCHAIN_USES_MUSL
+
+if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
+
+choice
+       bool "External toolchain kernel headers series"
+       default BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD
+       help
+         Set to the kernel headers version that were used to build
+         this external toolchain.
+
+         This is used to hide/show some packages that have strict
+         requirements on the version of kernel headers.
+
+         If unsure what version your toolchain is using, you can look
+         at the value of LINUX_VERSION_CODE in linux/version.h in your
+         toolchain. The Linux version is M.m.p, with:
+           M = ( LINUX_VERSION_CODE >> 16 ) & 0xFF
+           m = ( LINUX_VERSION_CODE >> 8  ) & 0xFF
+           p = ( LINUX_VERSION_CODE >> 0  ) & 0xFF
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_0
+       bool "4.0.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_19
+       bool "3.19.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_18
+       bool "3.18.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17
+       bool "3.17.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_16
+       bool "3.16.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_15
+       bool "3.15.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_14
+       bool "3.14.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_13
+       bool "3.13.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_12
+       bool "3.12.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_11
+       bool "3.11.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10
+       bool "3.10.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_9
+       bool "3.9.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_8
+       bool "3.8.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_7
+       bool "3.7.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_6
+       bool "3.6.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_5
+       bool "3.5.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_4
+       bool "3.4.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_3
+       bool "3.3.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_2
+       bool "3.2.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_1
+       bool "3.1.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_0
+       bool "3.0.x"
+       select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
+
+config BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD
+       bool "2.6.x"
+
+endchoice
+
+choice
+       prompt "External toolchain C library"
+       default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
+
+config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
+       bool "uClibc"
+       select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
+       # For the time being, we assume that all custom external
+       # toolchains have shadow password support.
+       select BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS
+       help
+         Select this option if your external toolchain uses the
+         uClibc C library (available from http://www.uclibc.org/).
+
+config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC
+       bool "glibc/eglibc"
+       depends on !BR2_STATIC_LIBS
+       select BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       help
+         Select this option if your external toolchain uses the GNU C
+         library (available from https://www.gnu.org/software/libc/)
+         or its variant the eglibc library (http://www.eglibc.org/).
+
+         Note: eglibc is a variant of glibc that (among other things)
+         can be configured to exclude some of its features. Using a
+         toolchain with eglibc configured to exclude key features may
+         cause build failures to some packages.
+
+comment "(e)glibc only available with shared lib support"
+       depends on BR2_STATIC_LIBS
+
+config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL
+       bool "musl (experimental)"
+       select BR2_TOOLCHAIN_EXTERNAL_MUSL
+       help
+         Select this option if your external toolchain uses the
+         'musl' C library, available from http://www.musl-libc.org/.
+
+endchoice
+
+if BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
+
+config BR2_TOOLCHAIN_EXTERNAL_WCHAR
+       bool "Toolchain has WCHAR support?"
+       select BR2_USE_WCHAR
+       help
+         Select this option if your external toolchain supports
+         WCHAR. If you don't know, leave the default value, Buildroot
+         will tell you if it's correct or not.
+
+config BR2_TOOLCHAIN_EXTERNAL_LOCALE
+       bool "Toolchain has locale support?"
+       select BR2_TOOLCHAIN_EXTERNAL_WCHAR
+       select BR2_ENABLE_LOCALE
+       help
+         Select this option if your external toolchain has locale
+         support. If you don't know, leave the default value,
+         Buildroot will tell you if it's correct or not.
+
+config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
+       bool "Toolchain has threads support?"
+       select BR2_TOOLCHAIN_HAS_THREADS
+       default y
+       help
+         Select this option if your external toolchain has thread
+         support. If you don't know, leave the default value,
+         Buildroot will tell you if it's correct or not.
+
+if BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
+
+config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG
+       bool "Toolchain has threads debugging support?"
+       select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
+       default y
+       help
+         Select this option if your external toolchain has thread
+         debugging support. If you don't know, leave the default
+         value, Buildroot will tell you if it's correct or not.
+
+config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL
+       bool "Toolchain has NPTL threads support?"
+       select BR2_TOOLCHAIN_HAS_THREADS_NPTL
+       default y
+       help
+         Select this option if your external toolchain uses the NPTL
+         (Native Posix Thread Library) implementation of Posix
+         threads. If you don't know, leave the default value,
+         Buildroot will tell you if it's correct or not.
+
+endif # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
+
+config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP
+       bool "Toolchain has SSP support?"
+       select BR2_TOOLCHAIN_HAS_SSP
+       help
+         Selection this option if your external toolchain has Stack
+         Smashing Protection support enabled. If you don't know,
+         leave the default value, Buildroot will tell you if it's
+         correct or not.
+
+endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
+
+config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
+       bool "Toolchain has RPC support?"
+       select BR2_TOOLCHAIN_HAS_NATIVE_RPC
+       depends on !BR2_TOOLCHAIN_EXTERNAL_MUSL
+       default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC
+       help
+         Select this option if your external toolchain supports
+         RPC. If you don't know, leave the default value, Buildroot
+         will tell you if it's correct or not.
+
+config BR2_TOOLCHAIN_EXTERNAL_CXX
+       bool "Toolchain has C++ support?"
+       select BR2_INSTALL_LIBSTDCPP
+       help
+         Select this option if your external toolchain has C++
+         support. If you don't know, leave the default value,
+         Buildroot will tell you if it's correct or not.
+
+config BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS
+       string "Extra toolchain libraries to be copied to target"
+       help
+         If your external toolchain provides extra libraries that
+         need to be copied to the target filesystem, enter them
+         here, separated by spaces. They will be copied to the
+         target's /lib directory.
+
+endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM
+
+config BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
+       bool "Copy gdb server to the Target"
+       depends on BR2_TOOLCHAIN_EXTERNAL
+       help
+         Copy the gdbserver provided by the external toolchain to the
+         target.
+
+# When the FDPIC shared binary format is used, the corresponding libraries are
+# always installed. When a different binary format is used, we offer the option
+# of installing the FDPIC shared libraries.
+config BR2_BFIN_INSTALL_FDPIC_SHARED
+       bool "Install FDPIC shared libraries"
+       depends on BR2_bfin && !BR2_BINFMT_FDPIC
+       help
+         The Linux kernel supports running both FDPIC and FLAT applications
+         concurrently if the binary format specific libraries are installed
+         properly. This option allows developer to install FDPIC libraries
+         into a buildroot rootfs image built with binary format that is not
+         FDPIC.
+
+# When the FLAT shared binary format is used, we force the installation
+# of the corresponding libraries. When a different binary format is
+# used, we offer the option of installing the FLAT shared libraries.
+config BR2_BFIN_INSTALL_FLAT_SHARED
+       bool "Install FLAT shared libraries" if !BR2_BINFMT_FLAT_SHARED
+       depends on BR2_bfin
+       default y if BR2_BINFMT_FLAT_SHARED
+       help
+         The Linux kernel supports running both FDPIC and FLAT applications
+         concurrently if the binary format specific libraries are installed
+         properly. This option allows developer to install FLAT libraries
+         into a buildroot rootfs image built with binary format that is not
+         shared FLAT.
+
+endif # BR2_TOOLCHAIN_EXTERNAL