mirror of
git://git.savannah.gnu.org/libtool.git
synced 2024-11-27 06:09:57 +08:00
Revert to per-language libpath computation on AIX.
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept tagname argument. Use global cache variable lt_cv_aix_libpath to override per-language tag variables for the libpath value. Fix the sed script to remove trailing space. (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to _LT_SYS_MODULE_PATH_AIX. Tracked down and reported by Rainer Tammer. Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
This commit is contained in:
parent
850f41781e
commit
830f33846e
11
ChangeLog
11
ChangeLog
@ -1,3 +1,14 @@
|
||||
2010-09-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
||||
|
||||
Revert to per-language libpath computation on AIX.
|
||||
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
|
||||
tagname argument. Use global cache variable lt_cv_aix_libpath
|
||||
to override per-language tag variables for the libpath value.
|
||||
Fix the sed script to remove trailing space.
|
||||
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
|
||||
_LT_SYS_MODULE_PATH_AIX.
|
||||
Tracked down and reported by Rainer Tammer.
|
||||
|
||||
2010-09-21 Gary V. Vaughan <gary@gnu.org>
|
||||
|
||||
maint: edit-readme-alpha shouldn't try to re-edit during dist.
|
||||
|
54
libltdl/m4/libtool.m4
vendored
54
libltdl/m4/libtool.m4
vendored
@ -1073,33 +1073,41 @@ m4_defun([_LT_DARWIN_LINKER_FEATURES],
|
||||
fi
|
||||
])
|
||||
|
||||
# _LT_SYS_MODULE_PATH_AIX
|
||||
# -----------------------
|
||||
# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
|
||||
# ----------------------------------
|
||||
# Links a minimal program and checks the executable
|
||||
# for the system default hardcoded library path. In most cases,
|
||||
# this is /usr/lib:/lib, but when the MPI compilers are used
|
||||
# the location of the communication and MPI libs are included too.
|
||||
# If we don't find anything, use the default library path according
|
||||
# to the aix ld manual.
|
||||
# Store the results from the different compilers for each TAGNAME.
|
||||
# Allow to override them for all tags through lt_cv_aix_libpath.
|
||||
m4_defun([_LT_SYS_MODULE_PATH_AIX],
|
||||
[m4_require([_LT_DECL_SED])dnl
|
||||
AC_CACHE_VAL([lt_cv_aix_libpath],
|
||||
[AC_LINK_IFELSE([AC_LANG_PROGRAM],[
|
||||
lt_aix_libpath_sed='
|
||||
/Import File Strings/,/^$/ {
|
||||
/^0/ {
|
||||
s/^0 *\(.*\)$/\1/
|
||||
p
|
||||
}
|
||||
}'
|
||||
lt_cv_aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
|
||||
# Check for a 64-bit object if we didn't find anything.
|
||||
if test -z "$lt_cv_aix_libpath"; then
|
||||
lt_cv_aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
|
||||
fi],[])
|
||||
if test -z "$lt_cv_aix_libpath"; then lt_cv_aix_libpath="/usr/lib:/lib"; fi
|
||||
])
|
||||
aix_libpath=$lt_cv_aix_libpath
|
||||
if test "${lt_cv_aix_libpath+set}" = set; then
|
||||
aix_libpath=$lt_cv_aix_libpath
|
||||
else
|
||||
AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
|
||||
[AC_LINK_IFELSE([AC_LANG_PROGRAM],[
|
||||
lt_aix_libpath_sed='[
|
||||
/Import File Strings/,/^$/ {
|
||||
/^0/ {
|
||||
s/^0 *\([^ ]*\) *$/\1/
|
||||
p
|
||||
}
|
||||
}]'
|
||||
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
|
||||
# Check for a 64-bit object if we didn't find anything.
|
||||
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
|
||||
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
|
||||
fi],[])
|
||||
if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
|
||||
_LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
|
||||
fi
|
||||
])
|
||||
aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
|
||||
fi
|
||||
])# _LT_SYS_MODULE_PATH_AIX
|
||||
|
||||
|
||||
@ -4944,7 +4952,7 @@ _LT_EOF
|
||||
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
|
||||
# Determine the default libpath from the value encoded in an
|
||||
# empty executable.
|
||||
_LT_SYS_MODULE_PATH_AIX
|
||||
_LT_SYS_MODULE_PATH_AIX([$1])
|
||||
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
|
||||
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
|
||||
else
|
||||
@ -4955,7 +4963,7 @@ _LT_EOF
|
||||
else
|
||||
# Determine the default libpath from the value encoded in an
|
||||
# empty executable.
|
||||
_LT_SYS_MODULE_PATH_AIX
|
||||
_LT_SYS_MODULE_PATH_AIX([$1])
|
||||
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
|
||||
# Warning - without using the other run time loading flags,
|
||||
# -berok will link without error, but may produce a broken library.
|
||||
@ -5950,7 +5958,7 @@ if test "$_lt_caught_CXX_error" != yes; then
|
||||
_LT_TAGVAR(allow_undefined_flag, $1)='-berok'
|
||||
# Determine the default libpath from the value encoded in an empty
|
||||
# executable.
|
||||
_LT_SYS_MODULE_PATH_AIX
|
||||
_LT_SYS_MODULE_PATH_AIX([$1])
|
||||
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
|
||||
|
||||
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
|
||||
@ -5962,7 +5970,7 @@ if test "$_lt_caught_CXX_error" != yes; then
|
||||
else
|
||||
# Determine the default libpath from the value encoded in an
|
||||
# empty executable.
|
||||
_LT_SYS_MODULE_PATH_AIX
|
||||
_LT_SYS_MODULE_PATH_AIX([$1])
|
||||
_LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
|
||||
# Warning - without using the other run time loading flags,
|
||||
# -berok will link without error, but may produce a broken library.
|
||||
|
Loading…
Reference in New Issue
Block a user