From: Torbjörn SVENSSON Date: Wed, 28 Jan 2026 13:43:07 +0000 (+0100) Subject: testsuite: lto: transform gcc-ar to include prefix X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c9addbc79ac0f9089e69965fec6b386833b3de32;p=thirdparty%2Fgcc.git testsuite: lto: transform gcc-ar to include prefix When the the gcc binary is named arm-none-eabi-gcc, the gcc-ar binary will be named arm-none-eabi-gcc-ar. The current approach works fine as long as the binary does not contain any prefix, but if it does, the gcc-ar binary will not be found. gcc/testsuite/ChangeLog * lib/lto.exp (lto-build-archive): Transform gcc-ar binary name. Signed-off-by: Torbjörn SVENSSON --- diff --git a/gcc/testsuite/lib/lto.exp b/gcc/testsuite/lib/lto.exp index c307762abc3..0181a3f4e85 100644 --- a/gcc/testsuite/lib/lto.exp +++ b/gcc/testsuite/lib/lto.exp @@ -313,6 +313,7 @@ proc lto-build-archive { testname objlist dest } { global testcase global tool global GCC_UNDER_TEST + global GCC_AR_UNDER_TEST upvar dg-messages-by-file dg-messages-by-file @@ -327,9 +328,19 @@ proc lto-build-archive { testname objlist dest } { } } - # Hack up the gcc-ar command from $GCC_UNDER_TEST. - set ar_cmd [file dirname [lindex $GCC_UNDER_TEST 0]] - set ar_cmd "$ar_cmd/gcc-ar [lrange $GCC_UNDER_TEST 1 end]" + # For now find gcc-ar in the same directory as $GCC_UNDER_TEST, unless + # GCC_AR_UNDER_TEST is defined. + + if ![info exists GCC_AR_UNDER_TEST] { + if { ![is_remote host] && [string match "*/*" [lindex $GCC_UNDER_TEST 0]] } { + set ar_cmd [file dirname [lindex $GCC_UNDER_TEST 0]]/[gcc-transform-out-of-tree gcc-ar] + } else { + set ar_cmd [gcc-transform-out-of-tree gcc-ar] + } + } else { + set ar_cmd $GCC_AR_UNDER_TEST + } + set ar_output [remote_exec host "$ar_cmd rcs $dest $objlist"] set retval [lindex $ar_output 0] set retmsg [lindex $ar_output 1]