Commit fac31afe by Vineet Gupta Committed by Claudiu Zissulescu

[ARC] Enable init_array support.

gcc's common configure script has a subtle flaw that it only tests
{init,fini.preinit}_array support when NOT cross compiling. This causes
cross builds to erroneously deduce that the feature is not supported by
the target.

| host-gcc-final-ab544139bfee/build/gcc/config.log
|
|configure:22941: checking for .preinit_array/.init_array/.fini_array support
|configure:23106: checking cross compile... guessing
|configure:23111: result: no

The right fix is to enable this for *all* cross setups (and address any
fallouts). However in the short-term to enable ARC glibc port to upstream,
force enable this for ARC.

This has been discussed at length on glibc mailing list [1], [2]

[1] https://sourceware.org/ml/libc-alpha/2018-11/msg00870.html
[2] https://sourceware.org/ml/libc-alpha/2019-01/msg00656.html

gcc/

2019-xx-xx  Vineet Gupta <vgupta@synopsys.com>

	* gcc/config.gcc: Force .init_array for ARC

From-SVN: r268365
parent 97b9ebc8
2019-01-29 Vineet Gupta <vgupta@synopsys.com>
* gcc/config.gcc: Force .init_array for ARC.
2019-01-29 Richard Biener <rguenther@suse.de>
PR debug/87295
......
......@@ -1110,7 +1110,10 @@ arc*-*-linux*)
case ${with_endian} in
big*) tm_file="arc/big.h ${tm_file}"
esac
;;
# Force .init_array support. The configure script cannot always
# automatically detect that GAS supports it, yet we require it.
gcc_cv_initfini_array=yes
;;
arm-wrs-vxworks|arm-wrs-vxworks7)
extra_options="${extra_options} arm/vxworks.opt"
tmake_file="${tmake_file} arm/t-arm arm/t-vxworks"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment