aboutsummaryrefslogtreecommitdiff
path: root/libgomp/testsuite
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2009-07-11 06:10:49 +0000
committerRichard Sandiford <rsandifo@gcc.gnu.org>2009-07-11 06:10:49 +0000
commit33cde5161f2bc0738d24bcafe8ea9a858a63f9f4 (patch)
tree3ae36f07c961c579d1e473b88f00c276ca8cf2e1 /libgomp/testsuite
parent82e45095505d635a123bc8928e46f6b25d5bbb4f (diff)
downloadgcc-33cde5161f2bc0738d24bcafe8ea9a858a63f9f4.zip
gcc-33cde5161f2bc0738d24bcafe8ea9a858a63f9f4.tar.gz
gcc-33cde5161f2bc0738d24bcafe8ea9a858a63f9f4.tar.bz2
re PR testsuite/40699 (All sparcv9 libjava execution tests fail on Solaris 11/SPARC)
gcc/testsuite/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * lib/gcc-defs.exp, lib/target-libpath.exp, lib/objc.exp, lib/gfortran.exp, lib/g++.exp, lib/obj-c++.exp, lib/c-torture.exp, lib/gcc-dg.exp, lib/gnat.exp, g++.dg/compat/compat.exp, g++.dg/compat/struct-layout-1.exp: Revert 2009-06-30 commit. libstdc++-v3/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libstdc++.exp: Revert 2009-06-30 commit. libjava/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libjava.exp: Revert 2009-06-30 commit. libgomp/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits. * testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp, testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits. libffi/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libffi-dg.exp: Revert 2009-07-02, 2009-07-01 and 2009-06-30 commits. libmudflap/ PR testsuite/40699 PR testsuite/40707 PR testsuite/40709 * testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit. From-SVN: r149508
Diffstat (limited to 'libgomp/testsuite')
-rw-r--r--libgomp/testsuite/lib/libgomp.exp44
-rw-r--r--libgomp/testsuite/libgomp.c++/c++.exp6
-rw-r--r--libgomp/testsuite/libgomp.c/c.exp1
-rw-r--r--libgomp/testsuite/libgomp.fortran/fortran.exp6
4 files changed, 43 insertions, 14 deletions
diff --git a/libgomp/testsuite/lib/libgomp.exp b/libgomp/testsuite/lib/libgomp.exp
index 4712de2..972d4a1 100644
--- a/libgomp/testsuite/lib/libgomp.exp
+++ b/libgomp/testsuite/lib/libgomp.exp
@@ -86,6 +86,40 @@ proc libgomp_init { args } {
set CFLAGS ""
}
+ # Locate libgcc.a so we don't need to account for different values of
+ # SHLIB_EXT on different platforms
+ set gccdir [lookfor_file $tool_root_dir gcc/libgcc.a]
+ if {$gccdir != ""} {
+ set gccdir [file dirname $gccdir]
+ }
+
+ # Compute what needs to be put into LD_LIBRARY_PATH
+ set always_ld_library_path ".:${blddir}/.libs"
+
+ # Compute what needs to be added to the existing LD_LIBRARY_PATH.
+ if {$gccdir != ""} {
+ # Add AIX pthread directory first.
+ if { [llength [glob -nocomplain ${gccdir}/pthread/libgcc_s*.a]] >= 1 } {
+ append always_ld_library_path ":${gccdir}/pthread"
+ }
+ append always_ld_library_path ":${gccdir}"
+ set compiler [lindex $GCC_UNDER_TEST 0]
+
+ 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 always_ld_library_path ":${gccdir}/${mldir}"
+ }
+ }
+ }
+ }
+
set ALWAYS_CFLAGS ""
if { $blddir != "" } {
lappend ALWAYS_CFLAGS "additional_flags=-B${blddir}/"
@@ -119,16 +153,6 @@ proc libgomp_init { args } {
# And, gee, turn on OpenMP.
lappend ALWAYS_CFLAGS "additional_flags=-fopenmp"
-
- set compiler $GCC_UNDER_TEST
- foreach flag $ALWAYS_CFLAGS {
- if { [regexp {^(additional_flags|ldflags)=(.*)} $flag d1 d2 option] } {
- lappend compiler $option
- }
- }
-
- set always_ld_library_path "${blddir}/.libs"
- add_path always_ld_library_path [find_libgcc_s $compiler]
}
#
diff --git a/libgomp/testsuite/libgomp.c++/c++.exp b/libgomp/testsuite/libgomp.c++/c++.exp
index 92b8146..decda3d 100644
--- a/libgomp/testsuite/libgomp.c++/c++.exp
+++ b/libgomp/testsuite/libgomp.c++/c++.exp
@@ -37,10 +37,12 @@ if { $lang_test_file_found } {
# Gather a list of all tests.
set tests [lsort [glob -nocomplain $srcdir/$subdir/*.C]]
- set ld_library_path $always_ld_library_path
if { $blddir != "" } {
- add_path ld_library_path "${blddir}/${lang_library_path}"
+ set ld_library_path "$always_ld_library_path:${blddir}/${lang_library_path}"
+ } else {
+ set ld_library_path "$always_ld_library_path"
}
+ append ld_library_path [gcc-set-multilib-library-path $GCC_UNDER_TEST]
set_ld_library_path_env_vars
set flags_file "${blddir}/../libstdc++-v3/scripts/testsuite_flags"
diff --git a/libgomp/testsuite/libgomp.c/c.exp b/libgomp/testsuite/libgomp.c/c.exp
index e304f56..980bb52 100644
--- a/libgomp/testsuite/libgomp.c/c.exp
+++ b/libgomp/testsuite/libgomp.c/c.exp
@@ -20,6 +20,7 @@ dg-init
set tests [lsort [find $srcdir/$subdir *.c]]
set ld_library_path $always_ld_library_path
+append ld_library_path [gcc-set-multilib-library-path $GCC_UNDER_TEST]
set_ld_library_path_env_vars
# Main loop.
diff --git a/libgomp/testsuite/libgomp.fortran/fortran.exp b/libgomp/testsuite/libgomp.fortran/fortran.exp
index a1042d1..3d6615f 100644
--- a/libgomp/testsuite/libgomp.fortran/fortran.exp
+++ b/libgomp/testsuite/libgomp.fortran/fortran.exp
@@ -26,10 +26,12 @@ if { $lang_test_file_found } {
# Gather a list of all tests.
set tests [lsort [find $srcdir/$subdir *.\[fF\]{,90,95,03,08}]]
- set ld_library_path $always_ld_library_path
if { $blddir != "" } {
- add_path ld_library_path "${blddir}/${lang_library_path}"
+ set ld_library_path "$always_ld_library_path:${blddir}/${lang_library_path}"
+ } else {
+ set ld_library_path "$always_ld_library_path"
}
+ append ld_library_path [gcc-set-multilib-library-path $GCC_UNDER_TEST]
set_ld_library_path_env_vars
# Main loop.