config/cc/gcc.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Oct 13 16:58:52 2008 +0000 (2008-10-13)
changeset 923 54fc137f9dc8
parent 881 d8a7445e18d2
child 1121 4b7ed9da5a21
permissions -rw-r--r--
Generate the choice menu for C compilers, the same way arch, kernels and C libraries are generated.

/trunk/kconfig/kconfig.mk | 6 6 0 0 ++++++
/trunk/config/cc/gcc.in | 13 13 0 0 +++++++++++++
/trunk/config/cc.in | 31 3 28 0 +++----------------------------
3 files changed, 22 insertions(+), 28 deletions(-)
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@448
    19
yann@448
    20
config CC_V_2_95_3
yann@448
    21
    bool
yann@448
    22
    prompt "2.95.3 (OBSOLETE)"
yann@448
    23
    depends on OBSOLETE
yann@448
    24
yann@448
    25
config CC_V_3_2_3
yann@448
    26
    bool
yann@448
    27
    prompt "3.2.3 (OBSOLETE)"
yann@448
    28
    depends on OBSOLETE
yann@448
    29
yann@448
    30
config CC_V_3_3_6
yann@448
    31
    bool
yann@448
    32
    prompt "3.3.6 (OBSOLETE)"
yann@448
    33
    depends on OBSOLETE
yann@448
    34
yann@448
    35
config CC_V_3_4_6
yann@448
    36
    bool
yann@448
    37
    prompt "3.4.6 (OBSOLETE)"
yann@448
    38
    depends on OBSOLETE
yann@448
    39
yann@448
    40
config CC_V_4_0_0
yann@448
    41
    bool
yann@448
    42
    prompt "4.0.0 (OBSOLETE)"
yann@448
    43
    depends on OBSOLETE
yann@448
    44
yann@448
    45
config CC_V_4_0_1
yann@448
    46
    bool
yann@448
    47
    prompt "4.0.1 (OBSOLETE)"
yann@448
    48
    depends on OBSOLETE
yann@448
    49
yann@448
    50
config CC_V_4_0_2
yann@448
    51
    bool
yann@448
    52
    prompt "4.0.2 (OBSOLETE)"
yann@448
    53
    depends on OBSOLETE
yann@448
    54
yann@448
    55
config CC_V_4_0_3
yann@448
    56
    bool
yann@448
    57
    prompt "4.0.3 (OBSOLETE)"
yann@448
    58
    depends on OBSOLETE
yann@448
    59
yann@448
    60
config CC_V_4_0_4
yann@448
    61
    bool
yann@448
    62
    prompt "4.0.4"
yann@448
    63
yann@448
    64
config CC_V_4_1_0
yann@448
    65
    bool
yann@448
    66
    prompt "4.1.0 (OBSOLETE)"
yann@448
    67
    depends on OBSOLETE
yann@448
    68
yann@448
    69
config CC_V_4_1_1
yann@448
    70
    bool
yann@448
    71
    prompt "4.1.1 (OBSOLETE)"
yann@448
    72
    depends on OBSOLETE
yann@448
    73
yann@448
    74
config CC_V_4_1_2
yann@448
    75
    bool
yann@448
    76
    prompt "4.1.2"
yann@448
    77
yann@448
    78
config CC_V_4_2_0
yann@448
    79
    bool
yann@448
    80
    prompt "4.2.0"
yann@448
    81
yann@448
    82
config CC_V_4_2_1
yann@448
    83
    bool
yann@448
    84
    prompt "4.2.1"
yann@448
    85
yann@448
    86
config CC_V_4_2_2
yann@448
    87
    bool
yann@448
    88
    prompt "4.2.2"
yann@448
    89
yann@448
    90
config CC_V_4_2_3
yann@448
    91
    bool
yann@551
    92
    prompt "4.2.3"
yann@448
    93
yann@687
    94
config CC_V_4_2_4
yann@687
    95
    bool
yann@687
    96
    prompt "4.2.4"
yann@687
    97
yann@550
    98
config CC_V_4_3_0
yann@550
    99
    bool
yann@550
   100
    prompt "4.3.0 (EXPERIMENTAL)"
yann@550
   101
    depends on EXPERIMENTAL
yann@550
   102
    select CC_GCC_4_3_or_later
yann@550
   103
yann@550
   104
config CC_V_4_3_1
yann@550
   105
    bool
yann@794
   106
    prompt "4.3.1"
yann@550
   107
    select CC_GCC_4_3_or_later
yann@550
   108
yann@874
   109
config CC_V_4_3_2
yann@874
   110
    bool
yann@881
   111
    prompt "4.3.2"
yann@874
   112
    select CC_GCC_4_3_or_later
yann@874
   113
yann@448
   114
# CT_INSERT_VERSION_ABOVE
yann@448
   115
# Don't remove above line!
yann@448
   116
endchoice
yann@448
   117
yann@448
   118
config CC_VERSION
yann@448
   119
    string
yann@448
   120
    default "2.95.3" if CC_V_2_95_3
yann@448
   121
    default "3.2.3" if CC_V_3_2_3
yann@448
   122
    default "3.3.6" if CC_V_3_3_6
yann@448
   123
    default "3.4.6" if CC_V_3_4_6
yann@448
   124
    default "4.0.0" if CC_V_4_0_0
yann@448
   125
    default "4.0.1" if CC_V_4_0_1
yann@448
   126
    default "4.0.2" if CC_V_4_0_2
