[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