7 prompt "binutils version"
8 # Don't remove next line
9 # CT_INSERT_VERSION_BELOW
11 config BINUTILS_V_2_21
13 depends on EXPERIMENTAL
15 select BINUTILS_2_21_or_later
17 config BINUTILS_V_2_20_1
21 config BINUTILS_V_2_20
25 config BINUTILS_V_2_19_1
29 config BINUTILS_V_2_19
33 config BINUTILS_V_2_18
37 config BINUTILS_V_2_17
39 prompt "2.17 (OBSOLETE)"
42 config BINUTILS_V_2_16_1
44 prompt "2.16.1 (OBSOLETE)"
49 config BINUTILS_VERSION
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
62 config BINUTILS_2_21_or_later
64 select BINUTILS_HAS_GOLD
65 select BINUTILS_HAS_PLUGINS
67 config BINUTILS_HAS_GOLD
70 config BINUTILS_HAS_PLUGINS
77 prompt "Linkers to enable"
79 config BINUTILS_LINKER_LD
83 The historical, bfd linker.
85 config BINUTILS_LINKER_GOLD
88 depends on BINUTILS_HAS_GOLD
89 depends on EXPERIMENTAL
90 select BINUTILS_GOLD_INSTALLED
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.
97 config BINUTILS_LINKER_LD_GOLD
100 depends on BINUTILS_HAS_GOLD
101 depends on EXPERIMENTAL
102 select BINUTILS_GOLD_INSTALLED
103 select BINUTILS_LINKER_BOTH
105 Both the historical ld and the new gold linkers will be
106 installed, with ld being the default linker used.
108 See help for gold, above.
110 config BINUTILS_LINKER_GOLD_LD
113 depends on BINUTILS_HAS_GOLD
114 depends on EXPERIMENTAL
115 select BINUTILS_GOLD_INSTALLED
116 select BINUTILS_LINKER_BOTH
118 Both the historical ld and the new gold linkers will be
119 installed, with gold being the default linker used.
121 See help for gold, above.
123 endchoice # Enable linkers
125 config BINUTILS_GOLD_INSTALLED
128 config BINUTILS_GOLD_THREADS
130 prompt "| Enable threaded gold"
131 depends on BINUTILS_GOLD_INSTALLED
133 When configured with threads, gold can link in parallel,
134 possibly cooperating with a make jobserver.
136 config BINUTILS_LINKER_BOTH
139 config BINUTILS_LINKERS_LIST
141 default "ld" if BINUTILS_LINKER_LD
142 default "gold" if BINUTILS_LINKER_GOLD
143 default "ld,gold" if BINUTILS_LINKER_LD_GOLD
144 default "gold,ld" if BINUTILS_LINKER_GOLD_LD
146 config BINUTILS_LD_WRAPPER
148 prompt "| Add ld wrapper"
149 depends on BINUTILS_LINKER_BOTH
151 Add an ld wrapper that calls to either gold or ld.
153 By default, the wrapper will call to the default wrapper,
154 but if you set the environment variable CTNG_LD_IS, you
155 can change which linker will get called:
156 CTNG_LD_IS=gold will unconditionally call the gold linker
157 CTNG_LD_IS=bfd will unconditionally call the old bfd ld linker
159 config BINUTILS_LINKER_DEFAULT
161 depends on BINUTILS_LD_WRAPPER
162 default "bfd" if BINUTILS_LINKER_LD_GOLD
163 default "gold" if BINUTILS_LINKER_GOLD_LD
165 endif # BINUTILS_HAS_GOLD
167 config BINUTILS_PLUGINS
169 prompt "Enable support for plugins"
170 depends on BINUTILS_HAS_PLUGINS
172 binutils can be extended through the use of plugins.
173 Especially, gold can use the lto-plugin, as installed
174 by gcc, to handle LTO.
176 config BINUTILS_EXTRA_CONFIG
178 prompt "binutils extra config"
181 Extra flags passed onto ./configure when configuring
183 config BINUTILS_FOR_TARGET
185 prompt "binutils libraries for the target"
186 depends on ! BARE_METAL
190 Some utilities may need binutils libraries to be available on
191 the target, eg. oprofile.
193 if BINUTILS_FOR_TARGET
195 config BINUTILS_FOR_TARGET_IBERTY
200 config BINUTILS_FOR_TARGET_BFD
205 endif # BINUTILS_FOR_TARGET