Hi,
I've noticed that testing libphobos fails for multi-lib configs: $ make check-target-libphobos RUNTESTFLAGS="--target_board=unix\{-m32,\}" fails for every 32bit execution, because the host libgcc_s.so is used which is not the correct version: spawn [open ...] ./test_aa.exe: /lib/i386-linux-gnu/libgcc_s.so.1: version `GCC_7.0.0' not found (required by ./test_aa.exe) FAIL: libphobos.aa/test_aa.d execution test This can be fixed by adding a few lines from libstdc++/testsuite/lib/libstdc++.exp to libphobos/testsuite/lib/libphobos.exp, see attached patch. Bootstrapped and reg-tested on x86_64-pc-linux-gnu. Is it OK for trunk? Thanks Bernd.
2019-09-02 Bernd Edlinger <bernd.edlin...@hotmail.de> * testsuite/lib/libphobos.exp (libphobos_init): Add multi-lib libgcc dirs to the ld_library_path var. Index: libphobos/testsuite/lib/libphobos.exp =================================================================== --- libphobos/testsuite/lib/libphobos.exp (revision 275320) +++ libphobos/testsuite/lib/libphobos.exp (working copy) @@ -170,6 +170,25 @@ proc libphobos_init { args } { append ld_library_path ":${blddir}/src/.libs" } + # Compute what needs to be added to the existing LD_LIBRARY_PATH. + if {$gccdir != ""} { + set compiler ${gccdir}/gdc + + if { [is_remote host] == 0 && [which $compiler] != 0 } { + foreach i "[exec $compiler --print-multi-lib]" { + set mldir "" + regexp -- "\[a-z0-9=_/\.-\]*;" $i mldir + set mldir [string trimright $mldir "\;@"] + if { "$mldir" == "." } { + continue + } + if { [llength [glob -nocomplain ${gccdir}/${mldir}/libgcc_s*.so.*]] >= 1 } { + append ld_library_path ":${gccdir}/${mldir}" + } + } + } + } + set_ld_library_path_env_vars libphobos_maybe_build_wrapper "${objdir}/testglue.o"