config/cc/gcc.in
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Sun May 05 18:00:16 2013 +0200 (2013-05-05)
changeset 3213 54b4f454244b
parent 3210 285b83c60e29
child 3217 15eedf548d33
permissions -rw-r--r--
cc/gcc: reorder version strings

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
yann@448
     1
# Compiler options
yann@2444
     2
#
yann@2444
     3
## select CC_SUPPORT_CXX
yann@2444
     4
## select CC_SUPPORT_FORTRAN
yann@2444
     5
## select CC_SUPPORT_JAVA
yann@2444
     6
## select CC_SUPPORT_ADA
yann@2444
     7
## select CC_SUPPORT_OBJC
yann@2444
     8
## select CC_SUPPORT_OBJCXX
yann@2444
     9
##
yann@2444
    10
## help gcc is the full-blown GNU compiler. This is what most people will choose.
yann@2444
    11
## help
yann@2444
    12
## help gcc supports many languages, a powerful code parser, optimised binary
yann@2444
    13
## help output, and lots of other features.
yann@923
    14
yann@2367
    15
config CC_GCC_SHOW_LINARO
yann@2367
    16
    bool
yann@3149
    17
    prompt "Show Linaro versions"
yann@2367
    18
    help
yann@2367
    19
      Linaro is maintaining some advanced/more stable/experimental versions
yann@2367
    20
      of gcc, especially for the ARM architecture.
yann@2367
    21
      
yann@2367
    22
      Those versions have not been blessed by the gcc comunity (nor have they
yann@2367
    23
      been cursed either!), but they look to be pretty much stable, and even
yann@2367
    24
      more stable than the upstream versions. YMMV...
yann@2367
    25
      
yann@2367
    26
      If you do not know what this Linaro stuff is, then simply say 'n' here,
yann@2367
    27
      and rest in peace. OTOH, if you know what you are doing, you will be
yann@2367
    28
      able to use and enjoy :-) the Linaro versions by saying 'y' here.
yann@2367
    29
      
yann@2367
    30
      Linaro: http://www.linaro.org/
yann@2367
    31
yann@448
    32
choice
yann@448
    33
    bool
yann@448
    34
    prompt "gcc version"
bryanhundven@3043
    35
yann@1535
    36
# Don't remove next line
yann@1535
    37
# CT_INSERT_VERSION_BELOW
yann@448
    38
yann@3174
    39
config CC_V_linaro_4_7
benoit@2952
    40
    bool
benoit@3201
    41
    prompt "linaro-4.7-2013.04"
benoit@2952
    42
    depends on CC_GCC_SHOW_LINARO
benoit@2952
    43
    select CC_GCC_4_7
benoit@2952
    44
yann@3210
    45
config CC_V_4_7_3
yann@3210
    46
    bool
yann@3210
    47
    prompt "4.7.3"
yann@3210
    48
    select CC_GCC_4_7
yann@3210
    49
f@3057
    50
config CC_V_4_7_2
f@3057
    51
    bool
f@3057
    52
    prompt "4.7.2"
f@3057
    53
    select CC_GCC_4_7
f@3057
    54
bryanhundven@3015
    55
config CC_V_4_7_1
bryanhundven@3015
    56
    bool
yann@3149
    57
    prompt "4.7.1"
bryanhundven@3015
    58
    select CC_GCC_4_7
bryanhundven@3015
    59
bryanhundven@2943
    60
config CC_V_4_7_0
bryanhundven@2943
    61
    bool
yann@3149
    62
    prompt "4.7.0"
bryanhundven@2943
    63
    select CC_GCC_4_7
bryanhundven@2943
    64
yann@3174
    65
config CC_V_linaro_4_6
yann@2366
    66
    bool
benoit@3201
    67
    prompt "linaro-4.6-2013.04"
yann@2367
    68
    depends on CC_GCC_SHOW_LINARO
yann@2366
    69
    select CC_GCC_4_6
yann@2366
    70
yann@3210
    71
