config/cc/gcc.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Aug 19 19:52:04 2009 +0200 (2009-08-19)
changeset 1485 d031a67fc494
parent 1462 7c4675d57741
parent 1484 c5451809efdb
child 1534 d4ddf19a1968
permissions -rw-r--r--
Merge the bash_array branch.

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