diff options
| author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-04-26 14:28:20 +0000 |
|---|---|---|
| committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 1999-04-26 14:28:20 +0000 |
| commit | 34b6c31d3f44915be9485e073a8028f9a6d42488 (patch) | |
| tree | 8c366219c7caf1089fe0869e92742fceebcd85b7 /libjava/testsuite/lib/libjava.exp | |
| parent | 41e6be0dbfb73bfa610c4a62cb2b3f33514dd46b (diff) | |
| download | ppe42-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.exp | 55 |
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"; |

