Update buidlroot to version 2016.08.1
This commit is contained in:
@@ -3,7 +3,7 @@ if BR2_TOOLCHAIN_EXTERNAL
|
||||
choice
|
||||
prompt "Toolchain"
|
||||
|
||||
comment "(e)glibc toolchains only available with shared lib support"
|
||||
comment "glibc toolchains only available with shared lib support"
|
||||
depends on BR2_STATIC_LIBS
|
||||
|
||||
comment "Linaro toolchains available for Cortex-A + EABIhf"
|
||||
@@ -22,10 +22,12 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
|
||||
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_3_1
|
||||
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||
select BR2_TOOLCHAIN_HAS_FORTRAN
|
||||
help
|
||||
Linaro toolchain for the ARM architecture. It uses Linaro
|
||||
GCC 2014.09 (based on gcc 4.9), Linaro GDB 2013.10 (based on
|
||||
@@ -37,20 +39,22 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
|
||||
|
||||
# See the note above.
|
||||
config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
|
||||
bool "Linaro ARM 2015.11"
|
||||
bool "Linaro ARM 2016.02"
|
||||
depends on BR2_arm
|
||||
depends on BR2_ARM_CPU_ARMV7A
|
||||
depends on BR2_HOSTARCH = "x86_64"
|
||||
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 2015.08 (based on gcc 5.1), Linaro GDB 2015.08 (based on
|
||||
GCC 2016.02 (based on gcc 5.3), Linaro GDB 2016.02 (based on
|
||||
GDB 7.10), glibc 2.21, Binutils 2015.10 (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,
|
||||
@@ -66,10 +70,12 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
|
||||
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_3_1
|
||||
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||
select BR2_TOOLCHAIN_HAS_FORTRAN
|
||||
help
|
||||
Linaro toolchain for the ARM big endian architecture. It
|
||||
uses Linaro GCC 2014.09 (based on gcc 4.9), Linaro GDB
|
||||
@@ -81,21 +87,22 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
|
||||
|
||||
# See the note above.
|
||||
config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
|
||||
bool "Linaro armeb 2015.11"
|
||||
bool "Linaro armeb 2016.02"
|
||||
depends on BR2_armeb
|
||||
depends on BR2_ARM_CPU_ARMV7A
|
||||
depends on BR2_HOSTARCH = "x86_64"
|
||||
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 2015.08 (based on gcc 5.1), Linaro GDB
|
||||
2015.08 (based on GDB 7.10), glibc 2.21, Binutils 2015.10
|
||||
uses Linaro GCC 2016.02 (based on gcc 5.3), Linaro GDB
|
||||
2016.02 (based on GDB 7.10), glibc 2.21, Binutils 2015.10
|
||||
(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
|
||||
@@ -108,6 +115,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM
|
||||
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
|
||||
@@ -143,6 +151,7 @@ config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A
|
||||
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
|
||||
@@ -166,6 +175,7 @@ config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE
|
||||
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
|
||||
@@ -178,22 +188,23 @@ config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE
|
||||
This toolchain uses software-floating point.
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
|
||||
bool "Sourcery CodeBench MIPS 2015.11"
|
||||
bool "Sourcery CodeBench MIPS 2016.05"
|
||||
depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
|
||||
depends on BR2_mips_32r2 || BR2_mips_64r2
|
||||
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_2
|
||||
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.2, binutils 2.25.51, glibc
|
||||
2.22, uClibc 0.9.30 and gdb 7.10.50, kernel headers 4.2. It
|
||||
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
|
||||
@@ -269,167 +280,158 @@ comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 an
|
||||
depends on !BR2_STATIC_LIBS
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS
|
||||
bool "Codescape IMG GNU Linux Toolchain 2015.06"
|
||||
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_SOFT_FLOAT
|
||||
depends on BR2_mips_32r6 || BR2_mips_64r6
|
||||
depends on BR2_mips_32r6 || (BR2_mips_64r6 && !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.06 for the MIPS
|
||||
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, o32
|
||||
- MIPS32r6 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI
|
||||
Select 'MIPS (big endian)' Target Architecture
|
||||
Select 'mips 32r6' Target Architecture Variant
|
||||
- MIPS32r6 - Little-Endian, o32
|
||||
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
|
||||
- MIPS32r6 - Little-Endian, o32, microMIPS
|
||||
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'
|
||||
- MIPS64r6 - Big-Endian, n32
|
||||
- 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
|
||||
- MIPS64r6 - Little-Endian, n32
|
||||
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
|
||||
- MIPS64r6 - Big-Endian, n64
|
||||
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
|
||||
- MIPS64r6 - Little-Endian, n64
|
||||
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 2015.06"
|
||||
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_SOFT_FLOAT
|
||||
depends on BR2_mips_32r2 || BR2_mips_64r2
|
||||
depends on BR2_mips_32r2 || (BR2_mips_64r2 && !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.06 for the MIPS
|
||||
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, o32
|
||||
- MIPS32r2 - Big-Endian, Hard-Float, Legacy NaN, o32 ABI
|
||||
Select 'MIPS (big endian)' Target Architecture
|
||||
Select 'mips 32r2' Target Architecture Variant
|
||||
- MIPS32r2 - Little-Endian, o32
|
||||
Select 'MIPS (little endian)' Target Architecture
|
||||
Select 'mips 32r2' Target Architecture Variant
|
||||
- MIPS32r2 - Big-Endian, 2008 NaN, o32
|
||||
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 - Little-Endian, 2008 NaN, o32
|
||||
- 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
|
||||
Set BR2_TARGET_OPTIMIZATION to '-mnan=2008'
|
||||
- MIPS32r2 - Little-Endian, o32, microMIPS
|
||||
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'
|
||||
- MIPS64r2 - Big-Endian, n32
|
||||
- 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
|
||||
- MIPS64r2 - Little-Endian, n32
|
||||
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
|
||||
- MIPS64r2 - Big-Endian, n64
|
||||
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
|
||||
- MIPS64r2 - Little-Endian, n64
|
||||
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 2015.11"
|
||||
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_2
|
||||
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.2, binutils 2.25.51,
|
||||
glibc 2.22, gdb 7.10.50 and kernel headers 4.2.
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC_E500V2
|
||||
bool "Sourcery CodeBench PowerPC 2012.03 (e500v2 only)"
|
||||
depends on BR2_powerpc
|
||||
depends on BR2_powerpc_8548 # e500v2 support only
|
||||
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
|
||||
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
|
||||
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_POWERPC
|
||||
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
|
||||
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
|
||||
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
|
||||
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"
|
||||
@@ -437,6 +439,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
|
||||
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
|
||||
@@ -463,6 +466,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64
|
||||
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
|
||||
@@ -488,6 +492,7 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86
|
||||
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
|
||||
@@ -522,6 +527,7 @@ config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX
|
||||
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.
|
||||
@@ -533,64 +539,73 @@ config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
|
||||
depends on 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_3_7
|
||||
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
|
||||
select BR2_TOOLCHAIN_HAS_FORTRAN
|
||||
help
|
||||
Toolchain for the AArch64 architecture, from
|
||||
http://www.linaro.org/engineering/armv8/
|
||||
|
||||
# See note about Linaro ARM/ARMEB toolchains, above.
|
||||
config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
|
||||
bool "Linaro AArch64 2015.11"
|
||||
bool "Linaro AArch64 2016.02"
|
||||
depends on BR2_aarch64
|
||||
depends on BR2_HOSTARCH = "x86_64"
|
||||
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.05"
|
||||
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_13
|
||||
select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
|
||||
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.8.3, binutils 2.24,
|
||||
glibc 2.18, gdb 7.7.50 and kernel headers 3.13.
|
||||
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.6 toolchain (experimental)"
|
||||
depends on (BR2_arm && BR2_ARM_EABI) || \
|
||||
(BR2_arm && BR2_ARM_EABIHF && !BR2_ARM_CPU_ARMV4) || \
|
||||
(BR2_armeb && BR2_ARM_EABI) || \
|
||||
(BR2_i386 && !BR2_x86_i386) || BR2_microblazebe || BR2_mips || \
|
||||
BR2_mipsel || (BR2_powerpc && BR2_powerpc_CLASSIC) || BR2_x86_64
|
||||
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 for MIPS R6
|
||||
depends on !BR2_mips_32r6 && !BR2_mips_64r6
|
||||
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_4_9
|
||||
select BR2_TOOLCHAIN_GCC_AT_LEAST_5
|
||||
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.
|
||||
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.
|
||||
@@ -677,11 +692,9 @@ config BR2_TOOLCHAIN_EXTERNAL_PREFIX
|
||||
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-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_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 "powerpc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC
|
||||
default "powerpc-mentor-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC_E500V2
|
||||
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
|
||||
@@ -693,12 +706,12 @@ config BR2_TOOLCHAIN_EXTERNAL_PREFIX
|
||||
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 "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 "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
|
||||
@@ -714,7 +727,8 @@ config BR2_TOOLCHAIN_EXTERNAL_UCLIBC
|
||||
config BR2_TOOLCHAIN_EXTERNAL_MUSL
|
||||
bool
|
||||
select BR2_TOOLCHAIN_USES_MUSL
|
||||
select BR2_PACKAGE_NETBSD_QUEUE
|
||||
# Compatibility headers: cdefs.h, queue.h
|
||||
select BR2_PACKAGE_MUSL_COMPAT_HEADERS
|
||||
|
||||
if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
|
||||
|
||||
@@ -725,6 +739,10 @@ choice
|
||||
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
|
||||
@@ -776,6 +794,18 @@ choice
|
||||
m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF
|
||||
p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF
|
||||
|
||||
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
|
||||
@@ -909,11 +939,11 @@ config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC
|
||||
toolchain with eglibc configured to exclude key features may
|
||||
cause build failures to some packages.
|
||||
|
||||
comment "(e)glibc only available with shared lib support"
|
||||
comment "glibc only available with shared lib support"
|
||||
depends on BR2_STATIC_LIBS
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL
|
||||
bool "musl (experimental)"
|
||||
bool "musl"
|
||||
select BR2_TOOLCHAIN_EXTERNAL_MUSL
|
||||
help
|
||||
Select this option if your external toolchain uses the
|
||||
@@ -972,17 +1002,19 @@ config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL
|
||||
|
||||
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.
|
||||
|
||||
endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
|
||||
|
||||
config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
|
||||
bool "Toolchain has RPC support?"
|
||||
select BR2_TOOLCHAIN_HAS_NATIVE_RPC
|
||||
@@ -1001,13 +1033,20 @@ config BR2_TOOLCHAIN_EXTERNAL_CXX
|
||||
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. They will be copied to the
|
||||
target's /lib directory.
|
||||
here, separated by spaces.
|
||||
|
||||
endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM
|
||||
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
# Sourcery CodeBench Lite for MIPS
|
||||
# Locally computed
|
||||
sha256 e653102803d0fadc0a83286400c03bc7932ab081d3f8fc8917c34e76468315a2 mips-2015.11-32-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
|
||||
######################################
|
||||
# Next hashes are all locally computed
|
||||
|
||||
@@ -12,36 +8,47 @@ sha256 c65b1b4b918d5185349d62a3b7bf43b4b21e1175c52598ec047ca56b3f11d857 blackfi
|
||||
# Mentor's Sourcery CodeBench Lite toolchains
|
||||
# ARM
|
||||
sha256 39ee0e789034334ecc89af94e838e3a4815400ac5ff980f808f466b04778532e arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 e16a5b1e41d7ff1e74161f9405182001bc8d1360d89564e73911032e6966cc0d arm-2014.05-29-arm-none-linux-gnueabi.src.tar.bz2
|
||||
# NiosII
|
||||
sha256 cc47745dc1264fcb8fb98fb1315ab772ab98691396021c455229b58abaf887f5 sourceryg++-2015.11-27-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
# PowerPC
|
||||
sha256 525e1f53abbf65c2974ae9af762c45bb38520fe5fc50e968a23fe6a18e9eec04 freescale-2011.03-38-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 d6c94587d546197836e7e1a6909f6aabfa5879e91f501ab03088a6887cc242fc mentor-2012.03-71-powerpc-mentor-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 750639290744adda931c81fa2cd2ffc2bde972488047824dcfaa53c42562191d sourceryg++-2016.05-10-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 3dc1c2685c0472059547dd7becb5dc991541b8176af39fa7aa5f601d38b9879a sourceryg++-2016.05-10-nios2-linux-gnu.src.tar.bz2
|
||||
# SuperH
|
||||
sha256 59d6766fde244931aa52db01433d5acd051998762a931121c5fc109536a1a802 renesas-2012.09-61-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 e2e58c10e52395d5d35157e35f85233f713c6f9223a652dfc56194cfd2eed004 renesas-2012.09-61-sh-linux-gnu.src.tar.bz2
|
||||
# x86
|
||||
sha256 ea804cf02014369da52abc4f64e91e96bde2dd2230aca96109459013d4545458 ia32-2012.09-62-i686-pc-linux-gnu-i386-linux.tar.bz2
|
||||
sha256 1a9519e415a1e6892c760bf21f7e98f3a633a9d1c5bb8781a96d338e4dd62717 ia32-2012.09-62-i686-pc-linux-gnu.src.tar.bz2
|
||||
# AMD64
|
||||
sha256 cb4d071db8aefb8005fe72824b96568d93a50f5acd85bacf505a34fe2f265f70 amd-2015.11-36-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 3c31206c8b9277f409ee00e4777ba82dfa6da2a4ca0926501cd5fb6bbd1b407e amd-2015.11-139-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 0b673f5035f97d5d03c31272cddab0f117d39ad76a5ad2a3bc98c156571527de amd-2015.11-139-x86_64-amd-linux-gnu.src.tar.bz2
|
||||
# Aarch64
|
||||
sha256 8ea78c5988b2bb507534f1ad46aa46659f66b39d55f2fc40e163a90b4195e70f aarch64-2014.05-30-aarch64-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 405aada821146755c5f2df566375c2a682456d6b8451ee47b88cf1a52b093676 aarch64-amd-2014.11-95-aarch64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 3f50dd6ee433eb5b6992a1071b988e50379a738f54f58722bc60081613764716 aarch64-amd-2014.11-95-aarch64-amd-linux-gnu.src.tar.bz2
|
||||
# MIPS
|
||||
sha256 d354447c4c5160439dafd5464fa3a0266dd41e79f973477238e4f0215a6b5397 mips-2016.05-8-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
sha256 2658e55d5b71bba25d6f77e868e18b200ea5f75c8add7ed3a9266e716d9adfff mips-2016.05-8-mips-linux-gnu.src.tar.bz2
|
||||
|
||||
# ARM toolchains from Texas Instrument's Arago project
|
||||
# There is one source file that covers both binary distributions.
|
||||
sha256 f2febf3b3c565536461ad4405f1bcb835d75a6afb2a8bec958a1248cb4b81fc7 arago-2011.09-armv7a-linux-gnueabi-sdk.tar.bz2
|
||||
sha256 254af7d02eb3bcc8345c78e131700bc995d65b68232caaed21150a5fd1456070 arago-2011.09-armv5te-linux-gnueabi-sdk.tar.bz2
|
||||
sha256 25fbf0513ad7322b15cbaae964cafadcbb4c939f2708f57f40b8f9f2d601122b arago-toolchain-2011.09-sources.tar.bz2
|
||||
|
||||
# ARM and Aarch64 toolchains from Linaro
|
||||
sha256 0cffac0caea0eb3c8bdddfa14be011ce366680f40aeddbefc7cf23cb6d4f1891 gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
|
||||
sha256 ff2d231749e59968cb5e7032b4f4e4ae82ff9f11c23967863e627a6c59cb3bc0 gcc-linaro-5.2-2015.11-2-x86_64_arm-linux-gnueabihf.tar.xz
|
||||
sha256 eafeb3a5247e9ce31aa35d812e296fba5d5f1443e106d9bef9e38d3ee3ade006 gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_src.tar.bz2
|
||||
sha256 dd66f07662e1f3b555eaa0d076f133b6db702ab0b9ab18f7dfc91a23eab653c5 gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf.tar.xz
|
||||
sha256 4bc9d86390f8fa67a693ba4768ba5b12faaf7dd37c706c05ccd9321e765226e4 gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_linux.tar.xz
|
||||
sha256 e3df0c31d0bd8d1f6d45d585203c0f601e50b1ff7225da1423a8ca36e8caf58f gcc-linaro-5.2-2015.11-2-x86_64_armeb-linux-gnueabihf.tar.xz
|
||||
sha256 bf5d3111dad5aa9aef0e955875fb7fc9e918cb24519af7014dd67a9e581a49b1 gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_src.tar.bz2
|
||||
sha256 f488caf46680b0c0a16b66b43fbfd157e3d6389df18e957983132e89529a9804 gcc-linaro-5.3-2016.02-x86_64_armeb-linux-gnueabihf.tar.xz
|
||||
sha256 3954f496ab01de67241109e82abfaa9b7625fdab4f05e79e7902e9814a07b832 gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz
|
||||
sha256 b318a1837a54146b0120a13852386576e38355513b4e2cd5e2125f9c26913777 gcc-linaro-5.2-2015.11-2-x86_64_aarch64-linux-gnu.tar.xz
|
||||
sha256 a7b8f842fdc9d9be22ca4e0c999429780fc6f16ea798b032421b5ec0cfa53b3e gcc-linaro-aarch64-linux-gnu-4.9-2014.09_src.tar.bz2
|
||||
sha256 1c85af550bedd378be583317b4abbdc96342b42c19fb19873c13d3093ff694ad gcc-linaro-5.3-2016.02-x86_64_aarch64-linux-gnu.tar.xz
|
||||
|
||||
# Codescape toolchains from Imagination Technologies
|
||||
# From: http://codescape-mips-sdk.imgtec.com/components/toolchain/2015.06-05/
|
||||
sha256 f2d12dde626b750987d37ba6c73c6e11839850add94b0d4e4cf77917c1b0944f Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz
|
||||
sha256 545923cf40101b5de6b1e0fdf124aceba7ab27daf6c755aecf01d2c886715409 Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz
|
||||
# From: http://codescape-mips-sdk.imgtec.com/components/toolchain/2016.05-03/downloads.html
|
||||
sha256 e3c1f292ac6a9f12480af431c85a7ed9dfa011a52fd62a50be3363ec6b9bc872 Codescape.GNU.Tools.Package.2016.05-03.for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz
|
||||
sha256 10b8ab6d7c492abc19ecabafedc6bc5f12ff88107a3cb76dc452b3a9522d9c56 Codescape.GNU.Tools.Package.2016.05-03.for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz
|
||||
|
||||
# Synopsys DesignWare ARC toolchains
|
||||
sha256 1fa4ea2c8616623205f1c7beca02ea31b019099528a7433e5b020b0876b93bf3 arc_gnu_2014.12_prebuilt_uclibc_le_arc700_linux_install.tar.gz
|
||||
@@ -50,15 +57,14 @@ sha256 aaaf6facd1f60a3cd2a537154ea39cd7d70501c175e30e01a97e8df6cb8226c7 arc_gnu
|
||||
sha256 30711c5f15762764d4cd5ec1e6ced5b1fddd03aac41c424b0c4ec8a45d5d79cd arc_gnu_2014.12_prebuilt_uclibc_be_archs_linux_install.tar.gz
|
||||
|
||||
# Prebuilt musl toolchains from musl-cross
|
||||
sha256 26da90f5cf5e5220b1d6424420ab9f3877a1826a2a5268a62d390711c0e73cd0 crossx86-arm-linux-musleabi-1.1.6.tar.xz
|
||||
sha256 c3b1c79a48e999c8f655cd008d04ba53c4f76217fa3c289566dab174e8ef8711 crossx86-arm-linux-musleabihf-1.1.6.tar.xz
|
||||
sha256 b74ebf6e92b69bb7c7651cc8ff87a14c41fd9c043af9db7304b293c291c830b5 crossx86-armeb-linux-musleabi-1.1.6.tar.xz
|
||||
sha256 740716209e1aef0442fe8e200a1b2582d9d86e86ff6d113ab9678b592121e2f9 crossx86-i486-linux-musl-1.1.6.tar.xz
|
||||
sha256 7a0da8bd22c25ad11acc8309d8541b7b7966ccefcf136d860d38bf625c05b53e crossx86-microblaze-linux-musl-1.1.6.tar.xz
|
||||
sha256 b89503aeb02a5201476ff4bb014879f1989868c9c25f2af84e2fc04bec7acf2e crossx86-mips-linux-musl-1.1.6.tar.xz
|
||||
sha256 552996f7a8132f8be994513156a30f4c03fff4873b76726b98e4e0056257367f crossx86-mipsel-linux-musl-1.1.6.tar.xz
|
||||
sha256 c49f7425ac9d0629cd9893d7bc247d5e6847c9eb5d11924dbc440b9d10f6c2bb crossx86-powerpc-linux-musl-1.1.6.tar.xz
|
||||
sha256 79a1a4be93e2a63acb137170e98bdfbf744bd9ca7b15b76ab512d1e0dfec834e crossx86-sh4-linux-musl-1.1.6.tar.xz
|
||||
sha256 aec4d560dc601e397fc86a9759166005afba22ad666d1a48019b5102c534ccc1 crossx86-sh4eb-linux-musl-1.1.6.tar.xz
|
||||
sha256 68eda0795aacd4371b45a6c58c5c75e86c0c2fdf7ebc2c0b7d3752462c848260 crossx86-x86_64-linux-musl-1.1.6.tar.xz
|
||||
sha256 6bef5ee2cdb9fa35e49ce0a270f6d7c48f3268c6f6345ad5ca0b8137982b4690 crossx86-x86_64-x32-linux-musl-1.1.6.tar.xz
|
||||
sha256 e32c23d0b83639fc10ad06666ec086b66453b9be44415fe1a818c3c3b526dfb1 crossx86-armeb-linux-musleabi-1.1.12.tar.xz
|
||||
sha256 eb81bd5d6ada454c6e854b18bfa8dc801333782152166f6cab9fb7cd11692987 crossx86-arm-linux-musleabi-1.1.12.tar.xz
|
||||
sha256 a050da284ff22d291ae71dfc249ebdedb18334b8d626804760ce7d5963e392e6 crossx86-arm-linux-musleabihf-1.1.12.tar.xz
|
||||
sha256 18d07f5c8f4cfe373461cf21cf7b1bfefa820a37e96a69b68e0f315d528b4286 crossx86-i486-linux-musl-1.1.12.tar.xz
|
||||
sha256 1c1480c2618097e402fe804c1431fbd49b0d43520af81d4c1a695a2fa13a3922 crossx86-mipsel-linux-musl-1.1.12.tar.xz
|
||||
sha256 f0a8b3eb0566138ab3cc77bc09648be15bc325da974ec98b9e67f2fb82be3295 crossx86-mipsel-sf-linux-musl-1.1.12.tar.xz
|
||||
sha256 6a99989c3dff56776981f6760b2c54dcb9e4032be1d649968bb06c04f2e64177 crossx86-mips-linux-musl-1.1.12.tar.xz
|
||||
sha256 c082adc3e8b0750bb22ca82628524fd525fd77f534517ac5a66e7ac5a297ee6e crossx86-powerpc-linux-musl-1.1.12.tar.xz
|
||||
sha256 8c6c9ebb54040e47947b4d3af6823d01fef2bb6ee81b18903c801030c066092b crossx86-sh4eb-linux-musl-1.1.12.tar.xz
|
||||
sha256 ae9a0a5a60226aa086a56628cfd5c1d283c9dffdca37891d7e6adc2bd21ac2e0 crossx86-sh4-linux-musl-1.1.12.tar.xz
|
||||
sha256 27e0ea1043a58aebeadf1dacd67e47fd0b5c19fc36f42c9374e5fa3308df09c6 crossx86-x86_64-linux-musl-1.1.12.tar.xz
|
||||
|
||||
@@ -64,33 +64,41 @@
|
||||
# of Buildroot is handled identical for the 2 toolchain types.
|
||||
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GLIBC)$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC),y)
|
||||
LIB_EXTERNAL_LIBS += libatomic.so.* libc.so.* libcrypt.so.* libdl.so.* libgcc_s.so.* libm.so.* libnsl.so.* libresolv.so.* librt.so.* libutil.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libatomic.so.* libc.so.* libcrypt.so.* libdl.so.* libgcc_s.so.* libm.so.* libnsl.so.* libresolv.so.* librt.so.* libutil.so.*
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GLIBC)$(BR2_ARM_EABIHF),yy)
|
||||
LIB_EXTERNAL_LIBS += ld-linux-armhf.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += ld-linux-armhf.so.*
|
||||
else
|
||||
LIB_EXTERNAL_LIBS += ld*.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += ld*.so.*
|
||||
endif
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
|
||||
LIB_EXTERNAL_LIBS += libpthread.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libpthread.so.*
|
||||
ifneq ($(BR2_PACKAGE_GDB)$(BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY),)
|
||||
LIB_EXTERNAL_LIBS += libthread_db.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libthread_db.so.*
|
||||
endif # gdbserver
|
||||
endif # ! no threads
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GLIBC),y)
|
||||
LIB_EXTERNAL_LIBS += libnss_files.so.* libnss_dns.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libnss_files.so.* libnss_dns.so.*
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_MUSL),y)
|
||||
LIB_EXTERNAL_LIBS += libc.so libgcc_s.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libc.so libgcc_s.so.*
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_INSTALL_LIBSTDCPP),y)
|
||||
USR_LIB_EXTERNAL_LIBS += libstdc++.so.*
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libstdc++.so.*
|
||||
endif
|
||||
|
||||
LIB_EXTERNAL_LIBS += $(call qstrip,$(BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS))
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_FORTRAN),y)
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libgfortran.so.*
|
||||
# fortran needs quadmath on x86 and x86_64
|
||||
ifeq ($(BR2_TOOLCHAIN_HAS_LIBQUADMATH),y)
|
||||
TOOLCHAIN_EXTERNAL_LIBS += libquadmath.so*
|
||||
endif
|
||||
endif
|
||||
|
||||
TOOLCHAIN_EXTERNAL_LIBS += $(call qstrip,$(BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS))
|
||||
|
||||
# Details about sysroot directory selection.
|
||||
#
|
||||
@@ -130,8 +138,10 @@ LIB_EXTERNAL_LIBS += $(call qstrip,$(BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS))
|
||||
|
||||
|
||||
TOOLCHAIN_EXTERNAL_PREFIX = $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PREFIX))
|
||||
TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR = $(HOST_DIR)/opt/ext-toolchain
|
||||
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD),y)
|
||||
TOOLCHAIN_EXTERNAL_INSTALL_DIR = $(HOST_DIR)/opt/ext-toolchain
|
||||
TOOLCHAIN_EXTERNAL_INSTALL_DIR = $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR)
|
||||
else
|
||||
TOOLCHAIN_EXTERNAL_INSTALL_DIR = $(call qstrip,$(BR2_TOOLCHAIN_EXTERNAL_PATH))
|
||||
endif
|
||||
@@ -160,6 +170,7 @@ TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += \
|
||||
TOOLCHAIN_EXTERNAL_CROSS = $(TOOLCHAIN_EXTERNAL_BIN)/$(TOOLCHAIN_EXTERNAL_PREFIX)-
|
||||
TOOLCHAIN_EXTERNAL_CC = $(TOOLCHAIN_EXTERNAL_CROSS)gcc$(TOOLCHAIN_EXTERNAL_SUFFIX)
|
||||
TOOLCHAIN_EXTERNAL_CXX = $(TOOLCHAIN_EXTERNAL_CROSS)g++$(TOOLCHAIN_EXTERNAL_SUFFIX)
|
||||
TOOLCHAIN_EXTERNAL_FC = $(TOOLCHAIN_EXTERNAL_CROSS)gfortran$(TOOLCHAIN_EXTERNAL_SUFFIX)
|
||||
TOOLCHAIN_EXTERNAL_READELF = $(TOOLCHAIN_EXTERNAL_CROSS)readelf$(TOOLCHAIN_EXTERNAL_SUFFIX)
|
||||
|
||||
ifeq ($(filter $(HOST_DIR)/%,$(TOOLCHAIN_EXTERNAL_BIN)),)
|
||||
@@ -237,30 +248,54 @@ TOOLCHAIN_EXTERNAL_CFLAGS += -msoft-float
|
||||
TOOLCHAIN_EXTERNAL_TOOLCHAIN_WRAPPER_ARGS += -DBR_SOFTFLOAT=1
|
||||
endif
|
||||
|
||||
# musl does not provide a sys/queue.h implementation, so add the
|
||||
# netbsd-queue package that will install a sys/queue.h file in the
|
||||
# staging directory based on the NetBSD implementation.
|
||||
# musl does not provide an implementation for sys/queue.h or sys/cdefs.h.
|
||||
# So, add the musl-compat-headers package that will install those files,
|
||||
# into the staging directory:
|
||||
# sys/queue.h: header from NetBSD
|
||||
# sys/cdefs.h: minimalist header bundled in Buildroot
|
||||
ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y)
|
||||
TOOLCHAIN_EXTERNAL_DEPENDENCIES += netbsd-queue
|
||||
TOOLCHAIN_EXTERNAL_DEPENDENCIES += musl-compat-headers
|
||||
endif
|
||||
|
||||
# The Linaro ARMhf toolchain expects the libraries in
|
||||
# {/usr,}/lib/arm-linux-gnueabihf, but Buildroot copies them to
|
||||
# The Linaro toolchain expects the libraries in
|
||||
# {/usr,}/lib/<tuple>, but Buildroot copies them to
|
||||
# {/usr,}/lib, so we need to create a symbolic link.
|
||||
define TOOLCHAIN_EXTERNAL_LINARO_ARMHF_SYMLINK
|
||||
ln -snf . $(TARGET_DIR)/lib/arm-linux-gnueabihf
|
||||
ln -snf . $(TARGET_DIR)/usr/lib/arm-linux-gnueabihf
|
||||
define TOOLCHAIN_EXTERNAL_LINARO_SYMLINK
|
||||
ln -snf . $(TARGET_DIR)/lib/$(TOOLCHAIN_EXTERNAL_PREFIX)
|
||||
ln -snf . $(TARGET_DIR)/usr/lib/$(TOOLCHAIN_EXTERNAL_PREFIX)
|
||||
endef
|
||||
|
||||
define TOOLCHAIN_EXTERNAL_LINARO_ARMEBHF_SYMLINK
|
||||
ln -snf . $(TARGET_DIR)/lib/armeb-linux-gnueabihf
|
||||
ln -snf . $(TARGET_DIR)/usr/lib/armeb-linux-gnueabihf
|
||||
# The Codescape toolchain uses a sysroot layout that places them
|
||||
# side-by-side instead of nested like multilibs. A symlink is needed
|
||||
# much like for the nested sysroots which are handled in
|
||||
# copy_toolchain_sysroot but there is not enough information in there
|
||||
# to determine whether the sysroot layout was nested or side-by-side.
|
||||
# Add the symlink here for now.
|
||||
define TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_SYMLINK
|
||||
$(Q)ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))"; \
|
||||
ARCH_SUBDIR=`basename $${ARCH_SYSROOT_DIR}`; \
|
||||
ln -snf . $(STAGING_DIR)/$${ARCH_SUBDIR}
|
||||
endef
|
||||
|
||||
define TOOLCHAIN_EXTERNAL_LINARO_AARCH64_SYMLINK
|
||||
ln -snf . $(TARGET_DIR)/lib/aarch64-linux-gnu
|
||||
ln -snf . $(TARGET_DIR)/usr/lib/aarch64-linux-gnu
|
||||
# Special fixup for Codescape MIPS toolchains, that have bin-<abi> and
|
||||
# sbin-<abi> directories. We create symlinks bin -> bin-<abi> and sbin
|
||||
# -> sbin-<abi> so that the rest of Buildroot can find the toolchain
|
||||
# tools in the appropriate location.
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS)$(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS),y)
|
||||
ifeq ($(BR2_MIPS_OABI32),y)
|
||||
TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_BIN_DIR_SUFFIX = o32
|
||||
else ifeq ($(BR2_MIPS_NABI32),y)
|
||||
TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_BIN_DIR_SUFFIX = n32
|
||||
else ifeq ($(BR2_MIPS_NABI64),y)
|
||||
TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_BIN_DIR_SUFFIX = n64
|
||||
endif
|
||||
|
||||
define TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_STAGING_FIXUPS
|
||||
rmdir $(STAGING_DIR)/usr/bin $(STAGING_DIR)/usr/sbin
|
||||
ln -sf bin-$(TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_BIN_DIR_SUFFIX) $(STAGING_DIR)/usr/bin
|
||||
ln -sf sbin-$(TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_BIN_DIR_SUFFIX) $(STAGING_DIR)/usr/sbin
|
||||
endef
|
||||
endif
|
||||
|
||||
# Special handling for Blackfin toolchain, because of the split in two
|
||||
# tarballs, and the organization of tarball contents. The tarballs
|
||||
@@ -295,36 +330,30 @@ endef
|
||||
TOOLCHAIN_EXTERNAL_POST_EXTRACT_HOOKS += TOOLCHAIN_EXTERNAL_FIXUP_CMDS
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM),y)
|
||||
ifeq ($(HOSTARCH),x86)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/14.09/components/toolchain/binaries
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://releases.linaro.org/14.09/components/toolchain/binaries
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.xz
|
||||
TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_src.tar.bz2
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_ARMHF_SYMLINK
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_SYMLINK
|
||||
else
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/components/toolchain/binaries/5.2-2015.11-2/arm-linux-gnueabihf
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.2-2015.11-2-x86_64_arm-linux-gnueabihf.tar.xz
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://releases.linaro.org/components/toolchain/binaries/5.3-2016.02/arm-linux-gnueabihf
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.3-2016.02-x86_64_arm-linux-gnueabihf.tar.xz
|
||||
endif
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB),y)
|
||||
ifeq ($(HOSTARCH),x86)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/14.09/components/toolchain/binaries
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://releases.linaro.org/14.09/components/toolchain/binaries
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_linux.tar.xz
|
||||
TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = gcc-linaro-armeb-linux-gnueabihf-4.9-2014.09_src.tar.bz2
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_ARMEBHF_SYMLINK
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_SYMLINK
|
||||
else
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/components/toolchain/binaries/5.2-2015.11-2/armeb-linux-gnueabihf
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.2-2015.11-2-x86_64_armeb-linux-gnueabihf.tar.xz
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://releases.linaro.org/components/toolchain/binaries/5.3-2016.02/armeb-linux-gnueabihf
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.3-2016.02-x86_64_armeb-linux-gnueabihf.tar.xz
|
||||
endif
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/mips-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = mips-2015.11-32-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = mips-2016.05-8-mips-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/nios2-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = sourceryg++-2015.11-27-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC_E500V2),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/powerpc-mentor-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = mentor-2012.03-71-powerpc-mentor-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_POWERPC),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/powerpc-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = freescale-2011.03-38-powerpc-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = sourceryg++-2016.05-10-nios2-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://sourcery.mentor.com/public/gnu_toolchain/sh-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = renesas-2012.09-61-sh-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
@@ -333,14 +362,18 @@ TOOLCHAIN_EXTERNAL_SITE = https://sourcery.mentor.com/public/gnu_toolchain/i686-
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = ia32-2012.09-62-i686-pc-linux-gnu-i386-linux.tar.bz2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://sourcery.mentor.com/public/gnu_toolchain/x86_64-amd-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = amd-2015.11-36-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = amd-2015.11-139-x86_64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/2015.06-05
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/2016.05-03
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = Codescape.GNU.Tools.Package.2016.05-03.for.MIPS.IMG.Linux.CentOS-5.x86.tar.gz
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_SYMLINK
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_STAGING_FIXUPS
|
||||
TOOLCHAIN_EXTERNAL_STRIP_COMPONENTS = 2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/2015.06-05
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = Codescape.GNU.Tools.Package.2015.06-05.for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://codescape-mips-sdk.imgtec.com/components/toolchain/2016.05-03
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = Codescape.GNU.Tools.Package.2016.05-03.for.MIPS.MTI.Linux.CentOS-5.x86.tar.gz
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_SYMLINK
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_CODESCAPE_MIPS_STAGING_FIXUPS
|
||||
TOOLCHAIN_EXTERNAL_STRIP_COMPONENTS = 2
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://downloads.sourceforge.net/project/adi-toolchain/2014R1/2014R1-RC2/i386
|
||||
@@ -350,19 +383,27 @@ TOOLCHAIN_EXTERNAL_STRIP_COMPONENTS = 3
|
||||
TOOLCHAIN_EXTERNAL_POST_EXTRACT_HOOKS += TOOLCHAIN_EXTERNAL_BLACKFIN_UCLIBC_EXTRA_EXTRACT
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64),y)
|
||||
ifeq ($(HOSTARCH),x86)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/14.09/components/toolchain/binaries
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://releases.linaro.org/14.09/components/toolchain/binaries
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-aarch64-linux-gnu-4.9-2014.09_linux.tar.xz
|
||||
TOOLCHAIN_EXTERNAL_ACTUAL_SOURCE_TARBALL = gcc-linaro-aarch64-linux-gnu-4.9-2014.09_src.tar.bz2
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_AARCH64_SYMLINK
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_LINARO_SYMLINK
|
||||
else
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://releases.linaro.org/components/toolchain/binaries/5.2-2015.11-2/aarch64-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.2-2015.11-2-x86_64_aarch64-linux-gnu.tar.xz
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://releases.linaro.org/components/toolchain/binaries/5.3-2016.02/aarch64-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = gcc-linaro-5.3-2016.02-x86_64_aarch64-linux-gnu.tar.xz
|
||||
endif
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64),y)
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/aarch64-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = aarch64-2014.05-30-aarch64-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
TOOLCHAIN_EXTERNAL_SITE = http://sourcery.mentor.com/public/gnu_toolchain/aarch64-amd-linux-gnu
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = aarch64-amd-2014.11-95-aarch64-amd-linux-gnu-i686-pc-linux-gnu.tar.bz2
|
||||
define TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_STAGING_FIXUP
|
||||
ln -sf ld-2.20.so $(STAGING_DIR)/lib/ld-linux-aarch64.so.1
|
||||
endef
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_STAGING_FIXUP
|
||||
define TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_TARGET_FIXUP
|
||||
ln -sf ld-2.20.so $(TARGET_DIR)/lib/ld-linux-aarch64.so.1
|
||||
endef
|
||||
TOOLCHAIN_EXTERNAL_POST_INSTALL_TARGET_HOOKS += TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64_TARGET_FIXUP
|
||||
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS),y)
|
||||
TOOLCHAIN_EXTERNAL_VERSION = 1.1.6
|
||||
TOOLCHAIN_EXTERNAL_VERSION = 1.1.12
|
||||
TOOLCHAIN_EXTERNAL_SITE = https://googledrive.com/host/0BwnS5DMB0YQ6bDhPZkpOYVFhbk0/musl-$(TOOLCHAIN_EXTERNAL_VERSION)
|
||||
ifeq ($(BR2_arm)$(BR2_ARM_EABI),yy)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-arm-linux-musleabi-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
@@ -372,14 +413,18 @@ else ifeq ($(BR2_armeb),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-armeb-linux-musleabi-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_i386),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-i486-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_microblazebe),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-microblaze-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_mips),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-mips-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_mipsel),y)
|
||||
else ifeq ($(BR2_mipsel):$(BR2_SOFT_FLOAT),y:)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-mipsel-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_mipsel):$(BR2_SOFT_FLOAT),y:y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-mipsel-sf-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_powerpc),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-powerpc-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_sh4),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-sh4-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_sh4eb),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-sh4eb-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
else ifeq ($(BR2_x86_64),y)
|
||||
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-x86_64-linux-musl-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
|
||||
endif
|
||||
@@ -424,16 +469,16 @@ TOOLCHAIN_EXTERNAL_ADD_TOOLCHAIN_DEPENDENCY = NO
|
||||
TOOLCHAIN_EXTERNAL_INSTALL_STAGING = YES
|
||||
|
||||
# Normal handling of downloaded toolchain tarball extraction.
|
||||
ifneq ($(TOOLCHAIN_EXTERNAL_SOURCE),)
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD),y)
|
||||
TOOLCHAIN_EXTERNAL_EXCLUDES = usr/lib/locale/*
|
||||
|
||||
# As a regular package, the toolchain gets extracted in $(@D), but
|
||||
# since it's actually a fairly special package, we need it to be moved
|
||||
# into TOOLCHAIN_EXTERNAL_INSTALL_DIR.
|
||||
# into TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR.
|
||||
define TOOLCHAIN_EXTERNAL_MOVE
|
||||
rm -rf $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/*
|
||||
mkdir -p $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)
|
||||
mv $(@D)/* $(TOOLCHAIN_EXTERNAL_INSTALL_DIR)/
|
||||
rm -rf $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR)
|
||||
mkdir -p $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR)
|
||||
mv $(@D)/* $(TOOLCHAIN_EXTERNAL_DOWNLOAD_INSTALL_DIR)/
|
||||
endef
|
||||
TOOLCHAIN_EXTERNAL_POST_EXTRACT_HOOKS += \
|
||||
TOOLCHAIN_EXTERNAL_MOVE
|
||||
@@ -467,17 +512,13 @@ $$(printf $(call toolchain_find_libc_a,$(1)) | sed -r -e 's:.*/(usr/)?(lib(32|64
|
||||
endef
|
||||
|
||||
# Checks for an already installed toolchain: check the toolchain
|
||||
# location, check that it supports sysroot, and then verify that it
|
||||
# location, check that it is usable, and then verify that it
|
||||
# matches the configuration provided in Buildroot: ABI, C++ support,
|
||||
# kernel headers version, type of C library and all C library features.
|
||||
define TOOLCHAIN_EXTERNAL_CONFIGURE_CMDS
|
||||
$(Q)$(call check_cross_compiler_exists,$(TOOLCHAIN_EXTERNAL_CC))
|
||||
$(Q)$(call check_unusable_toolchain,$(TOOLCHAIN_EXTERNAL_CC))
|
||||
$(Q)SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC))" ; \
|
||||
if test -z "$${SYSROOT_DIR}" ; then \
|
||||
@echo "External toolchain doesn't support --sysroot. Cannot use." ; \
|
||||
exit 1 ; \
|
||||
fi ; \
|
||||
$(call check_kernel_headers_version,\
|
||||
$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC)),\
|
||||
$(call qstrip,$(BR2_TOOLCHAIN_HEADERS_AT_LEAST))); \
|
||||
@@ -491,6 +532,9 @@ define TOOLCHAIN_EXTERNAL_CONFIGURE_CMDS
|
||||
if test "$(BR2_INSTALL_LIBSTDCPP)" = "y" ; then \
|
||||
$(call check_cplusplus,$(TOOLCHAIN_EXTERNAL_CXX)) ; \
|
||||
fi ; \
|
||||
if test "$(BR2_TOOLCHAIN_HAS_FORTRAN)" = "y" ; then \
|
||||
$(call check_fortran,$(TOOLCHAIN_EXTERNAL_FC)) ; \
|
||||
fi ; \
|
||||
if test "$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC)" = "y" ; then \
|
||||
$(call check_uclibc,$${SYSROOT_DIR}) ; \
|
||||
elif test "$(BR2_TOOLCHAIN_EXTERNAL_MUSL)" = "y" ; then \
|
||||
@@ -498,6 +542,7 @@ define TOOLCHAIN_EXTERNAL_CONFIGURE_CMDS
|
||||
else \
|
||||
$(call check_glibc,$${SYSROOT_DIR}) ; \
|
||||
fi
|
||||
$(Q)$(call check_toolchain_ssp,$(TOOLCHAIN_EXTERNAL_CC))
|
||||
endef
|
||||
|
||||
# With the musl C library, the libc.so library directly plays the role
|
||||
@@ -508,6 +553,10 @@ ifeq ($(BR2_i386),y)
|
||||
MUSL_ARCH = i386
|
||||
else ifeq ($(BR2_ARM_EABIHF),y)
|
||||
MUSL_ARCH = armhf
|
||||
else ifeq ($(BR2_mipsel):$(BR2_SOFT_FLOAT),y:y)
|
||||
MUSL_ARCH = mipsel-sf
|
||||
else ifeq ($(BR2_sh),y)
|
||||
MUSL_ARCH = sh
|
||||
else
|
||||
MUSL_ARCH = $(ARCH)
|
||||
endif
|
||||
@@ -585,58 +634,45 @@ endef
|
||||
# our sysroot, and the directory will also be
|
||||
# considered when searching libraries for copy
|
||||
# to the target filesystem.
|
||||
#
|
||||
# Please be very careful to check the major toolchain sources:
|
||||
# Buildroot, Crosstool-NG, CodeSourcery and Linaro
|
||||
# before doing any modification on the below logic.
|
||||
|
||||
ifeq ($(BR2_STATIC_LIBS),)
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LIBS
|
||||
$(Q)SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC))" ; \
|
||||
if test -z "$${SYSROOT_DIR}" ; then \
|
||||
@echo "External toolchain doesn't support --sysroot. Cannot use." ; \
|
||||
exit 1 ; \
|
||||
fi ; \
|
||||
ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \
|
||||
$(Q)$(call MESSAGE,"Copying external toolchain libraries to target...")
|
||||
$(Q)for libs in $(TOOLCHAIN_EXTERNAL_LIBS); do \
|
||||
$(call copy_toolchain_lib_root,$$libs); \
|
||||
done
|
||||
endef
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY),y)
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_GDBSERVER
|
||||
$(Q)$(call MESSAGE,"Copying gdbserver")
|
||||
$(Q)ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \
|
||||
ARCH_LIB_DIR="$(call toolchain_find_libdir,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \
|
||||
SUPPORT_LIB_DIR="" ; \
|
||||
if test `find $${ARCH_SYSROOT_DIR} -name 'libstdc++.a' | wc -l` -eq 0 ; then \
|
||||
LIBSTDCPP_A_LOCATION=$$(LANG=C $(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS) -print-file-name=libstdc++.a) ; \
|
||||
if [ -e "$${LIBSTDCPP_A_LOCATION}" ]; then \
|
||||
SUPPORT_LIB_DIR=`readlink -f $${LIBSTDCPP_A_LOCATION} | sed -r -e 's:libstdc\+\+\.a::'` ; \
|
||||
fi ; \
|
||||
fi ; \
|
||||
ARCH_SUBDIR=`echo $${ARCH_SYSROOT_DIR} | sed -r -e "s:^$${SYSROOT_DIR}(.*)/$$:\1:"` ; \
|
||||
if test -z "$(BR2_STATIC_LIBS)" ; then \
|
||||
$(call MESSAGE,"Copying external toolchain libraries to target...") ; \
|
||||
for libs in $(LIB_EXTERNAL_LIBS); do \
|
||||
$(call copy_toolchain_lib_root,$${ARCH_SYSROOT_DIR},$${SUPPORT_LIB_DIR},$${ARCH_LIB_DIR},$$libs,/lib); \
|
||||
done ; \
|
||||
for libs in $(USR_LIB_EXTERNAL_LIBS); do \
|
||||
$(call copy_toolchain_lib_root,$${ARCH_SYSROOT_DIR},$${SUPPORT_LIB_DIR},$${ARCH_LIB_DIR},$$libs,/usr/lib); \
|
||||
done ; \
|
||||
fi ; \
|
||||
if test "$(BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY)" = "y"; then \
|
||||
$(call MESSAGE,"Copying gdbserver") ; \
|
||||
gdbserver_found=0 ; \
|
||||
for d in $${ARCH_SYSROOT_DIR}/usr \
|
||||
$${ARCH_SYSROOT_DIR}/../debug-root/usr \
|
||||
$${ARCH_SYSROOT_DIR}/usr/$${ARCH_LIB_DIR} \
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_DIR); do \
|
||||
if test -f $${d}/bin/gdbserver ; then \
|
||||
install -m 0755 -D $${d}/bin/gdbserver $(TARGET_DIR)/usr/bin/gdbserver ; \
|
||||
gdbserver_found=1 ; \
|
||||
break ; \
|
||||
fi ; \
|
||||
done ; \
|
||||
if [ $${gdbserver_found} -eq 0 ] ; then \
|
||||
echo "Could not find gdbserver in external toolchain" ; \
|
||||
exit 1 ; \
|
||||
gdbserver_found=0 ; \
|
||||
for d in $${ARCH_SYSROOT_DIR}/usr \
|
||||
$${ARCH_SYSROOT_DIR}/../debug-root/usr \
|
||||
$${ARCH_SYSROOT_DIR}/usr/$${ARCH_LIB_DIR} \
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_DIR); do \
|
||||
if test -f $${d}/bin/gdbserver ; then \
|
||||
install -m 0755 -D $${d}/bin/gdbserver $(TARGET_DIR)/usr/bin/gdbserver ; \
|
||||
gdbserver_found=1 ; \
|
||||
break ; \
|
||||
fi ; \
|
||||
done ; \
|
||||
if [ $${gdbserver_found} -eq 0 ] ; then \
|
||||
echo "Could not find gdbserver in external toolchain" ; \
|
||||
exit 1 ; \
|
||||
fi
|
||||
endef
|
||||
endif
|
||||
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_SYSROOT_LIBS
|
||||
$(Q)SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC))" ; \
|
||||
if test -z "$${SYSROOT_DIR}" ; then \
|
||||
@echo "External toolchain doesn't support --sysroot. Cannot use." ; \
|
||||
exit 1 ; \
|
||||
fi ; \
|
||||
ARCH_SYSROOT_DIR="$(call toolchain_find_sysroot,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \
|
||||
ARCH_LIB_DIR="$(call toolchain_find_libdir,$(TOOLCHAIN_EXTERNAL_CC) $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \
|
||||
SUPPORT_LIB_DIR="" ; \
|
||||
@@ -656,9 +692,9 @@ endef
|
||||
# nonetheless requested the installation of the FDPIC libraries to the
|
||||
# target filesystem.
|
||||
ifeq ($(BR2_BFIN_INSTALL_FDPIC_SHARED),y)
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FDPIC
|
||||
$(Q)$(call MESSAGE,"Install external toolchain FDPIC libraries to target...") ; \
|
||||
FDPIC_EXTERNAL_CC=$(dir $(TOOLCHAIN_EXTERNAL_CC))/../../bfin-linux-uclibc/bin/bfin-linux-uclibc-gcc ; \
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_SYSROOT_LIBS_BFIN_FDPIC
|
||||
$(Q)$(call MESSAGE,"Install external toolchain FDPIC libraries to staging...")
|
||||
$(Q)FDPIC_EXTERNAL_CC=$(dir $(TOOLCHAIN_EXTERNAL_CC))/../../bfin-linux-uclibc/bin/bfin-linux-uclibc-gcc ; \
|
||||
FDPIC_SYSROOT_DIR="$(call toolchain_find_sysroot,$${FDPIC_EXTERNAL_CC} $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \
|
||||
FDPIC_LIB_DIR="$(call toolchain_find_libdir,$${FDPIC_EXTERNAL_CC} $(TOOLCHAIN_EXTERNAL_CFLAGS))" ; \
|
||||
FDPIC_SUPPORT_LIB_DIR="" ; \
|
||||
@@ -668,11 +704,12 @@ define TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FDPIC
|
||||
FDPIC_SUPPORT_LIB_DIR=`readlink -f $${FDPIC_LIBSTDCPP_A_LOCATION} | sed -r -e 's:libstdc\+\+\.a::'` ; \
|
||||
fi ; \
|
||||
fi ; \
|
||||
for libs in $(LIB_EXTERNAL_LIBS); do \
|
||||
$(call copy_toolchain_lib_root,$${FDPIC_SYSROOT_DIR},$${FDPIC_SUPPORT_LIB_DIR},$${FDPIC_LIB_DIR},$$libs,/lib); \
|
||||
done ; \
|
||||
for libs in $(USR_LIB_EXTERNAL_LIBS); do \
|
||||
$(call copy_toolchain_lib_root,$${FDPIC_SYSROOT_DIR},$${FDPIC_SUPPORT_LIB_DIR},$${FDPIC_LIB_DIR},$$libs,/usr/lib); \
|
||||
$(call copy_toolchain_sysroot,$${FDPIC_SYSROOT_DIR},$${FDPIC_SYSROOT_DIR},,$${FDPIC_LIB_DIR},$${FDPIC_SUPPORT_LIB_DIR})
|
||||
endef
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_BFIN_FDPIC
|
||||
$(Q)$(call MESSAGE,"Install external toolchain FDPIC libraries to target...")
|
||||
$(Q)for libs in $(TOOLCHAIN_EXTERNAL_LIBS); do \
|
||||
$(call copy_toolchain_lib_root,$$libs); \
|
||||
done
|
||||
endef
|
||||
endif
|
||||
@@ -684,9 +721,9 @@ endif
|
||||
# according to the index in name "libN.so". Index 1 is reserved for
|
||||
# the standard C library. Customer libraries can use 4 and above.
|
||||
ifeq ($(BR2_BFIN_INSTALL_FLAT_SHARED),y)
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FLAT
|
||||
$(Q)$(call MESSAGE,"Install external toolchain FLAT libraries to target...") ; \
|
||||
FLAT_EXTERNAL_CC=$(dir $(TOOLCHAIN_EXTERNAL_CC))../../bfin-uclinux/bin/bfin-uclinux-gcc ; \
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_BFIN_FLAT
|
||||
$(Q)$(call MESSAGE,"Install external toolchain FLAT libraries to target...")
|
||||
$(Q)FLAT_EXTERNAL_CC=$(dir $(TOOLCHAIN_EXTERNAL_CC))../../bfin-uclinux/bin/bfin-uclinux-gcc ; \
|
||||
FLAT_LIBC_A_LOCATION=`$${FLAT_EXTERNAL_CC} $(TOOLCHAIN_EXTERNAL_CFLAGS) -mid-shared-library -print-file-name=libc`; \
|
||||
if [ -f $${FLAT_LIBC_A_LOCATION} -a ! -h $${FLAT_LIBC_A_LOCATION} ] ; then \
|
||||
$(INSTALL) -D $${FLAT_LIBC_A_LOCATION} $(TARGET_DIR)/lib/lib1.so; \
|
||||
@@ -694,9 +731,9 @@ define TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FLAT
|
||||
endef
|
||||
endif
|
||||
|
||||
# Build toolchain wrapper for preprocessor, C and C++ compiler and setup
|
||||
# symlinks for everything else. Skip gdb symlink when we are building our
|
||||
# own gdb to prevent two gdb's in output/host/usr/bin.
|
||||
# Build toolchain wrapper for preprocessor, C, C++ and Fortran compilers
|
||||
# and setup symlinks for everything else. Skip gdb symlink when we are
|
||||
# building our own gdb to prevent two gdb's in output/host/usr/bin.
|
||||
# The LTO support in gcc creates wrappers for ar, ranlib and nm which load
|
||||
# the lto plugin. These wrappers are called *-gcc-ar, *-gcc-ranlib, and
|
||||
# *-gcc-nm and should be used instead of the real programs when -flto is
|
||||
@@ -711,7 +748,7 @@ define TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER
|
||||
*-ar|*-ranlib|*-nm) \
|
||||
ln -sf $$(echo $$i | sed 's%^$(HOST_DIR)%../..%') .; \
|
||||
;; \
|
||||
*cc|*cc-*|*++|*++-*|*cpp) \
|
||||
*cc|*cc-*|*++|*++-*|*cpp|*-gfortran) \
|
||||
ln -sf toolchain-wrapper $$base; \
|
||||
;; \
|
||||
*gdb|*gdbtui) \
|
||||
@@ -755,6 +792,7 @@ TOOLCHAIN_EXTERNAL_BUILD_CMDS = $(TOOLCHAIN_BUILD_WRAPPER)
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_STAGING_CMDS
|
||||
$(TOOLCHAIN_EXTERNAL_CREATE_STAGING_LIB_SYMLINK)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_SYSROOT_LIBS)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_SYSROOT_LIBS_BFIN_FDPIC)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_WRAPPER)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_GDBINIT)
|
||||
endef
|
||||
@@ -765,9 +803,11 @@ endef
|
||||
define TOOLCHAIN_EXTERNAL_INSTALL_TARGET_CMDS
|
||||
$(TOOLCHAIN_EXTERNAL_CREATE_TARGET_LIB_SYMLINK)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_LIBS)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FDPIC)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_BFIN_FLAT)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_GDBSERVER)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_BFIN_FDPIC)
|
||||
$(TOOLCHAIN_EXTERNAL_INSTALL_TARGET_BFIN_FLAT)
|
||||
$(TOOLCHAIN_EXTERNAL_FIXUP_UCLIBCNG_LDSO)
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user