mirror of
git://git.savannah.gnu.org/libtool.git
synced 2025-01-18 14:16:00 +08:00
* demo/Makefile.am (objdir): Use `libtool --config' for
extracting configuration values, since a given value may be present in each tag. (hc-libpath): Ditto. (hc-minusL): Ditto. * libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from the --with-tags option. (_LT_AC_LTCONFIG_HACK): Factored out into separate configuration macros -- The interdependencies and running order are still immutable, and need a lot of work to fix. (AC_LIBTOOL_CONFIG): Taken from the previous incarnation of _LT_AC_LTCONFIG_HACK -- this macro is used both to create the primary (C language) libtool configuration from _LT_AC_LTCONFIG_HACK and also to append tagged configurations from _LT_AC_TAGCONFIG. * NEWS: Merged from multi-language-branch.
This commit is contained in:
parent
3d35267f09
commit
53d16eb7b0
19
ChangeLog
19
ChangeLog
@ -1,3 +1,22 @@
|
||||
2001-06-06 Gary V. Vaughan <gary@gnu.org>
|
||||
|
||||
* demo/Makefile.am (objdir): Use `libtool --config' for
|
||||
extracting configuration values, since a given value may
|
||||
be present in each tag.
|
||||
(hc-libpath): Ditto.
|
||||
(hc-minusL): Ditto.
|
||||
* libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
|
||||
the --with-tags option.
|
||||
(_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
|
||||
macros -- The interdependencies and running order are still
|
||||
immutable, and need a lot of work to fix.
|
||||
(AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
|
||||
_LT_AC_LTCONFIG_HACK -- this macro is used both to create the
|
||||
primary (C language) libtool configuration from
|
||||
_LT_AC_LTCONFIG_HACK and also to append tagged configurations from
|
||||
_LT_AC_TAGCONFIG.
|
||||
* NEWS: Merged from multi-language-branch.
|
||||
|
||||
2001-06-06 Robert Boehne <rboehne@ricardo-us.com>
|
||||
|
||||
* bootstrap: Added tagdemo and pdemo tests from
|
||||
|
7
NEWS
7
NEWS
@ -1,5 +1,12 @@
|
||||
NEWS - list of user-visible changes between releases of GNU Libtool
|
||||
|
||||
New in 1.4b: 2001-??-??; CVS version 1.4a, Libtool team:
|
||||
* Full support for C++ compiler.
|
||||
* Support for GNU gcj compiler.
|
||||
|
||||
New in 1.4.1: 2001-??-??; CVS version 1.4.0a, Libtool team:
|
||||
* Don't leave here-doc files behind.
|
||||
|
||||
New in 1.4: 2001-04-25; CVS version 1.3e, Libtool team:
|
||||
* Support for aix5*.
|
||||
* Bugfixes.
|
||||
|
@ -60,7 +60,7 @@ CLEANFILES = $(hardcode_tests)
|
||||
|
||||
# Unfortunately, in order to test libtool thoroughly, we need access
|
||||
# to its private directory.
|
||||
objdir = `sed -n -e 's/^objdir=\(.*\)$$/\1/p' ../libtool`
|
||||
objdir = `$(LIBTOOL) --config | sed -n -e 's/^objdir=\(.*\)$$/\1/p'`
|
||||
|
||||
# The following rules are only for the libtool demo and tests.
|
||||
# Regenerate our acinclude.m4 only if it doesn't exist.
|
||||
@ -72,6 +72,7 @@ $(srcdir)/acinclude.m4:
|
||||
# Test programs to see what gets hardcoded.
|
||||
.PHONY: hardcode
|
||||
hardcode: $(hardcode_tests)
|
||||
SET_HARDCODE_FLAGS = eval `$(LIBTOOL) --config | egrep -e '^(hardcode_.*|wl)='`
|
||||
hc-direct: $(hell_OBJECTS) $(hell_DEPENDENCIES) $(libdir)/libhello.la
|
||||
@rm -f hc-direct
|
||||
@echo "You may ignore any linking errors from the following command:"
|
||||
@ -80,14 +81,14 @@ hc-direct: $(hell_OBJECTS) $(hell_DEPENDENCIES) $(libdir)/libhello.la
|
||||
for lib in $$library_names; do \
|
||||
shlib="./$(objdir)/$$lib"; \
|
||||
done; \
|
||||
eval `egrep -e '^(hardcode_.*|wl)=' libtool`; \
|
||||
$(SET_HARDCODE_FLAGS); \
|
||||
libdir=$(libdir); \
|
||||
flag=`eval echo \"$$hardcode_libdir_flag_spec\"`; \
|
||||
echo "$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(hell_OBJECTS) $$shlib $(LIBS) $(LIBM) $$flag || echo unsupported > $@"; \
|
||||
eval "$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(hell_OBJECTS) $$shlib $(LIBS) $(LIBM) $$flag || echo unsupported > $@"
|
||||
|
||||
hc-libflag: $(hell_OBJECTS) $(hell_DEPENDENCIES) $(libdir)/libhello.la
|
||||
@eval `egrep -e '^(hardcode_.*|wl)=' libtool`; \
|
||||
@$(SET_HARDCODE_FLAGS); \
|
||||
libdir=`pwd`/$(objdir); \
|
||||
flag=`eval echo \"$$hardcode_libdir_flag_spec\"`; \
|
||||
if test -z "$$flag"; then \
|
||||
@ -102,7 +103,8 @@ hc-libflag: $(hell_OBJECTS) $(hell_DEPENDENCIES) $(libdir)/libhello.la
|
||||
hc-libpath: $(hell_OBJECTS) $(hell_DEPENDENCIES) $(libdir)/libhello.la
|
||||
@rm -f hc-libpath
|
||||
@echo "You may ignore any linking errors from the following command:"
|
||||
@eval `egrep -e '^(shlibpath_var|hardcode_.*|wl)=' libtool`; \
|
||||
@$(SET_HARDCODE_FLAGS); \
|
||||
eval `$(LIBTOOL) --config | grep '^shlibpath_var='`; \
|
||||
libdir=$(libdir); \
|
||||
flag=`eval echo \"$$hardcode_libdir_flag_spec\"`; \
|
||||
echo "$$shlibpath_var=./$(objdir) $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(hell_OBJECTS) -lhello $(LIBS) $(LIBM) $$flag || echo unsupported > $@"; \
|
||||
@ -110,7 +112,7 @@ hc-libpath: $(hell_OBJECTS) $(hell_DEPENDENCIES) $(libdir)/libhello.la
|
||||
|
||||
hc-minusL: $(hell_OBJECTS) $(hell_DEPENDENCIES)
|
||||
@rm -f hc-minusL
|
||||
@eval `egrep -e '^(hardcode_.*|wl)=' libtool`; \
|
||||
@$(SET_HARDCODE_FLAGS); \
|
||||
libdir=$(libdir); \
|
||||
flag=`eval echo \"$$hardcode_libdir_flag_spec\"`; \
|
||||
echo "$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(hell_OBJECTS) -L./$(objdir) -lhello $(LIBS) $(LIBM) $$flag || echo unsupported > $@"; \
|
||||
|
384
libtool.m4
vendored
384
libtool.m4
vendored
@ -187,7 +187,12 @@ AC_ARG_ENABLE(libtool-lock,
|
||||
[ --disable-libtool-lock avoid locking (might break parallel builds)])
|
||||
test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
|
||||
|
||||
# Use C for the default configuration in the libtool script
|
||||
tagname=
|
||||
_LT_AC_LANG_C_CONFIG
|
||||
_LT_AC_LTCONFIG_HACK
|
||||
AC_LIBTOOL_CONFIG
|
||||
_LT_AC_TAGCONFIG
|
||||
])# AC_LIBTOOL_SETUP
|
||||
|
||||
|
||||
@ -1049,7 +1054,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
|
||||
;;
|
||||
*djgpp*)
|
||||
# DJGPP does not support shared libraries at all
|
||||
ac_cv_prog_cc_pic=
|
||||
lt_cv_prog_cc_pic=
|
||||
;;
|
||||
sysv4*MP*)
|
||||
if test -d /usr/nec; then
|
||||
@ -1132,11 +1137,6 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
|
||||
fi
|
||||
;;
|
||||
|
||||
uts4*)
|
||||
lt_cv_prog_cc_pic='-pic'
|
||||
lt_cv_prog_cc_static='-Bstatic'
|
||||
;;
|
||||
|
||||
sysv4*MP*)
|
||||
if test -d /usr/nec ;then
|
||||
lt_cv_prog_cc_pic='-Kconform_pic'
|
||||
@ -1144,6 +1144,11 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
|
||||
fi
|
||||
;;
|
||||
|
||||
uts4*)
|
||||
lt_cv_prog_cc_pic='-pic'
|
||||
lt_cv_prog_cc_static='-Bstatic'
|
||||
;;
|
||||
|
||||
*)
|
||||
lt_cv_prog_cc_can_build_shared=no
|
||||
;;
|
||||
@ -1152,10 +1157,10 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
|
||||
case "$host_os" in
|
||||
# For platforms which do not support PIC, -DPIC is meaningless:
|
||||
*djgpp*)
|
||||
ac_cv_prog_cc_pic=
|
||||
lt_cv_prog_cc_pic=
|
||||
;;
|
||||
*)
|
||||
ac_cv_prog_cc_pic="$ac_cv_prog_cc_pic -DPIC"
|
||||
lt_cv_prog_cc_pic="$lt_cv_prog_cc_pic -DPIC"
|
||||
;;
|
||||
esac
|
||||
])
|
||||
@ -1334,7 +1339,7 @@ EOF
|
||||
# that the semantics of dynamic libraries on AmigaOS, at least up
|
||||
# to version 4, is to share data among multiple programs linked
|
||||
# with the same dynamic library. Since this doesn't match the
|
||||
# behavior of shared libraries on other platforms, we can use
|
||||
# behavior of shared libraries on other platforms, we can't use
|
||||
# them.
|
||||
ld_shlibs=no
|
||||
;;
|
||||
@ -1397,7 +1402,7 @@ EOF
|
||||
# Extract the symbol export list from an `--export-all' def file,
|
||||
# then regenerate the def file from the symbol export list, so that
|
||||
# the compiled dll only exports the symbol export list.
|
||||
# Be careful not to strip the DATA tag left be newer dlltools.
|
||||
# Be careful not to strip the DATA tag left by newer dlltools.
|
||||
export_symbols_cmds="$ltdll_cmds"'
|
||||
$DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
|
||||
[sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//"] < $output_objdir/$soname-def > $export_symbols'
|
||||
@ -1414,7 +1419,7 @@ EOF
|
||||
set dummy \$symbol;
|
||||
case \[$]# in
|
||||
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
|
||||
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
|
||||
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
|
||||
esac;
|
||||
_lt_hint=`expr 1 + \$_lt_hint`;
|
||||
done;
|
||||
@ -1427,6 +1432,19 @@ EOF
|
||||
$CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
|
||||
;;
|
||||
|
||||
darwin* | rhapsody*)
|
||||
allow_undefined_flag='-undefined suppress'
|
||||
# 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.
|
||||
archive_cmds='$CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linkopts -install_name $rpath/$soname $(test -n "$verstring" -a x$verstring != x0.0 && echo $verstring)'
|
||||
# We need to add '_' to the symbols in $export_symbols first
|
||||
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
|
||||
hardcode_direct=yes
|
||||
hardcode_shlibpath_var=no
|
||||
whole_archive_flag_spec='-all_load $convenience'
|
||||
;;
|
||||
|
||||
netbsd*)
|
||||
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
|
||||
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
|
||||
@ -1512,39 +1530,43 @@ else
|
||||
;;
|
||||
|
||||
aix4* | aix5*)
|
||||
hardcode_direct=yes
|
||||
hardcode_libdir_separator=':'
|
||||
link_all_deplibs=yes
|
||||
# When large executables or shared objects are built, AIX ld can
|
||||
# have problems creating the table of contents. If linking a library
|
||||
# or program results in "error TOC overflow" add -mminimal-toc to
|
||||
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
|
||||
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
|
||||
|
||||
archive_cmds=''
|
||||
hardcode_libdir_separator=':'
|
||||
if test "$GCC" = yes; then
|
||||
collect2name=`${CC} -print-prog-name=collect2`
|
||||
if test -f "$collect2name" && \
|
||||
strings "$collect2name" | grep resolve_lib_name >/dev/null
|
||||
then
|
||||
# We have reworked collect2
|
||||
hardcode_direct=yes
|
||||
else
|
||||
# We have old collect2
|
||||
hardcode_direct=unsupported
|
||||
# It fails to find uninstalled libraries when the uninstalled
|
||||
# path is not listed in the libpath. Setting hardcode_minus_L
|
||||
# to unsupported forces relinking
|
||||
hardcode_minus_L=yes
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_libdir_separator=
|
||||
fi
|
||||
case $host_os in aix4.[012]|aix4.[-12].*)
|
||||
# We only want to do this on AIX 4.2 and lower, the check
|
||||
# below for broken collect2 doesn't work under 4.3+
|
||||
collect2name=`${CC} -print-prog-name=collect2`
|
||||
if test -f "$collect2name" && \
|
||||
strings "$collect2name" | grep resolve_lib_name >/dev/null
|
||||
then
|
||||
# We have reworked collect2
|
||||
hardcode_direct=yes
|
||||
else
|
||||
# We have old collect2
|
||||
hardcode_direct=unsupported
|
||||
# It fails to find uninstalled libraries when the uninstalled
|
||||
# path is not listed in the libpath. Setting hardcode_minus_L
|
||||
# to unsupported forces relinking
|
||||
hardcode_minus_L=yes
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_libdir_separator=
|
||||
fi
|
||||
esac
|
||||
shared_flag='-shared'
|
||||
else
|
||||
# not using gcc
|
||||
if test "$host_cpu" = ia64; then
|
||||
shared_flag='-G'
|
||||
shared_flag='${wl}-G'
|
||||
else
|
||||
shared_flag='${wl}-bM:SRE'
|
||||
fi
|
||||
hardcode_direct=yes
|
||||
fi
|
||||
|
||||
if test "$host_cpu" = ia64; then
|
||||
@ -1554,8 +1576,9 @@ else
|
||||
exp_sym_flag='-Bexport'
|
||||
no_entry_flag=""
|
||||
else
|
||||
# Test if we are trying to use run time linking, or normal AIX style linking.
|
||||
# If -brtl is somewhere in LDFLAGS, we need to do run time linking.
|
||||
# Test if we are trying to use run time linking, or normal AIX style
|
||||
# linking. If -brtl is somewhere in LDFLAGS, we need to do run time
|
||||
# linking.
|
||||
aix_use_runtimelinking=no
|
||||
for ld_flag in $LDFLAGS; do
|
||||
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl" ); then
|
||||
@ -1566,26 +1589,32 @@ else
|
||||
exp_sym_flag='-bexport'
|
||||
no_entry_flag='-bnoentry'
|
||||
fi
|
||||
# It seems that -bexpall can do strange things, so it is better to
|
||||
# generate a list of symbols to export.
|
||||
# -bexpall does not export symbols beginning with underscore (_)
|
||||
always_export_symbols=yes
|
||||
if test "$aix_use_runtimelinking" = yes; then
|
||||
# Warning - without using the other run time loading flags (-brtl),
|
||||
# -berok will link without error, but may produce a broken
|
||||
# library.
|
||||
allow_undefined_flag=' $wl}-berok'
|
||||
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
|
||||
allow_undefined_flag=' -Wl,-G'
|
||||
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
|
||||
else
|
||||
if test "$host_cpu" = ia64; then
|
||||
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
|
||||
allow_undefined_flag="-znodefs"
|
||||
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
|
||||
allow_undefined_flag="-z nodefs"
|
||||
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
|
||||
else
|
||||
hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
|
||||
# Warning - without using the other run time loading flags, -berok will
|
||||
# link without error, but may produce a broken library.
|
||||
allow_undefined_flag='${wl}-berok"
|
||||
# This is a bit strange, but is similar to how AIX traditionally builds
|
||||
# it's shared libraries.
|
||||
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
|
||||
allow_undefined_flag=' ${wl}-berok'
|
||||
# -bexpall does not export symbols beginning with underscore (_)
|
||||
always_export_symbols=yes
|
||||
# Exported symbols can be pulled into shared objects from archives
|
||||
whole_archive_flag_spec=' '
|
||||
build_libtool_need_lc=yes
|
||||
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
|
||||
# This is similar to how AIX traditionally builds it's shared
|
||||
# libraries.
|
||||
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
@ -1616,17 +1645,10 @@ else
|
||||
fix_srcfile_path='`cygpath -w "$srcfile"`'
|
||||
;;
|
||||
|
||||
darwin* | rhapsody*)
|
||||
allow_undefined_flag='-undefined suppress'
|
||||
# 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.
|
||||
archive_cmds='$CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linkopts -install_name $rpath/$soname $(test -n "$verstring" -a x$verstring != x0.0 && echo $verstring)'
|
||||
# We need to add '_' to the symbols in $export_symbols first
|
||||
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
|
||||
hardcode_direct=yes
|
||||
dgux*)
|
||||
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_shlibpath_var=no
|
||||
whole_archive_flag_spec='-all_load $convenience'
|
||||
;;
|
||||
|
||||
freebsd1*)
|
||||
@ -1741,7 +1763,7 @@ else
|
||||
archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
|
||||
$LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
|
||||
|
||||
#Both c and cxx compiler support -rpath directly
|
||||
# Both c and cxx compiler support -rpath directly
|
||||
hardcode_libdir_flag_spec='-rpath $libdir'
|
||||
fi
|
||||
hardcode_libdir_separator=:
|
||||
@ -1760,7 +1782,7 @@ else
|
||||
# object files and a static libstdc++, better avoid it by now
|
||||
archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
|
||||
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
|
||||
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
|
||||
hardcode_libdir_flag_spec='-R$libdir'
|
||||
hardcode_shlibpath_var=no
|
||||
case $host_os in
|
||||
@ -1786,7 +1808,7 @@ else
|
||||
;;
|
||||
|
||||
sysv4)
|
||||
if test "x$host_vendor" = xsno; then
|
||||
if test "x$host_vendor" = xsni; then
|
||||
archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linkopts'
|
||||
hardcode_direct=yes # is this really true???
|
||||
else
|
||||
@ -1803,30 +1825,6 @@ else
|
||||
export_dynamic_flag_spec='-Bexport'
|
||||
;;
|
||||
|
||||
sysv5*)
|
||||
no_undefined_flag=' -z text'
|
||||
# $CC -shared without GNU ld will not create a library from C++
|
||||
# object files and a static libstdc++, better avoid it by now
|
||||
archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
|
||||
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
|
||||
hardcode_libdir_flag_spec=
|
||||
hardcode_shlibpath_var=no
|
||||
runpath_var='LD_RUN_PATH'
|
||||
;;
|
||||
|
||||
uts4*)
|
||||
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_shlibpath_var=no
|
||||
;;
|
||||
|
||||
dgux*)
|
||||
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_shlibpath_var=no
|
||||
;;
|
||||
|
||||
sysv4*MP*)
|
||||
if test -d /usr/nec; then
|
||||
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
@ -1857,6 +1855,24 @@ else
|
||||
hardcode_shlibpath_var=no
|
||||
;;
|
||||
|
||||
sysv5*)
|
||||
no_undefined_flag=' -z text'
|
||||
# $CC -shared without GNU ld will not create a library from C++
|
||||
# object files and a static libstdc++, better avoid it by now
|
||||
archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
|
||||
$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
|
||||
hardcode_libdir_flag_spec=
|
||||
hardcode_shlibpath_var=no
|
||||
runpath_var='LD_RUN_PATH'
|
||||
;;
|
||||
|
||||
uts4*)
|
||||
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
|
||||
hardcode_libdir_flag_spec='-L$libdir'
|
||||
hardcode_shlibpath_var=no
|
||||
;;
|
||||
|
||||
*)
|
||||
ld_shlibs=no
|
||||
;;
|
||||
@ -2387,28 +2403,16 @@ AC_DEFUN([AC_LIBTOOL_PROG_ARCHIVE_CMDS_NEED_LC],
|
||||
])# AC_LIBTOOL_PROG_ARCHIVE_CMDS_NEED_LC
|
||||
|
||||
|
||||
# AC_LIBTOOL_CONFIG
|
||||
# -----------------
|
||||
# AC_LIBTOOL_CONFIG([APPEND?])
|
||||
# ----------------------------
|
||||
# If `APPEND?' is empty, create an initial libtool script
|
||||
# otherwise append a configuration tag name $tagname
|
||||
AC_DEFUN([AC_LIBTOOL_CONFIG],
|
||||
[# The second clause should only fire when bootstrapping the
|
||||
[# The else clause should only fire when bootstrapping the
|
||||
# libtool distribution, otherwise you forgot to ship ltmain.sh
|
||||
# with your package, and you will get complaints that there are
|
||||
# no rules to generate ltmain.sh.
|
||||
if test -f "$ltmain"; then
|
||||
:
|
||||
else
|
||||
# If there is no Makefile yet, we rely on a make rule to execute
|
||||
# `config.status --recheck' to rerun these tests and create the
|
||||
# libtool script then.
|
||||
test -f Makefile && make "$ltmain"
|
||||
fi
|
||||
|
||||
if test -f "$ltmain"; then
|
||||
trap "$rm \"${ofile}T\"; exit 1" 1 2 15
|
||||
$rm -f "${ofile}T"
|
||||
|
||||
echo creating $ofile
|
||||
|
||||
# Now quote all the things that may contain metacharacters while being
|
||||
# careful not to overquote the AC_SUBSTed values. We take copies of the
|
||||
# variables and quote the copies for generation of the libtool script.
|
||||
@ -2444,10 +2448,24 @@ if test -f "$ltmain"; then
|
||||
esac
|
||||
done
|
||||
|
||||
cat <<__EOF__ > "${ofile}T"
|
||||
#! $SHELL
|
||||
case $lt_echo in
|
||||
*'\[$]0 --fallback-echo"')
|
||||
lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'`
|
||||
;;
|
||||
esac
|
||||
|
||||
# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
|
||||
ifelse([$1], [],
|
||||
[cfgfile="${ofile}T"
|
||||
trap "$rm \"$cfgfile\"; exit 1" 1 2 15
|
||||
$rm -f "$cfgfile"
|
||||
echo creating $ofile],
|
||||
[cfgfile="$ofile"])
|
||||
|
||||
cat <<__EOF__ >> "$cfgfile"
|
||||
ifelse([$1], [],
|
||||
[#! $SHELL
|
||||
|
||||
# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
|
||||
# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
|
||||
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
|
||||
#
|
||||
@ -2484,7 +2502,8 @@ if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
|
||||
# The names of the tagged configurations supported by this script.
|
||||
available_tags=
|
||||
|
||||
# ### BEGIN LIBTOOL CONFIG
|
||||
# ### BEGIN LIBTOOL CONFIG],
|
||||
[# ### BEGIN LIBTOOL TAG CONFIG: $tagname])
|
||||
|
||||
# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
|
||||
|
||||
@ -2753,13 +2772,16 @@ exclude_expsyms=$lt_exclude_expsyms
|
||||
# Symbols that must always be exported.
|
||||
include_expsyms=$lt_include_expsyms
|
||||
|
||||
# ### END LIBTOOL CONFIG
|
||||
ifelse([$1],[],
|
||||
[# ### END LIBTOOL CONFIG],
|
||||
[# ### END LIBTOOL TAG CONFIG: $tagname])
|
||||
|
||||
__EOF__
|
||||
|
||||
ifelse([$1],[], [
|
||||
case $host_os in
|
||||
aix3*)
|
||||
cat <<\EOF >> "${ofile}T"
|
||||
cat <<\EOF >> "$cfgfile"
|
||||
|
||||
# AIX sometimes has problems with the GCC collect2 program. For some
|
||||
# reason, if we set the COLLECT_NAMES environment variable, the problems
|
||||
@ -2770,13 +2792,11 @@ if test "X${COLLECT_NAMES+set}" != Xset; then
|
||||
fi
|
||||
EOF
|
||||
;;
|
||||
esac
|
||||
|
||||
case $host_os in
|
||||
cygwin* | mingw* | pw32* | os2*)
|
||||
cat <<'EOF' >> "${ofile}T"
|
||||
# This is a source program that is used to create dlls on Windows
|
||||
# Don't remove nor modify the starting and closing comments
|
||||
cat <<'EOF' >> "$cfgfile"
|
||||
# This is a source program that is used to create dlls on Windows
|
||||
# Don't remove nor modify the starting and closing comments
|
||||
# /* ltdll.c starts here */
|
||||
# #define WIN32_LEAN_AND_MEAN
|
||||
# #include <windows.h>
|
||||
@ -2956,13 +2976,17 @@ EOF
|
||||
# if finds mixed CR/LF and LF-only lines. Since sed operates in
|
||||
# text mode, it properly converts lines to CR/LF. This bash problem
|
||||
# is reportedly fixed, but why not run on old versions too?
|
||||
sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
|
||||
sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1)
|
||||
|
||||
mv -f "${ofile}T" "$ofile" || \
|
||||
(rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
|
||||
mv -f "$cfgfile" "$ofile" || \
|
||||
(rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
|
||||
chmod +x "$ofile"
|
||||
|
||||
_LT_AC_TAGCONFIG
|
||||
])
|
||||
else
|
||||
# If there is no Makefile yet, we rely on a make rule to execute
|
||||
# `config.status --recheck' to rerun these tests and create the
|
||||
# libtool script then.
|
||||
test -f Makefile && make "$ltmain"
|
||||
fi
|
||||
])# AC_LIBTOOL_CONFIG
|
||||
|
||||
@ -2970,8 +2994,9 @@ fi
|
||||
# ----------------
|
||||
AC_DEFUN([_LT_AC_TAGCONFIG],
|
||||
[AC_ARG_WITH(tags,
|
||||
[ --with-tags=TAGS include an alternate configuration],
|
||||
tagnames="$withval", tagnames=)
|
||||
[ --with-tags=TAGS include additional configurations [CXX,GCJ]],
|
||||
[tagnames="$withval"],
|
||||
[tagnames="CXX,GCJ"])
|
||||
|
||||
## Dependencies to place before and after the object being linked:
|
||||
predep_objects=
|
||||
@ -2980,13 +3005,13 @@ predeps=
|
||||
postdeps=
|
||||
compiler_lib_search_path=
|
||||
|
||||
if test -n "$tagnames"; then
|
||||
if test ! -f "$ofile"; then
|
||||
if test -f "$ltmain" && test -n "$tagnames"; then
|
||||
if test ! -f "${ofile}"; then
|
||||
AC_MSG_WARN([output file \`$ofile' does not exist])
|
||||
fi
|
||||
|
||||
if test -z "$LTCC"; then
|
||||
eval "`$SHELL $ofile --config | grep '^LTCC='`"
|
||||
eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
|
||||
if test -z "$LTCC"; then
|
||||
AC_MSG_WARN([output file \`$ofile' does not look like a libtool script])
|
||||
else
|
||||
@ -2994,6 +3019,10 @@ if test -n "$tagnames"; then
|
||||
fi
|
||||
fi
|
||||
|
||||
# Extract list of available tagged configurations in $ofile.
|
||||
# Note that this assumes the entire list is on one line.
|
||||
available_tags=`grep "^available_tags=" "${ofile}" | sed -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
|
||||
|
||||
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
|
||||
for tagname in $tagnames; do
|
||||
# Check whether tagname contains only valid characters
|
||||
@ -3003,35 +3032,36 @@ if test -n "$tagnames"; then
|
||||
;;
|
||||
esac
|
||||
|
||||
if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$ofile" > /dev/null
|
||||
if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
|
||||
then
|
||||
AC_MSG_ERROR([tag name $tagname already exists])
|
||||
fi
|
||||
|
||||
# Update the list of available tags.
|
||||
if test -n "$tagname"; then
|
||||
|
||||
echo appending configuration tag \"$tagname\" to $ofile
|
||||
echo "# ### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile"
|
||||
echo "# ### END LIBTOOL TAG CONFIG: $tagname" >> "$ofile"
|
||||
|
||||
# Extract list of available tagged configurations in $ofile.
|
||||
# Note that this assumes the entire list is on one line.
|
||||
available_tags=`grep "^available_tags=" $ofile | sed -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
|
||||
case $tagname in
|
||||
CXX) CC=c++ ;;
|
||||
GCJ) CC=gcj ;;
|
||||
*) AC_MSG_ERROR([Unsupported tag name: $tagname]) ;;
|
||||
esac
|
||||
_LT_AC_LTCONFIG_HACK
|
||||
AC_LIBTOOL_CONFIG([tag-append])
|
||||
|
||||
# Append the new tag name to the list of available tags.
|
||||
# Append the new tag name to the list of available tags.
|
||||
available_tags="$available_tags $tagname"
|
||||
|
||||
# Now substitute the updated list of available tags.
|
||||
if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}.new\""; then
|
||||
mv "${ofile}.new" "$ofile"
|
||||
chmod +x "$ofile"
|
||||
else
|
||||
rm -f "${ofile}.new"
|
||||
AC_MSG_ERROR([unable to update list of available tagged configurations.])
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
# Now substitute the updated list of available tags.
|
||||
if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
|
||||
mv "${ofile}T" "$ofile"
|
||||
chmod +x "$ofile"
|
||||
else
|
||||
rm -f "${ofile}T"
|
||||
AC_MSG_ERROR([unable to update list of available tagged configurations.])
|
||||
fi
|
||||
fi
|
||||
])# _LT_AC_TAGCONFIG
|
||||
|
||||
@ -3053,15 +3083,47 @@ lt_simple_link_test_code='main(){return(0);}'
|
||||
|
||||
AC_LIBTOOL_PROG_CC_PIC
|
||||
AC_LIBTOOL_PROG_LD_SHLIBS
|
||||
AC_LIBTOOL_PROG_ARCHIVE_CMDS_NEED_LC
|
||||
])# _LT_AC_LANG_C_CONFIG
|
||||
|
||||
|
||||
# _LT_AC_LANG_CXX_CONFIG
|
||||
# ----------------------
|
||||
AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
|
||||
[AC_REQUIRE([AC_PROG_CXX])
|
||||
AC_REQUIRE([AC_PROG_CXXCPP])
|
||||
|
||||
# Source file extension for C++ test sources.
|
||||
ac_ext=cc
|
||||
|
||||
# Object file extension for compiled C++ test sources.
|
||||
objext=o
|
||||
|
||||
# Code to be used in simple compile tests
|
||||
lt_simple_compile_test_code="int some_variable = 0;"
|
||||
|
||||
# Code to be used in simple link tests
|
||||
lt_simple_link_test_code='int main(int char *[]) { return(0); }'
|
||||
|
||||
lt_save_CC="$CC"
|
||||
lt_save_CFLAGS="$CFLAGS"
|
||||
LTCC="$CC"
|
||||
CC="$CXX"
|
||||
CFLAGS="$CXXFLAGS"
|
||||
|
||||
AC_LIBTOOL_PROG_LD_SHLIBS
|
||||
AC_LIBTOOL_PROG_CC_PIC
|
||||
AC_LIBTOOL_PROG_ARCHIVE_CMDS_NEED_LC
|
||||
|
||||
CC="$lt_save_CC"
|
||||
CFLAGS="$lt_save_CFLAGS"
|
||||
])# _LT_AC_LANG_CXX_CONFIG
|
||||
|
||||
|
||||
# _LT_AC_LTCONFIG_HACK
|
||||
# --------------------
|
||||
AC_DEFUN([_LT_AC_LTCONFIG_HACK],
|
||||
[
|
||||
_LT_AC_LANG_C_CONFIG
|
||||
|
||||
## CAVEAT EMPTOR:
|
||||
## There is no encapsulation within the following macros, do not change
|
||||
## the running order or otherwise move them around unless you know exactly
|
||||
@ -3078,8 +3140,6 @@ AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
|
||||
AC_LIBTOOL_SYS_LIB_STRIP
|
||||
AC_LIBTOOL_SYS_DYNAMIC_LINKER
|
||||
AC_LIBTOOL_DLOPEN_SELF
|
||||
AC_LIBTOOL_PROG_ARCHIVE_CMDS_NEED_LC
|
||||
AC_LIBTOOL_CONFIG
|
||||
|
||||
# Report the final consequences.
|
||||
AC_MSG_CHECKING([if libtool supports shared libraries])
|
||||
@ -3730,27 +3790,6 @@ AC_DEFUN([AC_LIBTOOL_CXX],
|
||||
AC_DEFUN([_LT_AC_LANG_CXX],
|
||||
[AC_REQUIRE([AC_PROG_CXX])
|
||||
AC_REQUIRE([AC_PROG_CXXCPP])
|
||||
LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-cxx.sh"
|
||||
lt_save_CC="$CC"
|
||||
lt_save_CFLAGS="$CFLAGS"
|
||||
dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
|
||||
dnl is set to the C++ compiler.
|
||||
AR="$AR" LTCC="$CC" CC="$CXX" CXX="$CXX" CFLAGS="$CXXFLAGS" CPPFLAGS="$CPPFLAGS" \
|
||||
MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
|
||||
LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
|
||||
AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
|
||||
objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
|
||||
deplibs_check_method="$deplibs_check_method" \
|
||||
file_magic_cmd="$file_magic_cmd" \
|
||||
${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
|
||||
--build="$build" --add-tag=CXX $ac_aux_dir/ltcf-cxx.sh $host \
|
||||
|| AC_MSG_ERROR([libtool tag configuration failed])
|
||||
CC="$lt_save_CC"
|
||||
CFLAGS="$lt_save_CFLAGS"
|
||||
|
||||
# Redirect the config.log output again, so that the ltconfig log is not
|
||||
# clobbered by the next message.
|
||||
exec 5>>./config.log
|
||||
])# _LT_AC_LANG_CXX
|
||||
|
||||
|
||||
@ -3772,27 +3811,6 @@ AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
|
||||
[ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
|
||||
[ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
|
||||
[AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
|
||||
LIBTOOL_DEPS=$LIBTOOL_DEPS" $ac_aux_dir/ltcf-gcj.sh"
|
||||
lt_save_CC="$CC"
|
||||
lt_save_CFLAGS="$CFLAGS"
|
||||
dnl Make sure LTCC is set to the C compiler, i.e. set LTCC before CC
|
||||
dnl is set to the C++ compiler.
|
||||
AR="$AR" LTCC="$CC" CC="$GCJ" CFLAGS="$GCJFLAGS" CPPFLAGS="$CPPFLAGS" \
|
||||
MAGIC_CMD="$MAGIC_CMD" LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
|
||||
LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" STRIP="$STRIP" \
|
||||
AS="$AS" DLLTOOL="$DLLTOOL" OBJDUMP="$OBJDUMP" \
|
||||
objext="$OBJEXT" exeext="$EXEEXT" reload_flag="$reload_flag" \
|
||||
deplibs_check_method="$deplibs_check_method" \
|
||||
file_magic_cmd="$file_magic_cmd" \
|
||||
${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig -o libtool $libtool_flags \
|
||||
--build="$build" --add-tag=GCJ $ac_aux_dir/ltcf-gcj.sh $host \
|
||||
|| AC_MSG_ERROR([libtool tag configuration failed])
|
||||
CC="$lt_save_CC"
|
||||
CFLAGS="$lt_save_CFLAGS"
|
||||
|
||||
# Redirect the config.log output again, so that the ltconfig log is not
|
||||
# clobbered by the next message.
|
||||
exec 5>>./config.log
|
||||
])# _LT_AC_LANG_GCJ
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user