blob: 5324599bf79016ee025776262b795cb2f40ba064 [file] [log] [blame]
Bernhard Reutner-Fischer4b0d5a82007-09-26 21:12:38 +00001if BR2_TOOLCHAIN_EXTERNAL
"Steven J. Hill"02f71aa2007-02-06 18:19:38 +00002
Petri Gynther8218ab82016-08-08 11:34:59 -07003comment "Toolchain External Options"
4
Thomas Petazzoni6c492d52010-12-13 17:27:39 +01005choice
6 prompt "Toolchain"
7
Thomas Petazzoni416fd9c2016-06-08 23:40:54 +02008comment "glibc toolchains only available with shared lib support"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +01009 depends on BR2_STATIC_LIBS
Thomas Petazzonied3f3e42013-11-11 18:57:32 +010010
Yann E. MORIN87785ec2015-09-20 23:45:49 +020011comment "Linaro toolchains available for Cortex-A + EABIhf"
12 depends on BR2_arm || BR2_armeb
13 depends on !BR2_ARM_CPU_ARMV7A || !BR2_ARM_EABIHF
14 depends on !BR2_STATIC_LIBS
15
Yann E. MORIN9b3b98b2015-10-27 00:49:39 +010016config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
Romain Naour227553b2016-09-24 11:37:51 +020017 bool "Linaro ARM 2016.05"
Yann E. MORIN9b3b98b2015-10-27 00:49:39 +010018 depends on BR2_arm
19 depends on BR2_ARM_CPU_ARMV7A
Romain Naour3411db02016-10-11 23:04:57 +020020 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Yann E. MORIN9b3b98b2015-10-27 00:49:39 +010021 depends on BR2_ARM_EABIHF
22 depends on !BR2_STATIC_LIBS
23 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +000024 select BR2_TOOLCHAIN_HAS_SSP
Yann E. MORIN9b3b98b2015-10-27 00:49:39 +010025 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
26 select BR2_INSTALL_LIBSTDCPP
27 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
28 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
Samuel Martin01756842016-07-03 15:47:48 +020029 select BR2_TOOLCHAIN_HAS_FORTRAN
Yann E. MORIN9b3b98b2015-10-27 00:49:39 +010030 help
31 Linaro toolchain for the ARM architecture. It uses Linaro
Romain Naour227553b2016-09-24 11:37:51 +020032 GCC 2016.05 (based on gcc 5.3.1), Linaro GDB 2016.05 (based on
33 GDB 7.11.1), glibc 2.21, Binutils 2016.05 (based on 2.25). It
Yann E. MORIN9b3b98b2015-10-27 00:49:39 +010034 generates code that runs on all Cortex-A profile devices,
35 but tuned for the Cortex-A9. The code generated is Thumb 2,
36 with the hard floating point calling convention, and uses
37 the VFPv3-D16 FPU instructions.
38
Yann E. MORIN997ef602015-10-27 00:49:40 +010039config BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
Romain Naour93e82b62016-09-24 11:37:52 +020040 bool "Linaro armeb 2016.05"
Yann E. MORIN997ef602015-10-27 00:49:40 +010041 depends on BR2_armeb
42 depends on BR2_ARM_CPU_ARMV7A
Romain Naour9c9ddc42016-10-11 23:04:58 +020043 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Yann E. MORIN997ef602015-10-27 00:49:40 +010044 depends on BR2_ARM_EABIHF
45 depends on !BR2_STATIC_LIBS
46 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +000047 select BR2_TOOLCHAIN_HAS_SSP
Yann E. MORIN997ef602015-10-27 00:49:40 +010048 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
49 select BR2_INSTALL_LIBSTDCPP
50 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
51 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
52 help
53 Linaro toolchain for the ARM big endian architecture. It
Romain Naour93e82b62016-09-24 11:37:52 +020054 uses Linaro GCC 2016.05 (based on gcc 5.3.1), Linaro GDB
55 2016.05 (based on GDB 7.11.1), glibc 2.21, Binutils 2016.05
Yann E. MORIN997ef602015-10-27 00:49:40 +010056 (based on 2.25). It generates code that runs on all Cortex-A
57 profile devices, but tuned for the Cortex-A9. The code
58 generated is Thumb 2, with the hard floating point calling
59 convention, and uses the VFPv3-D16 FPU instructions.
60
Romain Naoureb713cf2015-12-19 19:14:40 +010061config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM
Thomas Petazzoni93f3c042014-09-15 23:49:35 +020062 bool "Sourcery CodeBench ARM 2014.05"
63 depends on BR2_arm
64 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
65 depends on BR2_ARM_EABI
Thomas Petazzoni665e13c2014-12-03 22:41:29 +010066 depends on !BR2_STATIC_LIBS
Thomas Petazzoni93f3c042014-09-15 23:49:35 +020067 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +000068 select BR2_TOOLCHAIN_HAS_SSP
Thomas Petazzoni93f3c042014-09-15 23:49:35 +020069 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
70 select BR2_INSTALL_LIBSTDCPP
71 select BR2_HOSTARCH_NEEDS_IA32_LIBS
72 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
Thomas Petazzonibd760c32015-08-04 20:00:35 +020073 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
Thomas Petazzoni93f3c042014-09-15 23:49:35 +020074 help
75 Sourcery CodeBench toolchain for the ARM architecture, from
76 Mentor Graphics. It uses gcc 4.8.3, binutils 2.24.51, glibc
77 2.18 and gdb 7.7.50, kernel headers 3.13. It has support
78 for the following variants:
79 - ARMv5TE, little endian, soft-float, glibc
80 Select ARM926T, ARM10T, XScale or another ARMv5 core
81 Select BR2_SOFT_FLOAT
82 - ARMv4T, little endian, soft-float, glibc
83 Select ARM720T, ARM920T, ARM922T or another ARMv4 core
84 Select BR2_SOFT_FLOAT
85 - ARMv7-A, Thumb 2, little endian, soft-float, glibc
86 Select Cortex-A8, Cortex-A9 or another ARMv7-A core
87 Select BR2_SOFT_FLOAT
88 Set BR2_TARGET_OPTIMIZATION to -mthumb
89
Thomas Petazzoniea6b2772013-07-16 10:03:20 +020090comment "Sourcery CodeBench toolchains available for the EABI ABI"
91 depends on BR2_arm
92 depends on !BR2_ARM_EABI
Thomas Petazzoni665e13c2014-12-03 22:41:29 +010093 depends on !BR2_STATIC_LIBS
Thomas Petazzoniea6b2772013-07-16 10:03:20 +020094
Romain Naour18206242015-12-19 19:14:46 +010095config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A
Thomas Petazzoni93d2b242013-06-08 11:14:17 +020096 bool "Arago ARMv7 2011.09"
97 depends on BR2_arm
98 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Thomas Petazzoni29f68062014-10-21 22:27:06 +020099 depends on BR2_ARM_CPU_ARMV7A
Thomas Petazzoniea6b2772013-07-16 10:03:20 +0200100 depends on BR2_ARM_EABI
Yann E. MORIN08ce1092015-12-26 17:05:45 +0100101 depends on BR2_ARM_CPU_HAS_VFPV3
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100102 depends on !BR2_STATIC_LIBS
Thomas Petazzoni93d2b242013-06-08 11:14:17 +0200103 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000104 select BR2_TOOLCHAIN_HAS_SSP
Thomas Petazzoni93d2b242013-06-08 11:14:17 +0200105 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
106 select BR2_INSTALL_LIBSTDCPP
107 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200108 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
Yann E. MORINb6f321b2014-03-01 15:52:58 +0100109 # kernel headers: 2.6.31
Thomas Petazzoni93d2b242013-06-08 11:14:17 +0200110 help
111 Texas Instruments Arago 2011.09 toolchain, with gcc 4.5.3,
112 binutils 2.20.1, glibc 2.12, gdb 7.2.
113
Thomas Petazzoniea6b2772013-07-16 10:03:20 +0200114 This toolchain uses -mfloat-abi=softfp (i.e can use FPU
115 instructions, but passes floating point function arguments
116 in integer registers), and requires a VFPv3 floating point
117 unit to work properly. This unit is available on most
118 Cortex-A ARM processors, but not all.
Thomas Petazzoni93d2b242013-06-08 11:14:17 +0200119
Romain Naour18206242015-12-19 19:14:46 +0100120config BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE
Thomas Petazzoni2592f252013-06-08 11:14:18 +0200121 bool "Arago ARMv5 2011.09"
122 depends on BR2_arm
123 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Thomas Petazzoni29f68062014-10-21 22:27:06 +0200124 depends on !BR2_ARM_CPU_ARMV4
Thomas Petazzoniea6b2772013-07-16 10:03:20 +0200125 depends on BR2_ARM_EABI
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100126 depends on !BR2_STATIC_LIBS
Thomas Petazzoni2592f252013-06-08 11:14:18 +0200127 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000128 select BR2_TOOLCHAIN_HAS_SSP
Thomas Petazzoni2592f252013-06-08 11:14:18 +0200129 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
130 select BR2_INSTALL_LIBSTDCPP
131 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200132 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
Yann E. MORINb6f321b2014-03-01 15:52:58 +0100133 # kernel headers: 2.6.31
Thomas Petazzoni2592f252013-06-08 11:14:18 +0200134 help
135 Texas Instruments Arago ARMv5 2011.09 toolchain, with gcc
136 4.5.3, binutils 2.20.1, glibc 2.12, gdb 7.2.
137
138 This toolchain uses software-floating point.
139
Romain Naourd9306ad2015-11-21 17:36:19 +0100140config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
Romain Naour230cfce2016-04-30 23:10:25 +0200141 bool "Sourcery CodeBench MIPS 2016.05"
Vicente Olivert Riera9f4ec372015-06-04 17:03:43 +0100142 depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
Vicente Olivert Riera45c92c62016-09-30 10:36:49 +0100143 depends on BR2_MIPS_CPU_MIPS32R2 || BR2_MIPS_CPU_MIPS64R2
Vicente Olivert Rieraef3e7322016-09-30 10:36:54 +0100144 # Unsupported MIPS cores
145 depends on !BR2_mips_interaptiv
Vicente Olivert Riera9f4ec372015-06-04 17:03:43 +0100146 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
147 depends on !BR2_MIPS_NABI32
148 depends on !BR2_STATIC_LIBS
149 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000150 select BR2_TOOLCHAIN_HAS_SSP
Vicente Olivert Riera9f4ec372015-06-04 17:03:43 +0100151 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
152 select BR2_INSTALL_LIBSTDCPP
153 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Romain Naour230cfce2016-04-30 23:10:25 +0200154 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
Romain Naour6278da12015-11-21 17:36:20 +0100155 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
Vicente Olivert Riera9f4ec372015-06-04 17:03:43 +0100156 help
157 Sourcery CodeBench toolchain for the MIPS architecture, from
Romain Naour230cfce2016-04-30 23:10:25 +0200158 Mentor Graphics. It uses gcc 5.3, binutils 2.25.51, glibc
159 2.23, uClibc 0.9.30 and gdb 7.10.50, kernel headers 4.4.1. It
Vicente Olivert Riera9f4ec372015-06-04 17:03:43 +0100160 has support for the following variants:
161 - MIPS32r2 - Big-Endian, 2008 NaN, O32
162 Select MIPS (big endian) core
163 Disable BR2_SOFT_FLOAT
164 Set BR2_TARGET_OPTIMIZATION to -mnan=2008
165 - MIPS32r2 - Big-Endian, O32
166 Select MIPS (big endian) core
167 Disable BR2_SOFT_FLOAT
168 - MIPS32r2 - Big-Endian, O32, MIPS16
169 Select MIPS (big endian) core
170 Disable BR2_SOFT_FLOAT
171 Set BR2_TARGET_OPTIMIZATION to -mips16
172 - MIPS32r2 - Big-Endian, Soft-Float, O32
173 Select MIPS (big endian) core
174 Select BR2_SOFT_FLOAT
175 - MIPS32r2 - Big-Endian, Soft-Float, O32, MIPS16
176 Select MIPS (big endian) core
177 Select BR2_SOFT_FLOAT
178 Set BR2_TARGET_OPTIMIZATION to -mips16
179 - MIPS32r2 - Little-Endian, 2008 NaN, O32
180 Select MIPS (little endian) core
181 Disable BR2_SOFT_FLOAT
182 Set BR2_TARGET_OPTIMIZATION to -mnan=2008
183 - MIPS32r2 - Little-Endian, O32
184 Select MIPS (little endian) core
185 Disable BR2_SOFT_FLOAT
186 - MIPS32r2 - Little-Endian, O32, MIPS16
187 Select MIPS (little endian) core
188 Disable BR2_SOFT_FLOAT
189 Set BR2_TARGET_OPTIMIZATION to -mips16
190 - MIPS32r2 - Little-Endian, Soft-Float, O32
191 Select MIPS (little endian) core
192 Select BR2_SOFT_FLOAT
193 - MIPS32r2 - Little-Endian, Soft-Float, O32, MIPS16
194 Select MIPS (little endian) core
195 Select BR2_SOFT_FLOAT
196 Set BR2_TARGET_OPTIMIZATION to -mips16
197 - MIPS32r2 - Little-Endian, Soft-Float, O32, microMIPS
198 Select MIPS (little endian) core
199 Select BR2_SOFT_FLOAT
200 Set BR2_TARGET_OPTIMIZATION to -mmicromips
201 - MIPS32r2 - uClibc, Big-Endian, 2008 NaN, O32
202 Not usable in Buildroot yet.
203 - MIPS32r2 - uClibc, Big-Endian, O32
204 Not usable in Buildroot yet.
205 - MIPS32r2 - uClibc, Big-Endian, Soft-Float, O32
206 Not usable in Buildroot yet.
207 - MIPS32r2 - uClibc, Little-Endian, 2008 NaN, O32
208 Not usable in Buildroot yet.
209 - MIPS32r2 - uClibc, Little-Endian, O32
210 Not usable in Buildroot yet.
211 - MIPS32r2 - uClibc, Little-Endian, Soft-Float, O32
212 Not usable in Buildroot yet.
213 - MIPS64r2 - Big-Endian, N64
214 Select MIPS64 (big endian) core
215 Select the n64 ABI
216 Disable BR2_SOFT_FLOAT
217 - MIPS64r2 - Big-Endian, Soft-Float, N64
218 Select MIPS64 (big endian) core
219 Select the n64 ABI
220 Select BR2_SOFT_FLOAT
221 - MIPS64r2 - Little-Endian, N64
222 Select MIPS64 (little endian) core
223 Select the n64 ABI
224 Disable BR2_SOFT_FLOAT
225 - MIPS64r2 - Little-Endian, Soft-Float, N64
226 Select MIPS64 (little endian) core
227 Select the n64 ABI
228 Select BR2_SOFT_FLOAT
229
Markos Chandras6f70ba32013-08-13 09:45:44 +0100230comment "Sourcery CodeBench toolchains are only available for MIPS/MIPS64 o32 and n64"
231 depends on BR2_MIPS_NABI32
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100232 depends on !BR2_STATIC_LIBS
Markos Chandras6f70ba32013-08-13 09:45:44 +0100233
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000234config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS
Vicente Olivert Rieraddf28672016-07-04 11:17:40 +0100235 bool "Codescape IMG GNU Linux Toolchain 2016.05"
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000236 depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
237 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Vicente Olivert Riera45c92c62016-09-30 10:36:49 +0100238 depends on BR2_MIPS_CPU_MIPS32R6 || (BR2_MIPS_CPU_MIPS64R6 && !BR2_MIPS_SOFT_FLOAT)
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000239 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
240 select BR2_INSTALL_LIBSTDCPP
241 select BR2_HOSTARCH_NEEDS_IA32_LIBS
242 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
243 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
Vicente Olivert Rieraddf28672016-07-04 11:17:40 +0100244 select BR2_TOOLCHAIN_HAS_FORTRAN
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000245 help
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000246 Codescape IMG GNU Linux Toolchain 2015.10 for the MIPS
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000247 architecture, from Imagination Technologies. It uses gcc
248 4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel
249 headers 4.0. It has support for the following variants:
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000250 - MIPS32r6 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000251 Select 'MIPS (big endian)' Target Architecture
252 Select 'mips 32r6' Target Architecture Variant
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000253 Disable 'Use soft-float'
254 - MIPS32r6 - Big-Endian, Soft-Float, 2008 NaN, o32 ABI
255 Select 'MIPS (big endian)' Target Architecture
256 Select 'mips 32r6' Target Architecture Variant
257 Enable 'Use soft-float'
258 - MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000259 Select 'MIPS (little endian)' Target Architecture
260 Select 'mips 32r6' Target Architecture Variant
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000261 Disable 'Use soft-float'
262 - MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000263 Select 'MIPS (little endian)' Target Architecture
264 Select 'mips 32r6' Target Architecture Variant
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000265 Enable 'Use soft-float'
266 - MIPS32r6 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI, microMIPS
267 Select 'MIPS (little endian)' Target Architecture
268 Select 'mips 32r6' Target Architecture Variant
269 Disable 'Use soft-float'
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000270 Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000271 - MIPS32r6 - Little-Endian, Soft-Float, 2008 NaN, o32 ABI, microMIPS
272 Select 'MIPS (little endian)' Target Architecture
273 Select 'mips 32r6' Target Architecture Variant
274 Enable 'Use soft-float'
275 Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
276 - MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n32 ABI
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000277 Select 'MIPS64 (big endian)' Target Architecture
278 Select 'mips 64r6' Target Architecture Variant
279 Select 'n32' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000280 Disable 'Use soft-float'
281 - MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n32 ABI
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000282 Select 'MIPS64 (little endian)' Target Architecture
283 Select 'mips 64r6' Target Architecture Variant
284 Select 'n32' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000285 Disable 'Use soft-float'
286 - MIPS64r6 - Big-Endian, Hard-Float, 2008 NaN, n64 ABI
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000287 Select 'MIPS64 (big endian)' Target Architecture
288 Select 'mips 64r6' Target Architecture Variant
289 Select 'n64' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000290 Disable 'Use soft-float'
291 - MIPS64r6 - Little-Endian, Hard-Float, 2008 NaN, n64 ABI
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000292 Select 'MIPS64 (little endian)' Target Architecture
293 Select 'mips 64r6' Target Architecture Variant
294 Select 'n64' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000295 Disable 'Use soft-float'
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000296
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000297config BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS
Vicente Olivert Rieraddf28672016-07-04 11:17:40 +0100298 bool "Codescape MTI GNU Linux Toolchain 2016.05"
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000299 depends on BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
300 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Vicente Olivert Riera2373ce22016-09-30 10:36:53 +0100301 depends on BR2_MIPS_CPU_MIPS32R2 || (BR2_MIPS_CPU_MIPS64R2 && !BR2_MIPS_SOFT_FLOAT) || \
302 BR2_MIPS_CPU_MIPS32R5 || (BR2_MIPS_CPU_MIPS64R5 && !BR2_MIPS_SOFT_FLOAT)
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000303 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
304 select BR2_INSTALL_LIBSTDCPP
305 select BR2_HOSTARCH_NEEDS_IA32_LIBS
306 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
307 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
Vicente Olivert Rieraddf28672016-07-04 11:17:40 +0100308 select BR2_TOOLCHAIN_HAS_FORTRAN
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000309 help
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000310 Codescape MTI GNU Linux Toolchain 2015.10 for the MIPS
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000311 architecture, from Imagination Technologies. It uses gcc
312 4.9.2, binutils 2.24.90, glibc 2.20, gdb 7.9.1 and kernel
313 headers 4.0. It has support for the following variants:
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000314 - MIPS32r2 - Big-Endian, Hard-Float, Legacy NaN, o32 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000315 Select 'MIPS (big endian)' Target Architecture
316 Select 'mips 32r2' Target Architecture Variant
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000317 Disable 'Use soft-float'
318 - MIPS32r2 - Big-Endian, Hard-Float, 2008 NaN, o32 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000319 Select 'MIPS (big endian)' Target Architecture
320 Select 'mips 32r2' Target Architecture Variant
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000321 Disable 'Use soft-float'
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000322 Set BR2_TARGET_OPTIMIZATION to '-mnan=2008'
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000323 - MIPS32r2 - Big-Endian, Soft-Float, Legacy NaN, o32 ABI
324 Select 'MIPS (big endian)' Target Architecture
325 Select 'mips 32r2' Target Architecture Variant
326 Enable 'Use soft-float'
327 - MIPS32r2 - Little-Endian, Hard-Float, Legacy NaN, o32 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000328 Select 'MIPS (little endian)' Target Architecture
329 Select 'mips 32r2' Target Architecture Variant
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000330 Disable 'Use soft-float'
331 - MIPS32r2 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000332 Select 'MIPS (little endian)' Target Architecture
333 Select 'mips 32r2' Target Architecture Variant
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000334 Disable 'Use soft-float'
335 Set BR2_TARGET_OPTIMIZATION to '-mnan=2008'
336 - MIPS32r2 - Little-Endian, Soft-Float, Legacy NaN, o32 ABI
337 Select 'MIPS (little endian)' Target Architecture
338 Select 'mips 32r2' Target Architecture Variant
339 Enable 'Use soft-float'
340 - MIPS32r2 - Little-Endian, Hard-Float, 2008 NaN, o32 ABI, microMIPS
341 Select 'MIPS (little endian)' Target Architecture
342 Select 'mips 32r2' Target Architecture Variant
343 Enable 'Use soft-float'
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000344 Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000345 - MIPS32r2 - Little-Endian, Soft-Float, Legacy NaN, o32 ABI, microMIPS
346 Select 'MIPS (little endian)' Target Architecture
347 Select 'mips 32r2' Target Architecture Variant
348 Disable 'Use soft-float'
349 Set BR2_TARGET_OPTIMIZATION to '-mmicromips'
350 - MIPS64r2 - Big-Endian, Hard-Float, Legacy NaN, n32 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000351 Select 'MIPS64 (big endian)' Target Architecture
352 Select 'mips 64r2' Target Architecture Variant
353 Select 'n32' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000354 Disable 'Use soft-float'
355 - MIPS64r2 - Little-Endian, Hard-Float, Legacy NaN, n32 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000356 Select 'MIPS64 (little endian)' Target Architecture
357 Select 'mips 64r2' Target Architecture Variant
358 Select 'n32' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000359 Disable 'Use soft-float'
360 - MIPS64r2 - Big-Endian, Hard-Float, Legacy NaN, n64 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000361 Select 'MIPS64 (big endian)' Target Architecture
362 Select 'mips 64r2' Target Architecture Variant
363 Select 'n64' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000364 Disable 'Use soft-float'
365 - MIPS64r2 - Little-Endian, Hard-Float, Legacy NaN, n64 ABI
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000366 Select 'MIPS64 (little endian)' Target Architecture
367 Select 'mips 64r2' Target Architecture Variant
368 Select 'n64' Target ABI
Vicente Olivert Riera2b3fa6b2016-03-08 09:46:09 +0000369 Disable 'Use soft-float'
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000370
Romain Naourc785b1b2015-11-21 17:36:16 +0100371config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
Romain Naour04c9d652016-05-19 00:23:30 +0200372 bool "Sourcery CodeBench Nios-II 2016.05"
Ezequiel García3ca5f0b2014-08-31 18:33:39 -0300373 depends on BR2_nios2
374 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100375 depends on !BR2_STATIC_LIBS
Ezequiel García3ca5f0b2014-08-31 18:33:39 -0300376 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000377 select BR2_TOOLCHAIN_HAS_SSP
Ezequiel García3ca5f0b2014-08-31 18:33:39 -0300378 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
379 select BR2_INSTALL_LIBSTDCPP
380 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Romain Naour04c9d652016-05-19 00:23:30 +0200381 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
Romain Naoure7e5a762015-11-21 17:36:17 +0100382 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
Romain Naour5dce3c02016-02-20 13:42:46 +0100383 select BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19405 # based-on binutils-2.25.1
Ezequiel García3ca5f0b2014-08-31 18:33:39 -0300384 help
385 Sourcery CodeBench toolchain for the Nios-II architecture,
Romain Naour04c9d652016-05-19 00:23:30 +0200386 from Mentor Graphics. It uses gcc 5.3, binutils 2.25.51,
387 glibc 2.23, gdb 7.10.50 and kernel headers 4.4.
Ezequiel García3ca5f0b2014-08-31 18:33:39 -0300388
Romain Naour3e1ae892015-12-19 19:14:42 +0100389config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
Thomas Petazzonie067a442012-11-04 07:34:21 +0000390 bool "Sourcery CodeBench SH 2012.09"
391 depends on BR2_sh4a || BR2_sh4aeb
Thomas Petazzoni4eff1f22012-12-29 06:14:48 +0000392 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100393 depends on !BR2_STATIC_LIBS
Thomas Petazzonie067a442012-11-04 07:34:21 +0000394 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000395 select BR2_TOOLCHAIN_HAS_SSP
Thomas Petazzonie067a442012-11-04 07:34:21 +0000396 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
397 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni2d16ba92012-12-29 06:14:50 +0000398 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Yann E. MORINb6f321b2014-03-01 15:52:58 +0100399 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200400 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
Thomas Petazzonie067a442012-11-04 07:34:21 +0000401 help
402 Sourcery CodeBench toolchain for the SuperH architecture,
403 from Mentor Graphics. It uses gcc 4.7.2, binutils 2.23.51,
404 glibc 2.16, uClibc 0.9.30, gdb 7.4.50 and kernel headers
405 3.5.4. It has support for the following variants:
Thomas De Schampheleirebed4e272013-11-11 17:23:23 +0100406 - SH4A, glibc, little endian
407 Default.
408 - SH4A, glibc, big endian
409 Add -mb to BR2_TARGET_OPTIMIZATION
410 - SH4A, uClibc, little endian
411 Not usable in Buildroot yet.
412 - SH4A, uClibc, big endian
413 Not usable in Buildroot yet.
Thomas Petazzonie067a442012-11-04 07:34:21 +0000414
Romain Naour23ba8182015-11-21 17:36:14 +0100415config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64
Romain Naour09f1a3b2015-11-21 17:36:15 +0100416 bool "Sourcery CodeBench AMD64 2015.11"
Gustavo Zacariasd6fbd852015-03-03 12:52:31 -0300417 depends on BR2_x86_64
418 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
419 depends on !BR2_STATIC_LIBS
420 depends on BR2_x86_jaguar || BR2_x86_steamroller
421 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000422 select BR2_TOOLCHAIN_HAS_SSP
Gustavo Zacariasd6fbd852015-03-03 12:52:31 -0300423 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
424 select BR2_INSTALL_LIBSTDCPP
425 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Romain Naour09f1a3b2015-11-21 17:36:15 +0100426 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2
427 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
Gustavo Zacariasd6fbd852015-03-03 12:52:31 -0300428 help
429 Sourcery CodeBench toolchain for the amd64 (x86_64)
Romain Naour09f1a3b2015-11-21 17:36:15 +0100430 architectures, from Mentor Graphics. It uses gcc 5.2,
431 binutils 2.25.51, glibc 2.22, gdb 7.10.50 and kernel headers
432 4.2. It has support for the following variants:
Gustavo Zacariasd6fbd852015-03-03 12:52:31 -0300433 - AMD Puma/Jaguar (family 16h), glibc
434 Default for x86_64, nothing special to do.
435 - AMD Steamroller (family 15h), glibc
436 Select a steamroller core.
437 No other architecture variants are supported since glibc
438 is optimized for one of these two baselines.
439
Romain Naourf4da09e2015-12-19 19:14:43 +0100440config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86
Thomas Petazzoni1c811232012-11-04 07:34:22 +0000441 bool "Sourcery CodeBench x86/x86_64 2012.09"
442 depends on BR2_i386 || BR2_x86_64
Thomas Petazzoni4eff1f22012-12-29 06:14:48 +0000443 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100444 depends on !BR2_STATIC_LIBS
Adrien Bérauda20cb382014-01-15 17:17:10 -0500445 depends on !BR2_x86_jaguar
Gustavo Zacarias50451992015-03-03 12:52:30 -0300446 depends on !BR2_x86_steamroller
Thomas Petazzoni1c811232012-11-04 07:34:22 +0000447 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000448 select BR2_TOOLCHAIN_HAS_SSP
Thomas Petazzoni1c811232012-11-04 07:34:22 +0000449 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
450 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni2d16ba92012-12-29 06:14:50 +0000451 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Yann E. MORINb6f321b2014-03-01 15:52:58 +0100452 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200453 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
Thomas Petazzoni1c811232012-11-04 07:34:22 +0000454 help
455 Sourcery CodeBench toolchain for the x86/x86_64
456 architectures, from Mentor Graphics. It uses gcc 4.7.2,
457 binutils 2.23.51, glibc 2.16, gdb 7.4.50 and kernel headers
458 3.5.4. It has support for the following variants:
459 - Intel Pentium 4, glibc, 32 bits
460 Default for x86, nothing special to do.
461 - Intel Atom, glibc, 32 bits
462 Select an Atom core
463 - Intel Xeon, glibc, 64 bits
464 Default for x86_64, nothing special to do.
465 - Intel Core 2, glibc, 64 bits
466 Select a Core 2 core
467 Other architecture variants (beyond Pentium-4/Xeon) are
468 supported as well, but glibc is not optimised for it.
469
Romain Naour063593b2015-12-19 19:14:44 +0100470config BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX
Thomas Petazzoni1cfeed12014-07-09 23:20:22 +0200471 bool "Blackfin.uclinux.org 2014R1"
Thomas Petazzoni5a65b8e2014-06-01 12:47:48 +0200472 depends on BR2_bfin
473 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
474 select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
475 select BR2_INSTALL_LIBSTDCPP
Thomas Petazzoni5a65b8e2014-06-01 12:47:48 +0200476 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
477 select BR2_USE_WCHAR
478 select BR2_TOOLCHAIN_HAS_THREADS
479 select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
480 select BR2_HOSTARCH_NEEDS_IA32_LIBS
481 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200482 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3
Samuel Martin01756842016-07-03 15:47:48 +0200483 select BR2_TOOLCHAIN_HAS_FORTRAN
Thomas Petazzoni5a65b8e2014-06-01 12:47:48 +0200484 help
485 Toolchain for the Blackfin architecture, from
486 http://blackfin.uclinux.org.
487
Yann E. MORIN24bfce02015-10-27 00:49:41 +0100488config BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
Romain Naour62658cf2016-09-24 11:37:53 +0200489 bool "Linaro AArch64 2016.05"
Yann E. MORIN24bfce02015-10-27 00:49:41 +0100490 depends on BR2_aarch64
Romain Naourfe3f9ec2016-10-11 23:04:59 +0200491 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Yann E. MORIN24bfce02015-10-27 00:49:41 +0100492 depends on !BR2_STATIC_LIBS
493 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000494 select BR2_TOOLCHAIN_HAS_SSP
Yann E. MORIN24bfce02015-10-27 00:49:41 +0100495 select BR2_INSTALL_LIBSTDCPP
496 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
497 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
498 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
Samuel Martin01756842016-07-03 15:47:48 +0200499 select BR2_TOOLCHAIN_HAS_FORTRAN
Yann E. MORIN24bfce02015-10-27 00:49:41 +0100500 help
501 Toolchain for the AArch64 architecture, from
502 http://www.linaro.org/engineering/armv8/
503
Thomas Petazzonibab8f272014-09-15 23:49:34 +0200504config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
Romain Naoure7a682b2015-12-30 15:30:16 +0100505 bool "CodeSourcery AArch64 2014.11"
Thomas Petazzonibab8f272014-09-15 23:49:34 +0200506 depends on BR2_aarch64
507 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100508 depends on !BR2_STATIC_LIBS
Thomas Petazzonibab8f272014-09-15 23:49:34 +0200509 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000510 select BR2_TOOLCHAIN_HAS_SSP
Thomas Petazzonibab8f272014-09-15 23:49:34 +0200511 select BR2_INSTALL_LIBSTDCPP
512 select BR2_HOSTARCH_NEEDS_IA32_LIBS
513 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
Romain Naoure7a682b2015-12-30 15:30:16 +0100514 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16
515 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
Thomas Petazzonibab8f272014-09-15 23:49:34 +0200516 help
517 Sourcery CodeBench toolchain for the AArch64 architecture,
Romain Naoure7a682b2015-12-30 15:30:16 +0100518 from Mentor Graphics. It uses gcc 4.9.1, binutils
519 2.24.51.20140217, glibc 2.20, gdb 7.7.50 and kernel headers
520 3.16.2.
Thomas Petazzonibab8f272014-09-15 23:49:34 +0200521
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200522config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
Thomas Petazzonia8e6f522016-05-17 00:13:02 +0200523 bool "Musl 1.1.12 toolchain"
Thomas Petazzonie9f6ef82016-07-28 15:39:14 +0200524 depends on (BR2_arm && BR2_ARM_EABI && BR2_USE_MMU) || \
525 (BR2_arm && BR2_ARM_EABIHF && !BR2_ARM_CPU_ARMV4 && BR2_USE_MMU) || \
526 (BR2_armeb && BR2_ARM_EABI && !BR2_ARM_CPU_ARMV7A && BR2_USE_MMU) || \
527 BR2_i386 || (BR2_mips && !BR2_SOFT_FLOAT) || \
Thomas Petazzonidf4d9082016-03-04 23:50:07 +0100528 BR2_mipsel || (BR2_powerpc && BR2_powerpc_CLASSIC) || \
529 BR2_sh4 || BR2_sh4eb || \
530 BR2_x86_64
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200531 depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
Vicente Olivert Rieraef3e7322016-09-30 10:36:54 +0100532 # Unsupported MIPS cores
Vicente Olivert Riera55a37ea2016-09-30 10:36:56 +0100533 depends on !BR2_mips_interaptiv && !BR2_mips_m5100 && !BR2_mips_m5101
Vicente Olivert Riera99122d62015-10-12 11:08:06 +0100534 # Unsupported for MIPS R6
Vicente Olivert Riera45c92c62016-09-30 10:36:49 +0100535 depends on !BR2_MIPS_CPU_MIPS32R6 && !BR2_MIPS_CPU_MIPS64R6
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200536 select BR2_TOOLCHAIN_EXTERNAL_MUSL
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000537 select BR2_TOOLCHAIN_HAS_SSP
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200538 select BR2_INSTALL_LIBSTDCPP
539 select BR2_HOSTARCH_NEEDS_IA32_LIBS
Thomas Petazzoni5c852662014-06-01 12:47:45 +0200540 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
Thomas Petazzonidf4d9082016-03-04 23:50:07 +0100541 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200542 help
543 Toolchain based on the Musl C library, provided by the
Thomas Petazzonidf4d9082016-03-04 23:50:07 +0100544 musl-cross project. It uses gcc 5.3, binutils 2.25.1 and
545 musl 1.1.12. It does not have a cross debugger included.
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200546
Thomas Petazzonib2ec7832015-10-09 11:14:48 +0200547 The ARM soft-float toolchain is built for ARMv4t, while the
548 ARM hard-float toolchain is built for ARMv5t.
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200549 The x86 toolchain is built for i486.
550
551 http://musl.codu.org/
552
Romain Naourd02fa922015-12-19 19:14:45 +0100553config BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC
Alexey Brodkin2b93fe52015-03-10 14:50:24 +0300554 bool "Synopsys ARC 2014.12 toolchain"
555 depends on BR2_arc
556 depends on BR2_HOSTARCH = "x86_64"
Thomas Petazzonicd3c00f2015-05-01 11:13:54 +0200557 # does not provide IPv6, and lacks many uClibc features
558 # expected by Buildroot. The next Synopsys toolchain version
559 # should fix those problems.
560 depends on BROKEN
Alexey Brodkin2b93fe52015-03-10 14:50:24 +0300561 select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
562 select BR2_INSTALL_LIBSTDCPP
Alexey Brodkin2b93fe52015-03-10 14:50:24 +0300563 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
564 select BR2_ENABLE_LOCALE
565 select BR2_USE_WCHAR
566 select BR2_TOOLCHAIN_HAS_THREADS
567 select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
568 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200569 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
Alexey Brodkin2b93fe52015-03-10 14:50:24 +0300570 help
571 Toolchain for the ARC cores, from
572 https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/releases
573
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100574config BR2_TOOLCHAIN_EXTERNAL_CUSTOM
Thomas De Schampheleire5022fa82012-06-22 07:42:37 +0200575 bool "Custom toolchain"
576 help
577 Use this option to use a custom toolchain pre-installed on
578 your system.
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100579
580endchoice
581
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +0200582choice
583 prompt "Toolchain origin"
Thomas Petazzoni70194072012-07-22 20:57:26 +0200584 # Keep compatibility with old defconfig files that are using
585 # custom toolchains, and which are therefore assuming that
586 # "preinstalled" in the default choice.
587 default BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +0200588
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100589config BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +0200590 bool "Toolchain to be downloaded and installed"
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100591 help
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +0200592 Select this option if you want Buildroot to download and install the
593 toolchain. If you have selected a custom toolchain, specify the URL
594 in BR2_TOOLCHAIN_EXTERNAL_URL.
595
596config BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED
597 bool "Pre-installed toolchain"
598 help
599 Select this option if you want to use a pre-installed toolchain.
600 Specify the path to this toolchain in BR2_TOOLCHAIN_EXTERNAL_PATH.
601
602endchoice
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100603
604config BR2_TOOLCHAIN_EXTERNAL_PATH
605 string "Toolchain path"
606 default "/path/to/toolchain/usr"
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +0200607 depends on BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100608 help
609 Path to where the external toolchain is installed.
610
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +0200611config BR2_TOOLCHAIN_EXTERNAL_URL
612 string "Toolchain URL"
613 depends on BR2_TOOLCHAIN_EXTERNAL_CUSTOM && BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
614 help
615 URL of the custom toolchain tarball to download and install.
616
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100617config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX
618 string "Toolchain prefix"
619 depends on BR2_TOOLCHAIN_EXTERNAL_CUSTOM
620 default "$(ARCH)-linux"
621
622config BR2_TOOLCHAIN_EXTERNAL_PREFIX
623 string
Romain Naourd02fa922015-12-19 19:14:45 +0100624 default "arc-linux" if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC && BR2_arcle
625 default "arceb-linux" if BR2_TOOLCHAIN_EXTERNAL_SYNOPSYS_ARC && BR2_arceb
Thomas Petazzonibe2abf22014-06-01 12:47:40 +0200626 default "arm-linux-gnueabihf" if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARM
Thomas Petazzonicd32da82014-03-05 23:23:40 +0100627 default "armeb-linux-gnueabihf" if BR2_TOOLCHAIN_EXTERNAL_LINARO_ARMEB
Romain Naoureb713cf2015-12-19 19:14:40 +0100628 default "arm-none-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_ARM
Romain Naour18206242015-12-19 19:14:46 +0100629 default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A
630 default "arm-arago-linux-gnueabi" if BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV5TE
Thomas Petazzonid51025d2014-06-01 12:47:41 +0200631 default "aarch64-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_LINARO_AARCH64
Romain Naoure7a682b2015-12-30 15:30:16 +0100632 default "aarch64-amd-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
Romain Naourd9306ad2015-11-21 17:36:19 +0100633 default "mips-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_MIPS
Romain Naourc785b1b2015-11-21 17:36:16 +0100634 default "nios2-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII
Romain Naour3e1ae892015-12-19 19:14:42 +0100635 default "sh-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_SH
Romain Naourf4da09e2015-12-19 19:14:43 +0100636 default "i686-pc-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_X86
Romain Naour23ba8182015-11-21 17:36:14 +0100637 default "x86_64-amd-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64
Romain Naour063593b2015-12-19 19:14:44 +0100638 default "bfin-uclinux" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FLAT
639 default "bfin-linux-uclibc" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FDPIC
Thomas Petazzonib2ec7832015-10-09 11:14:48 +0200640 default "arm-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABI
641 default "arm-linux-musleabihf" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABIHF
Vicente Olivert Rierae424c132015-12-15 16:21:25 +0000642 default "mips-img-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_IMG_MIPS
Vicente Olivert Rierac65c7282015-12-15 16:21:24 +0000643 default "mips-mti-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESCAPE_MTI_MIPS
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200644 default "armeb-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_armeb
645 default "i486-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_i386
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200646 default "mips-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && (BR2_mips && !BR2_SOFT_FLOAT)
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200647 default "mipsel-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && (BR2_mipsel && !BR2_SOFT_FLOAT)
648 default "mipsel-sf-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && (BR2_mipsel && BR2_SOFT_FLOAT)
649 default "powerpc-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_powerpc
Thomas Petazzonidf4d9082016-03-04 23:50:07 +0100650 default "sh4-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_sh4
651 default "sh4eb-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_sh4eb
Thomas Petazzoni2d71c122014-05-05 23:17:10 +0200652 default "x86_64-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_x86_64
Thomas De Schampheleirefbc24942013-09-02 22:07:53 +0200653 default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX \
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100654 if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
Thomas Petazzoni643aa232009-05-29 18:37:41 +0200655
656config BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100657 bool
Thomas Petazzoni381616e2013-06-30 21:29:09 +0200658 select BR2_TOOLCHAIN_USES_GLIBC
Thomas Petazzoni643aa232009-05-29 18:37:41 +0200659
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100660config BR2_TOOLCHAIN_EXTERNAL_UCLIBC
661 bool
Thomas Petazzoni381616e2013-06-30 21:29:09 +0200662 select BR2_TOOLCHAIN_USES_UCLIBC
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100663
Thomas Petazzonia1d94aa2013-10-08 20:17:09 +0200664config BR2_TOOLCHAIN_EXTERNAL_MUSL
665 bool
666 select BR2_TOOLCHAIN_USES_MUSL
Yann E. MORINe31eb722016-08-18 23:50:13 +0200667 # Compatibility headers: cdefs.h, queue.h
668 select BR2_PACKAGE_MUSL_COMPAT_HEADERS
Thomas Petazzonia1d94aa2013-10-08 20:17:09 +0200669
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100670if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
671
672choice
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200673 bool "External toolchain gcc version"
674 default BR2_TOOLCHAIN_EXTERNAL_GCC_4_3
675 help
676 Set to the gcc version that is used by your external
677 toolchain.
678
Jörg Krause8f972c22016-05-01 09:29:35 +0200679config BR2_TOOLCHAIN_EXTERNAL_GCC_6
680 bool "6.x"
681 select BR2_TOOLCHAIN_GCC_AT_LEAST_6
682
Thomas Petazzonibd760c32015-08-04 20:00:35 +0200683config BR2_TOOLCHAIN_EXTERNAL_GCC_5
684 bool "5.x"
685 select BR2_TOOLCHAIN_GCC_AT_LEAST_5
686
687config BR2_TOOLCHAIN_EXTERNAL_GCC_4_9
688 bool "4.9.x"
689 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
690
691config BR2_TOOLCHAIN_EXTERNAL_GCC_4_8
692 bool "4.8.x"
693 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
694
695config BR2_TOOLCHAIN_EXTERNAL_GCC_4_7
696 bool "4.7.x"
697 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
698
699config BR2_TOOLCHAIN_EXTERNAL_GCC_4_6
700 bool "4.6.x"
701 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_6
702
703config BR2_TOOLCHAIN_EXTERNAL_GCC_4_5
704 bool "4.5.x"
705 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
706
707config BR2_TOOLCHAIN_EXTERNAL_GCC_4_4
708 bool "4.4.x"
709 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_4
710
711config BR2_TOOLCHAIN_EXTERNAL_GCC_4_3
712 bool "4.3.x"
713 select BR2_TOOLCHAIN_GCC_AT_LEAST_4_3
714
715endchoice
716
717choice
Yann E. MORINc58bcd52014-03-01 15:52:59 +0100718 bool "External toolchain kernel headers series"
719 default BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD
720 help
721 Set to the kernel headers version that were used to build
722 this external toolchain.
723
724 This is used to hide/show some packages that have strict
725 requirements on the version of kernel headers.
726
727 If unsure what version your toolchain is using, you can look
728 at the value of LINUX_VERSION_CODE in linux/version.h in your
729 toolchain. The Linux version is M.m.p, with:
730 M = ( LINUX_VERSION_CODE >> 16 ) & 0xFF
731 m = ( LINUX_VERSION_CODE >> 8 ) & 0xFF
732 p = ( LINUX_VERSION_CODE >> 0 ) & 0xFF
733
Fabio Estevamd3ac2bc2016-09-12 13:15:54 -0300734config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_8
735 bool "4.8.x"
736 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_8
737
Fabio Estevame36bf632016-07-24 20:56:09 -0300738config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_7
739 bool "4.7.x"
740 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_7
741
Gustavo Zacarias51800d22016-05-16 08:58:12 -0300742config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_6
743 bool "4.6.x"
744 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_6
745
Gustavo Zacarias3ece3fa2016-03-14 07:14:10 -0300746config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_5
747 bool "4.5.x"
748 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5
749
Gustavo Zacariasdf2ad612016-01-11 07:52:36 -0300750config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4
751 bool "4.4.x"
752 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_4
753
Vicente Olivert Rieraaef2df82015-11-02 15:56:51 +0100754config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3
755 bool "4.3.x"
756 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_3
757
Peter Korsgaard8dc68292015-09-01 10:05:20 +0200758config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_2
759 bool "4.2.x"
760 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_2
761
Gustavo Zacariasdae7d8a2015-06-22 10:11:03 -0300762config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_1
763 bool "4.1.x"
764 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1
765
Gustavo Zacariase714ee92015-04-13 10:00:23 -0300766config BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_0
767 bool "4.0.x"
768 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_0
769
Peter Korsgaard81366ed2015-02-09 13:31:23 +0100770config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_19
771 bool "3.19.x"
772 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_19
773
Gustavo Zacariasbf6f74d2014-12-08 08:10:39 -0300774config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_18
775 bool "3.18.x"
776 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_18
777
Gustavo Zacarias2d312b72014-10-06 08:44:39 -0300778config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17
779 bool "3.17.x"
Karoly Kaszab8f9e572014-10-09 12:59:01 +0200780 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17
Gustavo Zacarias2d312b72014-10-06 08:44:39 -0300781
Gustavo Zacarias911516f2014-08-03 23:29:22 -0300782config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_16
783 bool "3.16.x"
784 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_16
785
Gustavo Zacariasfb29afe2014-06-09 08:30:33 -0300786config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_15
787 bool "3.15.x"
788 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15
789
Samuel Martin11547ca2014-04-06 18:27:49 +0200790config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_14
791 bool "3.14.x"
792 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14
793
Yann E. MORINc58bcd52014-03-01 15:52:59 +0100794config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_13
795 bool "3.13.x"
796 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_13
797
798config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_12
799 bool "3.12.x"
800 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
801
802config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_11
803 bool "3.11.x"
804 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_11
805
806config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10
807 bool "3.10.x"
808 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
809
810config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_9
811 bool "3.9.x"
812 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_9
813
814config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_8
815 bool "3.8.x"
816 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_8
817
818config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_7
819 bool "3.7.x"
820 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
821
822config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_6
823 bool "3.6.x"
824 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_6
825
826config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_5
827 bool "3.5.x"
828 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_5
829
830config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_4
831 bool "3.4.x"
832 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_4
833
834config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_3
835 bool "3.3.x"
836 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_3
837
838config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_2
839 bool "3.2.x"
840 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
841
842config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_1
843 bool "3.1.x"
844 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_1
845
846config BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_0
847 bool "3.0.x"
848 select BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0
849
850config BR2_TOOLCHAIN_EXTERNAL_HEADERS_REALLY_OLD
851 bool "2.6.x"
852
853endchoice
854
855choice
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100856 prompt "External toolchain C library"
857 default BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
858
859config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
Waldemar Brodkorb9f4483f2016-10-15 10:13:58 +0200860 bool "uClibc/uClibc-ng"
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100861 select BR2_TOOLCHAIN_EXTERNAL_UCLIBC
Thomas Petazzonib9882922011-05-30 23:56:57 +0200862 # For the time being, we assume that all custom external
863 # toolchains have shadow password support.
864 select BR2_TOOLCHAIN_HAS_SHADOW_PASSWORDS
Thomas Petazzoni692a5852013-10-08 20:17:10 +0200865 help
866 Select this option if your external toolchain uses the
Waldemar Brodkorb9f4483f2016-10-15 10:13:58 +0200867 uClibc (available from http://www.uclibc.org/)
868 or uClibc-ng (available from http://www.uclibc-ng.org)
869 C library.
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100870
871config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC
Baruch Siach96688932012-09-27 09:27:42 +0000872 bool "glibc/eglibc"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100873 depends on !BR2_STATIC_LIBS
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100874 select BR2_TOOLCHAIN_EXTERNAL_GLIBC
Baruch Siach96688932012-09-27 09:27:42 +0000875 help
Thomas Petazzoni692a5852013-10-08 20:17:10 +0200876 Select this option if your external toolchain uses the GNU C
877 library (available from https://www.gnu.org/software/libc/)
878 or its variant the eglibc library (http://www.eglibc.org/).
879
880 Note: eglibc is a variant of glibc that (among other things)
881 can be configured to exclude some of its features. Using a
882 toolchain with eglibc configured to exclude key features may
883 cause build failures to some packages.
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100884
Thomas Petazzoni416fd9c2016-06-08 23:40:54 +0200885comment "glibc only available with shared lib support"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +0100886 depends on BR2_STATIC_LIBS
Thomas Petazzonied3f3e42013-11-11 18:57:32 +0100887
Thomas Petazzonia1d94aa2013-10-08 20:17:09 +0200888config BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL
Thomas Petazzonia8e6f522016-05-17 00:13:02 +0200889 bool "musl"
Thomas Petazzonia1d94aa2013-10-08 20:17:09 +0200890 select BR2_TOOLCHAIN_EXTERNAL_MUSL
891 help
892 Select this option if your external toolchain uses the
893 'musl' C library, available from http://www.musl-libc.org/.
894
Thomas Petazzoni643aa232009-05-29 18:37:41 +0200895endchoice
"Steven J. Hill"02f71aa2007-02-06 18:19:38 +0000896
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100897if BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
Thomas Petazzonifff71172010-12-13 17:27:37 +0100898
Thomas Petazzonifff71172010-12-13 17:27:37 +0100899config BR2_TOOLCHAIN_EXTERNAL_WCHAR
900 bool "Toolchain has WCHAR support?"
901 select BR2_USE_WCHAR
902 help
903 Select this option if your external toolchain supports
904 WCHAR. If you don't know, leave the default value, Buildroot
905 will tell you if it's correct or not.
906
907config BR2_TOOLCHAIN_EXTERNAL_LOCALE
908 bool "Toolchain has locale support?"
909 select BR2_TOOLCHAIN_EXTERNAL_WCHAR
910 select BR2_ENABLE_LOCALE
911 help
912 Select this option if your external toolchain has locale
913 support. If you don't know, leave the default value,
914 Buildroot will tell you if it's correct or not.
915
Thomas Petazzoni9eaad202010-12-13 17:27:44 +0100916config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
917 bool "Toolchain has threads support?"
918 select BR2_TOOLCHAIN_HAS_THREADS
Peter Korsgaard04d06892011-07-26 15:28:19 +0200919 default y
Thomas Petazzoni9eaad202010-12-13 17:27:44 +0100920 help
921 Select this option if your external toolchain has thread
922 support. If you don't know, leave the default value,
923 Buildroot will tell you if it's correct or not.
924
Thomas Petazzonic64f9482014-02-18 22:08:59 +0100925if BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
926
Peter Korsgaard5931db02011-11-24 14:26:52 +0100927config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG
928 bool "Toolchain has threads debugging support?"
Peter Korsgaard5931db02011-11-24 14:26:52 +0100929 select BR2_TOOLCHAIN_HAS_THREADS_DEBUG
930 default y
931 help
932 Select this option if your external toolchain has thread
933 debugging support. If you don't know, leave the default
934 value, Buildroot will tell you if it's correct or not.
935
Thomas Petazzonic64f9482014-02-18 22:08:59 +0100936config BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_NPTL
937 bool "Toolchain has NPTL threads support?"
938 select BR2_TOOLCHAIN_HAS_THREADS_NPTL
939 default y
940 help
941 Select this option if your external toolchain uses the NPTL
942 (Native Posix Thread Library) implementation of Posix
943 threads. If you don't know, leave the default value,
944 Buildroot will tell you if it's correct or not.
945
946endif # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS
947
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000948endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM_UCLIBC
949
Thomas Petazzonic5866be2013-09-02 18:06:36 +0200950config BR2_TOOLCHAIN_EXTERNAL_HAS_SSP
951 bool "Toolchain has SSP support?"
952 select BR2_TOOLCHAIN_HAS_SSP
Vicente Olivert Riera79493502016-03-15 16:40:38 +0000953 default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC
954 default y if BR2_TOOLCHAIN_EXTERNAL_MUSL
Thomas Petazzonic5866be2013-09-02 18:06:36 +0200955 help
956 Selection this option if your external toolchain has Stack
957 Smashing Protection support enabled. If you don't know,
958 leave the default value, Buildroot will tell you if it's
959 correct or not.
960
Thomas Petazzoni9fbdf062012-11-03 18:47:50 +0100961config BR2_TOOLCHAIN_EXTERNAL_INET_RPC
962 bool "Toolchain has RPC support?"
963 select BR2_TOOLCHAIN_HAS_NATIVE_RPC
Thomas Petazzonia1d94aa2013-10-08 20:17:09 +0200964 depends on !BR2_TOOLCHAIN_EXTERNAL_MUSL
Thomas Petazzoni3a843a32012-11-04 07:34:29 +0000965 default y if BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni9fbdf062012-11-03 18:47:50 +0100966 help
967 Select this option if your external toolchain supports
968 RPC. If you don't know, leave the default value, Buildroot
969 will tell you if it's correct or not.
970
Thomas Petazzoni6b578c82010-12-13 17:27:41 +0100971config BR2_TOOLCHAIN_EXTERNAL_CXX
972 bool "Toolchain has C++ support?"
973 select BR2_INSTALL_LIBSTDCPP
974 help
975 Select this option if your external toolchain has C++
976 support. If you don't know, leave the default value,
977 Buildroot will tell you if it's correct or not.
978
Samuel Martina6504382016-07-03 15:47:47 +0200979config BR2_TOOLCHAIN_EXTERNAL_FORTRAN
980 bool "Toolchain has Fortran support?"
981 select BR2_TOOLCHAIN_HAS_FORTRAN
982 help
983 Select this option if your external toolchain has Fortran
984 support. If you don't know, leave the default value,
985 Buildroot will tell you if it's correct or not.
986
Thomas De Schampheleirec72f54b2011-10-02 21:20:10 +0200987config BR2_TOOLCHAIN_EXTRA_EXTERNAL_LIBS
988 string "Extra toolchain libraries to be copied to target"
989 help
990 If your external toolchain provides extra libraries that
991 need to be copied to the target filesystem, enter them
Thomas De Schampheleire919b4f92016-02-12 20:20:26 +0100992 here, separated by spaces.
Thomas De Schampheleirec72f54b2011-10-02 21:20:10 +0200993
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100994endif # BR2_TOOLCHAIN_EXTERNAL_CUSTOM
Thomas Petazzonifff71172010-12-13 17:27:37 +0100995
Thomas Petazzonia0b6faa2013-04-07 00:04:33 +0000996config BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
997 bool "Copy gdb server to the Target"
998 depends on BR2_TOOLCHAIN_EXTERNAL
999 help
1000 Copy the gdbserver provided by the external toolchain to the
1001 target.
1002
Sonic Zhang8b4ade82013-06-08 11:14:22 +02001003# When the FDPIC shared binary format is used, the corresponding libraries are
1004# always installed. When a different binary format is used, we offer the option
1005# of installing the FDPIC shared libraries.
1006config BR2_BFIN_INSTALL_FDPIC_SHARED
Thomas De Schampheleirebed4e272013-11-11 17:23:23 +01001007 bool "Install FDPIC shared libraries"
1008 depends on BR2_bfin && !BR2_BINFMT_FDPIC
1009 help
1010 The Linux kernel supports running both FDPIC and FLAT applications
1011 concurrently if the binary format specific libraries are installed
1012 properly. This option allows developer to install FDPIC libraries
1013 into a buildroot rootfs image built with binary format that is not
1014 FDPIC.
Sonic Zhang8b4ade82013-06-08 11:14:22 +02001015
1016# When the FLAT shared binary format is used, we force the installation
1017# of the corresponding libraries. When a different binary format is
1018# used, we offer the option of installing the FLAT shared libraries.
1019config BR2_BFIN_INSTALL_FLAT_SHARED
Thomas De Schampheleirebed4e272013-11-11 17:23:23 +01001020 bool "Install FLAT shared libraries" if !BR2_BINFMT_FLAT_SHARED
1021 depends on BR2_bfin
1022 default y if BR2_BINFMT_FLAT_SHARED
1023 help
1024 The Linux kernel supports running both FDPIC and FLAT applications
1025 concurrently if the binary format specific libraries are installed
1026 properly. This option allows developer to install FLAT libraries
1027 into a buildroot rootfs image built with binary format that is not
1028 shared FLAT.
Sonic Zhang8b4ade82013-06-08 11:14:22 +02001029
Thomas Petazzoni6c492d52010-12-13 17:27:39 +01001030endif # BR2_TOOLCHAIN_EXTERNAL