[PATCH] hppa64-hpux: Create dummy milli.a archives for binutils and ld testsuites [v2]

Maciej W. Rozycki macro@orcam.me.uk
Wed Apr 15 17:10:00 GMT 2026


On Mon, 6 Apr 2026, John David Anglin wrote:

> In v2, I reworked the change to default.exp in the binutils testsuite to
> avoid usings procs from the ld testsuite.
> 
> Tested on hppa64-hp-hpux11.11 and x86_64-pc-linux-gnu.  Fixes all fails
> due to missing milli.a archive.

 I can see:

hppa64-hp-hpux11.23  -FAIL: objcopy executable (pr25662)
hppa64-hp-hpux11.23  +FAIL: ld-elf/pr30791b
hppa64-hp-hpux11.23  +FAIL: relocatable with script

compared to commit 77cb5ee0f268 ("gas: pru: Add flag to select core 
revision") after which linking `milli.a' was added; I hope it's expected.

> 2026-04-04  John David Anglin  <danglin@gcc.gnu.org>
> 
> binutils/ChangeLog:
> 
> 	* testsuite/config/default.exp: Create dummy missing
> 	libraries for hppa*64-*-hpux* target.  Append
> 	" -Ltmpdir" to LDFLAGS.
> 
> ld/ChangeLog:
> 
> 	* testsuite/config/default.exp: Create dummy missing
> 	libraries for hppa*64-*-hpux* target.  Append
> 	" -Ltmpdir" to LDFLAGS.
> 	* testsuite/lib/ld-lib.exp (default_ld_link): Append
> 	LDFLAGS to flags variable.

 Hmm, I think it would be safer long-term (even if nothing breaks right 
away) if our dummy `milli.a' library lived on its own in a separate 
directory such as `tmpdir/milli' that isn't expected to be ever used by 
any tests, in particular generic ones.  This way adding " -Ltmpdir/milli" 
won't interfere with tests that want or don't want to have `tmpdir' in the 
library search path for some reason.

 I can see `alpha*-*-*vms*' already uses " -Ltmpdir", so we have previous 
art, but I'd rather fix it (separately, definitely an expectation for you 
to do it) than add another case.

> diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
> index d37d33cd96c..d1b6f2e058f 100644
> --- a/ld/testsuite/lib/ld-lib.exp
> +++ b/ld/testsuite/lib/ld-lib.exp
> @@ -231,11 +231,13 @@ proc get_board_flags {} {
>  proc default_ld_link { ld target objects } {
>      global host_triplet
>      global exec_output
> +    global LDFLAGS
>  
>      set flags ""
>      if [is_endian_output_format $objects] then {
>  	set flags [big_or_little_endian]
>      }
> +    set flags "$flags $LDFLAGS"

 Why is this addition required for `hppa*64-*-hpux*' while not for 
`alpha*-*-*vms*'?

  Maciej


More information about the Binutils mailing list