config CC_V_4_6_4
yann@3210
    72
    bool
yann@3210
    73
    prompt "4.6.4"
yann@3210
    74
    select CC_GCC_4_6
yann@3210
    75
bryanhundven@2903
    76
config CC_V_4_6_3
bryanhundven@2903
    77
    bool
yann@2946
    78
    prompt "4.6.3"
bryanhundven@2903
    79
    select CC_GCC_4_6
bryanhundven@2903
    80
bryanhundven@2732
    81
config CC_V_4_6_2
bryanhundven@2732
    82
    bool
yann@2946
    83
    prompt "4.6.2"
bryanhundven@2732
    84
    select CC_GCC_4_6
bryanhundven@2732
    85
bryanhundven@2516
    86
config CC_V_4_6_1
bryanhundven@2516
    87
    bool
yann@2946
    88
    prompt "4.6.1"
bryanhundven@2516
    89
    select CC_GCC_4_6
bryanhundven@2516
    90
yann@2365
    91
config CC_V_4_6_0
yann@2365
    92
    bool
yann@2946
    93
    prompt "4.6.0"
yann@2365
    94
    select CC_GCC_4_6
yann@2365
    95
yann@3174
    96
config CC_V_linaro_4_5
yann@2302
    97
    bool
yann@3149
    98
    prompt "linaro-4.5-2012.03"
yann@2367
    99
    depends on CC_GCC_SHOW_LINARO
yann@2362
   100
    select CC_GCC_4_5
yann@2302
   101
bryanhundven@2516
   102
config CC_V_4_5_3
bryanhundven@2516
   103
    bool
yann@2946
   104
    prompt "4.5.3"
bryanhundven@2516
   105
    select CC_GCC_4_5
bryanhundven@2516
   106
bryanhundven@2233
   107
config CC_V_4_5_2
bryanhundven@2233
   108
    bool
yann@2946
   109
    prompt "4.5.2"
yann@2362
   110
    select CC_GCC_4_5
bryanhundven@2233
   111
lacombar@2061
   112
config CC_V_4_5_1
lacombar@2061
   113
    bool
yann@2946
   114
    prompt "4.5.1"
yann@2362
   115
    select CC_GCC_4_5
lacombar@2061
   116
yann@1921
   117
config CC_V_4_5_0
yann@1921
   118
    bool
yann@2946
   119
    prompt "4.5.0"
yann@2362
   120
    select CC_GCC_4_5
yann@1921
   121
yann@2302
   122
yann@3174
   123
config CC_V_linaro_4_4
yann@2302
   124
    bool
yann@3149
   125
    prompt "linaro-4.4-2011.02-0"
yann@2367
   126
    depends on CC_GCC_SHOW_LINARO
yann@2362
   127
    select CC_GCC_4_4
yann@2302
   128
bryanhundven@2944
   129
config CC_V_4_4_7
bryanhundven@2944
   130
    bool
bryanhundven@2944
   131
    prompt "4.4.7"
bryanhundven@2944
   132
    select CC_GCC_4_4
bryanhundven@2944
   133
yann@2406
   134
config CC_V_4_4_6
yann@2406
   135
    bool
yann@2406
   136
    prompt "4.4.6"
yann@2440
   137
    select CC_GCC_4_4
yann@2406
   138
yann@2149
   139
config CC_V_4_4_5
yann@2149
   140
    bool
yann@2149
   141
    prompt "4.4.5"
yann@2362
   142
    select CC_GCC_4_4
yann@2149
   143
yann@1948
   144
config CC_V_4_4_4
yann@1948
   145
    bool
yann@2149
   146
    prompt "4.4.4"
yann@2362
   147
    select CC_GCC_4_4
yann@1948
   148
yann@1752
   149
config CC_V_4_4_3
yann@1752
   150
    bool
yann@1778
   151
    prompt "4.4.3"
yann@2362
   152
    select CC_GCC_4_4
yann@1752
   153
yann@1611
   154
config CC_V_4_4_2
yann@1611
   155
    bool
