config/cc/gcc.in
author "Benoît Thébaudeau" <benoit.thebaudeau@advansee.com>
Mon Apr 30 17:58:46 2012 +0200 (2012-04-30)
changeset 2952 d20da3fd340e
parent 2948 3396ce2c25ef
child 2979 af99e043b437
permissions -rw-r--r--
cc/gcc: add Linaro GCC 4.7

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