config/binutils/binutils.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jan 02 13:56:05 2011 +0100 (2011-01-02)
changeset 2245 a6d790bc17af
parent 2244 dc2d2342e4a9
child 2246 c69f8ef4bc7c
permissions -rw-r--r--
binutils/binutils: add support for plugins

Add an option to enable plugins support in binutils.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 # binutils options
     2 
     3 comment "GNU binutils"
     4 
     5 choice
     6     bool
     7     prompt "binutils version"
     8 # Don't remove next line
     9 # CT_INSERT_VERSION_BELOW
    10 
    11 config BINUTILS_V_2_21
    12     bool
    13     depends on EXPERIMENTAL
    14     prompt "2.21"
    15     select BINUTILS_2_21_or_later
    16 
    17 config BINUTILS_V_2_20_1
    18     bool
    19     prompt "2.20.1"
    20 
    21 config BINUTILS_V_2_20
    22     bool
    23     prompt "2.20"
    24 
    25 config BINUTILS_V_2_19_1
    26     bool
    27     prompt "2.19.1"
    28 
    29 config BINUTILS_V_2_19
    30     bool
    31     prompt "2.19"
    32 
    33 config BINUTILS_V_2_18
    34     bool
    35     prompt "2.18"
    36 
    37 config BINUTILS_V_2_17
    38     bool
    39     prompt "2.17 (OBSOLETE)"
    40     depends on OBSOLETE
    41 
    42 config BINUTILS_V_2_16_1
    43     bool
    44     prompt "2.16.1 (OBSOLETE)"
    45     depends on OBSOLETE
    46 
    47 endchoice
    48 
    49 config BINUTILS_VERSION
    50     string
    51 # Don't remove next line
    52 # CT_INSERT_VERSION_STRING_BELOW
    53     default "2.21" if BINUTILS_V_2_21
    54     default "2.20.1" if BINUTILS_V_2_20_1
    55     default "2.20" if BINUTILS_V_2_20
    56     default "2.19.1" if BINUTILS_V_2_19_1
    57     default "2.19" if BINUTILS_V_2_19
    58     default "2.18" if BINUTILS_V_2_18
    59     default "2.17" if BINUTILS_V_2_17
    60     default "2.16.1" if BINUTILS_V_2_16_1
    61 
    62 config BINUTILS_2_21_or_later
    63     bool
    64     select BINUTILS_HAS_GOLD
    65     select BINUTILS_HAS_PLUGINS
    66 
    67 config BINUTILS_HAS_GOLD
    68     bool
    69 
    70 config BINUTILS_HAS_PLUGINS
    71     bool
    72 
    73 if BINUTILS_HAS_GOLD
    74 
    75 choice
    76     bool
    77     prompt "Linkers to enable"
    78 
    79 config BINUTILS_LINKER_LD
    80     bool
    81     prompt "ld"
    82     help
    83       The historical, bfd linker.
    84 
    85 config BINUTILS_LINKER_GOLD
    86     bool
    87     prompt "gold"
    88     depends on BINUTILS_HAS_GOLD
    89     depends on EXPERIMENTAL
    90     select BINUTILS_GOLD_INSTALLED
    91     help
    92       gold is a new, optimised, multi-threaded linker with support
    93       for plugins. Designed to be a drop-in replacement for the
    94       original linker, ld, it can be much faster, with a 5:1 or
    95       bigger ratio being not uncommon, YMMV.
    96 
    97 config BINUTILS_LINKER_LD_GOLD
    98     bool
    99     prompt "ld, gold"
   100     depends on BINUTILS_HAS_GOLD
   101     depends on EXPERIMENTAL
   102     select BINUTILS_GOLD_INSTALLED
   103     help
   104       Both the historical ld and the new gold linkers will be
   105       installed, with ld being the default linker used.
   106       
   107       See help for gold, above.
   108 
   109 config BINUTILS_LINKER_GOLD_LD
   110     bool
   111     prompt "gold, ld"
   112     depends on BINUTILS_HAS_GOLD
   113     depends on EXPERIMENTAL
   114     select BINUTILS_GOLD_INSTALLED
   115     help
   116       Both the historical ld and the new gold linkers will be
   117       installed, with gold being the default linker used.
   118       
   119       See help for gold, above.
   120 
   121 endchoice # Enable linkers
   122 
   123 config BINUTILS_GOLD_INSTALLED
   124     bool
   125 
   126 config BINUTILS_LINKERS_LIST
   127     string
   128     default "ld"        if BINUTILS_LINKER_LD
   129     default "gold"      if BINUTILS_LINKER_GOLD
   130     default "ld,gold"   if BINUTILS_LINKER_LD_GOLD
   131     default "gold,ld"   if BINUTILS_LINKER_GOLD_LD
   132 
   133 endif # BINUTILS_HAS_GOLD
   134 
   135 config BINUTILS_PLUGINS
   136     bool
   137     prompt "Enable support for plugins"
   138     depends on BINUTILS_HAS_PLUGINS
   139     help
   140       binutils can be extended through the use of plugins.
   141       Especially, gold can use the lto-plugin, as installed
   142       by gcc, to handle LTO.
   143 
   144 config BINUTILS_EXTRA_CONFIG
   145     string
   146     prompt "binutils extra config"
   147     default ""
   148     help
   149       Extra flags passed onto ./configure when configuring
   150 
   151 config BINUTILS_FOR_TARGET
   152     bool
   153     prompt "binutils libraries for the target"
   154     depends on ! BARE_METAL
   155     depends on ! BACKEND
   156     default n
   157     help
   158       Some utilities may need binutils libraries to be available on
   159       the target, eg. oprofile.
   160 
   161 if BINUTILS_FOR_TARGET
   162 
   163 config BINUTILS_FOR_TARGET_IBERTY
   164     bool
   165     prompt "libiberty"
   166     default y
   167 
   168 config BINUTILS_FOR_TARGET_BFD
   169     bool
   170     prompt "libbfd"
   171     default y
   172 
   173 endif # BINUTILS_FOR_TARGET