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"
19 Linaro is maintaining some advanced/more stable/experimental versions
20 of gcc, especially for the ARM architecture.
22 Those versions have not been blessed by the gcc comunity (nor have they
23 been cursed either!), but they look to be pretty much stable, and even
24 more stable than the upstream versions. YMMV...
26 If you do not know what this Linaro stuff is, then simply say 'n' here,
27 and rest in peace. OTOH, if you know what you are doing, you will be
28 able to use and enjoy :-) the Linaro versions by saying 'y' here.
30 Linaro: http://www.linaro.org/
36 # Don't remove next line
37 # CT_INSERT_VERSION_BELOW
39 config CC_V_linaro_4_8
41 prompt "linaro-4.8-2013.06-1"
42 depends on CC_GCC_SHOW_LINARO
55 config CC_V_linaro_4_7
57 prompt "linaro-4.7-2013.06-1"
58 depends on CC_GCC_SHOW_LINARO
81 config CC_V_linaro_4_6
83 prompt "linaro-4.6-2013.05"
84 depends on CC_GCC_SHOW_LINARO
112 config CC_V_linaro_4_5
114 prompt "linaro-4.5-2012.03"
115 depends on CC_GCC_SHOW_LINARO
139 config CC_V_linaro_4_4
141 prompt "linaro-4.4-2011.02-0"
142 depends on CC_GCC_SHOW_LINARO
220 # We need that one, it's the only version with avr32 support
221 # because we have a patch for it
229 prompt "4.1.2 (OBSOLETE)"
234 prompt "4.0.4 (OBSOLETE)"
239 prompt "3.4.6 (OBSOLETE)"
245 depends on EXPERIMENTAL
252 config CC_CUSTOM_LOCATION
254 prompt "Full path to custom gcc source"
257 Enter the path to the directory (or tarball) of your source for gcc,
258 or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/gcc
264 select CC_GCC_4_2_or_later
266 config CC_GCC_4_2_or_later
271 select CC_GCC_4_3_or_later
272 select CC_GCC_USE_GMP_MPFR
273 select CC_GCC_HAS_PKGVERSION_BUGURL
275 config CC_GCC_4_3_or_later
277 select CC_GCC_4_2_or_later
281 select CC_GCC_4_4_or_later
282 select CC_GCC_USE_GMP_MPFR
283 select CC_GCC_HAS_GRAPHITE
284 select CC_GCC_HAS_PKGVERSION_BUGURL
286 config CC_GCC_4_4_or_later
288 select CC_GCC_4_3_or_later
292 select CC_GCC_4_5_or_later
293 select CC_GCC_USE_GMP_MPFR
294 select CC_GCC_USE_MPC
295 select CC_GCC_HAS_GRAPHITE
296 select CC_GCC_HAS_LTO
297 select CC_GCC_HAS_PKGVERSION_BUGURL
298 select CC_GCC_HAS_BUILD_ID
300 config CC_GCC_4_5_or_later
302 select CC_GCC_4_4_or_later
306 select CC_GCC_4_6_or_later
307 select CC_GCC_USE_GMP_MPFR
308 select CC_GCC_USE_MPC
309 select CC_GCC_HAS_GRAPHITE
310 select CC_GCC_HAS_LTO
311 select CC_GCC_HAS_PKGVERSION_BUGURL
312 select CC_GCC_HAS_BUILD_ID
313 select CC_GCC_HAS_LIBQUADMATH
315 config CC_GCC_4_6_or_later
317 select CC_GCC_4_5_or_later
321 select CC_GCC_4_7_or_later
322 select CC_GCC_USE_GMP_MPFR
323 select CC_GCC_USE_MPC
324 select CC_GCC_HAS_GRAPHITE
325 select CC_GCC_HAS_LTO
326 select CC_GCC_HAS_PKGVERSION_BUGURL
327 select CC_GCC_HAS_BUILD_ID
328 select CC_GCC_HAS_LNK_HASH_STYLE
329 select CC_GCC_HAS_LIBQUADMATH
331 config CC_GCC_4_7_or_later
333 select CC_GCC_4_6_or_later
337 select CC_GCC_4_8_or_later
338 select CC_GCC_USE_GMP_MPFR
339 select CC_GCC_USE_MPC
340 select CC_GCC_HAS_GRAPHITE
341 select CC_GCC_HAS_LTO
342 select CC_GCC_HAS_PKGVERSION_BUGURL
343 select CC_GCC_HAS_BUILD_ID
344 select CC_GCC_HAS_LNK_HASH_STYLE
345 select CC_GCC_HAS_LIBQUADMATH
347 config CC_GCC_4_8_or_later
349 select CC_GCC_4_7_or_later
353 select CC_GCC_4_8_or_later
354 select CC_GCC_USE_GMP_MPFR
355 select CC_GCC_USE_MPC
356 select CC_GCC_HAS_GRAPHITE
357 select CC_GCC_HAS_LTO
358 select CC_GCC_HAS_PKGVERSION_BUGURL
359 select CC_GCC_HAS_BUILD_ID
360 select CC_GCC_HAS_LNK_HASH_STYLE
361 select CC_GCC_HAS_LIBQUADMATH
363 config CC_GCC_HAS_GRAPHITE
366 # For graphite: gcc 4.4..4.7 need ppl, while 4.8.. need isl
367 # Prompt in config/cc/gcc.in.2
368 config CC_GCC_USE_GRAPHITE
371 depends on CC_GCC_HAS_GRAPHITE
373 select PPL_NEEDED if !CC_GCC_4_8_or_later
374 select ISL_NEEDED if CC_GCC_4_8_or_later
376 Enable the GRAPHITE loop optimsations.
378 On some systems (eg. Cygwin), PPL and/or CLooG (required to enable
379 GRAPHITE) may not build properly (yet), so you'll have to say 'N'
380 here (or help debug the issues)
382 # The way LTO works is a bit twisted.
383 # See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
385 # - if binutils has plugins: LTO is handled by ld/gold by loading
386 # the plugin when linking
387 # - if binutils does not have plugins: LTO is handled by collect2
388 # In any case, LTO support does not depend on plugins, but takes
390 config CC_GCC_HAS_LTO
393 # Prompt in config/cc/gcc.in.2
394 config CC_GCC_USE_LTO
397 depends on CC_GCC_HAS_LTO
398 select CC_GCC_USE_LIBELF if CC_GCC_4_5
400 Enable the Link Time Optimisations.
402 config CC_GCC_HAS_PKGVERSION_BUGURL
405 config CC_GCC_HAS_BUILD_ID
408 config CC_GCC_HAS_LNK_HASH_STYLE
411 # Only enable gcc's support for plugins if binutils has it as well
412 # They are usefull only when doing LTO, but it does no harm enabling
413 # them even without LTO.
414 config CC_GCC_ENABLE_PLUGINS
416 depends on BINUTILS_PLUGINS
417 depends on ! STATIC_TOOLCHAIN
420 # If binutils installs gold, enable support for gold in gcc
423 depends on BINUTILS_GOLD_INSTALLED
426 config CC_GCC_USE_GMP_MPFR
431 config CC_GCC_USE_MPC
435 config CC_GCC_USE_LIBELF
439 config CC_GCC_HAS_LIBQUADMATH
444 # Don't remove next line
445 # CT_INSERT_VERSION_STRING_BELOW
446 default "linaro-4.8-2013.06-1" if CC_V_linaro_4_8
447 default "4.8.1" if CC_V_4_8_1
448 default "4.8.0" if CC_V_4_8_0
449 default "linaro-4.7-2013.06-1" if CC_V_linaro_4_7
450 default "4.7.3" if CC_V_4_7_3
451 default "4.7.2" if CC_V_4_7_2
452 default "4.7.1" if CC_V_4_7_1
453 default "4.7.0" if CC_V_4_7_0
454 default "linaro-4.6-2013.05" if CC_V_linaro_4_6
455 default "4.6.4" if CC_V_4_6_4
456 default "4.6.3" if CC_V_4_6_3
457 default "4.6.2" if CC_V_4_6_2
458 default "4.6.1" if CC_V_4_6_1
459 default "4.6.0" if CC_V_4_6_0
460 default "linaro-4.5-2012.03" if CC_V_linaro_4_5
461 default "4.5.3" if CC_V_4_5_3
462 default "4.5.2" if CC_V_4_5_2
463 default "4.5.1" if CC_V_4_5_1
464 default "4.5.0" if CC_V_4_5_0
465 default "linaro-4.4-2011.02-0" if CC_V_linaro_4_4
466 default "4.4.7" if CC_V_4_4_7
467 default "4.4.6" if CC_V_4_4_6
468 default "4.4.5" if CC_V_4_4_5
469 default "4.4.4" if CC_V_4_4_4
470 default "4.4.3" if CC_V_4_4_3
471 default "4.4.2" if CC_V_4_4_2
472 default "4.4.1" if CC_V_4_4_1
473 default "4.4.0" if CC_V_4_4_0
474 default "4.3.6" if CC_V_4_3_6
475 default "4.3.5" if CC_V_4_3_5
476 default "4.3.4" if CC_V_4_3_4
477 default "4.3.3" if CC_V_4_3_3
478 default "4.3.2" if CC_V_4_3_2
479 default "4.3.1" if CC_V_4_3_1
480 default "4.3.0" if CC_V_4_3_0
481 default "4.2.4" if CC_V_4_2_4
482 default "4.2.2" if CC_V_4_2_2
483 default "4.1.2" if CC_V_4_1_2
484 default "4.0.4" if CC_V_4_0_4
485 default "3.4.6" if CC_V_3_4_6
486 default "custom" if CC_CUSTOM
488 config CC_LANG_JAVA_USE_ECJ
491 depends on CC_LANG_JAVA
492 depends on CC_GCC_4_3_or_later
494 # Fortran always requires GMP+MPFR, whatever the gcc version
495 config CC_LANG_FORTRAN
496 select CC_GCC_USE_GMP_MPFR