diff --git a/ChangeLog b/ChangeLog index e2ef7041..5baf5926 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2002-12-30 Robert Boehne + + * libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section + for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX + tag doesn't use the g++ defaults for the OS X compiler. + 2002-12-30 Albert Chin-A-Young * libtool.m4: Sync methods used to detect GNU ld. diff --git a/libtool.m4 b/libtool.m4 index b7bd409d..0cf1753e 100644 --- a/libtool.m4 +++ b/libtool.m4 @@ -2717,6 +2717,28 @@ case $host_os in fi ;; + darwin* | rhapsody*) + case "$host_os" in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' + ;; + *) # Darwin 1.3 on + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' + ;; + esac + + # FIXME: Relying on posixy $() will cause problems for + # cross-compilation, but unfortunately the echo tests do not + # yet detect zsh echo's removal of \ escapes. Also zsh mangles + # `"' quotes if we put them in here... so don't! + _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' + # We need to add '_' to the symbols in $export_symbols first + #_LT_AC_TAGVAR(archive_expsym_cmds, $1)="$_LT_AC_TAGVAR(archive_cmds, $1)"' && strip -s $export_symbols' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' + ;; + dgux*) case $cc_basename in ec++)