yann@1778
   156
    prompt "4.4.2"
yann@2362
   157
    select CC_GCC_4_4
yann@1611
   158
yann@1534
   159
config CC_V_4_4_1
yann@448
   160
    bool
yann@1778
   161
    prompt "4.4.1"
yann@2362
   162
    select CC_GCC_4_4
yann@1462
   163
yann@1268
   164
config CC_V_4_4_0
yann@1268
   165
    bool
yann@1778
   166
    prompt "4.4.0"
yann@2362
   167
    select CC_GCC_4_4
yann@1268
   168
bryanhundven@2516
   169
config CC_V_4_3_6
bryanhundven@2516
   170
    bool
bryanhundven@2516
   171
    prompt "4.3.6"
bryanhundven@2516
   172
    select CC_GCC_4_3
bryanhundven@2516
   173
yann@2124
   174
config CC_V_4_3_5
yann@2124
   175
    bool
yann@2124
   176
    prompt "4.3.5"
yann@2362
   177
    select CC_GCC_4_3
yann@2124
   178
yann@1534
   179
config CC_V_4_3_4
yann@1442
   180
    bool
yann@1534
   181
    prompt "4.3.4"
yann@2362
   182
    select CC_GCC_4_3
yann@1534
   183
yann@1534
   184
config CC_V_4_3_3
yann@1534
   185
    bool
yann@1534
   186
    prompt "4.3.3"
yann@2362
   187
    select CC_GCC_4_3
yann@1534
   188
yann@1534
   189
config CC_V_4_3_2
yann@1534
   190
    bool
yann@1534
   191
    prompt "4.3.2"
yann@2362
   192
    select CC_GCC_4_3
yann@1534
   193
yann@1534
   194
config CC_V_4_3_1
yann@1534
   195
    bool
yann@1534
   196
    prompt "4.3.1"
yann@2362
   197
    select CC_GCC_4_3
yann@1534
   198
yann@1534
   199
config CC_V_4_2_4
yann@1534
   200
    bool
yann@1534
   201
    prompt "4.2.4"
yann@2362
   202
    select CC_GCC_4_2
yann@1534
   203
yann@3142
   204
# We need that one, it's the only version with avr32 support
yann@3142
   205
# because we have a patch for it
yann@1534
   206
config CC_V_4_2_2
yann@1534
   207
    bool
yann@1534
   208
    prompt "4.2.2"
yann@2362
   209
    select CC_GCC_4_2
yann@1534
   210
yann@1534
   211
config CC_V_4_1_2
yann@1534
   212
    bool
yann@1615
   213
    prompt "4.1.2 (OBSOLETE)"
yann@1615
   214
    depends on OBSOLETE
yann@1534
   215
yann@1534
   216
config CC_V_4_0_4
yann@1534
   217
    bool
yann@1615
   218
    prompt "4.0.4 (OBSOLETE)"
yann@1615
   219
    depends on OBSOLETE
yann@1534
   220
yann@1534
   221
config CC_V_3_4_6
yann@1534
   222
    bool
yann@1534
   223
    prompt "3.4.6 (OBSOLETE)"
yann@1534
   224
    depends on OBSOLETE
yann@1534
   225
david@3088
   226
config CC_CUSTOM
david@3088
   227
    bool
david@3088
   228
    prompt "Custom gcc"
david@3088
   229
    depends on EXPERIMENTAL
david@3088
   230
    select CC_GCC_latest
david@3088
   231
yann@448
   232
endchoice
yann@448
   233
david@3088
   234
if CC_CUSTOM
david@3088
   235
david@3088
   236
config CC_CUSTOM_LOCATION
david@3088
   237
    string
david@3088
   238
    prompt "Full path to custom gcc source"
david@3088
   239
    default ""
david@3088
   240
    help
david@3088
   241
      Enter the path to the directory (or tarball) of your source for gcc,
david@3088
   242
      or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/gcc
david@3088
   243
david@3088
   244
