1
0
mirror of https://github.com/moparisthebest/wget synced 2024-07-03 16:38:41 -04:00

[svn] Upgrade to libtool 1.4.3. (Upgrade to 1.5 can wait.)

This commit is contained in:
hniksic 2003-09-16 18:49:28 -07:00
parent 89af409509
commit c0d4da1fb7
3 changed files with 352 additions and 130 deletions

View File

@ -1,3 +1,9 @@
2003-09-17 Hrvoje Niksic <hniksic@xemacs.org>
* ltmain.sh, aclocal.m4: Upgrade to libtool 1.4.3. Libtool 1.5
has been out for a while now, but it can wait until after Wget 1.9
is released.
2003-09-17 Hrvoje Niksic <hniksic@xemacs.org> 2003-09-17 Hrvoje Niksic <hniksic@xemacs.org>
* config.sub: Ditto. * config.sub: Ditto.

224
aclocal.m4 vendored
View File

@ -400,7 +400,14 @@ AC_SUBST($1)dnl
]) ])
# We embed libtool.m4 from libtool distribution. #
# LIBTOOL
#
# We embed libtool.m4 from the libtool distribution.
# It would be really nice to include it, but I really don't know how.
# AC_INCLUDE, anyone?
# -- embedded libtool.m4 begins here -- # -- embedded libtool.m4 begins here --
@ -455,6 +462,8 @@ AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_LD])dnl AC_REQUIRE([AC_PROG_LD])dnl
AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
AC_REQUIRE([AC_PROG_NM])dnl AC_REQUIRE([AC_PROG_NM])dnl
AC_REQUIRE([LT_AC_PROG_SED])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl AC_REQUIRE([AC_PROG_LN_S])dnl
AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
AC_REQUIRE([AC_OBJEXT])dnl AC_REQUIRE([AC_OBJEXT])dnl
@ -622,9 +631,12 @@ hpux*) # Its linker distinguishes data from code symbols
lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
;; ;;
irix*) irix* | nonstopux*)
symcode='[[BCDEGRST]]' symcode='[[BCDEGRST]]'
;; ;;
osf*)
symcode='[[BCDEGQRST]]'
;;
solaris* | sysv5*) solaris* | sysv5*)
symcode='[[BDT]]' symcode='[[BDT]]'
;; ;;
@ -721,7 +733,7 @@ EOF
save_CFLAGS="$CFLAGS" save_CFLAGS="$CFLAGS"
LIBS="conftstm.$ac_objext" LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$no_builtin_flag" CFLAGS="$CFLAGS$no_builtin_flag"
if AC_TRY_EVAL(ac_link) && test -s conftest; then if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
pipe_works=yes pipe_works=yes
fi fi
LIBS="$save_LIBS" LIBS="$save_LIBS"
@ -1271,7 +1283,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
# like `-m68040'. # like `-m68040'.
lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
;; ;;
beos* | irix5* | irix6* | osf3* | osf4* | osf5*) beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes. # PIC is the default for these OSes.
;; ;;
darwin* | rhapsody*) darwin* | rhapsody*)
@ -1314,7 +1326,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
lt_cv_prog_cc_pic='+Z' lt_cv_prog_cc_pic='+Z'
;; ;;
irix5* | irix6*) irix5* | irix6* | nonstopux*)
lt_cv_prog_cc_wl='-Wl,' lt_cv_prog_cc_wl='-Wl,'
lt_cv_prog_cc_static='-non_shared' lt_cv_prog_cc_static='-non_shared'
# PIC (with -KPIC) is the default. # PIC (with -KPIC) is the default.
@ -1358,11 +1370,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_prog_cc_pic='-KPIC' lt_cv_prog_cc_pic='-KPIC'
lt_cv_prog_cc_static='-Bstatic' lt_cv_prog_cc_static='-Bstatic'
if test "x$host_vendor" = xsni; then
lt_cv_prog_cc_wl='-LD'
else
lt_cv_prog_cc_wl='-Wl,' lt_cv_prog_cc_wl='-Wl,'
fi
;; ;;
uts4*) uts4*)
@ -1747,7 +1755,7 @@ EOF
# If the export-symbols file already is a .def file (1st line # If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is. # is EXPORTS), use it as is.
# If DATA tags from a recent dlltool are present, honour them! # If DATA tags from a recent dlltool are present, honour them!
archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname-def; cp $export_symbols $output_objdir/$soname-def;
else else
echo EXPORTS > $output_objdir/$soname-def; echo EXPORTS > $output_objdir/$soname-def;
@ -1756,6 +1764,7 @@ EOF
set dummy \$symbol; set dummy \$symbol;
case \[$]# in case \[$]# in
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
esac; esac;
_lt_hint=`expr 1 + \$_lt_hint`; _lt_hint=`expr 1 + \$_lt_hint`;
@ -1868,10 +1877,12 @@ else
# need to do runtime linking. # need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
for ld_flag in $LDFLAGS; do for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then case $ld_flag in
*-brtl*)
aix_use_runtimelinking=yes aix_use_runtimelinking=yes
break break
fi ;;
esac
done done
esac esac
@ -1985,8 +1996,9 @@ else
esac esac
# FIXME: Relying on posixy $() will cause problems for # FIXME: Relying on posixy $() will cause problems for
# cross-compilation, but unfortunately the echo tests do not # cross-compilation, but unfortunately the echo tests do not
# yet detect zsh echo's removal of \ escapes. # yet detect zsh echo's removal of \ escapes. Also zsh mangles
archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring' # `"' quotes if we put them in here... so don't!
archive_cmds='$CC -r -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 # We need to add '_' to the symbols in $export_symbols first
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
hardcode_direct=yes hardcode_direct=yes
@ -2038,13 +2050,14 @@ else
export_dynamic_flag_spec='${wl}-E' export_dynamic_flag_spec='${wl}-E'
;; ;;
irix5* | irix6*) irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then if test "$GCC" = yes; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else else
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
hardcode_libdir_flag_spec='-rpath $libdir'
fi fi
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=: hardcode_libdir_separator=:
link_all_deplibs=yes link_all_deplibs=yes
;; ;;
@ -2072,7 +2085,7 @@ else
hardcode_direct=yes hardcode_direct=yes
hardcode_shlibpath_var=no hardcode_shlibpath_var=no
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags' archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir' hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
export_dynamic_flag_spec='${wl}-E' export_dynamic_flag_spec='${wl}-E'
else else
@ -2082,7 +2095,7 @@ else
hardcode_libdir_flag_spec='-R$libdir' hardcode_libdir_flag_spec='-R$libdir'
;; ;;
*) *)
archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags' archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir' hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;; ;;
esac esac
@ -2194,13 +2207,23 @@ EOF
;; ;;
sysv4) sysv4)
if test "x$host_vendor" = xsno; then case $host_vendor in
archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags' sni)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true??? hardcode_direct=yes # is this really true???
else ;;
siemens)
## LD is ld it makes a PLAMLIB
## CC just makes a GrossModule.
archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
reload_cmds='$CC -r -o $output$reload_objs'
hardcode_direct=no
;;
motorola)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=no #Motorola manual says yes, but my tests say they lie hardcode_direct=no #Motorola manual says yes, but my tests say they lie
fi ;;
esac
runpath_var='LD_RUN_PATH' runpath_var='LD_RUN_PATH'
hardcode_shlibpath_var=no hardcode_shlibpath_var=no
;; ;;
@ -2353,6 +2376,9 @@ aix3*)
aix4* | aix5*) aix4* | aix5*)
version_type=linux version_type=linux
need_lib_prefix=no
need_version=no
hardcode_into_libs=yes
if test "$host_cpu" = ia64; then if test "$host_cpu" = ia64; then
# AIX 5 supports IA64 # AIX 5 supports IA64
library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
@ -2391,6 +2417,7 @@ aix4* | aix5*)
fi fi
shlibpath_var=LIBPATH shlibpath_var=LIBPATH
fi fi
hardcode_into_libs=yes
;; ;;
amigaos*) amigaos*)
@ -2438,7 +2465,7 @@ cygwin* | mingw* | pw32*)
;; ;;
yes,mingw*) yes,mingw*)
library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"` sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
;; ;;
yes,pw32*) yes,pw32*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
@ -2521,14 +2548,17 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds='chmod 555 $lib' postinstall_cmds='chmod 555 $lib'
;; ;;
irix5* | irix6*) irix5* | irix6* | nonstopux*)
version_type=irix case $host_os in
nonstopux*) version_type=nonstopux ;;
*) version_type=irix ;;
esac
need_lib_prefix=no need_lib_prefix=no
need_version=no need_version=no
soname_spec='${libname}${release}.so$major' soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
case $host_os in case $host_os in
irix5*) irix5* | nonstopux*)
libsuff= shlibsuff= libsuff= shlibsuff=
;; ;;
*) *)
@ -2632,11 +2662,12 @@ os2*)
osf3* | osf4* | osf5*) osf3* | osf4* | osf5*)
version_type=osf version_type=osf
need_version=no need_version=no
soname_spec='${libname}${release}.so' soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
hardcode_into_libs=yes
;; ;;
sco3.2v5*) sco3.2v5*)
@ -2679,6 +2710,12 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
case $host_vendor in case $host_vendor in
sni) sni)
shlibpath_overrides_runpath=no shlibpath_overrides_runpath=no
need_lib_prefix=no
export_dynamic_flag_spec='${wl}-Blargedynsym'
runpath_var=LD_RUN_PATH
;;
siemens)
need_lib_prefix=no
;; ;;
motorola) motorola)
need_lib_prefix=no need_lib_prefix=no
@ -2853,7 +2890,7 @@ if test -f "$ltmain"; then
# Now quote all the things that may contain metacharacters while being # Now quote all the things that may contain metacharacters while being
# careful not to overquote the AC_SUBSTed values. We take copies of the # careful not to overquote the AC_SUBSTed values. We take copies of the
# variables and quote the copies for generation of the libtool script. # variables and quote the copies for generation of the libtool script.
for var in echo old_CC old_CFLAGS \ for var in echo old_CC old_CFLAGS SED \
AR AR_FLAGS CC LD LN_S NM SHELL \ AR AR_FLAGS CC LD LN_S NM SHELL \
reload_flag reload_cmds wl \ reload_flag reload_cmds wl \
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
@ -2915,8 +2952,11 @@ if test -f "$ltmain"; then
# configuration script generated by Autoconf, you may include it under # configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program. # the same distribution terms that you use for the rest of that program.
# A sed that does not truncate output.
SED=$lt_SED
# Sed that helps us avoid accidentally triggering echo(1) options like -n. # Sed that helps us avoid accidentally triggering echo(1) options like -n.
Xsed="sed -e s/^X//" Xsed="${SED} -e s/^X//"
# The HP-UX ksh and POSIX shell print the target directory to stdout # The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set. # if CDPATH is set.
@ -3679,7 +3719,7 @@ test -n "$reload_flag" && reload_flag=" $reload_flag"
# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies # AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
# -- PORTME fill in with the dynamic library characteristics # -- PORTME fill in with the dynamic library characteristics
AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
[AC_CACHE_CHECK([how to recognise dependant libraries], [AC_CACHE_CHECK([how to recognise dependent libraries],
lt_cv_deplibs_check_method, lt_cv_deplibs_check_method,
[lt_cv_file_magic_cmd='$MAGIC_CMD' [lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file= lt_cv_file_magic_test_file=
@ -3754,9 +3794,9 @@ hpux10.20*|hpux11*)
lt_cv_file_magic_test_file=/usr/lib/libc.sl lt_cv_file_magic_test_file=/usr/lib/libc.sl
;; ;;
irix5* | irix6*) irix5* | irix6* | nonstopux*)
case $host_os in case $host_os in
irix5*) irix5* | nonstopux*)
# this will be overridden with pass_all, but let us keep it just in case # this will be overridden with pass_all, but let us keep it just in case
lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
;; ;;
@ -3778,7 +3818,7 @@ irix5* | irix6*)
# This must be Linux ELF. # This must be Linux ELF.
linux-gnu*) linux-gnu*)
case $host_cpu in case $host_cpu in
alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* ) alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | s390* | x86_64*)
lt_cv_deplibs_check_method=pass_all ;; lt_cv_deplibs_check_method=pass_all ;;
*) *)
# glibc up to 2.1.1 does not perform some relocations on ARM # glibc up to 2.1.1 does not perform some relocations on ARM
@ -3849,6 +3889,9 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
lt_cv_file_magic_test_file=/lib/libc.so lt_cv_file_magic_test_file=/lib/libc.so
;; ;;
siemens)
lt_cv_deplibs_check_method=pass_all
;;
esac esac
;; ;;
esac esac
@ -3914,12 +3957,12 @@ esac
]) ])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl convenience library and INCLTDL to the include flags for # the libltdl convenience library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-convenience to the # the libltdl header and adds --enable-ltdl-convenience to the
# configure arguments. Note that LIBLTDL and INCLTDL are not # configure arguments. Note that LIBLTDL and LTDLINCL are not
# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed # provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
# with '${top_builddir}/' and INCLTDL will be prefixed with # with '${top_builddir}/' and LTDLINCL will be prefixed with
# '${top_srcdir}/' (note the single quotes!). If your package is not # '${top_srcdir}/' (note the single quotes!). If your package is not
# flat and you're not using automake, define top_builddir and # flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles. # top_srcdir appropriately in the Makefiles.
@ -3931,16 +3974,18 @@ AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac esac
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
]) ])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl installable library and INCLTDL to the include flags for # the libltdl installable library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-install to the configure # the libltdl header and adds --enable-ltdl-install to the configure
# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is # arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed # AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will # libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed # be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
# with '${top_srcdir}/' (note the single quotes!). If your package is # with '${top_srcdir}/' (note the single quotes!). If your package is
# not flat and you're not using automake, define top_builddir and # not flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles. # top_srcdir appropriately in the Makefiles.
@ -3958,12 +4003,14 @@ AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
if test x"$enable_ltdl_install" = x"yes"; then if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install" ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
else else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no" ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl" LIBLTDL="-lltdl"
INCLTDL= LTDLINCL=
fi fi
# For backwards non-gettext consistent compatibility...
INCLTDL="$LTDLINCL"
]) ])
# old names # old names
@ -3978,4 +4025,95 @@ AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
# This is just to silence aclocal about the macro not being used # This is just to silence aclocal about the macro not being used
ifelse([AC_DISABLE_FAST_INSTALL]) ifelse([AC_DISABLE_FAST_INSTALL])
############################################################
# NOTE: This macro has been submitted for inclusion into #
# GNU Autoconf as AC_PROG_SED. When it is available in #
# a released version of Autoconf we should remove this #
# macro and use it instead. #
############################################################
# LT_AC_PROG_SED
# --------------
# Check for a fully-functional sed program, that truncates
# as few characters as possible. Prefer GNU sed if found.
AC_DEFUN([LT_AC_PROG_SED],
[AC_MSG_CHECKING([for a sed that does not truncate output])
AC_CACHE_VAL(lt_cv_path_SED,
[# Loop through the user's path and test for sed and gsed.
# Then use that list of sed's as ones to test for truncation.
as_executable_p="test -f"
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_prog in sed gsed; do
for ac_exec_ext in '' $ac_executable_extensions; do
if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
_sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
fi
done
done
done
# Create a temporary directory, and hook for its removal unless debugging.
$debug ||
{
trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
trap '{ (exit 1); exit 1; }' 1 2 13 15
}
# Create a (secure) tmp directory for tmp files.
: ${TMPDIR=/tmp}
{
tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
test -n "$tmp" && test -d "$tmp"
} ||
{
tmp=$TMPDIR/sed$$-$RANDOM
(umask 077 && mkdir $tmp)
} ||
{
echo "$me: cannot create a temporary directory in $TMPDIR" >&2
{ (exit 1); exit 1; }
}
_max=0
_count=0
# Add /usr/xpg4/bin/sed as it is typically found on Solaris
# along with /bin/sed that truncates output.
for _sed in $_sed_list /usr/xpg4/bin/sed; do
test ! -f ${_sed} && break
cat /dev/null > "$tmp/sed.in"
_count=0
echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
# Check for GNU sed and select it if it is found.
if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
lt_cv_path_SED=${_sed}
break
fi
while true; do
cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
mv "$tmp/sed.tmp" "$tmp/sed.in"
cp "$tmp/sed.in" "$tmp/sed.nl"
echo >>"$tmp/sed.nl"
${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
# 40000 chars as input seems more than enough
test $_count -gt 10 && break
_count=`expr $_count + 1`
if test $_count -gt $_max; then
_max=$_count
lt_cv_path_SED=$_sed
fi
done
done
rm -rf "$tmp"
])
if test "X$SED" != "X"; then
lt_cv_path_SED=$SED
else
SED=$lt_cv_path_SED
fi
AC_MSG_RESULT([$SED])
])
# -- embedded libtool.m4 ends here -- # -- embedded libtool.m4 ends here --

220
ltmain.sh
View File

@ -49,14 +49,14 @@ EOF
fi fi
# The name of this program. # The name of this program.
progname=`$echo "$0" | sed 's%^.*/%%'` progname=`$echo "$0" | ${SED} 's%^.*/%%'`
modename="$progname" modename="$progname"
# Constants. # Constants.
PROGRAM=ltmain.sh PROGRAM=ltmain.sh
PACKAGE=libtool PACKAGE=libtool
VERSION=1.4.2 VERSION=1.4.3
TIMESTAMP=" (1.922.2.53 2001/09/11 03:18:52)" TIMESTAMP=" (1.922.2.110 2002/10/23 01:39:54)"
default_mode= default_mode=
help="Try \`$progname --help' for more information." help="Try \`$progname --help' for more information."
@ -67,10 +67,19 @@ rm="rm -f"
# Sed substitution that helps us do robust quoting. It backslashifies # Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings. # metacharacters that are still active within double-quoted strings.
Xsed='sed -e 1s/^X//' Xsed="${SED}"' -e 1s/^X//'
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
SP2NL='tr \040 \012' # test EBCDIC or ASCII
NL2SP='tr \015\012 \040\040' case `echo A|od -x` in
*[Cc]1*) # EBCDIC based system
SP2NL="tr '\100' '\n'"
NL2SP="tr '\r\n' '\100\100'"
;;
*) # Assume ASCII based system
SP2NL="tr '\040' '\012'"
NL2SP="tr '\015\012' '\040\040'"
;;
esac
# NLS nuisances. # NLS nuisances.
# Only set LANG and LC_ALL to C if already set. # Only set LANG and LC_ALL to C if already set.
@ -144,7 +153,7 @@ do
;; ;;
--config) --config)
sed -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0 ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
exit 0 exit 0
;; ;;
@ -177,6 +186,8 @@ do
--mode) prevopt="--mode" prev=mode ;; --mode) prevopt="--mode" prev=mode ;;
--mode=*) mode="$optarg" ;; --mode=*) mode="$optarg" ;;
--preserve-dup-deps) duplicate_deps="yes" ;;
--quiet | --silent) --quiet | --silent)
show=: show=:
;; ;;
@ -215,7 +226,7 @@ if test -z "$show_help"; then
# Infer the operation mode. # Infer the operation mode.
if test -z "$mode"; then if test -z "$mode"; then
case $nonopt in case $nonopt in
*cc | *++ | gcc* | *-gcc*) *cc | *++ | gcc* | *-gcc* | xlc*)
mode=link mode=link
for arg for arg
do do
@ -467,7 +478,7 @@ if test -z "$show_help"; then
pic_mode=default pic_mode=default
;; ;;
esac esac
if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
# non-PIC code in shared libraries is not supported # non-PIC code in shared libraries is not supported
pic_mode=default pic_mode=default
fi fi
@ -992,7 +1003,7 @@ compiler."
# so, if we see these flags be careful not to treat them like -L # so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*) -L[A-Z][A-Z]*:*)
case $with_gcc/$host in case $with_gcc/$host in
no/*-*-irix*) no/*-*-irix* | no/*-*-nonstopux*)
compile_command="$compile_command $arg" compile_command="$compile_command $arg"
finalize_command="$finalize_command $arg" finalize_command="$finalize_command $arg"
;; ;;
@ -1043,14 +1054,14 @@ compiler."
# These systems don't actually have a C library (as such) # These systems don't actually have a C library (as such)
test "X$arg" = "X-lc" && continue test "X$arg" = "X-lc" && continue
;; ;;
*-*-openbsd*) *-*-openbsd* | *-*-freebsd*)
# Do not include libc due to us having libc/libc_r. # Do not include libc due to us having libc/libc_r.
test "X$arg" = "X-lc" && continue test "X$arg" = "X-lc" && continue
;; ;;
esac esac
elif test "X$arg" = "X-lc_r"; then elif test "X$arg" = "X-lc_r"; then
case $host in case $host in
*-*-openbsd*) *-*-openbsd* | *-*-freebsd*)
# Do not include libc_r directly, use -pthread flag. # Do not include libc_r directly, use -pthread flag.
continue continue
;; ;;
@ -1330,9 +1341,11 @@ compiler."
# Find all interdependent deplibs by searching for libraries # Find all interdependent deplibs by searching for libraries
# that are linked more than once (e.g. -la -lb -la) # that are linked more than once (e.g. -la -lb -la)
for deplib in $deplibs; do for deplib in $deplibs; do
if test "X$duplicate_deps" = "Xyes" ; then
case "$libs " in case "$libs " in
*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
esac esac
fi
libs="$libs $deplib" libs="$libs $deplib"
done done
deplibs= deplibs=
@ -1461,10 +1474,12 @@ compiler."
lib) lib)
if test "$deplibs_check_method" != pass_all; then if test "$deplibs_check_method" != pass_all; then
echo echo
echo "*** Warning: This library needs some functionality provided by $deplib." echo "*** Warning: Trying to link with static lib archive $deplib."
echo "*** I have the capability to make that library automatically link in when" echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a" echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have." echo "*** shared version of the library, which you do not appear to have"
echo "*** because the file extensions .$libext of this argument makes me believe"
echo "*** that it is just a static archive that I should not used here."
else else
echo echo
echo "*** Warning: Linking the shared library $output against the" echo "*** Warning: Linking the shared library $output against the"
@ -1508,7 +1523,7 @@ compiler."
fi fi
# Check to see that this really is a libtool archive. # Check to see that this really is a libtool archive.
if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1 exit 1
@ -1555,9 +1570,11 @@ compiler."
tmp_libs= tmp_libs=
for deplib in $dependency_libs; do for deplib in $dependency_libs; do
deplibs="$deplib $deplibs" deplibs="$deplib $deplibs"
if test "X$duplicate_deps" = "Xyes" ; then
case "$tmp_libs " in case "$tmp_libs " in
*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
esac esac
fi
tmp_libs="$tmp_libs $deplib" tmp_libs="$tmp_libs $deplib"
done done
elif test $linkmode != prog && test $linkmode != lib; then elif test $linkmode != prog && test $linkmode != lib; then
@ -1680,9 +1697,11 @@ compiler."
# or/and link against static libraries # or/and link against static libraries
newdependency_libs="$deplib $newdependency_libs" newdependency_libs="$deplib $newdependency_libs"
fi fi
if test "X$duplicate_deps" = "Xyes" ; then
case "$tmp_libs " in case "$tmp_libs " in
*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
esac esac
fi
tmp_libs="$tmp_libs $deplib" tmp_libs="$tmp_libs $deplib"
done # for deplib done # for deplib
continue continue
@ -1766,8 +1785,8 @@ compiler."
# Make a new name for the extract_expsyms_cmds to use # Make a new name for the extract_expsyms_cmds to use
soroot="$soname" soroot="$soname"
soname=`echo $soroot | sed -e 's/^.*\///'` soname=`echo $soroot | ${SED} -e 's/^.*\///'`
newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a" newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
# If the library has no export list, then create one now # If the library has no export list, then create one now
if test -f "$output_objdir/$soname-def"; then : if test -f "$output_objdir/$soname-def"; then :
@ -1926,13 +1945,14 @@ compiler."
# Just print a warning and add the library to dependency_libs so # Just print a warning and add the library to dependency_libs so
# that the program can be linked against the static library. # that the program can be linked against the static library.
echo echo
echo "*** Warning: This library needs some functionality provided by $lib." echo "*** Warning: This system can not link to static lib archive $lib."
echo "*** I have the capability to make that library automatically link in when" echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a" echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have." echo "*** shared version of the library, which you do not appear to have."
if test "$module" = yes; then if test "$module" = yes; then
echo "*** Therefore, libtool will create a static module, that should work " echo "*** But as you try to build a module library, libtool will still create "
echo "*** as long as the dlopening application is linked with the -dlopen flag." echo "*** a static module, that should work as long as the dlopening application"
echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
if test -z "$global_symbol_pipe"; then if test -z "$global_symbol_pipe"; then
echo echo
echo "*** However, this would only work if libtool was able to extract symbol" echo "*** However, this would only work if libtool was able to extract symbol"
@ -1981,9 +2001,11 @@ compiler."
tmp_libs= tmp_libs=
for deplib in $dependency_libs; do for deplib in $dependency_libs; do
newdependency_libs="$deplib $newdependency_libs" newdependency_libs="$deplib $newdependency_libs"
if test "X$duplicate_deps" = "Xyes" ; then
case "$tmp_libs " in case "$tmp_libs " in
*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
esac esac
fi
tmp_libs="$tmp_libs $deplib" tmp_libs="$tmp_libs $deplib"
done done
@ -2009,7 +2031,7 @@ compiler."
if grep "^installed=no" $deplib > /dev/null; then if grep "^installed=no" $deplib > /dev/null; then
path="-L$absdir/$objdir" path="-L$absdir/$objdir"
else else
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1 exit 1
@ -2273,16 +2295,21 @@ compiler."
versuffix=".$current"; versuffix=".$current";
;; ;;
irix) irix | nonstopux)
major=`expr $current - $age + 1` major=`expr $current - $age + 1`
verstring="sgi$major.$revision"
case $version_type in
nonstopux) verstring_prefix=nonstopux ;;
*) verstring_prefix=sgi ;;
esac
verstring="$verstring_prefix$major.$revision"
# Add in all the interfaces that we are compatible with. # Add in all the interfaces that we are compatible with.
loop=$revision loop=$revision
while test $loop != 0; do while test $loop != 0; do
iface=`expr $revision - $loop` iface=`expr $revision - $loop`
loop=`expr $loop - 1` loop=`expr $loop - 1`
verstring="sgi$major.$iface:$verstring" verstring="$verstring_prefix$major.$iface:$verstring"
done done
# Before this point, $major must not contain `.'. # Before this point, $major must not contain `.'.
@ -2296,7 +2323,7 @@ compiler."
;; ;;
osf) osf)
major=`expr $current - $age` major=.`expr $current - $age`
versuffix=".$current.$age.$revision" versuffix=".$current.$age.$revision"
verstring="$current.$age.$revision" verstring="$current.$age.$revision"
@ -2388,9 +2415,9 @@ compiler."
# Eliminate all temporary directories. # Eliminate all temporary directories.
for path in $notinst_path; do for path in $notinst_path; do
lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'` lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'` deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'` dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
done done
if test -n "$xrpath"; then if test -n "$xrpath"; then
@ -2441,7 +2468,7 @@ compiler."
*-*-netbsd*) *-*-netbsd*)
# Don't link with libc until the a.out ld.so is fixed. # Don't link with libc until the a.out ld.so is fixed.
;; ;;
*-*-openbsd*) *-*-openbsd* | *-*-freebsd*)
# Do not include libc due to us having libc/libc_r. # Do not include libc due to us having libc/libc_r.
;; ;;
*) *)
@ -2502,18 +2529,20 @@ EOF
else else
droppeddeps=yes droppeddeps=yes
echo echo
echo "*** Warning: This library needs some functionality provided by $i." echo "*** Warning: dynamic linker does not accept needed library $i."
echo "*** I have the capability to make that library automatically link in when" echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a" echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have." echo "*** shared version of the library, which I believe you do not have"
echo "*** because a test_compile did reveal that the linker did not use it for"
echo "*** its dynamic dependency list that programs get resolved with at runtime."
fi fi
else else
newdeplibs="$newdeplibs $i" newdeplibs="$newdeplibs $i"
fi fi
done done
else else
# Error occured in the first compile. Let's try to salvage the situation: # Error occured in the first compile. Let's try to salvage
# Compile a seperate program for each library. # the situation: Compile a separate program for each library.
for i in $deplibs; do for i in $deplibs; do
name="`expr $i : '-l\(.*\)'`" name="`expr $i : '-l\(.*\)'`"
# If $name is empty we are operating on a -L argument. # If $name is empty we are operating on a -L argument.
@ -2532,10 +2561,12 @@ EOF
else else
droppeddeps=yes droppeddeps=yes
echo echo
echo "*** Warning: This library needs some functionality provided by $i." echo "*** Warning: dynamic linker does not accept needed library $i."
echo "*** I have the capability to make that library automatically link in when" echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a" echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have." echo "*** shared version of the library, which you do not appear to have"
echo "*** because a test_compile did reveal that the linker did not use this one"
echo "*** as a dynamic dependency that programs can get resolved with at runtime."
fi fi
else else
droppeddeps=yes droppeddeps=yes
@ -2574,14 +2605,14 @@ EOF
# but so what? # but so what?
potlib="$potent_lib" potlib="$potent_lib"
while test -h "$potlib" 2>/dev/null; do while test -h "$potlib" 2>/dev/null; do
potliblink=`ls -ld $potlib | sed 's/.* -> //'` potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
case $potliblink in case $potliblink in
[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
esac esac
done done
if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
| sed 10q \ | ${SED} 10q \
| egrep "$file_magic_regex" > /dev/null; then | egrep "$file_magic_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib" newdeplibs="$newdeplibs $a_deplib"
a_deplib="" a_deplib=""
@ -2592,10 +2623,17 @@ EOF
if test -n "$a_deplib" ; then if test -n "$a_deplib" ; then
droppeddeps=yes droppeddeps=yes
echo echo
echo "*** Warning: This library needs some functionality provided by $a_deplib." echo "*** Warning: linker path does not have real file for library $a_deplib."
echo "*** I have the capability to make that library automatically link in when" echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a" echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have." echo "*** shared version of the library, which you do not appear to have"
echo "*** because I did check the linker path looking for a file starting"
if test -z "$potlib" ; then
echo "*** with $libname but no candidates were found. (...for file magic test)"
else
echo "*** with $libname and none of the candidates passed a file format test"
echo "*** using a file magic. Last file checked: $potlib"
fi
fi fi
else else
# Add a -L argument. # Add a -L argument.
@ -2614,8 +2652,9 @@ EOF
for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
potential_libs=`ls $i/$libname[.-]* 2>/dev/null` potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
for potent_lib in $potential_libs; do for potent_lib in $potential_libs; do
potlib="$potent_lib" # see symlink-check below in file_magic test
if eval echo \"$potent_lib\" 2>/dev/null \ if eval echo \"$potent_lib\" 2>/dev/null \
| sed 10q \ | ${SED} 10q \
| egrep "$match_pattern_regex" > /dev/null; then | egrep "$match_pattern_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib" newdeplibs="$newdeplibs $a_deplib"
a_deplib="" a_deplib=""
@ -2626,10 +2665,17 @@ EOF
if test -n "$a_deplib" ; then if test -n "$a_deplib" ; then
droppeddeps=yes droppeddeps=yes
echo echo
echo "*** Warning: This library needs some functionality provided by $a_deplib." echo "*** Warning: linker path does not have real file for library $a_deplib."
echo "*** I have the capability to make that library automatically link in when" echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a" echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have." echo "*** shared version of the library, which you do not appear to have"
echo "*** because I did check the linker path looking for a file starting"
if test -z "$potlib" ; then
echo "*** with $libname but no candidates were found. (...for regex pattern test)"
else
echo "*** with $libname and none of the candidates passed a file format test"
echo "*** using a regex pattern. Last file checked: $potlib"
fi
fi fi
else else
# Add a -L argument. # Add a -L argument.
@ -2894,7 +2940,18 @@ EOF
if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
eval cmds=\"$archive_expsym_cmds\" eval cmds=\"$archive_expsym_cmds\"
else else
save_deplibs="$deplibs"
for conv in $convenience; do
tmp_deplibs=
for test_deplib in $deplibs; do
if test "$test_deplib" != "$conv"; then
tmp_deplibs="$tmp_deplibs $test_deplib"
fi
done
deplibs="$tmp_deplibs"
done
eval cmds=\"$archive_cmds\" eval cmds=\"$archive_cmds\"
deplibs="$save_deplibs"
fi fi
save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
@ -3093,7 +3150,7 @@ EOF
prog) prog)
case $host in case $host in
*cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;; *cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
esac esac
if test -n "$vinfo"; then if test -n "$vinfo"; then
$echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
@ -3115,6 +3172,13 @@ EOF
# On Rhapsody replace the C library is the System framework # On Rhapsody replace the C library is the System framework
compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'` compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'` finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
case $host in
*darwin*)
# Don't allow lazy linking, it breaks C++ global constructors
compile_command="$compile_command ${wl}-bind_at_load"
finalize_command="$finalize_command ${wl}-bind_at_load"
;;
esac
;; ;;
esac esac
@ -3281,9 +3345,9 @@ extern \"C\" {
if test -z "$export_symbols"; then if test -z "$export_symbols"; then
export_symbols="$output_objdir/$output.exp" export_symbols="$output_objdir/$output.exp"
$run $rm $export_symbols $run $rm $export_symbols
$run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
else else
$run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
$run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
$run eval 'mv "$nlist"T "$nlist"' $run eval 'mv "$nlist"T "$nlist"'
fi fi
@ -3291,7 +3355,7 @@ extern \"C\" {
for arg in $dlprefiles; do for arg in $dlprefiles; do
$show "extracting global C symbols from \`$arg'" $show "extracting global C symbols from \`$arg'"
name=`echo "$arg" | sed -e 's%^.*/%%'` name=`echo "$arg" | ${SED} -e 's%^.*/%%'`
$run eval 'echo ": $name " >> "$nlist"' $run eval 'echo ": $name " >> "$nlist"'
$run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
done done
@ -3306,7 +3370,13 @@ extern \"C\" {
fi fi
# Try sorting and uniquifying the output. # Try sorting and uniquifying the output.
if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then if grep -v "^: " < "$nlist" |
if sort -k 3 </dev/null >/dev/null 2>&1; then
sort -k 3
else
sort +2
fi |
uniq > "$nlist"S; then
: :
else else
grep -v "^: " < "$nlist" > "$nlist"S grep -v "^: " < "$nlist" > "$nlist"S
@ -3528,7 +3598,7 @@ static const void *lt_preloaded_setup() {
relink_command="$var=\"$var_value\"; export $var; $relink_command" relink_command="$var=\"$var_value\"; export $var; $relink_command"
fi fi
done done
relink_command="cd `pwd`; $relink_command" relink_command="(cd `pwd`; $relink_command)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
fi fi
@ -3548,7 +3618,7 @@ static const void *lt_preloaded_setup() {
# win32 will think the script is a binary if it has # win32 will think the script is a binary if it has
# a .exe suffix, so we strip it off here. # a .exe suffix, so we strip it off here.
case $output in case $output in
*.exe) output=`echo $output|sed 's,.exe$,,'` ;; *.exe) output=`echo $output|${SED} 's,.exe$,,'` ;;
esac esac
# test for cygwin because mv fails w/o .exe extensions # test for cygwin because mv fails w/o .exe extensions
case $host in case $host in
@ -3572,7 +3642,7 @@ static const void *lt_preloaded_setup() {
# Sed substitution that helps us do robust quoting. It backslashifies # Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings. # metacharacters that are still active within double-quoted strings.
Xsed='sed -e 1s/^X//' Xsed="${SED}"' -e 1s/^X//'
sed_quote_subst='$sed_quote_subst' sed_quote_subst='$sed_quote_subst'
# The HP-UX ksh and POSIX shell print the target directory to stdout # The HP-UX ksh and POSIX shell print the target directory to stdout
@ -3610,7 +3680,7 @@ else
test \"x\$thisdir\" = \"x\$file\" && thisdir=. test \"x\$thisdir\" = \"x\$file\" && thisdir=.
# Follow symbolic links until we get to the real thisdir. # Follow symbolic links until we get to the real thisdir.
file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
while test -n \"\$file\"; do while test -n \"\$file\"; do
destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
@ -3623,7 +3693,7 @@ else
fi fi
file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
done done
# Try to get the absolute directory name. # Try to get the absolute directory name.
@ -3637,7 +3707,7 @@ else
progdir=\"\$thisdir/$objdir\" progdir=\"\$thisdir/$objdir\"
if test ! -f \"\$progdir/\$program\" || \\ if test ! -f \"\$progdir/\$program\" || \\
{ file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
test \"X\$file\" != \"X\$progdir/\$program\"; }; then test \"X\$file\" != \"X\$progdir/\$program\"; }; then
file=\"\$\$-\$program\" file=\"\$\$-\$program\"
@ -3683,7 +3753,7 @@ else
$shlibpath_var=\"$temp_rpath\$$shlibpath_var\" $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
# Some systems cannot cope with colon-terminated $shlibpath_var # Some systems cannot cope with colon-terminated $shlibpath_var
# The second colon is a workaround for a bug in BeOS R4 sed # The second colon is a workaround for a bug in BeOS R4 ${SED}
$shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
export $shlibpath_var export $shlibpath_var
@ -3858,7 +3928,7 @@ fi\
fi fi
done done
# Quote the link command for shipping. # Quote the link command for shipping.
relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args" relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run. # Only create the output if not a dry run.
@ -3875,7 +3945,7 @@ fi\
case $deplib in case $deplib in
*.la) *.la)
name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1 exit 1
@ -3889,7 +3959,7 @@ fi\
newdlfiles= newdlfiles=
for lib in $dlfiles; do for lib in $dlfiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1 exit 1
@ -3900,7 +3970,7 @@ fi\
newdlprefiles= newdlprefiles=
for lib in $dlprefiles; do for lib in $dlprefiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib` eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1 exit 1
@ -4124,7 +4194,7 @@ relink_command=\"$relink_command\""
*.la) *.la)
# Check to see that this really is a libtool archive. # Check to see that this really is a libtool archive.
if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else else
$echo "$modename: \`$file' is not a valid libtool archive" 1>&2 $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2 $echo "$help" 1>&2
@ -4273,19 +4343,27 @@ relink_command=\"$relink_command\""
fi fi
# Do a test to see if this is really a libtool program. # Do a test to see if this is really a libtool program.
if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then case $host in
*cygwin*|*mingw*)
wrapper=`echo $file | ${SED} -e 's,.exe$,,'`
;;
*)
wrapper=$file
;;
esac
if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
notinst_deplibs= notinst_deplibs=
relink_command= relink_command=
# If there is no directory component, then add one. # If there is no directory component, then add one.
case $file in case $file in
*/* | *\\*) . $file ;; */* | *\\*) . $wrapper ;;
*) . ./$file ;; *) . ./$wrapper ;;
esac esac
# Check the variables that should have been set. # Check the variables that should have been set.
if test -z "$notinst_deplibs"; then if test -z "$notinst_deplibs"; then
$echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
exit 1 exit 1
fi fi
@ -4310,8 +4388,8 @@ relink_command=\"$relink_command\""
relink_command= relink_command=
# If there is no directory component, then add one. # If there is no directory component, then add one.
case $file in case $file in
*/* | *\\*) . $file ;; */* | *\\*) . $wrapper ;;
*) . ./$file ;; *) . ./$wrapper ;;
esac esac
outputname= outputname=
@ -4359,7 +4437,7 @@ relink_command=\"$relink_command\""
destfile=$destfile.exe destfile=$destfile.exe
;; ;;
*:*.exe) *:*.exe)
destfile=`echo $destfile | sed -e 's,.exe$,,'` destfile=`echo $destfile | ${SED} -e 's,.exe$,,'`
;; ;;
esac esac
;; ;;
@ -4507,7 +4585,7 @@ relink_command=\"$relink_command\""
case $file in case $file in
*.la) *.la)
# Check to see that this really is a libtool archive. # Check to see that this really is a libtool archive.
if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2 $echo "$help" 1>&2
@ -4578,7 +4656,7 @@ relink_command=\"$relink_command\""
-*) ;; -*) ;;
*) *)
# Do a test to see if this is really a libtool program. # Do a test to see if this is really a libtool program.
if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
# If there is no directory component, then add one. # If there is no directory component, then add one.
case $file in case $file in
*/* | *\\*) . $file ;; */* | *\\*) . $file ;;
@ -4610,7 +4688,7 @@ relink_command=\"$relink_command\""
fi fi
# Now prepare to actually exec the command. # Now prepare to actually exec the command.
exec_cmd='"$cmd"$args' exec_cmd="\$cmd$args"
else else
# Display what would be done. # Display what would be done.
if test -n "$shlibpath_var"; then if test -n "$shlibpath_var"; then
@ -4687,7 +4765,7 @@ relink_command=\"$relink_command\""
case $name in case $name in
*.la) *.la)
# Possibly a libtool archive, so verify it. # Possibly a libtool archive, so verify it.
if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
. $dir/$name . $dir/$name
# Delete the libtool libraries and symlinks. # Delete the libtool libraries and symlinks.
@ -4742,7 +4820,7 @@ relink_command=\"$relink_command\""
*) *)
# Do a test to see if this is a libtool program. # Do a test to see if this is a libtool program.
if test $mode = clean && if test $mode = clean &&
(sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
relink_command= relink_command=
. $dir/$file . $dir/$file