This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
Re: [patch] testsuite fix for solaris 64bit testing
- From: Andreas Tobler <toa at pop dot agri dot ch>
- To: tromey at redhat dot com
- Cc: Java Patch List <java-patches at gcc dot gnu dot org>
- Date: Wed, 07 Jan 2004 23:12:55 +0100
- Subject: Re: [patch] testsuite fix for solaris 64bit testing
- References: <3FEC5992.4050903@pop.agri.ch> <87u13a18hm.fsf@fleche.redhat.com>
Tom Tromey wrote:
"Andreas" == Andreas Tobler <toa@pop.agri.ch> writes:
Andreas> during some xmas testing I encountered tons of failures when testing
Andreas> solaris -m64 with a 32 bit native compiler.
Andreas> The reason was a simple library mismatch. Setting the
Andreas> LD_LIBRARY_PATH_64 for solaris -m64 reduced the failure count to a
Andreas> reasonable minimum with about 28000 passes and about 200
Andreas> failures. 32/64bit libjava testing with mauve.
Could you look at proc ${tool}_set_ld_library_path, near the end of
testsuite/lib/libjava.exp?
I think the libjava_init part of your patch is fine. For the other
parts, I think I'd prefer we just consolidate all the environment
variable settings into the aforementioned proc. Could you try that
change? If it works, let's also move the SHLIB_PATH and
DYLD_LIBRARY_PATH settings there.
Did so, here the outcome. Tested on darwin (DYLD_LIBRARY_PATH) and
solaris2.9 (LD_LIBRARY_PATH_64).
The patch below.
Though I'm not sure if I should post since there is a basic question
open regarding sparc64 with LD_LIBRARY_PATH_64.
I will ask Eric and the list in an other mail on gcc about.
Thanks,
Andreas
P.S, and not to forget the people from the SHLIB_PATH :)
Index: lib/libjava.exp
===================================================================
RCS file: /cvs/gcc/gcc/libjava/testsuite/lib/libjava.exp,v
retrieving revision 1.55
diff -u -r1.55 libjava.exp
--- lib/libjava.exp 19 Nov 2003 04:53:29 -0000 1.55
+++ lib/libjava.exp 7 Jan 2004 22:08:05 -0000
@@ -181,7 +181,11 @@
if [info exists env(DYLD_LIBRARY_PATH)] {
set original_ld_library_path $env(DYLD_LIBRARY_PATH)
} else {
- set original_ld_library_path ""
+ if [info exists env(LD_LIBRARY_PATH_64)] {
+ set original_ld_library_path $env(LD_LIBRARY_PATH_64)
+ } else {
+ set original_ld_library_path ""
+ }
}
}
}
@@ -362,8 +366,6 @@
# Set variables the dynamic linker looks at.
global original_ld_library_path
setenv LD_LIBRARY_PATH "$ld_library_path:$original_ld_library_path"
- setenv SHLIB_PATH "$ld_library_path:$original_ld_library_path"
- setenv DYLD_LIBRARY_PATH "$ld_library_path:$original_ld_library_path"
verbose "LD_LIBRARY_PATH = $env(LD_LIBRARY_PATH)"
@@ -459,8 +461,6 @@
append newval :$lib_path
setenv LD_LIBRARY_PATH $newval
- setenv SHLIB_PATH $newval
- setenv DYLD_LIBRARY_PATH $newval
verbose "LD_LIBRARY_PATH=$env(LD_LIBRARY_PATH)"
@@ -470,8 +470,6 @@
# Restore setting
setenv LD_LIBRARY_PATH $lib_path
- setenv SHLIB_PATH $lib_path
- setenv DYLD_LIBRAY_PATH $lib_path
if {$status != "pass"} {
verbose "got $output"
@@ -914,6 +912,9 @@
proc ${tool}_set_ld_library_path { name element op } {
setenv LD_LIBRARYN32_PATH [getenv LD_LIBRARY_PATH]
setenv LD_LIBRARY64_PATH [getenv LD_LIBRARY_PATH]
+ setenv SHLIB_PATH [getenv LD_LIBRARY_PATH]
+ setenv DYLD_LIBRARY_PATH [getenv LD_LIBRARY_PATH]
+ setenv LD_LIBRARY_PATH_64 [getenv LD_LIBRARY_PATH]
}
trace variable env(LD_LIBRARY_PATH) w ${tool}_set_ld_library_path