endif #CC_CUSTOM
david@3088
   245
yann@2362
   246
config CC_GCC_4_2
yann@2362
   247
    bool
yann@2362
   248
    select CC_GCC_4_2_or_later
yann@2362
   249
lacombar@1881
   250
config CC_GCC_4_2_or_later
lacombar@1881
   251
    bool
lacombar@1881
   252
yann@2362
   253
config CC_GCC_4_3
yann@2362
   254
    bool
yann@2362
   255
    select CC_GCC_4_3_or_later
yann@2362
   256
    select CC_GCC_USE_GMP_MPFR
benoit@2486
   257
    select CC_GCC_HAS_PKGVERSION_BUGURL
yann@2362
   258
yann@1268
   259
config CC_GCC_4_3_or_later
yann@1268
   260
    bool
lacombar@1881
   261
    select CC_GCC_4_2_or_later
yann@2362
   262
yann@2362
   263
config CC_GCC_4_4
yann@2362
   264
    bool
yann@2362
   265
    select CC_GCC_4_4_or_later
yann@1848
   266
    select CC_GCC_USE_GMP_MPFR
yann@2362
   267
    select CC_GCC_HAS_GRAPHITE
benoit@2486
   268
    select CC_GCC_HAS_PKGVERSION_BUGURL
yann@1268
   269
yann@1320
   270
config CC_GCC_4_4_or_later
yann@1268
   271
    bool
yann@1805
   272
    select CC_GCC_4_3_or_later
yann@2362
   273
yann@2362
   274
config CC_GCC_4_5
yann@2362
   275
    bool
yann@2362
   276
    select CC_GCC_4_5_or_later
yann@2362
   277
    select CC_GCC_USE_GMP_MPFR
yann@2362
   278
    select CC_GCC_USE_MPC
yann@2122
   279
    select CC_GCC_HAS_GRAPHITE
yann@2362
   280
    select CC_GCC_HAS_LTO
benoit@2486
   281
    select CC_GCC_HAS_PKGVERSION_BUGURL
yann@2521
   282
    select CC_GCC_HAS_BUILD_ID
yann@1848
   283
yann@1920
   284
config CC_GCC_4_5_or_later
yann@1920
   285
    bool
yann@1920
   286
    select CC_GCC_4_4_or_later
yann@2122
   287
yann@2363
   288
config CC_GCC_4_6
yann@2363
   289
    bool
yann@2363
   290
    select CC_GCC_4_6_or_later
yann@2363
   291
    select CC_GCC_USE_GMP_MPFR
yann@2363
   292
    select CC_GCC_USE_MPC
yann@2363
   293
    select CC_GCC_HAS_GRAPHITE
yann@2363
   294
    select CC_GCC_HAS_LTO
benoit@2486
   295
    select CC_GCC_HAS_PKGVERSION_BUGURL
yann@2521
   296
    select CC_GCC_HAS_BUILD_ID
yann@2979
   297
    select CC_GCC_HAS_LIBQUADMATH
yann@2363
   298
yann@2363
   299
config CC_GCC_4_6_or_later
yann@2363
   300
    bool
yann@2363
   301
    select CC_GCC_4_5_or_later
yann@2363
   302
bryanhundven@2943
   303
config CC_GCC_4_7
bryanhundven@2943
   304
    bool
bryanhundven@2943
   305
    select CC_GCC_4_7_or_later
bryanhundven@2943
   306
    select CC_GCC_USE_GMP_MPFR
bryanhundven@2943
   307
    select CC_GCC_USE_MPC
bryanhundven@2943
   308
    select CC_GCC_HAS_GRAPHITE
bryanhundven@2943
   309
    select CC_GCC_HAS_LTO
bryanhundven@2943
   310
    select CC_GCC_HAS_PKGVERSION_BUGURL
bryanhundven@2943
   311
    select CC_GCC_HAS_BUILD_ID
yann@2948
   312
    select CC_GCC_HAS_LNK_HASH_STYLE
