+Sun Jun 29 19:51:50 1997 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
+
+ * ltmain.sh.in: Change all the `eval "$run ..."' sequences to
+ `$run "eval ..."'.
+
+ Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
+ This is the sequence recommended by the Autoconf manual, and
+ should avoid any problems on older machines. Eliminate all uses
+ of `cp -p'. Reported by Akim Demaille.
+
+ (install): Use `test $# -gt 0' instead of `test -n "$1"'.
+
+ * ltconfig.in (LN_S): Add test to see if `ln -s' works.
+
+ * libtool.m4: Increment serial number, and require AC_PROG_LN_S.
+
+Thu Jun 26 17:55:26 1997 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
+
+ * ltmain.sh.in (link): Add missing `test' statement. Reported by
+ Akim Demaille.
+
+Tue Jun 24 14:58:41 1997 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
+
+ * libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
+ am_cv_path_ld. From Tim Pierce.
+
Fri Jun 20 08:21:34 1997 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Redo two robustness fixes. Alexandre had the
GTK+ and GIMP (Generic Image Manipulation Program).
http://www.xcf.berkeley.edu/~gimp/gimp.html
SANE (Scanner Access Now Easy): http://www.azstarnet.com/~davidm/
+PalmOS/Pilot pilot-link: ftp://ryeham.ee.ryerson.ca/pub/PalmOS/
Nonfree:
========
+* Another form of convenience library, suggested by Alexandre Oliva,
+is to have undocumented utility libraries, where only the shared
+version is installed.
+
* A better check to detect broken collect2 on AIX, once the bug is
fixed in GCC.
* We could use libtool object convenience libraries that resolve
symbols to be included in a libtool archive.
-* Another form of convenience library, suggested by Alexandre Oliva,
-is to have undocumented utility libraries, where only the shared
-version is installed.
-
-* Finish up the dlname mode, and get it integrated with DLD. We need
-a way for different major versions of the same .la to coexist. This
-also involves writing a better uninstall mode, so that nothing
-breaks.
+* Delete dlname mode, and integrate DLD support. We need a way for
+different major versions of the same .la to coexist. This also
+involves writing a better uninstall mode, so that nothing breaks.
* Implement full multi-language support. Currently, this is only for
C++, but there are beginnings of this in the manual (Other Languages).
Manual}), and a few other functions.
@end defvar
-
Unfortunately, the most recent version of Autoconf (2.12, at the time of
this writing) does not have any way for libtool to provide support for
these variables. So, if you depend on them, use the following code
@file{configure.in}:
@example
-LTLIBOBJS=`echo "$LIBOBJS" | sed 's/\.o/\.lo/g'`
+LTLIBOBJS=`echo "$LIBOBJS" | sed 's/\.o/.lo/g'`
AC_SUBST(LTLIBOBJS)
-LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/\.lo/g'`
+LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/.lo/g'`
AC_SUBST(LTALLOCA)
AC_OUTPUT(@dots{})
@end example
## configuration script generated by Autoconf, you may include it under
## the same distribution terms that you use for the rest of that program.
-# serial 7 AM_PROG_LIBTOOL
+# serial 8 AM_PROG_LIBTOOL
AC_DEFUN(AM_PROG_LIBTOOL,
[AC_REQUIRE([AC_CANONICAL_HOST])
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([AC_PROG_RANLIB])
AC_REQUIRE([AM_PATH_PROG_LD])
+AC_REQUIRE([AC_PROG_LN_S])
# Always use our own libtool.
LIBTOOL='$(top_builddir)/libtool'
esac]
# Actually configure libtool. ac_aux_dir is where install-sh is found.
-CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" LD="$LD" RANLIB="$RANLIB" \
+CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
+LD="$LD" RANLIB="$RANLIB" LN_S="$LN_S" \
${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig \
$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \
|| AC_MSG_ERROR([libtool configure failed])
AC_DEFUN(AM_PATH_PROG_LD,
[AC_REQUIRE([AC_PROG_CC])
AC_MSG_CHECKING([for ld used by the C compiler ($CC $CFLAGS $LDFLAGS)])
-AC_CACHE_VAL(am_cv_path_LD,
+AC_CACHE_VAL(ac_cv_path_LD,
[case "$LD" in
/*)
ac_cv_path_LD="$LD" # Let the user override the test with a path.
# but apparently some GNU ld's only accept -v.
if "$ac_dir/ld" -v 2>&1 < /dev/null | egrep '(GNU ld|with BFD)' > /dev/null; then
# If it was GNU ld, only accept it if we're using GCC.
- am_cv_path_LD="$ac_dir/ld"
+ ac_cv_path_LD="$ac_dir/ld"
test "$ac_cv_prog_gcc" = yes && break
else
# If it was not GNU ld, and we are not using GCC, then accept it.
- am_cv_path_LD="$ac_dir/ld"
+ ac_cv_path_LD="$ac_dir/ld"
break
fi
fi
IFS="$ac_save_ifs"
;;
esac])
-LD="$am_cv_path_LD"
+LD="$ac_cv_path_LD"
if test -n "$LD"; then
AC_MSG_RESULT($LD)
else
old_CFLAGS="$CFLAGS"
old_CPPFLAGS="$CPPFLAGS"
old_LD="$LD"
+old_LN_S="$LN_S"
old_RANLIB="$RANLIB"
test -z "$AR" && AR=ar
fi
fi
+if test -z "$LN_S"; then
+ # Check to see if we can use ln -s, or we need hard links.
+ echo $ac_n "checking whether ln -s works... $ac_c" 1>&6
+ rm -f conftestdata
+ if ln -s X conftestdata 2>/dev/null; then
+ rm -f conftestdata
+ LN_S="ln -s"
+ else
+ LN_S=ln
+ fi
+ if test "$LN_S" = "ln -s"; then
+ echo "$ac_t"yes 1>&6
+ else
+ echo "$ac_t"no 1>&6
+ fi
+fi
+
# See if we're really using GNU ld.
with_gnu_ld=no
# Allow LD to be a program name with arguments.
# This program was configured as follows,
# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
#
-# CC="$old_CC" CFLAGS="$old_CFLAGS" LD="$old_LD" RANLIB="$old_RANLIB" \\
+# CC="$old_CC" CFLAGS="$old_CFLAGS" CPPFLAGS="$old_CPPFLAGS" \\
+# LD="$old_LD" RANLIB="$old_RANLIB" LN_S="$old_LN_S" \\
# $0$ltconfig_args
#
# Compiler and other test output produced by $progname, useful for
# The linker used to build libraries.
LD='$LD'
+# Whether we need hard or soft links.
+LN_S='$LN_S'
+
# How to create reloadable object files.
reload_flag='$reload_flag'
reload_cmds='$reload_cmds'
default_mode=NONE
help="Try \`$progname --help' for more information."
-ln_s="ln -s"
-cp_p="cp -p"
magic="%%%MAGIC variable%%%"
mkdir="mkdir"
mv="mv -f"
if test "$build_libtool_libs" = yes; then
# All platforms use -DPIC, to notify preprocessed assembler code.
$show "$base_compile$pic_flag -DPIC $srcfile"
- if eval "$run $base_compile$pic_flag -DPIC $srcfile"; then :
+ if $run eval "$base_compile$pic_flag -DPIC $srcfile"; then :
else
test -n "$obj" && $run $rm $obj
exit 1
# If we have no pic_flag, then copy the object into place and finish.
if test -z "$pic_flag"; then
- $show "$ln_s $obj $libobj"
- $run $ln_s $obj $libobj || $run $cp_p $obj $libobj
+ $show "$LN_S $obj $libobj"
+ $run $LN_S $obj $libobj
exit $?
fi
# Only build a position-dependent object if we build old libraries.
if test "$build_old_libs" = yes; then
$show "$base_compile $srcfile"
- if eval "$run $base_compile $srcfile"; then :
+ if $run eval "$base_compile $srcfile"; then :
else
$run $rm $obj $libobj
exit 1
# link it into a program.
if test "$build_libtool_libs" != yes; then
$show "echo timestamp > $libobj"
- eval "$run echo timestamp > $libobj" || exit $?
+ $run eval "echo timestamp > $libobj" || exit $?
fi
exit 0
# Check to see if the archive will have undefined symbols.
if test "$allow_undefined" = yes; then
- if "$allow_undefined_flag" = unsupported; then
+ if test "$allow_undefined_flag" = unsupported; then
echo "$progname: warning: undefined symbols not allowed in $host shared libraries" 1>&2
build_libtool_libs=no
fi
linknames=
for link
do
- linknames="$linknames $objdir/$link"
+ linknames="$linknames $link"
done
# Use standard objects if they are PIC.
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- eval "$run $cmd" || exit $?
+ $run eval "$cmd" || exit $?
done
IFS="$save_ifs"
# Create links to the real library.
for link in $linknames; do
- $show "$ln_s $realname $link"
- $run $ln_s $realname $link || exit $?
+ $show "(cd $objdir && $LN_S $realname $link)"
+ $run eval "(cd $objdir && $LN_S $realname $link)" || exit $?
done
# If -export-dynamic was specified, set the dlname.
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- eval "$run $cmd" || exit $?
+ $run eval "$cmd" || exit $?
done
IFS="$save_ifs"
# Create an invalid libtool object if no PIC, so that we don't
# accidentally link it into a program.
$show "echo timestamp > $libobj"
- eval "$run echo timestamp > $libobj" || exit $?
+ $run eval "echo timestamp > $libobj" || exit $?
exit 0
fi
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- eval "$run $cmd" || exit $?
+ $run eval "$cmd" || exit $?
done
IFS="$save_ifs"
else
# Just create a symlink.
- $show "$ln_s $obj $libobj"
- $run $ln_s $obj $libobj || $run $cp_p $obj $libobj || exit 1
+ $show "$LN_S $obj $libobj"
+ $run $LN_S $obj $libobj || exit 1
fi
exit 0
esac
$show "$compile_command"
- eval "$run $compile_command" || exit $?
+ $run eval "$compile_command" || exit $?
# Now create the wrapper script.
echo "creating $output"
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- eval "$run $cmd" || exit $?
+ $run eval "$cmd" || exit $?
done
IFS="$save_ifs"
fi
# Do a symbolic link so that the libtool archive can be found in
# LD_LIBRARY_PATH before the program is installed.
- $show "$ln_s ../$output $objdir/$output"
- $run $ln_s ../$output $objdir/$output || $run $cp_p ../$output $objdir/$output || exit 1
+ $show "(cd $objdir && $LN_S ../$output $output)"
+ $run eval "(cd $objdir && $LN_S ../$output $output)" || exit 1
;;
esac
exit 0
# Install the shared library and build the symlinks.
$show "$install_prog $dir/$realname $destdir/$realname"
- eval "$run $install_prog $dir/$realname $destdir/$realname" || exit $?
+ $run eval "$install_prog $dir/$realname $destdir/$realname" || exit $?
test "X$dlname" = "X$realname" && dlname=
# Support stripping libraries.
fi
fi
- if test -n "$1"; then
+ if test $# -gt 0; then
# Delete the old symlinks.
rmcmd="$rm"
for linkname
for linkname
do
test "X$dlname" = "X$linkname" && dlname=
- $show "$ln_s $realname $destdir/$linkname"
- $run $ln_s $realname $destdir/$linkname
+ $show "(cd $destdir && $LN_S $realname $linkname)"
+ $run eval "(cd $destdir && $LN_S $realname $linkname)"
done
fi
if test -n "$dlname"; then
# Install the dynamically-loadable library.
$show "$install_prog $dir/$dlname $destdir/$dlname"
- eval "$run $install_prog $dir/$dlname $destdir/$dlname" || exit $?
+ $run eval "$install_prog $dir/$dlname $destdir/$dlname" || exit $?
fi
# Do each command in the postinstall commands.
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- eval "$run $cmd" || exit $?
+ $run eval "$cmd" || exit $?
done
IFS="$save_ifs"
fi
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- eval "$run $cmd" || exit $?
+ $run eval "$cmd" || exit $?
done
IFS="$save_ifs"
done
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
- eval "$run $cmd"
+ $run eval "$cmd"
done
IFS="$save_ifs"
done