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_7
41 prompt "linaro-4.7-2013.04"
42 depends on CC_GCC_SHOW_LINARO
65 config CC_V_linaro_4_6
67 prompt "linaro-4.6-2013.04"
68 depends on CC_GCC_SHOW_LINARO
96 config CC_V_linaro_4_5
98 prompt "linaro-4.5-2012.03"
99 depends on CC_GCC_SHOW_LINARO
123 config CC_V_linaro_4_4
125 prompt "linaro-4.4-2011.02-0"
126 depends on CC_GCC_SHOW_LINARO
204 # We need that one, it's the only version with avr32 support
205 # because we have a patch for it
213 prompt "4.1.2 (OBSOLETE)"
218 prompt "4.0.4 (OBSOLETE)"
223 prompt "3.4.6 (OBSOLETE)"
229 depends on EXPERIMENTAL
236 config CC_CUSTOM_LOCATION
238 prompt "Full path to custom gcc source"
241 Enter the path to the directory (or tarball) of your source for gcc,
242 or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/gcc
248 select CC_GCC_4_2_or_later
250 config CC_GCC_4_2_or_later
255 select CC_GCC_4_3_or_later
256 select CC_GCC_USE_GMP_MPFR
257 select CC_GCC_HAS_PKGVERSION_BUGURL
259 config CC_GCC_4_3_or_later
261 select CC_GCC_4_2_or_later
265 select CC_GCC_4_4_or_later
266 select CC_GCC_USE_GMP_MPFR
267 select CC_GCC_HAS_GRAPHITE
268 select CC_GCC_HAS_PKGVERSION_BUGURL
270 config CC_GCC_4_4_or_later
272 select CC_GCC_4_3_or_later
276 select CC_GCC_4_5_or_later
277 select CC_GCC_USE_GMP_MPFR
278 select CC_GCC_USE_MPC
279 select CC_GCC_HAS_GRAPHITE
280 select CC_GCC_HAS_LTO
281 select CC_GCC_HAS_PKGVERSION_BUGURL
282 select CC_GCC_HAS_BUILD_ID
284 config CC_GCC_4_5_or_later
286 select CC_GCC_4_4_or_later
290 select CC_GCC_4_6_or_later
291 select CC_GCC_USE_GMP_MPFR
292 select CC_GCC_USE_MPC
293 select CC_GCC_HAS_GRAPHITE
294 select CC_GCC_HAS_LTO
295 select CC_GCC_HAS_PKGVERSION_BUGURL
296 select CC_GCC_HAS_BUILD_ID
297 select CC_GCC_HAS_LIBQUADMATH
299 config CC_GCC_4_6_or_later
301 select CC_GCC_4_5_or_later
305 select CC_GCC_4_7_or_later
306 select CC_GCC_USE_GMP_MPFR
307 select CC_GCC_USE_MPC
308 select CC_GCC_HAS_GRAPHITE
309 select CC_GCC_HAS_LTO
310 select CC_GCC_HAS_PKGVERSION_BUGURL
311 select CC_GCC_HAS_BUILD_ID
312 select CC_GCC_HAS_LNK_HASH_STYLE
313 select CC_GCC_HAS_LIBQUADMATH
315 config CC_GCC_4_7_or_later
317 select CC_GCC_4_6_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_HAS_GRAPHITE
334 # The way LTO works is a bit twisted.
335 # See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
337 # - if binutils has plugins: LTO is handled by ld/gold by loading
338 # the plugin when linking
339 # - if binutils does not have plugins: LTO is handled by collect2
340 # In any case, LTO support does not depend on plugins, but takes
342 config CC_GCC_HAS_LTO
345 config CC_GCC_HAS_PKGVERSION_BUGURL
348 config CC_GCC_HAS_BUILD_ID
351 config CC_GCC_HAS_LNK_HASH_STYLE
354 # Only enable gcc's support for plugins if binutils has it as well
355 # They are usefull only when doing LTO, but it does no harm enabling
356 # them even without LTO.
357 config CC_GCC_ENABLE_PLUGINS
359 depends on BINUTILS_PLUGINS
360 depends on ! STATIC_TOOLCHAIN
363 # If binutils installs gold, enable support for gold in gcc
366 depends on BINUTILS_GOLD_INSTALLED
369 config CC_GCC_USE_GMP_MPFR
374 config CC_GCC_USE_PPL_CLOOG
379 config CC_GCC_USE_MPC
383 config CC_GCC_USE_LIBELF
387 config CC_GCC_HAS_LIBQUADMATH
392 # Don't remove next line
393 # CT_INSERT_VERSION_STRING_BELOW
394 default "linaro-4.7-2013.04" if CC_V_linaro_4_7
395 default "4.7.3" if CC_V_4_7_3
396 default "4.7.2" if CC_V_4_7_2
397 default "4.7.1" if CC_V_4_7_1
398 default "4.7.0" if CC_V_4_7_0
399 default "linaro-4.6-2013.04" if CC_V_linaro_4_6
400 default "4.6.4" if CC_V_4_6_4
401 default "4.6.3" if CC_V_4_6_3
402 default "4.6.2" if CC_V_4_6_2
403 default "4.6.1" if CC_V_4_6_1
404 default "4.6.0" if CC_V_4_6_0
405 default "linaro-4.5-2012.03" if CC_V_linaro_4_5
406 default "4.5.3" if CC_V_4_5_3
407 default "4.5.2" if CC_V_4_5_2
408 default "4.5.1" if CC_V_4_5_1
409 default "4.5.0" if CC_V_4_5_0
410 default "linaro-4.4-2011.02-0" if CC_V_linaro_4_4
411 default "4.4.7" if CC_V_4_4_7
412 default "4.4.6" if CC_V_4_4_6
413 default "4.4.5" if CC_V_4_4_5
414 default "4.4.4" if CC_V_4_4_4
415 default "4.4.3" if CC_V_4_4_3
416 default "4.4.2" if CC_V_4_4_2
417 default "4.4.1" if CC_V_4_4_1
418 default "4.4.0" if CC_V_4_4_0
419 default "4.3.6" if CC_V_4_3_6
420 default "4.3.5" if CC_V_4_3_5
421 default "4.3.4" if CC_V_4_3_4
422 default "4.3.3" if CC_V_4_3_3
423 default "4.3.2" if CC_V_4_3_2
424 default "4.3.1" if CC_V_4_3_1
425 default "4.3.0" if CC_V_4_3_0
426 default "4.2.4" if CC_V_4_2_4
427 default "4.2.2" if CC_V_4_2_2
428 default "4.1.2" if CC_V_4_1_2
429 default "4.0.4" if CC_V_4_0_4
430 default "3.4.6" if CC_V_3_4_6
431 default "custom" if CC_CUSTOM
433 config CC_LANG_JAVA_USE_ECJ
436 depends on CC_LANG_JAVA
437 depends on CC_GCC_4_3_or_later
439 # Fortran always requires GMP+MPFR, whatever the gcc version
440 config CC_LANG_FORTRAN
441 select CC_GCC_USE_GMP_MPFR