yann@2979
   313
    select CC_GCC_HAS_LIBQUADMATH
bryanhundven@2943
   314
bryanhundven@2943
   315
config CC_GCC_4_7_or_later
bryanhundven@2943
   316
    bool
bryanhundven@2943
   317
    select CC_GCC_4_6_or_later
bryanhundven@2943
   318
bryanhundven@3043
   319
config CC_GCC_latest
bryanhundven@3043
   320
    bool
bryanhundven@3043
   321
    select CC_GCC_4_7_or_later
bryanhundven@3043
   322
    select CC_GCC_USE_GMP_MPFR
bryanhundven@3043
   323
    select CC_GCC_USE_MPC
bryanhundven@3043
   324
    select CC_GCC_HAS_GRAPHITE
bryanhundven@3043
   325
    select CC_GCC_HAS_LTO
bryanhundven@3043
   326
    select CC_GCC_HAS_PKGVERSION_BUGURL
bryanhundven@3043
   327
    select CC_GCC_HAS_BUILD_ID
bryanhundven@3043
   328
    select CC_GCC_HAS_LNK_HASH_STYLE
bryanhundven@3043
   329
    select CC_GCC_HAS_LIBQUADMATH
bryanhundven@3043
   330
yann@2122
   331
config CC_GCC_HAS_GRAPHITE
yann@2122
   332
    bool
yann@2122
   333
yann@2287
   334
# The way LTO works is a bit twisted.
yann@2287
   335
# See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
yann@2287
   336
# Basically:
yann@2287
   337
#   - if binutils has plugins: LTO is handled by ld/gold by loading
yann@2287
   338
#     the plugin when linking
yann@2287
   339
#   - if binutils does not have plugins: LTO is handled by collect2
yann@2287
   340
# In any case, LTO support does not depend on plugins, but takes
yann@2287
   341
# advantage of it
yann@2122
   342
config CC_GCC_HAS_LTO
yann@2122
   343
    bool
yann@1920
   344
benoit@2486
   345
config CC_GCC_HAS_PKGVERSION_BUGURL
benoit@2486
   346
    bool
benoit@2486
   347
yann@2521
   348
config CC_GCC_HAS_BUILD_ID
yann@2521
   349
    bool
yann@2521
   350
yann@2522
   351
config CC_GCC_HAS_LNK_HASH_STYLE
yann@2522
   352
    bool
yann@2522
   353
yann@2287
   354
# Only enable gcc's support for plugins if binutils has it as well
yann@2287
   355
# They are usefull only when doing LTO, but it does no harm enabling
yann@2287
   356
# them even without LTO.
yann@2287
   357
config CC_GCC_ENABLE_PLUGINS
yann@2287
   358
    bool
yann@2287
   359
    depends on BINUTILS_PLUGINS
yann@2316
   360
    depends on ! STATIC_TOOLCHAIN
yann@2287
   361
    default y
yann@2287
   362
yann@2287
   363
# If binutils installs gold, enable support for gold in gcc
yann@2287
   364
config CC_GCC_GOLD
yann@2287
   365
    bool
yann@2287
   366
    depends on BINUTILS_GOLD_INSTALLED
yann@2287
   367
    default y
yann@2287
   368
yann@1848
   369
config CC_GCC_USE_GMP_MPFR
yann@1848
   370
    bool
yann@2131
   371
    select GMP_NEEDED
yann@2131
   372
    select MPFR_NEEDED
yann@1848
   373
yann@2014
   374
config CC_GCC_USE_PPL_CLOOG
yann@1848
   375
    bool
yann@2131
   376
    select PPL_NEEDED
yann@2131
   377
    select CLOOG_NEEDED
yann@1268
   378
yann@2122
   379
config CC_GCC_USE_MPC
yann@1920
   380
    bool
yann@2131
   381
    select MPC_NEEDED
yann@2122
   382
yann@2122
   383
config CC_GCC_USE_LIBELF
yann@2122
   384
    bool
yann@2131
   385
    select LIBELF_NEEDED
