aboutsummaryrefslogtreecommitdiff
path: root/libmudflap
diff options
context:
space:
mode:
Diffstat (limited to 'libmudflap')
-rw-r--r--libmudflap/ChangeLog7
-rw-r--r--libmudflap/testsuite/lib/libmudflap.exp25
2 files changed, 29 insertions, 3 deletions
diff --git a/libmudflap/ChangeLog b/libmudflap/ChangeLog
index 7503165..78507bc 100644
--- a/libmudflap/ChangeLog
+++ b/libmudflap/ChangeLog
@@ -1,3 +1,10 @@
+2009-07-11 Richard Sandiford <rdsandiford@googlemail.com>
+
+ PR testsuite/40699
+ PR testsuite/40707
+ PR testsuite/40709
+ * testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit.
+
2009-07-01 Richard Guenther <rguenther@suse.de>
PR tree-optimization/19831
diff --git a/libmudflap/testsuite/lib/libmudflap.exp b/libmudflap/testsuite/lib/libmudflap.exp
index da91643..c69e84a 100644
--- a/libmudflap/testsuite/lib/libmudflap.exp
+++ b/libmudflap/testsuite/lib/libmudflap.exp
@@ -60,9 +60,28 @@ proc libmudflap-init { language } {
# set LD_LIBRARY_PATH so that libgcc_s, libstdc++ binaries can be found.
# locate libgcc.a so we don't need to account for different values of
# SHLIB_EXT on different platforms
- set ld_library_path [find_libgcc_s $cxx]
- add_path ld_library_path "${cxxblddir}/src/.libs"
- add_path ld_library_path "${blddir}/.libs"
+ set gccdir [lookfor_file $tool_root_dir gcc/libgcc.a]
+ if {$gccdir != ""} {
+ set gccdir [file dirname $gccdir]
+ }
+
+ set ld_library_path "."
+ append ld_library_path ":${gccdir}"
+ append ld_library_path ":${cxxblddir}/src/.libs"
+ if {[is_remote host] == 0} {
+ foreach i "[exec ${gccdir}/xgcc --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}"
+ }
+ }
+ }
+ append ld_library_path ":${blddir}/.libs"
set libs "-L${blddir}/.libs"
set cxxflags "-ggdb3 -DDEBUG_ASSERT"