config/cc/gcc.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Apr 15 22:35:18 2010 +0200 (2010-04-15)
changeset 1920 6df2d4f78948
parent 1881 5284cdc29a63
child 1921 2036f1008d4f
permissions -rw-r--r--
cc/gcc: add support for 4.5.0 or later versions

starting with 4.5.0, gcc requires libelf.
yann@448
     1
# Compiler options
yann@448
     2
yann@923
     3
config CC_gcc
yann@923
     4
    select CC_SUPPORT_CXX
yann@923
     5
    select CC_SUPPORT_FORTRAN
yann@923
     6
    select CC_SUPPORT_JAVA
yann@923
     7
    select CC_SUPPORT_ADA
yann@923
     8
    select CC_SUPPORT_OBJC
yann@923
     9
    select CC_SUPPORT_OBJCXX
yann@923
    10
    help
yann@923
    11
      gcc is the full-blown GNU compiler. This is what most people will choose.
yann@923
    12
      
yann@923
    13
      gcc supports many languages, a powerful code parser, optimised binary
yann@923
    14
      output, and lots of other features.
yann@923
    15
yann@448
    16
choice
yann@448
    17
    bool
yann@448
    18
    prompt "gcc version"
yann@1535
    19
# Don't remove next line
yann@1535
    20
# CT_INSERT_VERSION_BELOW
yann@448
    21
yann@1752
    22
config CC_V_4_4_3
yann@1752
    23
    bool
yann@1778
    24
    prompt "4.4.3"
yann@1752
    25
    select CC_GCC_4_4_or_later
yann@1752
    26
yann@1611
    27
config CC_V_4_4_2
yann@1611
    28
    bool
yann@1778
    29
    prompt "4.4.2"
yann@1611
    30
    select CC_GCC_4_4_or_later
yann@1611
    31
yann@1534
    32
config CC_V_4_4_1
yann@448
    33
    bool
yann@1778
    34
    prompt "4.4.1"
yann@1534
    35
    select CC_GCC_4_4_or_later
yann@1462
    36
yann@1268
    37
config CC_V_4_4_0
yann@1268
    38
    bool
yann@1778
    39
    prompt "4.4.0"
yann@1320
    40
    select CC_GCC_4_4_or_later
yann@1268
    41
yann@1534
    42
config CC_V_4_3_4
yann@1442
    43
    bool
yann@1534
    44
    prompt "4.3.4"
yann@1534
    45
    select CC_GCC_4_3_or_later
yann@1534
    46
yann@1534
    47
config CC_V_4_3_3
yann@1534
    48
    bool
yann@1534
    49
    prompt "4.3.3"
yann@1534
    50
    select CC_GCC_4_3_or_later
yann@1534
    51
yann@1534
    52
config CC_V_4_3_2
yann@1534
    53
    bool
yann@1534
    54
    prompt "4.3.2"
yann@1534
    55
    select CC_GCC_4_3_or_later
yann@1534
    56
yann@1534
    57
config CC_V_4_3_1
yann@1534
    58
    bool
yann@1534
    59
    prompt "4.3.1"
yann@1534
    60
    select CC_GCC_4_3_or_later
yann@1534
    61
yann@1534
    62
config CC_V_4_2_4
yann@1534
    63
    bool
yann@1534
    64
    prompt "4.2.4"
lacombar@1881
    65
    select CC_GCC_4_2_or_later
yann@1534
    66
yann@1534
    67
config CC_V_4_2_3
yann@1534
    68
    bool
yann@1615
    69
    prompt "4.2.3 (OBSOLETE)"
lacombar@1881
    70
    select CC_GCC_4_2_or_later
yann@1615
    71
    depends on OBSOLETE
yann@1534
    72
yann@1534
    73
config CC_V_4_2_2
yann@1534
    74
    bool
yann@1534
    75
    prompt "4.2.2"
lacombar@1881
    76
    select CC_GCC_4_2_or_later
yann@1534
    77
yann@1534
    78
config CC_V_4_2_1
yann@1534
    79
    bool
yann@1615
    80
    prompt "4.2.1 (OBSOLETE)"
lacombar@1881
    81
    select CC_GCC_4_2_or_later
yann@1615
    82
    depends on OBSOLETE
yann@1534
    83
yann@1534
    84
config CC_V_4_2_0
yann@1534
    85
    bool
yann@1615
    86
    prompt "4.2.0 (OBSOLETE)"
lacombar@1881
    87
    select CC_GCC_4_2_or_later
yann@1615
    88
    depends on OBSOLETE
yann@1534
    89
yann@1534
    90
config CC_V_4_1_2
yann@1534
    91
    bool
