summaryrefslogtreecommitdiffstats
path: root/libjava/testsuite/lib/libjava.exp
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-26 14:28:20 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-26 14:28:20 +0000
commit34b6c31d3f44915be9485e073a8028f9a6d42488 (patch)
tree8c366219c7caf1089fe0869e92742fceebcd85b7 /libjava/testsuite/lib/libjava.exp
parent41e6be0dbfb73bfa610c4a62cb2b3f33514dd46b (diff)
downloadppe42-gcc-34b6c31d3f44915be9485e073a8028f9a6d42488.tar.gz
ppe42-gcc-34b6c31d3f44915be9485e073a8028f9a6d42488.zip
* lib/libjava.exp (libjava_find_lib): New proc.
(libjava_arguments): Use it. Force static linking. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26651 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/testsuite/lib/libjava.exp')
-rw-r--r--libjava/testsuite/lib/libjava.exp55
1 files changed, 24 insertions, 31 deletions
diff --git a/libjava/testsuite/lib/libjava.exp b/libjava/testsuite/lib/libjava.exp
index 9c8b36d19a9..b3f34f5cbd7 100644
--- a/libjava/testsuite/lib/libjava.exp
+++ b/libjava/testsuite/lib/libjava.exp
@@ -79,6 +79,26 @@ proc libjava_init { args } {
set libjava_initialized 1
}
+# Find a library. We know where libtool puts the actual libraries,
+# and we look there.
+proc libjava_find_lib {dir name} {
+ global base_dir
+ set gp [get_multilibs]
+ foreach sub {.libs _libs} {
+ if {$gp != ""} {
+ if {[file exists $gp/$dir/$sub/lib${name}.a]} then {
+ return "-L$gp/$dir/$sub -l$name"
+ }
+ }
+ set lib [findfile $base_dir/../../$dir/$sub/lib${name}.a \
+ "-L$base_dir/../../$dir/$sub -l$name" ""]
+ if {$lib != ""} {
+ return $lib
+ }
+ }
+ return ""
+}
+
# Compute arguments needed for compiler.
proc libjava_arguments {} {
global base_dir
@@ -93,47 +113,19 @@ proc libjava_arguments {} {
if [info exists LIBJAVA] {
set libjava $LIBJAVA;
} else {
- set gp [get_multilibs];
- if { $gp != "" } {
- if [file exists "$gp/libjava/libgcj.a"] {
- set libjava "-L$gp/libjava -lgcj";
- }
- }
- if ![info exists libjava] {
- set libjava [findfile $base_dir/../../libjava/libgcj.a "-L$base_dir/../../libjava -lgcj" -lgcj]
- }
+ set libjava [libjava_find_lib libjava gcj]
}
if [info exists LIBGC] {
set libgc $LIBGC;
} else {
- set gp [get_multilibs];
- if { $gp != "" } {
- if [file exists "$gp/boehm-gc/libgcjgc.a"] {
- set libgc "-L$gp/boehm-gc -lgcjgc";
- }
- }
- if ![info exists libgc] {
- set libgc [findfile $base_dir/../../boehm-gc/libgcjgc.a \
- "-L$base_dir/../../boehm-gc -lgcjgc" \
- {}]
- }
+ set libgc [libjava_find_lib boehm-gc gcjgc]
}
if [info exists LIBQTHREADS] {
set libqthreads $LIBQTHREADS
} else {
- set gp [get_multilibs]
- if { $gp != "" } {
- if [file exists "$gp/qthreads/libgcjcoop.a"] {
- set libqthreads "-L$gp/qthreads -lgcjcoop";
- }
- }
- if ![info exists libqthreads] {
- set libqthreads [findfile $base_dir/../../qthreads/libgcjcoop.a \
- "-L$base_dir/../../qthreads -lgcjcoop" \
- {}]
- }
+ set libqthreads [libjava_find_lib qthreads gcjcoop]
}
# FIXME: there's no way to determine whether -lpthread is
@@ -175,6 +167,7 @@ proc libjava_arguments {} {
global wrapper_file wrap_compile_flags;
lappend args "additional_flags=$wrap_compile_flags";
+ lappend args "additional_flags=-static"
lappend args "libs=$wrapper_file";
lappend args "libs=$libjava";
lappend args "libs=$libgc";
OpenPOWER on IntegriCloud