config/cc/gcc.in
changeset 2287 61608c9365ab
parent 2233 e65b82c6aa2c
child 2302 e85077497eb1
child 2392 578509ec492d
     1.1 --- a/config/cc/gcc.in	Wed Dec 29 02:00:21 2010 +0100
     1.2 +++ b/config/cc/gcc.in	Fri Jan 28 18:53:37 2011 +0100
     1.3 @@ -164,10 +164,32 @@
     1.4      bool
     1.5      default n
     1.6  
     1.7 +# The way LTO works is a bit twisted.
     1.8 +# See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
     1.9 +# Basically:
    1.10 +#   - if binutils has plugins: LTO is handled by ld/gold by loading
    1.11 +#     the plugin when linking
    1.12 +#   - if binutils does not have plugins: LTO is handled by collect2
    1.13 +# In any case, LTO support does not depend on plugins, but takes
    1.14 +# advantage of it
    1.15  config CC_GCC_HAS_LTO
    1.16      bool
    1.17      default n
    1.18  
    1.19 +# Only enable gcc's support for plugins if binutils has it as well
    1.20 +# They are usefull only when doing LTO, but it does no harm enabling
    1.21 +# them even without LTO.
    1.22 +config CC_GCC_ENABLE_PLUGINS
    1.23 +    bool
    1.24 +    depends on BINUTILS_PLUGINS
    1.25 +    default y
    1.26 +
    1.27 +# If binutils installs gold, enable support for gold in gcc
    1.28 +config CC_GCC_GOLD
    1.29 +    bool
    1.30 +    depends on BINUTILS_GOLD_INSTALLED
    1.31 +    default y
    1.32 +
    1.33  config CC_GCC_USE_GMP_MPFR
    1.34      bool
    1.35      default n