libphobos.exp (libphobos_init): Add multi-lib libgcc dirs to the ld_library_path...
authorBernd Edlinger <bernd.edlinger@hotmail.de>
Tue, 3 Sep 2019 08:24:03 +0000 (08:24 +0000)
committerBernd Edlinger <edlinger@gcc.gnu.org>
Tue, 3 Sep 2019 08:24:03 +0000 (08:24 +0000)
2019-09-03  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * testsuite/lib/libphobos.exp (libphobos_init): Add multi-lib libgcc
        dirs to the ld_library_path var.

From-SVN: r275332

libphobos/ChangeLog
libphobos/testsuite/lib/libphobos.exp

index 76b13f49e693bd1db7298e758bd39c6881dab93a..80730c885b9e428ab239200490d63348b5573494 100644 (file)
@@ -1,3 +1,8 @@
+2019-09-03  Bernd Edlinger  <bernd.edlinger@hotmail.de>
+
+       * testsuite/lib/libphobos.exp (libphobos_init): Add multi-lib libgcc
+       dirs to the ld_library_path var.
+
 2019-08-20  Iain Buclaw  <ibuclaw@gdcproject.org>
 
        * libdruntime/Makefile.am (DRUNTIME_DSOURCES_BIONIC): Add
index d3fe75358c860aed21f8550be732e0be585e9b89..056e8f1d444ebad4c715cf5a274d654b80816635 100644 (file)
@@ -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"