3 ## select CC_SUPPORT_CXX
4 ## select CC_SUPPORT_FORTRAN
5 ## select CC_SUPPORT_JAVA
6 ## select CC_SUPPORT_ADA
7 ## select CC_SUPPORT_OBJC
8 ## select CC_SUPPORT_OBJCXX
10 ## help gcc is the full-blown GNU compiler. This is what most people will choose.
12 ## help gcc supports many languages, a powerful code parser, optimised binary
13 ## help output, and lots of other features.
15 config CC_GCC_SHOW_LINARO
17 prompt "Show Linaro versions (EXPERIMENTAL)"
18 depends on EXPERIMENTAL
20 Linaro is maintaining some advanced/more stable/experimental versions
21 of gcc, especially for the ARM architecture.
23 Those versions have not been blessed by the gcc comunity (nor have they
24 been cursed either!), but they look to be pretty much stable, and even
25 more stable than the upstream versions. YMMV...
27 If you do not know what this Linaro stuff is, then simply say 'n' here,
28 and rest in peace. OTOH, if you know what you are doing, you will be
29 able to use and enjoy :-) the Linaro versions by saying 'y' here.
31 Linaro: http://www.linaro.org/
37 # Don't remove next line
38 # CT_INSERT_VERSION_BELOW
40 config CC_V_linaro_4_7_2012_12
42 prompt "linaro-4.7-2012.12 (EXPERIMENTAL)"
43 depends on CC_GCC_SHOW_LINARO
53 prompt "4.7.1 (EXPERIMENTAL)"
54 depends on EXPERIMENTAL
59 prompt "4.7.0 (EXPERIMENTAL)"
60 depends on EXPERIMENTAL
63 config CC_V_linaro_4_6_2012_12
65 prompt "linaro-4.6-2012.12 (EXPERIMENTAL)"
66 depends on CC_GCC_SHOW_LINARO
89 config CC_V_linaro_4_5_2012_03
91 prompt "linaro-4.5-2012.03 (EXPERIMENTAL)"
92 depends on CC_GCC_SHOW_LINARO
116 config CC_V_linaro_4_4_2011_02_0
118 prompt "linaro-4.4-2011.02-0 (EXPERIMENTAL)"
119 depends on CC_GCC_SHOW_LINARO
197 # We need that one, it's the only version with avr32 support
198 # because we have a patch for it
206 prompt "4.1.2 (OBSOLETE)"
211 prompt "4.0.4 (OBSOLETE)"
216 prompt "3.4.6 (OBSOLETE)"
222 depends on EXPERIMENTAL
229 config CC_CUSTOM_LOCATION
231 prompt "Full path to custom gcc source"
234 Enter the path to the directory (or tarball) of your source for gcc,
235 or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/gcc
241 select CC_GCC_4_2_or_later
243 config CC_GCC_4_2_or_later
248 select CC_GCC_4_3_or_later
249 select CC_GCC_USE_GMP_MPFR
250 select CC_GCC_HAS_PKGVERSION_BUGURL
252 config CC_GCC_4_3_or_later
254 select CC_GCC_4_2_or_later
258 select CC_GCC_4_4_or_later
259 select CC_GCC_USE_GMP_MPFR
260 select CC_GCC_HAS_GRAPHITE
261 select CC_GCC_HAS_PKGVERSION_BUGURL
263 config CC_GCC_4_4_or_later
265 select CC_GCC_4_3_or_later
269 select CC_GCC_4_5_or_later
270 select CC_GCC_USE_GMP_MPFR
271 select CC_GCC_USE_MPC
272 select CC_GCC_HAS_GRAPHITE
273 select CC_GCC_HAS_LTO
274 select CC_GCC_HAS_PKGVERSION_BUGURL
275 select CC_GCC_HAS_BUILD_ID
277 config CC_GCC_4_5_or_later
279 select CC_GCC_4_4_or_later
283 select CC_GCC_4_6_or_later
284 select CC_GCC_USE_GMP_MPFR
285 select CC_GCC_USE_MPC
286 select CC_GCC_HAS_GRAPHITE
287 select CC_GCC_HAS_LTO
288 select CC_GCC_HAS_PKGVERSION_BUGURL
289 select CC_GCC_HAS_BUILD_ID
290 select CC_GCC_HAS_LIBQUADMATH
292 config CC_GCC_4_6_or_later
294 select CC_GCC_4_5_or_later
298 select CC_GCC_4_7_or_later
299 select CC_GCC_USE_GMP_MPFR
300 select CC_GCC_USE_MPC
301 select CC_GCC_HAS_GRAPHITE
302 select CC_GCC_HAS_LTO
303 select CC_GCC_HAS_PKGVERSION_BUGURL
304 select CC_GCC_HAS_BUILD_ID
305 select CC_GCC_HAS_LNK_HASH_STYLE
306 select CC_GCC_HAS_LIBQUADMATH
308 config CC_GCC_4_7_or_later
310 select CC_GCC_4_6_or_later
314 select CC_GCC_4_7_or_later
315 select CC_GCC_USE_GMP_MPFR
316 select CC_GCC_USE_MPC
317 select CC_GCC_HAS_GRAPHITE
318 select CC_GCC_HAS_LTO
319 select CC_GCC_HAS_PKGVERSION_BUGURL
320 select CC_GCC_HAS_BUILD_ID
321 select CC_GCC_HAS_LNK_HASH_STYLE
322 select CC_GCC_HAS_LIBQUADMATH
324 config CC_GCC_HAS_GRAPHITE
327 # The way LTO works is a bit twisted.
328 # See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
330 # - if binutils has plugins: LTO is handled by ld/gold by loading
331 # the plugin when linking
332 # - if binutils does not have plugins: LTO is handled by collect2
333 # In any case, LTO support does not depend on plugins, but takes
335 config CC_GCC_HAS_LTO
338 config CC_GCC_HAS_PKGVERSION_BUGURL
341 config CC_GCC_HAS_BUILD_ID
344 config CC_GCC_HAS_LNK_HASH_STYLE
347 # Only enable gcc's support for plugins if binutils has it as well
348 # They are usefull only when doing LTO, but it does no harm enabling
349 # them even without LTO.
350 config CC_GCC_ENABLE_PLUGINS
352 depends on BINUTILS_PLUGINS
353 depends on ! STATIC_TOOLCHAIN
356 # If binutils installs gold, enable support for gold in gcc
359 depends on BINUTILS_GOLD_INSTALLED
362 config CC_GCC_USE_GMP_MPFR
367 config CC_GCC_USE_PPL_CLOOG
372 config CC_GCC_USE_MPC
376 config CC_GCC_USE_LIBELF
380 config CC_GCC_HAS_LIBQUADMATH
385 # Don't remove next line
386 # CT_INSERT_VERSION_STRING_BELOW
387 default "linaro-4.7-2012.12" if CC_V_linaro_4_7_2012_12
388 default "4.7.2" if CC_V_4_7_2
389 default "4.7.1" if CC_V_4_7_1
390 default "4.7.0" if CC_V_4_7_0
391 default "linaro-4.6-2012.12" if CC_V_linaro_4_6_2012_12
392 default "4.6.3" if CC_V_4_6_3
393 default "4.6.2" if CC_V_4_6_2
394 default "4.6.1" if CC_V_4_6_1
395 default "4.6.0" if CC_V_4_6_0
396 default "linaro-4.5-2012.03" if CC_V_linaro_4_5_2012_03
397 default "4.5.3" if CC_V_4_5_3
398 default "4.5.2" if CC_V_4_5_2
399 default "4.5.1" if CC_V_4_5_1
400 default "4.5.0" if CC_V_4_5_0
401 default "linaro-4.4-2011.02-0" if CC_V_linaro_4_4_2011_02_0
402 default "4.4.7" if CC_V_4_4_7
403 default "4.4.6" if CC_V_4_4_6
404 default "4.4.5" if CC_V_4_4_5
405 default "4.4.4" if CC_V_4_4_4
406 default "4.4.3" if CC_V_4_4_3
407 default "4.4.2" if CC_V_4_4_2
408 default "4.4.1" if CC_V_4_4_1
409 default "4.4.0" if CC_V_4_4_0
410 default "4.3.6" if CC_V_4_3_6
411 default "4.3.5" if CC_V_4_3_5
412 default "4.3.4" if CC_V_4_3_4
413 default "4.3.3" if CC_V_4_3_3
414 default "4.3.2" if CC_V_4_3_2
415 default "4.3.1" if CC_V_4_3_1
416 default "4.3.0" if CC_V_4_3_0
417 default "4.2.4" if CC_V_4_2_4
418 default "4.2.2" if CC_V_4_2_2
419 default "4.1.2" if CC_V_4_1_2
420 default "4.0.4" if CC_V_4_0_4
421 default "3.4.6" if CC_V_3_4_6
422 default "custom" if CC_CUSTOM
424 config CC_LANG_JAVA_USE_ECJ
427 depends on CC_LANG_JAVA
428 depends on CC_GCC_4_3_or_later
430 # Fortran always requires GMP+MPFR, whatever the gcc version
431 config CC_LANG_FORTRAN
432 select CC_GCC_USE_GMP_MPFR