yann@1615
    92
    prompt "4.1.2 (OBSOLETE)"
yann@1615
    93
    depends on OBSOLETE
yann@1534
    94
yann@1534
    95
config CC_V_4_0_4
yann@1534
    96
    bool
yann@1615
    97
    prompt "4.0.4 (OBSOLETE)"
yann@1615
    98
    depends on OBSOLETE
yann@1534
    99
yann@1534
   100
config CC_V_3_4_6
yann@1534
   101
    bool
yann@1534
   102
    prompt "3.4.6 (OBSOLETE)"
yann@1534
   103
    depends on OBSOLETE
yann@1534
   104
yann@448
   105
endchoice
yann@448
   106
lacombar@1881
   107
config CC_GCC_4_2_or_later
lacombar@1881
   108
    bool
lacombar@1881
   109
    default n
lacombar@1881
   110
yann@1268
   111
config CC_GCC_4_3_or_later
yann@1268
   112
    bool
yann@1268
   113
    default n
lacombar@1881
   114
    select CC_GCC_4_2_or_later
yann@1848
   115
    select CC_GCC_USE_GMP_MPFR
yann@1268
   116
yann@1320
   117
config CC_GCC_4_4_or_later
yann@1268
   118
    bool
yann@1268
   119
    default n
yann@1805
   120
    select CC_GCC_4_3_or_later
lacombar@1881
   121
    select CC_GCC_4_2_or_later
yann@1848
   122
    select CC_GCC_USE_PPL_CLOOG_MPC
yann@1848
   123
yann@1920
   124
config CC_GCC_4_5_or_later
yann@1920
   125
    bool
yann@1920
   126
    default n
yann@1920
   127
    select CC_GCC_4_4_or_later
yann@1920
   128
    select CC_GCC_4_3_or_later
yann@1920
   129
    select CC_GCC_4_2_or_later
yann@1920
   130
    select CC_GCC_USE_LIBELF
yann@1920
   131
yann@1848
   132
config CC_GCC_USE_GMP_MPFR
yann@1848
   133
    bool
yann@1848
   134
    default n
yann@1848
   135
    select GMP
yann@1848
   136
    select MPFR
yann@1848
   137
yann@1848
   138
config CC_GCC_USE_PPL_CLOOG_MPC
yann@1848
   139
    bool
yann@1848
   140
    default n
yann@1808
   141
    select PPL
yann@1808
   142
    select CLOOG
yann@1808
   143
    select MPC
yann@1268
   144
yann@1920
   145
config CC_GCC_USE_LIBELF
yann@1920
   146
    bool
yann@1920
   147
    default n
yann@1920
   148
    select LIBELF
yann@1920
   149
yann@448
   150
config CC_VERSION
yann@448
   151
    string
yann@1535
   152
# Don't remove next line
yann@1535
   153
# CT_INSERT_VERSION_STRING_BELOW
yann@1752
   154
    default "4.4.3" if CC_V_4_4_3
yann@1611
   155
    default "4.4.2" if CC_V_4_4_2
yann@1534
   156
    default "4.4.1" if CC_V_4_4_1
yann@1534
   157
    default "4.4.0" if CC_V_4_4_0
yann@1534
   158
    default "4.3.4" if CC_V_4_3_4
yann@1534
   159
    default "4.3.3" if CC_V_4_3_3
yann@1534
   160
    default "4.3.2" if CC_V_4_3_2
yann@1534
   161
    default "4.3.1" if CC_V_4_3_1
yann@1534
   162
    default "4.3.0" if CC_V_4_3_0
yann@1534
   163
    default "4.2.4" if CC_V_4_2_4
yann@1534
   164
    default "4.2.3" if CC_V_4_2_3
yann@1534
   165
    default "4.2.2" if CC_V_4_2_2
yann@1534
   166
    default "4.2.1" if CC_V_4_2_1
yann@1534
   167
    default "4.2.0" if CC_V_4_2_0
yann@1534
   168
    default "4.1.2" if CC_V_4_1_2
yann@1534
   169
    default "4.0.4" if CC_V_4_0_4
yann@1534
   170
    default "3.4.6" if CC_V_3_4_6
yann@448
   171
yann@448
   172
config CC_CXA_ATEXIT
yann@448
   173
    bool
yann@765
   174
    prompt "Use __cxa_atexit"
yann@765
   175
    default y
yann@850
   176
    depends on ! BARE_METAL
yann@448
   177
    help
yann@448
   178
      If you get the missing symbol "__cxa_atexit" when building C++ programs,
yann@448
   179
      you might want to try disabling this option.
yann@448
   180
