aboutsummaryrefslogtreecommitdiff
path: root/gold/ChangeLog
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2018-11-02 21:27:02 +1030
committerAlan Modra <amodra@gmail.com>2018-11-08 11:20:34 +1030
commit5acaada74578ee6a902255f0272d5f3115b76309 (patch)
tree187a45e70537725993df60ab7a434e05f096b023 /gold/ChangeLog
parent9e49efb79c449852fdb2f727d500d7aba1e449a7 (diff)
downloadgdb-5acaada74578ee6a902255f0272d5f3115b76309.zip
gdb-5acaada74578ee6a902255f0272d5f3115b76309.tar.gz
gdb-5acaada74578ee6a902255f0272d5f3115b76309.tar.bz2
Make gold testsuite work with CC and CXX specifying -B
The patch allows the gold testsuite to pass when using something like the following configure line, which works for the rest of the binutils testsuite. At least, it does if you don't configure your gcc with any of the options that force a particular path to as or ld. gccdir="/home/alan/build/gcc/prev-" gccsrc="/home/alan/src/gcc.git" gcctarg="x86_64-linux" CC="${gccdir}gcc/xgcc -B${gccdir}gcc/" \ CXX="${gccdir}gcc/xg++ -B${gccdir}gcc/ -I${gccdir}$gcctarg/libstdc++-v3/include -I${gccdir}$gcctarg/libstdc++-v3/include/$gcctarg -I${gccsrc}/libstdc++-v3/libsupc++ -L${gccdir}$gcctarg/libstdc++-v3/src/.libs/" \ ~/src/binutils-gdb/configure ... gold's -Bgcctestdir/ option must come before the -B supplied by $CC or $CXX, in order to pick up the linker we want to test. Also when using a not-yet-installed gcc, it is necessary to provide a collect-ld in gcctestdir/ as otherwise a collect-ld script in -B${gccdir}gcc/ will be used and the wrong linker tested. Besides this, the patch fixes some bugs: The $COMPILE -D_FORTIFY_SOURCE edit was wrong (but worked for usual values), and the $CXXLINK_S edit unnecessarily but harmlessly used extra backslash quoting. See posix shell documentation regarding quoting, or www.gnu.org/software/bash/manual/bashref.html#Command-Substitution Also, -Bgcctestdir/ in one place makes it less likely a new test will be added that accidentally lacks the option. * Makefile.am (gcctestdir1/ld): Use $@ and absolute paths. (gcctestdir1/collect-ld): New. (ld1_DEPENDENCIES): Add gcctestdir1/collect-ld. (ld1_LDFLAGS): Remove -Bgcctestdir1/. (editcc1, ld1_LINK): Define. (gcctestdir2/ld, gcctestdir2/collect-ld, ld2_DEPENDENCIES), (ld2_LDFLAGS, editcc2, ld2_LINK), (ld1_r_DEPENDENCIES, ld1_r_LDFLAGS, ld1_r_LINK), (gcctestdir2-r/ld, gcctestdir2-r/collect-ld, ld2_r_DEPENDENCIES), (ld2_r_LDFLAGS, editcc2r, ld2_r_LINK), (gcctestdir3/ld, gcctestdir3/collect-ld, ld3_DEPENDENCIES), (ld3_LDFLAGS, editcc3, ld3_LINK), (gcctestdir4/ld, gcctestdir4/collect-ld, ld4_DEPENDENCIES), (ld4_LDFLAGS, editcc4, ld4_LINK): Similarly. * Makefile.in: Regenerate. * testsuite/Makefile.am (editcc): Define sed command to put our -B option first. Remove other occurrences of -Bgcctestdir/ throughout file. (editcc1): Define for -D_FORTIFY_SOURCE stripping. (editcc2): Define for -static-libgcc/libstdc++ stripping. (LINK1, CXXLINK1): Don't use CCLD or CXXLD. (CCLD, CXXLD, COMPILE, LINK, CXXCOMPILE, CXXLINK, CXXLINK_S): Define using editcc macros. (gcctestdir/collect-ld): New rule, add as a dependency of.. (gcctestdir/ld): ..this. Use $@ and abs_top_buildir. (gcctestdir/as): Use $@. * testsuite/Makefile.in: Regenerate. * testsuite/incremental_test.sh (actual): Match collect-ld too.
Diffstat (limited to 'gold/ChangeLog')
-rw-r--r--gold/ChangeLog31
1 files changed, 31 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index c468976..816f7b3 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,34 @@
+2018-11-08 Alan Modra <amodra@gmail.com>
+
+ * Makefile.am (gcctestdir1/ld): Use $@ and absolute paths.
+ (gcctestdir1/collect-ld): New.
+ (ld1_DEPENDENCIES): Add gcctestdir1/collect-ld.
+ (ld1_LDFLAGS): Remove -Bgcctestdir1/.
+ (editcc1, ld1_LINK): Define.
+ (gcctestdir2/ld, gcctestdir2/collect-ld, ld2_DEPENDENCIES),
+ (ld2_LDFLAGS, editcc2, ld2_LINK),
+ (ld1_r_DEPENDENCIES, ld1_r_LDFLAGS, ld1_r_LINK),
+ (gcctestdir2-r/ld, gcctestdir2-r/collect-ld, ld2_r_DEPENDENCIES),
+ (ld2_r_LDFLAGS, editcc2r, ld2_r_LINK),
+ (gcctestdir3/ld, gcctestdir3/collect-ld, ld3_DEPENDENCIES),
+ (ld3_LDFLAGS, editcc3, ld3_LINK),
+ (gcctestdir4/ld, gcctestdir4/collect-ld, ld4_DEPENDENCIES),
+ (ld4_LDFLAGS, editcc4, ld4_LINK): Similarly.
+ * Makefile.in: Regenerate.
+ * testsuite/Makefile.am (editcc): Define sed command to put
+ our -B option first. Remove other occurrences of -Bgcctestdir/
+ throughout file.
+ (editcc1): Define for -D_FORTIFY_SOURCE stripping.
+ (editcc2): Define for -static-libgcc/libstdc++ stripping.
+ (LINK1, CXXLINK1): Don't use CCLD or CXXLD.
+ (CCLD, CXXLD, COMPILE, LINK, CXXCOMPILE, CXXLINK, CXXLINK_S): Define
+ using editcc macros.
+ (gcctestdir/collect-ld): New rule, add as a dependency of..
+ (gcctestdir/ld): ..this. Use $@ and abs_top_buildir.
+ (gcctestdir/as): Use $@.
+ * testsuite/Makefile.in: Regenerate.
+ * testsuite/incremental_test.sh (actual): Match collect-ld too.
+
2018-11-02 Alan Modra <amodra@gmail.com>
* Makefile.am (MOSTLYCLEANFILES): Define.