diff --git a/libffi/ChangeLog b/libffi/ChangeLog index df544ba0f852..7c9c97e44a6b 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,8 @@ +2005-09-30 Geoffrey Keating + + * testsuite/lib/libffi-dg.exp (libffi_target_compile): For + darwin, use -shared-libgcc not -lgcc_s, and explain why. + 2005-09-26 Tom Tromey * testsuite/libffi.call/float1.c (value_type): New typedef. diff --git a/libffi/testsuite/lib/libffi-dg.exp b/libffi/testsuite/lib/libffi-dg.exp index 4708ef7b4e73..c3eecff96c0a 100644 --- a/libffi/testsuite/lib/libffi-dg.exp +++ b/libffi/testsuite/lib/libffi-dg.exp @@ -187,8 +187,13 @@ proc libffi_target_compile { source dest type options } { lappend options "additional_flags=-I${libffi_include} -I${srcdir}/../include -I${libffi_include}/.." lappend options "additional_flags=${libffi_link_flags}" - if { [string match "powerpc-*-darwin*" $target_triplet] } { - lappend options "libs= -lgcc_s" + # If you're building the compiler with --prefix set to a place + # where it's not yet installed, then the linker won't be able to + # find the libgcc used by libffi.dylib. We could pass the + # -dylib_file option, but that's complicated, and it's much easier + # to just make the linker find libgcc using -L options. + if { [string match "*-*-darwin*" $target_triplet] } { + lappend options "libs= -shared-libgcc" } lappend options "libs= -lffi"