config/cc/gcc.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Mar 20 00:02:21 2011 +0100 (2011-03-20)
changeset 2339 730e2d63296b
parent 2302 e85077497eb1
child 2361 e65be7e72d8a
permissions -rw-r--r--
scripts: leave changelog in build dir, copy to install dir

Users tend to look for the build log in the current working directory,
rather than in the toolchain's installation dir. While bundling the build
log in the toolchain installation dir is nice for distribution and review,
it can be easier to have the build log readily available in the working
directory, as it is quicker to get to it.

So, the build log stays in the working directory until the toolchain is
completely and successfully built, and then a (compressed) copy is made.

Reported-by: Trevor Woerner <twoerner@gmail.com>
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_linaro_4_5_2011_02_0
    23     bool
    24     prompt "linaro-4.5-2011.02-0 (EXPERIMENTAL)"
    25     depends on EXPERIMENTAL
    26     select CC_GCC_4_5_or_later
    27 
    28 config CC_V_4_5_2
    29     bool
    30     prompt "4.5.2 (EXPERIMENTAL)"
    31     depends on EXPERIMENTAL
    32     select CC_GCC_4_5_or_later
    33 
    34 config CC_V_4_5_1
    35     bool
    36     prompt "4.5.1 (EXPERIMENTAL)"
    37     depends on EXPERIMENTAL
    38     select CC_GCC_4_5_or_later
    39 
    40 config CC_V_4_5_0
    41     bool
    42     prompt "4.5.0 (EXPERIMENTAL)"
    43     depends on EXPERIMENTAL
    44     select CC_GCC_4_5_or_later
    45 
    46 
    47 config CC_V_linaro_4_4_2011_02_0
    48     bool
    49     prompt "linaro-4.4-2011.02-0 (EXPERIMENTAL)"
    50     depends on EXPERIMENTAL
    51     select CC_GCC_4_4_or_later
    52 
    53 config CC_V_4_4_5
    54     bool
    55     prompt "4.4.5"
    56     select CC_GCC_4_4_or_later
    57 
    58 config CC_V_4_4_4
    59     bool
    60     prompt "4.4.4"
    61     select CC_GCC_4_4_or_later
    62 
    63 config CC_V_4_4_3
    64     bool
    65     prompt "4.4.3"
    66     select CC_GCC_4_4_or_later
    67 
    68 config CC_V_4_4_2
    69     bool
    70     prompt "4.4.2"
    71     select CC_GCC_4_4_or_later
    72 
    73 config CC_V_4_4_1
    74     bool
    75     prompt "4.4.1"
    76     select CC_GCC_4_4_or_later
    77 
    78 config CC_V_4_4_0
    79     bool
    80     prompt "4.4.0"
    81     select CC_GCC_4_4_or_later
    82 
    83 config CC_V_4_3_5
    84     bool
    85     prompt "4.3.5"
    86     select CC_GCC_4_3_or_later
    87 
    88 config CC_V_4_3_4
    89     bool
    90     prompt "4.3.4"
    91     select CC_GCC_4_3_or_later
    92 
    93 config CC_V_4_3_3
    94     bool
    95     prompt "4.3.3"
    96     select CC_GCC_4_3_or_later
    97 
    98 config CC_V_4_3_2
    99     bool
   100     prompt "4.3.2"
   101     select CC_GCC_4_3_or_later
   102 
   103 config CC_V_4_3_1
   104     bool
   105     prompt "4.3.1"
   106     select CC_GCC_4_3_or_later
   107 
   108 config CC_V_4_2_4
   109     bool
   110     prompt "4.2.4"
   111     select CC_GCC_4_2_or_later
   112 
   113 config CC_V_4_2_3
   114     bool
   115     prompt "4.2.3 (OBSOLETE)"
   116     select CC_GCC_4_2_or_later
   117     depends on OBSOLETE
   118 
   119 config CC_V_4_2_2
   120     bool
   121     prompt "4.2.2"
   122     select CC_GCC_4_2_or_later
   123 
   124 config CC_V_4_2_1
   125     bool
   126     prompt "4.2.1 (OBSOLETE)"
   127     select CC_GCC_4_2_or_later
   128     depends on OBSOLETE
   129 
   130 config CC_V_4_2_0
   131     bool
   132     prompt "4.2.0 (OBSOLETE)"
   133     select CC_GCC_4_2_or_later
   134     depends on OBSOLETE
   135 
   136 config CC_V_4_1_2
   137     bool
   138     prompt "4.1.2 (OBSOLETE)"
   139     depends on OBSOLETE
   140 
   141 config CC_V_4_0_4
   142     bool
   143     prompt "4.0.4 (OBSOLETE)"
   144     depends on OBSOLETE
   145 
   146 config CC_V_3_4_6
   147     bool
   148     prompt "3.4.6 (OBSOLETE)"
   149     depends on OBSOLETE
   150 
   151 endchoice
   152 
   153 config CC_GCC_4_2_or_later
   154     bool
   155     default n
   156 
   157 config CC_GCC_4_3_or_later
   158     bool
   159     default n
   160     select CC_GCC_4_2_or_later
   161     select CC_GCC_USE_GMP_MPFR
   162 
   163 config CC_GCC_4_4_or_later
   164     bool
   165     default n
   166     select CC_GCC_4_3_or_later
   167     select CC_GCC_HAS_GRAPHITE
   168 
   169 config CC_GCC_4_5_or_later
   170     bool
   171     default n
   172     select CC_GCC_4_4_or_later
   173     select CC_GCC_USE_MPC
   174     select CC_GCC_HAS_LTO
   175 
   176 config CC_GCC_HAS_GRAPHITE
   177     bool
   178     default n
   179 
   180 # The way LTO works is a bit twisted.
   181 # See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
   182 # Basically:
   183 #   - if binutils has plugins: LTO is handled by ld/gold by loading
   184 #     the plugin when linking
   185 #   - if binutils does not have plugins: LTO is handled by collect2
   186 # In any case, LTO support does not depend on plugins, but takes
   187 # advantage of it
   188 config CC_GCC_HAS_LTO
   189     bool
   190     default n
   191 
   192 # Only enable gcc's support for plugins if binutils has it as well
   193 # They are usefull only when doing LTO, but it does no harm enabling
   194 # them even without LTO.
   195 config CC_GCC_ENABLE_PLUGINS
   196     bool
   197     depends on BINUTILS_PLUGINS
   198     depends on ! STATIC_TOOLCHAIN
   199     default y
   200 
   201 # If binutils installs gold, enable support for gold in gcc
   202 config CC_GCC_GOLD
   203     bool
   204     depends on BINUTILS_GOLD_INSTALLED
   205     default y
   206 
   207 config CC_GCC_USE_GMP_MPFR
   208     bool
   209     default n
   210     select GMP_NEEDED
   211     select MPFR_NEEDED
   212 
   213 config CC_GCC_USE_PPL_CLOOG
   214     bool
   215     default n
   216     select PPL_NEEDED
   217     select CLOOG_NEEDED
   218 
   219 config CC_GCC_USE_MPC
   220     bool
   221     default n
   222     select MPC_NEEDED
   223 
   224 config CC_GCC_USE_LIBELF
   225     bool
   226     default n
   227     select LIBELF_NEEDED
   228 
   229 config CC_VERSION
   230     string
   231 # Don't remove next line
   232 # CT_INSERT_VERSION_STRING_BELOW
   233     default "linaro-4.5-2011.02-0" if CC_V_linaro_4_5_2011_02_0
   234     default "4.5.2" if CC_V_4_5_2
   235     default "4.5.1" if CC_V_4_5_1
   236     default "4.5.0" if CC_V_4_5_0
   237     default "linaro-4.4-2011.02-0" if CC_V_linaro_4_4_2011_02_0
   238     default "4.4.5" if CC_V_4_4_5
   239     default "4.4.4" if CC_V_4_4_4
   240     default "4.4.3" if CC_V_4_4_3
   241     default "4.4.2" if CC_V_4_4_2
   242     default "4.4.1" if CC_V_4_4_1
   243     default "4.4.0" if CC_V_4_4_0
   244     default "4.3.5" if CC_V_4_3_5
   245     default "4.3.4" if CC_V_4_3_4
   246     default "4.3.3" if CC_V_4_3_3
   247     default "4.3.2" if CC_V_4_3_2
   248     default "4.3.1" if CC_V_4_3_1
   249     default "4.3.0" if CC_V_4_3_0
   250     default "4.2.4" if CC_V_4_2_4
   251     default "4.2.3" if CC_V_4_2_3
   252     default "4.2.2" if CC_V_4_2_2
   253     default "4.2.1" if CC_V_4_2_1
   254     default "4.2.0" if CC_V_4_2_0
   255     default "4.1.2" if CC_V_4_1_2
   256     default "4.0.4" if CC_V_4_0_4
   257     default "3.4.6" if CC_V_3_4_6
   258 
   259 config CC_LANG_JAVA_USE_ECJ
   260     bool
   261     default y
   262     depends on CC_LANG_JAVA
   263     depends on CC_GCC_4_3_or_later
   264 
   265 config CC_PKGVERSION
   266     string
   267     prompt "gcc ID string"
   268     depends on CC_GCC_4_3_or_later
   269     default "crosstool-NG-${CT_VERSION}"
   270     help
   271       Specify a string that identifies your package. You may wish to include
   272       a build number or build date. This version string will be included in
   273       the output of gcc --version.
   274 
   275       This is passed to the configure flag --with-pkgversion.
   276 
   277 config CC_BUGURL
   278     string
   279     prompt "gcc bug URL"
   280     depends on CC_GCC_4_3_or_later
   281     default ""
   282     help
   283       Specify the URL that users should visit if they wish to report a bug.
   284 
   285 config CC_ENABLE_CXX_FLAGS
   286     string
   287     prompt "Flags to pass to --enable-cxx-flags"
   288     default ""
   289     help
   290       Enter here the value of the gcc's ./configure option --enable-cxx-flags.
   291       Leave empty if you don't know better.
   292       
   293       Note: just pass in the option _value_, that is only the part that goes
   294       after the '=' sign.
   295 
   296 config CC_CORE_EXTRA_CONFIG
   297     string
   298     prompt "Core gcc extra config"
   299     default ""
   300     help
   301       Extra flags to pass onto ./configure when configuring the core gcc.
   302       
   303       The core gcc is a stripped down, C-only compiler needed to build
   304       the C library. Kinda bootstrap gcc, if you wish.
   305 
   306 config CC_EXTRA_CONFIG
   307     string
   308     prompt "gcc extra config"
   309     default ""
   310     depends on ! BARE_METAL
   311     help
   312       Extra flags to pass onto ./configure when configuring gcc.