]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Link tmpdir/copyreloc-main.o before tmpdir/copyreloc-lib.so
authorH.J. Lu <hjl.tools@gmail.com>
Sun, 6 Mar 2016 16:26:49 +0000 (08:26 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Sun, 12 Jun 2016 04:40:12 +0000 (21:40 -0700)
Since compiler may pass --as-needed to ld by default, link
tmpdir/copyreloc-main.o before tmpdir/copyreloc-lib.so.

* testsuite/ld-i386/i386.exp: Link tmpdir/copyreloc-main.o
before tmpdir/copyreloc-lib.so and test --as-needed.
* testsuite/ld-x86-64/x86-64.exp: Likewise.

ld/ChangeLog
ld/testsuite/ld-i386/i386.exp
ld/testsuite/ld-x86-64/x86-64.exp

index f26ee23edd5a8bda2bc984ec6d84d91b4345b60a..7594faca06726aa4af23684c4c6b12942e143148 100644 (file)
        * testsuite/ld-x86-64/x86-64.exp: Link tmpdir/pr18900.o before
        tmpdir/pr18900.so and test --as-needed.
 
+       2016-03-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * testsuite/ld-i386/i386.exp: Link tmpdir/copyreloc-main.o
+       before tmpdir/copyreloc-lib.so and test --as-needed.
+       * testsuite/ld-x86-64/x86-64.exp: Likewise.
+
 2016-05-20  H.J. Lu  <hongjiu.lu@intel.com>
 
        Backport from master
index 02e6769b59c610f7b5a04d7532c600bbf6387811..be456497fdaafb81c57b971b8b9950d571f990ef 100644 (file)
@@ -423,18 +423,26 @@ if { [isnative]
            "copyreloc-lib.so" \
        ] \
        [list \
-           "Build copyreloc-main with PIE and GOTOFF (1)" \
-           "tmpdir/copyreloc-lib.so -pie" \
+           "Build libcopyreloc-main.a" \
+           "" \
            "" \
            { copyreloc-main.S } \
+           {} \
+           "libcopyreloc-main.a" \
+       ] \
+       [list \
+           "Build copyreloc-main with PIE and GOTOFF (1)" \
+           "tmpdir/copyreloc-main.o tmpdir/copyreloc-lib.so -pie" \
+           "" \
+           { dummy.s } \
            {{readelf {-Wr} copyreloc-main1.rd}} \
            "copyreloc-main" \
        ] \
        [list \
            "Build copyreloc-main with PIE and GOTOFF (2)" \
-           "tmpdir/copyreloc-lib.so -pie" \
+           "tmpdir/copyreloc-main.o tmpdir/copyreloc-lib.so -pie" \
            "" \
-           { copyreloc-main.S } \
+           { dummy.s } \
            {{readelf {-Wr} copyreloc-main2.rd}} \
            "copyreloc-main" \
        ] \
@@ -606,9 +614,9 @@ if { [isnative]
        ] \
        [list \
            "Run copyreloc-main with PIE and GOTOFF" \
-           "tmpdir/copyreloc-lib.so -pie" \
+           "--as-needed tmpdir/copyreloc-main.o tmpdir/copyreloc-lib.so -pie" \
            "" \
-           { copyreloc-main.S } \
+           { dummy.s } \
            "copyreloc-main" \
            "copyreloc-main.out" \
        ] \
index c80f84649e4bf1da63910c3d7c63d9e07c6982ba..484d5e31b839dab7d083712eec79066d56d38777 100644 (file)
@@ -459,18 +459,26 @@ if { [isnative] && [which $CC] != 0 } {
            "copyreloc-lib.so" \
        ] \
        [list \
-           "Build copyreloc-main with PIE without -fPIE (1)" \
-           "tmpdir/copyreloc-lib.so -pie" \
+           "Build libcopyreloc-main.a" \
+           "" \
            "" \
            { copyreloc-main.S } \
+           {} \
+           "libcopyreloc-main.a" \
+       ] \
+       [list \
+           "Build copyreloc-main with PIE without -fPIE (1)" \
+           "tmpdir/copyreloc-main.o tmpdir/copyreloc-lib.so -pie" \
+           "" \
+           { dummy.s } \
            {{readelf {-Wr} copyreloc-main1.rd}} \
            "copyreloc-main" \
        ] \
        [list \
            "Build copyreloc-main with PIE without -fPIE (2)" \
-           "tmpdir/copyreloc-lib.so -pie" \
+           "tmpdir/copyreloc-main.o tmpdir/copyreloc-lib.so -pie" \
            "" \
-           { copyreloc-main.S } \
+           { dummy.s } \
            {{readelf {-Wr} copyreloc-main2.rd}} \
            "copyreloc-main" \
        ] \
@@ -625,9 +633,9 @@ if { [isnative] && [which $CC] != 0 } {
        ] \
        [list \
            "Run copyreloc-main with PIE without -fPIE" \
-           "tmpdir/copyreloc-lib.so -pie" \
+           "--as-needed tmpdir/copyreloc-main.o tmpdir/copyreloc-lib.so -pie" \
            "" \
-           { copyreloc-main.S } \
+           { dummy.s } \
            "copyreloc-main" \
            "copyreloc-main.out" \
        ] \