[PATCH 0/3] LD/testsuite: Enable execution with remote targets
Maciej W. Rozycki
macro@orcam.me.uk
Thu Feb 12 12:46:03 GMT 2026
Hi,
As I noted in:
<https://inbox.sourceware.org/binutils/alpine.DEB.2.21.2601151734230.6421@angie.orcam.me.uk/>
linker tests run via `run_ld_link_exec_tests' require a native test
configuration for the linked test program to be executed and the test case
to pass. This prevents all the test cases affected from completion in
cross-compilation environments, which may the only way or at the very
least the common case for certain targets.
This is an attempt to make execution available with remote targets, in a
limited way owing to the complex way numerous test cases have been written
in, where shared libraries that such cases are dependent on are linked
using a relative path, precluding the use of the runtime library search
path for them to be found at run time.
Instead the test case has to be executed on the target such that the
shared libraries required are present at the same relative path rooted at
the program's current working directory. This is achieved by asserting
that the linker test directory is located at the same absolute path both
on the test host and the test target, typically via sharing the directory
over NFS.
This patchset comprises two preparatory changes and the final actual one
that enables execution with remote targets. See individual commit
descriptions for details.
This has been verified with native `powerpc64le-linux-gnu' configuration
to cause no change in test results, and also with the same build/host and
`mips-linux-gnu' target using a board description file making the target
available for remote execution, producing the following change in results:
--- old.log 2026-02-11 10:18:01.635348907 +0000
+++ new.log 2026-02-11 15:07:35.451293371 +0000
@@ -32,7 +32,7 @@
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
fi
WARNING: Couldn't find tool init file
-Test run by macro on Wed Feb 11 10:15:57 2026
+Test run by macro on Wed Feb 11 15:04:51 2026
Target is mips-unknown-linux-gnu
Host is powerpc64le-unknown-linux-gnu
@@ -80,6 +80,10 @@
Running .../binutils-gdb/ld/testsuite/ld-elf/export-class.exp ...
Running .../binutils-gdb/ld/testsuite/ld-elf/frame.exp ...
Running .../binutils-gdb/ld/testsuite/ld-elf/indirect.exp ...
+FAIL: Run indirect5 3
+FAIL: Run indirect5 4
+FAIL: Run indirect6 3
+FAIL: Run indirect6 4
FAIL: indirect5c dynsym
FAIL: indirect5d dynsym
FAIL: indirect6c dynsym
@@ -97,6 +101,9 @@
Running .../binutils-gdb/ld/testsuite/ld-elf/sec64k.exp ...
Running .../binutils-gdb/ld/testsuite/ld-elf/shared.exp ...
FAIL: Build libpr16496b.so
+FAIL: Run pr2404 with PIE
+FAIL: Run pr2404 with PIE (-z now)
+FAIL: Run pr21964-4
Running .../binutils-gdb/ld/testsuite/ld-elf/tls.exp ...
Running .../binutils-gdb/ld/testsuite/ld-elf/tls_common.exp ...
Running .../binutils-gdb/ld/testsuite/ld-elf/wrap.exp ...
@@ -265,12 +272,12 @@
=== ld Summary ===
-# of expected passes 2083
-# of unexpected failures 36
+# of expected passes 2288
+# of unexpected failures 43
# of expected failures 36
# of known failures 1
# of untested testcases 2
-# of unsupported tests 306
+# of unsupported tests 94
./ld-new 2.45.50.20260115
make[4]: [Makefile:2380: check-DEJAGNU] Error 1 (ignored)
-- that is expanding coverage over extra 212 test cases and revealing 7
actual issues previously masked by the affected test cases having not been
run. It's been also verified with my usual set of cross-targets, counting
262 now, that have no compiler available.
OK to apply?
Maciej
More information about the Binutils
mailing list