config/cc/gcc.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Sep 12 20:54:54 2010 +0200 (2010-09-12)
changeset 2122 eb837be50f8f
parent 2061 5744ba6e8297
child 2124 5dd0b83ae528
permissions -rw-r--r--
cc/gcc: do not force use of non-vital companion libraries

While GMP and MPFR are required by gcc>=4.3 (to build the frontends),
and MPC is required by gcc>=4.5, the other libs are not. If they are
present then gcc will enable advanced features; if they are missing,
then gcc will (should) simply disable those features.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     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_1
    23     bool
    24     prompt "4.5.1 (EXPERIMENTAL)"
    25     depends on EXPERIMENTAL
    26     select CC_GCC_4_5_or_later
    27 
    28 config CC_V_4_5_0
    29     bool
    30     prompt "4.5.0 (EXPERIMENTAL)"
    31     depends on EXPERIMENTAL
    32     select CC_GCC_4_5_or_later
    33 
    34 config CC_V_4_4_4
    35     bool
    36     prompt "4.4.4 (EXPERIMENTAL)"
    37     depends on EXPERIMENTAL
    38     select CC_GCC_4_4_or_later
    39 
    40 config CC_V_4_4_3
    41     bool
    42     prompt "4.4.3"
    43     select CC_GCC_4_4_or_later
    44 
    45 config CC_V_4_4_2
    46     bool
    47     prompt "4.4.2"
    48     select CC_GCC_4_4_or_later
    49 
    50 config CC_V_4_4_1
    51     bool
    52     prompt "4.4.1"
    53     select CC_GCC_4_4_or_later
    54 
    55 config CC_V_4_4_0
    56     bool
    57     prompt "4.4.0"
    58     select CC_GCC_4_4_or_later
    59 
    60 config CC_V_4_3_4
    61     bool
    62     prompt "4.3.4"
    63     select CC_GCC_4_3_or_later
    64 
    65 config CC_V_4_3_3
    66     bool
    67     prompt "4.3.3"
    68     select CC_GCC_4_3_or_later
    69 
    70 config CC_V_4_3_2
    71     bool
    72     prompt "4.3.2"
    73     select CC_GCC_4_3_or_later
    74 
    75 config CC_V_4_3_1
    76     bool
    77     prompt "4.3.1"
    78     select CC_GCC_4_3_or_later
    79 
    80 config CC_V_4_2_4
    81     bool
    82     prompt "4.2.4"
    83     select CC_GCC_4_2_or_later
    84 
    85 config CC_V_4_2_3
    86     bool
    87     prompt "4.2.3 (OBSOLETE)"
    88     select CC_GCC_4_2_or_later
    89     depends on OBSOLETE
    90 
    91 config CC_V_4_2_2
    92     bool
    93     prompt "4.2.2"
    94     select CC_GCC_4_2_or_later
    95 
    96 config CC_V_4_2_1
    97     bool
    98     prompt "4.2.1 (OBSOLETE)"
    99     select CC_GCC_4_2_or_later
   100     depends on OBSOLETE
   101 
   102 config CC_V_4_2_0
   103     bool
   104     prompt "4.2.0 (OBSOLETE)"
   105     select CC_GCC_4_2_or_later
   106     depends on OBSOLETE
   107 
   108 config CC_V_4_1_2
   109     bool
   110     prompt "4.1.2 (OBSOLETE)"
   111     depends on OBSOLETE
   112 
   113 config CC_V_4_0_4
   114     bool
   115     prompt "4.0.4 (OBSOLETE)"
   116     depends on OBSOLETE
   117 
   118 config CC_V_3_4_6
   119     bool
   120     prompt "3.4.6 (OBSOLETE)"
   121     depends on OBSOLETE
   122 
   123 endchoice
   124 
   125 config CC_GCC_4_2_or_later
   126     bool
   127     default n
   128 
   129 config CC_GCC_4_3_or_later
   130     bool
   131     default n
   132     select CC_GCC_4_2_or_later
   133     select CC_GCC_USE_GMP_MPFR
   134 
   135 config CC_GCC_4_4_or_later
   136     bool
   137     default n
   138     select CC_GCC_4_3_or_later
   139     select CC_GCC_HAS_GRAPHITE
   140 
   141 config CC_GCC_4_5_or_later
   142     bool
   143     default n
   144     select CC_GCC_4_4_or_later
   145     select CC_GCC_USE_MPC
   146     select CC_GCC_HAS_LTO
   147 
   148 config CC_GCC_HAS_GRAPHITE
   149     bool
   150     default n
   151 
   152 config CC_GCC_HAS_LTO
   153     bool
   154     default n
   155 
   156 config CC_GCC_USE_GMP_MPFR
   157     bool
   158     default n
   159     select GMP
   160     select MPFR
   161 
   162 config CC_GCC_USE_PPL_CLOOG
   163     bool
   164     default n
   165     select PPL
   166     select CLOOG
   167 
   168 config CC_GCC_USE_MPC
   169     bool
   170     default n
   171     select MPC
   172 
   173 config CC_GCC_USE_LIBELF
   174     bool
   175     default n
   176     select LIBELF
   177 
   178 config CC_VERSION
   179     string
   180 # Don't remove next line
   181 # CT_INSERT_VERSION_STRING_BELOW
   182     default "4.5.1" if CC_V_4_5_1
   183     default "4.5.0" if CC_V_4_5_0
   184     default "4.4.4" if CC_V_4_4_4
   185     default "4.4.3" if CC_V_4_4_3
   186     default "4.4.2" if CC_V_4_4_2
   187     default "4.4.1" if CC_V_4_4_1
   188     default "4.4.0" if CC_V_4_4_0
   189     default "4.3.4" if CC_V_4_3_4
   190     default "4.3.3" if CC_V_4_3_3
   191     default "4.3.2" if CC_V_4_3_2
   192     default "4.3.1" if CC_V_4_3_1
   193     default "4.3.0" if CC_V_4_3_0
   194     default "4.2.4" if CC_V_4_2_4
   195     default "4.2.3" if CC_V_4_2_3
   196     default "4.2.2" if CC_V_4_2_2
   197     default "4.2.1" if CC_V_4_2_1
   198     default "4.2.0" if CC_V_4_2_0
   199     default "4.1.2" if CC_V_4_1_2
   200     default "4.0.4" if CC_V_4_0_4
   201     default "3.4.6" if CC_V_3_4_6
   202 
   203 config CC_LANG_JAVA_USE_ECJ
   204     bool
   205     default y
   206     depends on CC_LANG_JAVA
   207     depends on CC_GCC_4_3_or_later
   208 
   209 config CC_PKGVERSION
   210     string
   211     prompt "gcc ID string"
   212     depends on CC_GCC_4_3_or_later
   213     default "crosstool-NG-${CT_VERSION}"
   214     help
   215       Specify a string that identifies your package. You may wish to include
   216       a build number or build date. This version string will be included in
   217       the output of gcc --version.
   218 
   219       This is passed to the configure flag --with-pkgversion.
   220 
   221 config CC_BUGURL
   222     string
   223     prompt "gcc bug URL"
   224     depends on CC_GCC_4_3_or_later
   225     default ""
   226     help
   227       Specify the URL that users should visit if they wish to report a bug.
   228 
   229 config CC_ENABLE_CXX_FLAGS
   230     string
   231     prompt "Flags to pass to --enable-cxx-flags"
   232     default ""
   233     help
   234       Enter here the value of the gcc's ./configure option --enable-cxx-flags.
   235       Leave empty if you don't know better.
   236       
   237       Note: just pass in the option _value_, that is only the part that goes
   238       after the '=' sign.
   239 
   240 config CC_CORE_EXTRA_CONFIG
   241     string
   242     prompt "Core gcc extra config"
   243     default ""
   244     help
   245       Extra flags to pass onto ./configure when configuring the core gcc.
   246       
   247       The core gcc is a stripped down, C-only compiler needed to build
   248       the C library. Kinda bootstrap gcc, if you wish.
   249 
   250 config CC_EXTRA_CONFIG
   251     string
   252     prompt "gcc extra config"
   253     default ""
   254     depends on ! BARE_METAL
   255     help
   256       Extra flags to pass onto ./configure when configuring gcc.