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