yann@765
   181
choice
yann@765
   182
    bool
yann@765
   183
    prompt "Use sjlj for exceptions"
yann@765
   184
    default CC_SJLJ_EXCEPTIONS_CONFIGURE
yann@850
   185
    depends on ! BARE_METAL
yann@765
   186
yann@765
   187
# This config option is used nowhere in the code on purpose.
yann@765
   188
# It only serves as a choice entry to force neither using nor not using sjlj
yann@765
   189
config CC_SJLJ_EXCEPTIONS_CONFIGURE
yann@765
   190
    bool
yann@765
   191
    prompt "Let configure decide"
yann@765
   192
    help
yann@765
   193
      Let configure decide if setjmp/longjmp should be used to handle
yann@765
   194
      exceptions.
yann@765
   195
      
yann@765
   196
      Choose that if you trust configure to detect the correct settings.
yann@765
   197
      This is the default choice.
yann@765
   198
yann@765
   199
config CC_SJLJ_EXCEPTIONS_USE
yann@765
   200
    bool
yann@765
   201
    prompt "Force using sjlj"
yann@765
   202
    help
yann@765
   203
      Do use setjmp/longjmp for exceptions.
yann@765
   204
      This is gcc's --enable-sjlj-exceptions configure switch.
yann@765
   205
      
yann@765
   206
      Choose that if you want to use setjmp/longjmp to handle exceptions.
yann@765
   207
yann@765
   208
config CC_SJLJ_EXCEPTIONS_DONT_USE
yann@765
   209
    bool
yann@765
   210
    prompt "Force not using sjlj"
yann@765
   211
    help
yann@765
   212
      Do not use setjmp/longjmp for exceptions.
yann@765
   213
      This is gcc's --disable-sjlj-exceptions configure switch.
yann@765
   214
      
yann@765
   215
      Choose that if you want to not use setjmp/longjmp to handle exceptions.
yann@765
   216
yann@765
   217
endchoice
yann@765
   218
yann@1484
   219
config CC_ENABLE_CXX_FLAGS
yann@1484
   220
    string
yann@1484
   221
    prompt "Flags to pass to --enable-cxx-flags"
yann@1484
   222
    default ""
yann@1484
   223
    help
yann@1484
   224
      Enter here the value of the gcc's ./configure option --enable-cxx-flags.
yann@1484
   225
      Leave empty if you don't know better.
yann@1484
   226
      
yann@1484
   227
      Note: just pass in the option _value_, that is only the part that goes
yann@1484
   228
      after the '=' sign.
yann@1484
   229
yann@448
   230
config CC_CORE_EXTRA_CONFIG
yann@448
   231
    string
yann@448
   232
    prompt "Core gcc extra config"
yann@448
   233
    default ""
yann@448
   234
    help
yann@448
   235
      Extra flags to pass onto ./configure when configuring the core gcc.
yann@448
   236
      
yann@448
   237
      The core gcc is a stripped down, C-only compiler needed to build
yann@448
   238
      the C library. Kinda bootstrap gcc, if you wish.
yann@448
   239
yann@448
   240
config CC_EXTRA_CONFIG
yann@448
   241
    string
yann@448
   242
    prompt "gcc extra config"
yann@448
   243
    default ""
yann@850
   244
    depends on ! BARE_METAL
yann@448
   245
    help
yann@448
   246
      Extra flags to pass onto ./configure when configuring gcc.
yann@466
   247
yann@545
   248
config CC_PKGVERSION
yann@545
   249
    string
yann@545
   250
    prompt "gcc ID string"
yann@545
   251
    depends on CC_GCC_4_3_or_later
yann@545
   252
    default "crosstool-NG-${CT_VERSION}"
yann@545
   253
    help
yann@545
   254
      Specify a string that identifies your package. You may wish to include
yann@545
   255
      a build number or build date. This version string will be included in
yann@545
   256
      the output of gcc --version.
yann@545
   257
yann@545
   258
      This is passed to the configure flag --with-pkgversion.
yann@545
   259
yann@545
   260
config CC_BUGURL
yann@545
   261
    string
yann@545
   262
    prompt "gcc bug URL"
yann@545
   263
    depends on CC_GCC_4_3_or_later
yann@545
   264
    default ""
yann@545
   265
    help
yann@545
   266
      Specify the URL that users should visit if they wish to report a bug.
yann@1129
   267
yann@1129
   268
config CC_LANG_JAVA_USE_ECJ
yann@1129
   269
    bool
yann@1129
   270
    default y
yann@1129
   271
    depends on CC_LANG_JAVA
yann@1129
   272
    depends on CC_GCC_4_3_or_later