yann@448
   127
    default "4.0.3" if CC_V_4_0_3
yann@448
   128
    default "4.0.4" if CC_V_4_0_4
yann@448
   129
    default "4.1.0" if CC_V_4_1_0
yann@448
   130
    default "4.1.1" if CC_V_4_1_1
yann@448
   131
    default "4.1.2" if CC_V_4_1_2
yann@448
   132
    default "4.2.0" if CC_V_4_2_0
yann@448
   133
    default "4.2.1" if CC_V_4_2_1
yann@448
   134
    default "4.2.2" if CC_V_4_2_2
yann@448
   135
    default "4.2.3" if CC_V_4_2_3
yann@687
   136
    default "4.2.4" if CC_V_4_2_4
yann@550
   137
    default "4.3.0" if CC_V_4_3_0
yann@550
   138
    default "4.3.1" if CC_V_4_3_1
yann@874
   139
    default "4.3.2" if CC_V_4_3_2
yann@448
   140
# CT_INSERT_VERSION_STRING_ABOVE
yann@448
   141
# Don't remove above line!
yann@448
   142
yann@545
   143
config CC_GCC_4_3_or_later
yann@545
   144
    bool
yann@545
   145
    default n
yann@602
   146
    select GMP_MPFR
yann@545
   147
yann@448
   148
config CC_CXA_ATEXIT
yann@448
   149
    bool
yann@765
   150
    prompt "Use __cxa_atexit"
yann@765
   151
    default y
yann@850
   152
    depends on ! BARE_METAL
yann@448
   153
    help
yann@448
   154
      If you get the missing symbol "__cxa_atexit" when building C++ programs,
yann@448
   155
      you might want to try disabling this option.
yann@448
   156
yann@765
   157
choice
yann@765
   158
    bool
yann@765
   159
    prompt "Use sjlj for exceptions"
yann@765
   160
    default CC_SJLJ_EXCEPTIONS_CONFIGURE
yann@850
   161
    depends on ! BARE_METAL
yann@765
   162
yann@765
   163
# This config option is used nowhere in the code on purpose.
yann@765
   164
# It only serves as a choice entry to force neither using nor not using sjlj
yann@765
   165
config CC_SJLJ_EXCEPTIONS_CONFIGURE
yann@765
   166
    bool
yann@765
   167
    prompt "Let configure decide"
yann@765
   168
    help
yann@765
   169
      Let configure decide if setjmp/longjmp should be used to handle
yann@765
   170
      exceptions.
yann@765
   171
      
yann@765
   172
      Choose that if you trust configure to detect the correct settings.
yann@765
   173
      This is the default choice.
yann@765
   174
yann@765
   175
config CC_SJLJ_EXCEPTIONS_USE
yann@765
   176
    bool
yann@765
   177
    prompt "Force using sjlj"
yann@765
   178
    help
yann@765
   179
      Do use setjmp/longjmp for exceptions.
yann@765
   180
      This is gcc's --enable-sjlj-exceptions configure switch.
yann@765
   181
      
yann@765
   182
      Choose that if you want to use setjmp/longjmp to handle exceptions.
yann@765
   183
yann@765
   184
config CC_SJLJ_EXCEPTIONS_DONT_USE
yann@765
   185
    bool
yann@765
   186
    prompt "Force not using sjlj"
yann@765
   187
    help
yann@765
   188
      Do not use setjmp/longjmp for exceptions.
yann@765
   189
      This is gcc's --disable-sjlj-exceptions configure switch.
yann@765
   190
      
yann@765
   191
      Choose that if you want to not use setjmp/longjmp to handle exceptions.
yann@765
   192
yann@765
   193
endchoice
yann@765
   194
yann@448
   195
config CC_CORE_EXTRA_CONFIG
yann@448
   196
    string
yann@448
   197
    prompt "Core gcc extra config"
yann@448
   198
    default ""
yann@448
   199
    help
yann@448
   200
      Extra flags to pass onto ./configure when configuring the core gcc.
yann@448
   201
      
yann@448
   202
      The core gcc is a stripped down, C-only compiler needed to build
yann@448
   203
      the C library. Kinda bootstrap gcc, if you wish.
yann@448
   204
yann@448
   205
config CC_EXTRA_CONFIG
yann@448
   206
    string
yann@448
   207
    prompt "gcc extra config"
yann@448
   208
    default ""
yann@850
   209
    depends on ! BARE_METAL
yann@448
   210
    help
yann@448
   211
      Extra flags to pass onto ./configure when configuring gcc.
yann@466
   212
yann@545
   213
config CC_PKGVERSION
yann@545
   214
    string
yann@545
   215
    prompt "gcc ID string"
yann@545
   216
    depends on CC_GCC_4_3_or_later
yann@545
   217
    default "crosstool-NG-${CT_VERSION}"
yann@545
   218
    help
yann@545
   219
      Specify a string that identifies your package. You may wish to include
yann@545
   220
      a build number or build date. This version string will be included in
yann@545
   221
      the output of gcc --version.
yann@545
   222
yann@545
   223
      This is passed to the configure flag --with-pkgversion.
yann@545
   224
yann@545
   225
config CC_BUGURL
yann@545
   226
    string
yann@545
   227
    prompt "gcc bug URL"
yann@545
   228
    depends on CC_GCC_4_3_or_later
yann@545
   229
    default ""
yann@545
   230
    help
yann@545
   231
      Specify the URL that users should visit if they wish to report a bug.