binutils/binutils: 2.23.2 is a 2_23_or_later (ie. has gold)
Thus spake Niels:
This commit adds support for binutils 2.23.2
http://crosstool-ng.org/hg/crosstool-ng/rev/bc4b36e3df0c
However, in 'config/binutils/binutils.in <http://binutils.in>' the
Kconfig option to select this version of binutils does not automatically
select the symbol 'BINUTILS_2_23_or_later'. This makes gold unavailable
for the latest version of binutils. I'm not sure whether this is on
purpose or not, my impression is that you forgot to add the line "select
BINUTILS_2_23_or_later".
The problem still persists in the latest version in the repository
(032ebcc89c96).
Reported-by: Niels Penneman <niels@penneman.org>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
1 # gcc configuration options
3 config CC_ENABLE_CXX_FLAGS
5 prompt "Flags to pass to --enable-cxx-flags"
8 Enter here the value of the gcc's ./configure option --enable-cxx-flags.
9 Leave empty if you don't know better.
11 Note: just pass in the option _value_, that is only the part that goes
14 config CC_CORE_EXTRA_CONFIG_ARRAY
16 prompt "Core gcc extra config"
19 Extra flags to pass onto ./configure when configuring the core gcc.
21 The core gcc is a stripped down, C-only compiler needed to build
22 the C library. Kinda bootstrap gcc, if you wish.
24 You can enter multiple arguments here, and arguments can contain spaces
25 if they are properly quoted (or escaped, but prefer quotes). Eg.:
26 --with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
28 config CC_EXTRA_CONFIG_ARRAY
30 prompt "gcc extra config"
32 depends on ! BARE_METAL
34 Extra flags to pass onto ./configure when configuring gcc.
36 You can enter multiple arguments here, and arguments can contain spaces
37 if they are properly quoted (or escaped, but prefer quotes). Eg.:
38 --with-foo="1st arg with 4 spaces" --with-bar=2nd-arg-without-space
40 config STATIC_TOOLCHAIN
41 select CC_STATIC_LIBSTDCXX if CC_GCC_4_4_or_later
43 config CC_STATIC_LIBSTDCXX
45 prompt "Link libstdc++ statically into the gcc binary"
47 depends on CC_GCC_4_4_or_later
48 select WANTS_STATIC_LINK
50 Newer gcc versions use the PPL library which is C++ code. Statically
51 linking libstdc++ increases the likeliness that the gcc binary will
52 run on machines other than the one which it was built on, without
53 having to worry about distributing the matching version of libstdc++
56 config CC_GCC_SYSTEM_ZLIB
58 prompt "Use system zlib"
60 Do not use bundled zlib, and use the zlib already available for
61 the host (eg. the system library).
63 If you want to build a static toolchain, you will need to also
64 install the static version of zlib for your host.
68 #-----------------------------------------------------------------------------
69 # Optimisation features
71 comment "Optimisation features"
73 # Defined in config/cc/gcc.in
74 config CC_GCC_USE_GRAPHITE
75 prompt "Enable GRAPHITE loop optimisations"
77 # The way LTO works is a bit twisted.
78 # See: http://gcc.gnu.org/wiki/LinkTimeOptimization#Requirements
80 # - if binutils has plugins: LTO is handled by ld/gold by loading
81 # the plugin when linking
82 # - if binutils does not have plugins: LTO is handled by collect2
83 # In any case, LTO support does not depend on plugins, but takes
85 # Also, only the 4.5 series needs libelf for LTO; 4.6 has dropped
87 # Defined in config/cc/gcc.in
91 #-----------------------------------------------------------------------------
92 comment "Settings for libraries running on target"
94 config CC_GCC_ENABLE_TARGET_OPTSPACE
96 prompt "Optimize gcc libs for size"
99 Pass --enable-target-optspace to crossgcc's configure.
101 This will compile crossgcc's libs with -Os.
103 config CC_GCC_LIBMUDFLAP
105 prompt "Compile libmudflap"
107 libmudflap is a pointer-use checking tool, which can detect
108 various mis-usages of pointers in C and (to some extents) C++.
110 You should say 'N' here, as libmduflap generates instrumented
111 code (thus it is a bit bigger and a bit slower) and requires
112 re-compilation and re-link, while it exists better run-time
113 alternatives (eg. DUMA, dmalloc...) that need neither re-
114 compilation nor re-link.
116 config CC_GCC_LIBGOMP
118 prompt "Compile libgomp"
120 libgomp is "the GNU implementation of the OpenMP Application Programming
121 Interface (API) for multi-platform shared-memory parallel programming in
122 C/C++ and Fortran". See:
123 http://gcc.gnu.org/onlinedocs/libgomp/
125 The default is 'N'. Say 'Y' if you need it, and report success/failure.
129 prompt "Compile libssp"
131 libssp is the run-time Stack-Smashing Protection library.
133 The default is 'N'. Say 'Y' if you need it, and report success/failure.
135 config CC_GCC_LIBQUADMATH
137 prompt "Compile libquadmath"
138 depends on CC_GCC_HAS_LIBQUADMATH
140 libquadmath is a library which provides quad-precision mathematical
141 functions on targets supporting the __float128 datatype. See:
142 http://gcc.gnu.org/onlinedocs/libquadmath/
144 The default is 'N'. Say 'Y' if you need it, and report success/failure.
146 #-----------------------------------------------------------------------------
148 comment "Misc. obscure options."
152 prompt "Use __cxa_atexit"
154 depends on ! BARE_METAL
156 If you get the missing symbol "__cxa_atexit" when building C++ programs,
157 you might want to try disabling this option.
159 config CC_GCC_DISABLE_PCH
161 prompt "Do not build PCH"
163 Say 'y' here to not use Pre-Compiled Headers in the resulting toolchain.
164 at the expense of speed when compiling C++ code.
166 For some configurations (most notably canadian?), PCH are broken, and
167 need to be disabled. Please see:
168 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40974
170 config CC_GCC_SJLJ_EXCEPTIONS
172 prompt "Use sjlj for exceptions"
173 depends on ! BARE_METAL
176 'sjlj' is short for setjmp/longjmp.
178 On some architectures, stack unwinding during exception handling
179 works perfectly well without using sjlj, while on some others,
180 use of sjlj is required for proper stack unwinding.
182 Option | sjlj use | Associated ./configure switch
183 ---------+--------------------+--------------------------------
184 Y | forcibly used | --enable-sjlj-exceptions
185 M | auto | (none, ./configure decides)
186 N | forcibly not used | --disable-sjlj-exceptions
188 It should be safe to say 'M' or 'N'.
190 It can happen that ./configure is wrong in some cases. Known
191 case is for ARM big endian, where you should say 'N'.
193 config CC_GCC_LDBL_128
195 prompt "Enable 128-bit long doubles"
197 depends on CC_GCC_4_2_or_later
199 Saying 'Y' will force gcc to use 128-bit wide long doubles
200 Saying 'N' will force gcc to use 64-bit wide long doubles
201 Saying 'M' will let gcc choose (default is 128-bit for
202 glibc >= 2.4, 64-bit otherwise)
204 If in doubt, keep the default, ie. 'M'.
206 config CC_GCC_BUILD_ID
208 prompt "Enable build-id"
209 depends on CC_GCC_HAS_BUILD_ID
211 Tells GCC to pass --build-id option to the linker for all final
212 links (links performed without the -r or --relocatable option),
213 if the linker supports it. If you say 'y' here, but your linker
214 does not support --build-id option, a warning is issued and this
219 choice CC_GCC_LNK_HASH_STYLE_CHOICE
221 prompt "linker hash style"
222 depends on CC_GCC_HAS_LNK_HASH_STYLE
223 depends on BINUTILS_HAS_HASH_STYLE
225 config CC_GCC_LNK_HASH_STYLE_DEFAULT
229 Do not specify any value, and use the default value (sysv).
231 config CC_GCC_LNK_HASH_STYLE_SYSV
235 Force use of the SYSV hash style.
237 config CC_GCC_LNK_HASH_STYLE_GNU
241 Force use of the GNU hash style.
243 config CC_GCC_LNK_HASH_STYLE_BOTH
247 Force use of both hash styles.
249 endchoice # CC_GCC_LNK_HASH_STYLE_CHOICE
251 config CC_GCC_LNK_HASH_STYLE
253 default "" if CC_GCC_LNK_HASH_STYLE_DEFAULT
254 default "sysv" if CC_GCC_LNK_HASH_STYLE_SYSV
255 default "gnu" if CC_GCC_LNK_HASH_STYLE_GNU
256 default "both" if CC_GCC_LNK_HASH_STYLE_BOTH
258 #-----------------------------------------------------------------------------
260 config CC_GCC_HAS_ARCH_OPTIONS
263 comment "archictecture-specific options"
264 depends on CC_GCC_HAS_ARCH_OPTIONS
267 source "config/cc/gcc.in.mips"