yann@1920
   386
yann@2979
   387
config CC_GCC_HAS_LIBQUADMATH
yann@2979
   388
    bool
yann@2979
   389
yann@448
   390
config CC_VERSION
yann@448
   391
    string
yann@1535
   392
# Don't remove next line
yann@1535
   393
# CT_INSERT_VERSION_STRING_BELOW
yann@3213
   394
    default "linaro-4.7-2013.04" if CC_V_linaro_4_7
yann@3210
   395
    default "4.7.3" if CC_V_4_7_3
f@3057
   396
    default "4.7.2" if CC_V_4_7_2
bryanhundven@3015
   397
    default "4.7.1" if CC_V_4_7_1
bryanhundven@2943
   398
    default "4.7.0" if CC_V_4_7_0
benoit@3201
   399
    default "linaro-4.6-2013.04" if CC_V_linaro_4_6
yann@3213
   400
    default "4.6.4" if CC_V_4_6_4
bryanhundven@2903
   401
    default "4.6.3" if CC_V_4_6_3
bryanhundven@2732
   402
    default "4.6.2" if CC_V_4_6_2
bryanhundven@2516
   403
    default "4.6.1" if CC_V_4_6_1
yann@2365
   404
    default "4.6.0" if CC_V_4_6_0
yann@3174
   405
    default "linaro-4.5-2012.03" if CC_V_linaro_4_5
bryanhundven@2516
   406
    default "4.5.3" if CC_V_4_5_3
bryanhundven@2233
   407
    default "4.5.2" if CC_V_4_5_2
lacombar@2061
   408
    default "4.5.1" if CC_V_4_5_1
yann@1921
   409
    default "4.5.0" if CC_V_4_5_0
yann@3174
   410
    default "linaro-4.4-2011.02-0" if CC_V_linaro_4_4
bryanhundven@2944
   411
    default "4.4.7" if CC_V_4_4_7
bryanhundven@2516
   412
    default "4.4.6" if CC_V_4_4_6
yann@2149
   413
    default "4.4.5" if CC_V_4_4_5
yann@1948
   414
    default "4.4.4" if CC_V_4_4_4
yann@1752
   415
    default "4.4.3" if CC_V_4_4_3
yann@1611
   416
    default "4.4.2" if CC_V_4_4_2
yann@1534
   417
    default "4.4.1" if CC_V_4_4_1
yann@1534
   418
    default "4.4.0" if CC_V_4_4_0
bryanhundven@2516
   419
    default "4.3.6" if CC_V_4_3_6
yann@2124
   420
    default "4.3.5" if CC_V_4_3_5
yann@1534
   421
    default "4.3.4" if CC_V_4_3_4
yann@1534
   422
    default "4.3.3" if CC_V_4_3_3
yann@1534
   423
    default "4.3.2" if CC_V_4_3_2
yann@1534
   424
    default "4.3.1" if CC_V_4_3_1
yann@1534
   425
    default "4.3.0" if CC_V_4_3_0
yann@1534
   426
    default "4.2.4" if CC_V_4_2_4
yann@1534
   427
    default "4.2.2" if CC_V_4_2_2
yann@1534
   428
    default "4.1.2" if CC_V_4_1_2
yann@1534
   429
    default "4.0.4" if CC_V_4_0_4
yann@1534
   430
    default "3.4.6" if CC_V_3_4_6
david@3088
   431
    default "custom" if CC_CUSTOM
yann@448
   432
yann@2041
   433
config CC_LANG_JAVA_USE_ECJ
yann@448
   434
    bool
yann@765
   435
    default y
yann@2041
   436
    depends on CC_LANG_JAVA
yann@2041
   437
    depends on CC_GCC_4_3_or_later
yann@2579
   438
yann@2579
   439
# Fortran always requires GMP+MPFR, whatever the gcc version
yann@2579
   440
config CC_LANG_FORTRAN
yann@2579
   441
    select CC_GCC_USE_GMP_MPFR