1c99d70e52
The toolchain-external-package infrastructure is just a copy of the toolchain-external commands, replacing TOOLCHAIN_EXTERNAL by $(2) and adding double-dollars everywhere. toolchain-external itself is converted to a virtual package, but it is faked a little to make sue the toolchains that haven't been converted to toolchain-external-package yet keep on working. The TOOLCHAIN_EXTERNAL_MOVE commands don't have to be redefined for every toolchain-external-package instance, so that is moved out into the common part of pkg-toolchain-external.mk. The musl-compat-headers dependency stays in the toolchain-external package itself. The musl ld link is duplicated in the legacy toolchain-external and the toolchain-external-package, because they have separate hooks. The handling of TOOLCHAIN_EXTERNAL_BIN deserves some special attention, because its value will be different for different toolchain-external-package instances. However, the value only depends on variables that are set by Kconfig (BR2_TOOLCHAIN_EXTERNAL_PREFIX and BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD) so it can easily be used in the generic part. So we don't have to do anything specific for this variable after all. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Romain Naour <romain.naour@gmail.com> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
1039 lines
38 KiB
Plaintext
1039 lines
38 KiB
Plaintext
if BR2_TOOLCHAIN_EXTERNAL
|
|
|
|
comment "Toolchain External Options"
|
|
|
|
choice
|
|
prompt "Toolchain"
|
|
|
|
comment "glibc toolchains only available with shared lib support"
|
|
depends on BR2_STATIC_LIBS
|
|
|
|
comment "Linaro toolchains available for Cortex-A + EABIhf"
|
|
depends on BR2_arm || BR2_armeb
|
|
depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF
|
|
depends on !BR2_STATIC_LIBS
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
|
|
bool "Linaro ARM 2016.05"
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
help
|
|
Linaro toolchain for the ARM architecture. It uses Linaro
|
|
GCC 2016.05 (based on gcc 5.3.1), Linaro GDB 2016.05 (based on
|
|
GDB 7.11.1), glibc 2.21, Binutils 2016.05 (based on 2.25). 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.
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
|
|
bool "Linaro armeb 2016.05"
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
help
|
|
Linaro toolchain for the ARM big endian architecture. It
|
|
uses Linaro GCC 2016.05 (based on gcc 5.3.1), Linaro GDB
|
|
2016.05 (based on GDB 7.11.1), glibc 2.21, Binutils 2016.05
|
|
(based on 2.25). 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.
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
|
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
|
|
|
|
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
|
|
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
|
|
depends on !BR2_STATIC_LIBS
|
|
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
|
|
select BR2_TOOLCHAIN_HAS_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
|
|
# 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
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
|
|
# 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_MIPS
|
|
bool "Sourcery CodeBench MIPS 2016.05"
|
|
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
|
depends on BR2_MIPS_CPU_MIPS32R2 || BR2_MIPS_CPU_MIPS64R2
|
|
# Unsupported MIPS cores
|
|
depends on !BR2_mips_interaptiv
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
help
|
|
Sourcery CodeBench toolchain for the MIPS architecture, from
|
|
Mentor Graphics. It uses gcc 5.3, binutils 2.25.51, glibc
|
|
2.23, uClibc 0.9.30 and gdb 7.10.50, kernel headers 4.4.1. 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_CODESCAPE_IMG_MIPS
|
|
bool "Codescape IMG GNU Linux Toolchain 2016.05"
|
|
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
|
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
|
|
depends on BR2_MIPS_CPU_MIPS32R6 || (BR2_MIPS_CPU_MIPS64R6 && !BR2_MIPS_SOFT_FLOAT)
|
|
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
help
|
|
Codescape IMG GNU Linux Toolchain 2015.10 for the MIPS
|
|
architecture, from Imagination Technologies. It uses gcc
|
|
4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel
|
|
headers 4.0. It has support for the following variants:
|
|
- MIPS32r6 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI
|
|
Select 'MIPS (big endian)' Target Architecture
|
|
Select 'mips 32r6' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
- MIPS32r6 - Big-Endian, Soft-Float, 2008 NaN, o32 ABI
|
|
Select 'MIPS (big endian)' Target Architecture
|
|
Select 'mips 32r6' Target Architecture Variant
|
|
Enable 'Use soft-float'
|
|
- MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r6' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
- MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r6' Target Architecture Variant
|
|
Enable 'Use soft-float'
|
|
- MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI, microMIPS
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r6' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
|
|
- MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI, microMIPS
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r6' Target Architecture Variant
|
|
Enable 'Use soft-float'
|
|
Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
|
|
- MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n32 ABI
|
|
Select 'MIPS64 (big endian)' Target Architecture
|
|
Select 'mips 64r6' Target Architecture Variant
|
|
Select 'n32' Target ABI
|
|
Disable 'Use soft-float'
|
|
- MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n32 ABI
|
|
Select 'MIPS64 (little endian)' Target Architecture
|
|
Select 'mips 64r6' Target Architecture Variant
|
|
Select 'n32' Target ABI
|
|
Disable 'Use soft-float'
|
|
- MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n64 ABI
|
|
Select 'MIPS64 (big endian)' Target Architecture
|
|
Select 'mips 64r6' Target Architecture Variant
|
|
Select 'n64' Target ABI
|
|
Disable 'Use soft-float'
|
|
- MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n64 ABI
|
|
Select 'MIPS64 (little endian)' Target Architecture
|
|
Select 'mips 64r6' Target Architecture Variant
|
|
Select 'n64' Target ABI
|
|
Disable 'Use soft-float'
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS
|
|
bool "Codescape MTI GNU Linux Toolchain 2016.05"
|
|
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
|
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
|
|
depends on BR2_MIPS_CPU_MIPS32R2 || (BR2_MIPS_CPU_MIPS64R2 && !BR2_MIPS_SOFT_FLOAT) || \
|
|
BR2_MIPS_CPU_MIPS32R5 || (BR2_MIPS_CPU_MIPS64R5 && !BR2_MIPS_SOFT_FLOAT)
|
|
select BR2_TOOLCHAIN_EXTERNAL_GLIBC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
help
|
|
Codescape MTI GNU Linux Toolchain 2015.10 for the MIPS
|
|
architecture, from Imagination Technologies. It uses gcc
|
|
4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel
|
|
headers 4.0. It has support for the following variants:
|
|
- MIPS32r2 - Big-Endian, Hard-Float, Legacy NaN, o32 ABI
|
|
Select 'MIPS (big endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
- MIPS32r2 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI
|
|
Select 'MIPS (big endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
Set BR2_TARGET_OPTIMIZATION to '-mnan=2008'
|
|
- MIPS32r2 - Big-Endian, Soft-Float, Legacy NaN, o32 ABI
|
|
Select 'MIPS (big endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Enable 'Use soft-float'
|
|
- MIPS32r2 - Little-Endian, Hard-Float, Legacy NaN, o32 ABI
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
- MIPS32r2 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
Set BR2_TARGET_OPTIMIZATION to '-mnan=2008'
|
|
- MIPS32r2 - Little-Endian, Soft-Float, Legacy NaN, o32 ABI
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Enable 'Use soft-float'
|
|
- MIPS32r2 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI, microMIPS
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Enable 'Use soft-float'
|
|
Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
|
|
- MIPS32r2 - Little-Endian, Soft-Float, Legacy NaN, o32 ABI, microMIPS
|
|
Select 'MIPS (little endian)' Target Architecture
|
|
Select 'mips 32r2' Target Architecture Variant
|
|
Disable 'Use soft-float'
|
|
Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
|
|
- MIPS64r2 - Big-Endian, Hard-Float, Legacy NaN, n32 ABI
|
|
Select 'MIPS64 (big endian)' Target Architecture
|
|
Select 'mips 64r2' Target Architecture Variant
|
|
Select 'n32' Target ABI
|
|
Disable 'Use soft-float'
|
|
- MIPS64r2 - Little-Endian, Hard-Float, Legacy NaN, n32 ABI
|
|
Select 'MIPS64 (little endian)' Target Architecture
|
|
Select 'mips 64r2' Target Architecture Variant
|
|
Select 'n32' Target ABI
|
|
Disable 'Use soft-float'
|
|
- MIPS64r2 - Big-Endian, Hard-Float, Legacy NaN, n64 ABI
|
|
Select 'MIPS64 (big endian)' Target Architecture
|
|
Select 'mips 64r2' Target Architecture Variant
|
|
Select 'n64' Target ABI
|
|
Disable 'Use soft-float'
|
|
- MIPS64r2 - Little-Endian, Hard-Float, Legacy NaN, n64 ABI
|
|
Select 'MIPS64 (little endian)' Target Architecture
|
|
Select 'mips 64r2' Target Architecture Variant
|
|
Select 'n64' Target ABI
|
|
Disable 'Use soft-float'
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
|
|
bool "Sourcery CodeBench Nios-II 2016.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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
select BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # based-on binutils-2.25.1
|
|
help
|
|
Sourcery CodeBench toolchain for the Nios-II architecture,
|
|
from Mentor Graphics. It uses gcc 5.3, binutils 2.25.51,
|
|
glibc 2.23, gdb 7.10.50 and kernel headers 4.4.
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
|
|
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_AMD64
|
|
bool "Sourcery CodeBench AMD64 2015.11"
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
help
|
|
Sourcery CodeBench toolchain for the amd64 (x86_64)
|
|
architectures, from Mentor Graphics. It uses gcc 5.2,
|
|
binutils 2.25.51, glibc 2.22, gdb 7.10.50 and kernel headers
|
|
4.2. 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
|
|
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_SSP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
|
|
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_BLACKFIN_UCLINUX
|
|
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
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
help
|
|
Toolchain for the Blackfin architecture, from
|
|
http://blackfin.uclinux.org.
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
|
|
bool "Linaro AArch64 2016.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_TOOLCHAIN_HAS_SSP
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
help
|
|
Toolchain for the AArch64 architecture, from
|
|
http://www.linaro.org/engineering/armv8/
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
|
|
bool "CodeSourcery AArch64 2014.11"
|
|
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_TOOLCHAIN_HAS_SSP
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
|
help
|
|
Sourcery CodeBench toolchain for the AArch64 architecture,
|
|
from Mentor Graphics. It uses gcc 4.9.1, binutils
|
|
2.24.51.20140217, glibc 2.20, gdb 7.7.50 and kernel headers
|
|
3.16.2.
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
|
|
bool "Musl 1.1.12 toolchain"
|
|
depends on (BR2_arm && BR2_ARM_EABI && BR2_USE_MMU) || \
|
|
(BR2_arm && BR2_ARM_EABIHF && !BR2_ARM_CPU_ARMV4 && BR2_USE_MMU) || \
|
|
(BR2_armeb && BR2_ARM_EABI && !BR2_ARM_CPU_ARMV7A && BR2_USE_MMU) || \
|
|
BR2_i386 || (BR2_mips && !BR2_SOFT_FLOAT) || \
|
|
BR2_mipsel || (BR2_powerpc && BR2_powerpc_CLASSIC) || \
|
|
BR2_sh4 || BR2_sh4eb || \
|
|
BR2_x86_64
|
|
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
|
|
# Unsupported MIPS cores
|
|
depends on !BR2_mips_interaptiv && !BR2_mips_m5100 && !BR2_mips_m5101
|
|
# Unsupported for MIPS R6
|
|
depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
|
|
select BR2_TOOLCHAIN_EXTERNAL_MUSL
|
|
select BR2_TOOLCHAIN_HAS_SSP
|
|
select BR2_INSTALL_LIBSTDCPP
|
|
select BR2_HOSTARCH_NEEDS_IA32_LIBS
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
help
|
|
Toolchain based on the Musl C library, provided by the
|
|
musl-cross project. It uses gcc 5.3, binutils 2.25.1 and
|
|
musl 1.1.12. It does not have a cross debugger included.
|
|
|
|
The ARM soft-float toolchain is built for ARMv4t, while the
|
|
ARM hard-float toolchain is built for ARMv5t.
|
|
The x86 toolchain is built for i486.
|
|
|
|
http://musl.codu.org/
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC
|
|
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
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
|
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 && BR2_arcle
|
|
default "arceb-linux" if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC && 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_ARM
|
|
default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A
|
|
default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE
|
|
default "aarch64-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
|
|
default "aarch64-amd-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
|
|
default "mips-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
|
|
default "nios2-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
|
|
default "sh-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
|
|
default "i686-pc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86
|
|
default "x86_64-amd-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64
|
|
default "bfin-uclinux" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FLAT
|
|
default "bfin-linux-uclibc" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FDPIC
|
|
default "arm-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABI
|
|
default "arm-linux-musleabihf" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABIHF
|
|
default "mips-img-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS
|
|
default "mips-mti-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS
|
|
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 "mips-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 "sh4-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_sh4
|
|
default "sh4eb-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_sh4eb
|
|
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
|
|
# Compatibility headers: cdefs.h, queue.h
|
|
select BR2_PACKAGE_MUSL_COMPAT_HEADERS
|
|
|
|
# Make sure the virtual-package infra checks the provider
|
|
config BR2_PACKAGE_HAS_TOOLCHAIN_EXTERNAL
|
|
bool
|
|
default y
|
|
|
|
config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL
|
|
string
|
|
|
|
if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
|
|
|
|
choice
|
|
bool "External toolchain gcc version"
|
|
default BR2_TOOLCHAIN_EXTERNAL_GCC_4_3
|
|
help
|
|
Set to the gcc version that is used by your external
|
|
toolchain.
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_6
|
|
bool "6.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_5
|
|
bool "5.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_4_9
|
|
bool "4.9.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_4_8
|
|
bool "4.8.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_4_7
|
|
bool "4.7.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_4_6
|
|
bool "4.6.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_4_5
|
|
bool "4.5.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_4_4
|
|
bool "4.4.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_GCC_4_3
|
|
bool "4.3.x"
|
|
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3
|
|
|
|
endchoice
|
|
|
|
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_8
|
|
bool "4.8.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_7
|
|
bool "4.7.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_6
|
|
bool "4.6.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_5
|
|
bool "4.5.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4
|
|
bool "4.4.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3
|
|
bool "4.3.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_2
|
|
bool "4.2.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1
|
|
bool "4.1.x"
|
|
select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1
|
|
|
|
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/uClibc-ng"
|
|
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 (available from http://www.uclibc.org/)
|
|
or uClibc-ng (available from http://www.uclibc-ng.org)
|
|
C library.
|
|
|
|
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 "glibc only available with shared lib support"
|
|
depends on BR2_STATIC_LIBS
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL
|
|
bool "musl"
|
|
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
|
|
|
|
endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
|
|
|
|
config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP
|
|
bool "Toolchain has SSP support?"
|
|
select BR2_TOOLCHAIN_HAS_SSP
|
|
default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC
|
|
default y if BR2_TOOLCHAIN_EXTERNAL_MUSL
|
|
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.
|
|
|
|
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_EXTERNAL_FORTRAN
|
|
bool "Toolchain has Fortran support?"
|
|
select BR2_TOOLCHAIN_HAS_FORTRAN
|
|
help
|
|
Select this option if your external toolchain has Fortran
|
|
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.
|
|
|
|
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
|