diff options
Diffstat (limited to 'libjava/testsuite')
-rw-r--r-- | libjava/testsuite/lib/libjava.exp | 4 | ||||
-rw-r--r-- | libjava/testsuite/libjava.jni/jni.exp | 21 |
2 files changed, 17 insertions, 8 deletions
diff --git a/libjava/testsuite/lib/libjava.exp b/libjava/testsuite/lib/libjava.exp index 443259d..b3a16f6 100644 --- a/libjava/testsuite/lib/libjava.exp +++ b/libjava/testsuite/lib/libjava.exp @@ -197,8 +197,8 @@ proc libjava_init { args } { # Finally, add the gcc build directory so that we can find the # shared libgcc. This, like much of dejagnu, is hideous. set libjava_libgcc_s_path {} - - if { [string match "powerpc-*-darwin*" $target_triplet] } { + + if { [istarget "*-*-darwin*"] } { set so_extension "dylib" } else { set so_extension "so" diff --git a/libjava/testsuite/libjava.jni/jni.exp b/libjava/testsuite/libjava.jni/jni.exp index fb10bd4..989a164 100644 --- a/libjava/testsuite/libjava.jni/jni.exp +++ b/libjava/testsuite/libjava.jni/jni.exp @@ -14,7 +14,7 @@ proc gcj_jni_compile_c_to_so {file {options {}}} { # so we check against powerpc-apple-darwin and set them to # dylib, else we assume it's .so - if { [ regexp {powerpc-apple-darwin} $host_triplet] } { + if { [istarget "*-*-darwin*"] } { set so_extension "dylib" set so_flag "-dynamiclib" } else { @@ -77,10 +77,10 @@ proc gcj_jni_test_one {file} { global INTERPRETER # apple uses a different extension for shared/dynamic libraries -# so we check against powerpc-apple-darwin and set them to +# so we check against powerpc-apple-darwin and set them to # dylib, else we assume it's .so - if { [ regexp {powerpc-apple-darwin} $host_triplet] } { + if { [istarget "*-*-darwin*"] } { set so_extension "dylib" } else { set so_extension "so" @@ -134,12 +134,12 @@ proc gcj_jni_test_one {file} { # Darwin does not yet have a libgcc_s.dylib library. # So we add it here. If the libgcc_s is installed, the libstdc++ # would pick it up. - if { [ regexp {powerpc-apple-darwin} $host_triplet] } { + if { [istarget "*-*-darwin*"] } { lappend cxxflaglist "-lgcc_s -lstdc++" } else { lappend cxxflaglist "-lstdc++" } - + set cxxflags [join $cxxflaglist] } @@ -194,6 +194,10 @@ proc gcj_jni_invocation_compile_c_to_binary {file {options {}}} { set filename [file tail $file] set name [file rootname $filename] + # Set some darwin specific options + if { [istarget "*-*-darwin*"] } { + lappend options "additional_flags=-multiply_defined suppress" + } # Find the generated header. lappend options "additional_flags=-I. -I.." @@ -238,7 +242,12 @@ proc gcj_jni_invocation_test_one {file} { pass "bytecompile $file" set cfile [file rootname $file].c - set cxxflags "-L../.libs -lgcj" + # Darwin needs -liconv linked, otherwise we get some unresolved. + if { [istarget "*-*-darwin*"] } { + set cxxflags "-L../.libs -lgcj -liconv" + } else { + set cxxflags "-L../.libs -lgcj" + } if {! [gcj_jni_invocation_compile_c_to_binary $cfile $cxxflags]} { # FIXME |