# A lot of this script is taken from autoconf-2.10.
+echo=echo
+if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
+else
+ # The Solaris and AIX default echo program unquotes backslashes.
+ # This makes it impossible to quote backslashes using
+ # echo "$something" | sed 's/\\/\\\\/g'
+ # So, we emulate echo with printf '%s\n'
+ echo="printf %s\\n"
+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
+ else
+ # Oops. We have no working printf. Try to find a not-so-buggy echo.
+ echo=echo
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
+ for dir in $PATH /usr/ucb; do
+ if test -f $dir/echo && test "X`$dir/echo '\t'`" = 'X\t'; then
+ echo="$dir/echo"
+ break
+ fi
+ done
+ IFS="$save_ifs"
+ fi
+fi
+
# The name of this program.
-progname=`echo "$0" | sed 's%^.*/%%'`
+progname=`$echo "$0" | sed 's%^.*/%%'`
# Constants:
PROGRAM=ltconfig
PACKAGE=libtool
-VERSION=1.0f
+VERSION=1.0h
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5'
ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5'
rm="rm -f"
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\([\\"$\\\\]\)/\\\1/g'
+sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
# Same as above, but don't quote variable references.
-double_quote_subst='s/\([\\"\\\\]\)/\\\1/g'
+double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
# Global variables:
can_build_shared=yes
host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
case "$host_os" in
-aix*)
+aix3*)
# AIX sometimes has problems with the GCC collect2 program. For some
# reason, if we set the COLLECT_NAMES environment variable, the problems
# vanish in a puff of smoke.
# Determine commands to create old-style static archives.
old_archive_cmds='$AR cru $oldlib$oldobjs'
old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
# Set a sane default for `AR'.
test -z "$AR" && AR=ar
# Now see if the compiler is really GCC.
with_gcc=no
echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
- echo "$progname:394: checking whether we are using GNU C" >&5
+ echo "$progname:418: checking whether we are using GNU C" >&5
$rm conftest.c
cat > conftest.c <<EOF
yes;
#endif
EOF
- if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:402: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+ if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:426: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
with_gcc=yes
fi
$rm conftest.c
os2*)
# We can build DLLs from non-PIC.
;;
+ amigaos*)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ pic_flag='-m68020 -resident32 -malways-restore-a4'
+ ;;
*)
pic_flag='-fPIC'
;;
echo > conftest.c
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $pic_flag -DPIC"
- echo "$progname:507: checking if $compiler PIC flag $pic_flag works" >&5
- if { (eval echo $progname:508: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
+ echo "$progname:537: checking if $compiler PIC flag $pic_flag works" >&5
+ if { (eval echo $progname:538: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
# Append any errors to the config.log.
cat conftest.err 1>&5
echo 'main(){return(0);}' > conftest.c
save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $link_static_flag"
-echo "$progname:550: checking if $compiler static flag $link_static_flag works" >&5
-if { (eval echo $progname:551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+echo "$progname:580: checking if $compiler static flag $link_static_flag works" >&5
+if { (eval echo $progname:581: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
echo "$ac_t$link_static_flag" 1>&6
else
echo "$ac_t"none 1>&6
if test "$with_gcc" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
- echo "$progname:583: checking for ld used by GCC" >&5
+ echo "$progname:613: checking for ld used by GCC" >&5
ac_prog=`($CC -print-prog-name=ld) 2>&5`
case "$ac_prog" in
# Accept absolute paths.
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld... $ac_c" 1>&6
- echo "$progname:601: checking for GNU ld" >&5
+ echo "$progname:631: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
- echo "$progname:604: checking for non-GNU ld" >&5
+ echo "$progname:634: checking for non-GNU ld" >&5
fi
if test -z "$LD"; then
hardcode_shlibpath_var=unsupported
runpath_var=
+case "$host_os" in
+amigaos* | sunos4*)
+ # On these operating systems, we should treat GNU ld like the system ld.
+ gnu_ld_acts_native=yes
+ ;;
+*)
+ gnu_ld_acts_native=no
+ ;;
+esac
+
ld_shlibs=yes
-if test "$with_gnu_ld" = yes; then
- # See if GNU ld supports shared libraries.
+if test "$with_gnu_ld" = yes && test "$gnu_ld_acts_native" != yes; then
- case "$host_os" in
- sunos4*)
+ # See if GNU ld supports shared libraries.
+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs'
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
ld_shlibs=yes
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- *)
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ld_shlibs=yes
- else
- ld_shlibs=no
- fi
- ;;
- esac
+ else
+ ld_shlibs=no
+ fi
if test "$ld_shlibs" = yes; then
- archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs$deplibs'
hardcode_libdir_flag_spec='${wl}-rpath $wl$libdir'
export_dynamic_flag_spec='${wl}-export-dynamic'
fi
case "$host_os" in
aix3*)
allow_undefined_flag=unsupported
- archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '"'s/.* //'"' > $lib.exp;$LD -o $objdir/$soname$libobjs -bE:$lib.exp -T512 -H512 -bM:SRE$deplibs;$AR cru $lib $objdir/$soname'
+ archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' > $lib.exp;$LD -o $objdir/$soname$libobjs -bE:$lib.exp -T512 -H512 -bM:SRE;$AR cru $lib $objdir/$soname'
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
hardcode_minus_L=yes
aix4*)
allow_undefined_flag=unsupported
- archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '"'s/.* //'"' > $lib.exp;$CC -o $objdir/$soname$libobjs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry$deplibs;$AR cru $lib $objdir/$soname'
+ archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' > $lib.exp;$CC -o $objdir/$soname$libobjs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry;$AR cru $lib $objdir/$soname'
hardcode_direct=yes
hardcode_minus_L=yes
;;
+ amigaos*)
+ archive_cmds='$rm $objdir/a2ixlibrary.data;$echo "#define NAME $libname" > $objdir/a2ixlibrary.data;$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data;$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data;$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data;$AR cru $lib$libobjs;$RANLIB $lib;(cd $objdir && a2ixlibrary -32)'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
# support. Future versions do this automatically, but an explicit c++rt0.o
# doesn't break anything, and helps significantly (at the cost of a little
# extra space).
freebsd2.2*)
- archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs /usr/lib/c++rt0.o'
+ archive_cmds='$LD -Bshareable -o $lib$libobjs /usr/lib/c++rt0.o'
+ hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
hardcode_shlibpath_var=no
# Unfortunately, older versions of FreeBSD 2 don't have this feature.
freebsd2*)
- archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -Bshareable -o $lib$libobjs'
hardcode_direct=yes
hardcode_minus_L=yes
hardcode_shlibpath_var=no
# FreeBSD 3, at last, uses gcc -shared to do shared libraries.
freebsd3*)
- archive_cmds='$CC -shared -o $lib$libobjs$deplibs'
+ archive_cmds='$CC -shared -o $lib$libobjs'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
;;
hpux9*)
- archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs$deplibs;mv $objdir/$soname $lib'
+ archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs;mv $objdir/$soname $lib'
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
+ export_dynamic_flag_spec='${wl}-E'
;;
hpux10*)
- archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib$libobjs'
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
+ export_dynamic_flag_spec='${wl}-E'
;;
irix5* | irix6*)
- archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs$deplibs'
+ archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs'
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
;;
;;
openbsd*)
- archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -Bshareable -o $lib$libobjs'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
allow_undefined_flag=unsupported
- archive_cmds='echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def;echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def;echo DATA >> $objdir/$libname.def;echo " SINGLE NONSHARED" >> $objdir/$libname.def;echo EXPORTS >> $objdir/$libname.def;emxexp$libobjs >> $objdir/$libname.def;$CC -Zdll -Zcrtdll -o $lib$libobjs $objdir/$libname.def'
+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def;$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def;$echo DATA >> $objdir/$libname.def;$echo " SINGLE NONSHARED" >> $objdir/$libname.def;$echo EXPORTS >> $objdir/$libname.def;emxexp$libobjs >> $objdir/$libname.def;$CC -Zdll -Zcrtdll -o $lib$libobjs $objdir/$libname.def'
old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
;;
;;
sco3.2v5*)
- archive_cmds='$LD -G -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -G -o $lib$libobjs'
hardcode_direct=yes
;;
solaris2*)
- archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_shlibpath_var=no
;;
sunos4*)
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
+ if test "$with_gcc" = yes; then
+ archive_cmds='$CC -shared -o $lib$libobjs'
+ else
+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
+ fi
+
+ if test "$with_gnu_ld" = yes; then
+ export_dynamic_flag_spec='${wl}-export-dynamic'
+ fi
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
;;
uts4*)
- archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -G -h $soname -o $lib$libobjs'
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=no
hardcode_minus_L=no
/*) ;; # Let the user override the test with a path.
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
- for ac_dir in /usr/ucb $PATH /bin; do
+ for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do
test -z "$ac_dir" && dir=.
if test -f $ac_dir/nm; then
# Check to see if the nm accepts a BSD-compat flag.
- if ($ac_dir/nm -B /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then
+ # Adding the `sed 1!d' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ if ($ac_dir/nm -B /dev/null 2>&1 | sed '1!d'; exit 0) | egrep /dev/null >/dev/null; then
NM="$ac_dir/nm -B"
- elif ($ac_dir/nm -p /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then
+ elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1!d'; exit 0) | egrep /dev/null >/dev/null; then
NM="$ac_dir/nm -p"
else
NM="$ac_dir/nm"
aix*)
symcode='[BCDTU]'
;;
+irix*)
+ # Cannot use undefined symbols on IRIX because inlined functions mess us up.
+ symcode='[BCDEGRST]'
+ ;;
solaris2*)
symcode='[BDTU]'
;;
main(){nm_test_var='a';nm_test_func();return(0);}
EOF
-echo "$progname:900: checking if global_symbol_pipe works" >&5
-if { (eval echo $progname:901: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
+echo "$progname:953: checking if global_symbol_pipe works" >&5
+if { (eval echo $progname:954: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
# Now try to grab the symbols.
nlist=conftest.nm
- if { echo "$progname:904: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
+ if { echo "$progname:957: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
dld_preloaded_symbols[] =
{
EOF
- sed 's/^\(.*\) \(.*\)$/ {"\1", \&\2},/' < "$nlist" >> conftest.c
+ sed 's/^\(.*\) \(.*\)$/ {"\1", (__ptr_t) \&\2},/' < "$nlist" >> conftest.c
cat <<\EOF >> conftest.c
{0},
};
save_CFLAGS="$CFLAGS"
LIBS='conftestm.o'
CFLAGS="$CFLAGS$no_builtin_flag"
- if { (eval echo $progname:962: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+ if { (eval echo $progname:1015: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
pipe_works=yes
else
echo "$progname: failed program was:" >&5
libname_spec='lib$name'
soname_spec=
postinstall_cmds=
+postuninstall_cmds=
finish_cmds=
+finish_eval=
shlibpath_var=
version_type=none
dynamic_linker="$host_os ld.so"
soname_spec='$libname.so.$major'
;;
+amigaos*)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "$lib" | sed '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
+ ;;
+
freebsd2* | freebsd3*)
version_type=sunos
library_names_spec='$libname.so.$versuffix $libname.so'
;;
os2*)
- version_type=none
libname_spec='$name'
library_names_spec='$libname.dll $libname.a'
dynamic_linker='OS/2 ld.exe'
rmdir .libs 2>/dev/null
echo "$ac_t$objdir" 1>&6
+# Copy echo and quote the copy, instead of the original, because it is
+# used later.
+ltecho="$echo"
+
# Now quote all the things that may contain metacharacters.
-for var in old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
+for var in ltecho old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
old_LN_S AR CC LD LN_S NM reload_flag reload_cmds wl pic_flag \
link_static_flag no_builtin_flag export_dynamic_flag_spec \
profile_flag_pattern libname_spec library_names_spec soname_spec RANLIB \
old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
- archive_cmds postinstall_cmds \
- allow_undefined_flag finish_cmds global_symbol_pipe \
+ old_postuninstall_cmds archive_cmds postinstall_cmds postuninstall_cmds \
+ allow_undefined_flag finish_cmds finish_eval global_symbol_pipe \
striplib old_striplib \
hardcode_libdir_flag_spec hardcode_libdir_separator; do
case "$var" in
reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
- old_postinstall_cmds | archive_cmds | postinstall_cmds | finish_cmds)
+ old_postinstall_cmds | old_postuninstall_cmds | archive_cmds | \
+ postinstall_cmds | postuninstall_cmds | finish_cmds)
# Double-quote double-evaled strings.
- eval "$var=\`echo \"\$$var\" | sed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\"\`"
+ eval "$var=\`\$echo \"\$$var\" | sed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\"\`"
;;
*)
- eval "$var=\`echo \"\$$var\" | sed \"\$sed_quote_subst\"\`"
+ eval "$var=\`\$echo \"\$$var\" | sed \"\$sed_quote_subst\"\`"
;;
esac
done
# Compiler and other test output produced by $progname, useful for
# debugging $progname, is in ./config.log if it exists.
+# An echo program that doesn't interpret backslashes.
+echo="$ltecho"
+
# The version of $progname that generated this script.
LTCONFIG_VERSION="$VERSION"
RANLIB="$RANLIB"
old_archive_cmds="$old_archive_cmds"
old_postinstall_cmds="$old_postinstall_cmds"
+old_postuninstall_cmds="$old_postuninstall_cmds"
# Create an old-style archive from a shared archive.
old_archive_from_new_cmds="$old_archive_from_new_cmds"
# Commands used to build and install a shared archive.
archive_cmds="$archive_cmds"
postinstall_cmds="$postinstall_cmds"
+postuninstall_cmds="$postuninstall_cmds"
# Flag that allows shared libraries with undefined symbols to be built.
allow_undefined_flag="$allow_undefined_flag"
# Commands used to finish a libtool library installation in a directory.
finish_cmds="$finish_cmds"
+# Same as above, but a single script fragment to be evaled but not shown.
+finish_eval="$finish_eval"
+
# Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe="$global_symbol_pipe"
;;
*) cat <<EOF >> $ofile
# Find the path to this script.
-thisdir=\`echo "\$0" | sed -e 's%/[^/]*\$%%'\`
+thisdir=\`$echo "\$0" | sed -e 's%/[^/]*\$%%'\`
test "X\$0" = "X\$thisdir" && thisdir=.
# Execute the libtool backend.
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
-#FIXME: echo=echo
-echo='printf %s\n'
-if test "X`$echo '\t'`" = 'X\t'; then :
-else
- # The Solaris and AIX default echo program unquotes backslashes.
- # This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- # So, we emulate echo with printf '%s\n'
- echo='printf %s\n'
- if test "X`$echo '\t'`" = 'X\t'; then :
- else
- # Oops. We have no working printf. Try to find a not-so-buggy echo.
- echo=echo
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
- save_PATH="$PATH"
- PATH="$PATH":/usr/ucb
- for dir in $PATH; do
- if test -f $dir/echo && test "X`$dir/echo '\t'`" = 'X\t'; then
- echo="$dir/echo"
- break
- fi
- done
- IFS="$save_ifs"
- PATH="$save_PATH"
- fi
-fi
-
# The name of this program.
progname=`$echo "$0" | sed 's%^.*/%%'`
+modename="$progname"
# Constants.
PROGRAM=ltmain.sh
PACKAGE=libtool
-VERSION=1.0f
+VERSION=1.0h
default_mode=
help="Try \`$progname --help' for more information."
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\([\\"$\\\\]\)/\\\1/g'
+sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
# NLS nuisances.
# Only set LANG and LC_ALL to C if already set.
if test "${LANG+set}" = set; then LANG=C; export LANG; fi
if test "$LTCONFIG_VERSION" != "$VERSION"; then
- $echo "$progname: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
+ echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
exit 1
fi
if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- $echo "$progname: not configured to build any kind of library" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
+ echo "$modename: not configured to build any kind of library" 1>&2
+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
exit 1
fi
;;
--version)
- $echo "$PROGRAM (GNU $PACKAGE) $VERSION"
+ echo "$PROGRAM (GNU $PACKAGE) $VERSION"
exit 0
;;
;;
--features)
- $echo "host: $host"
+ echo "host: $host"
if test "$build_libtool_libs" = yes; then
- $echo "enable shared libraries"
+ echo "enable shared libraries"
else
- $echo "disable shared libraries"
+ echo "disable shared libraries"
fi
if test "$build_old_libs" = yes; then
- $echo "enable static libraries"
+ echo "enable static libraries"
else
- $echo "disable static libraries"
+ echo "disable static libraries"
fi
exit 0
;;
;;
-*)
- $echo "$progname: unrecognized option \`$arg'" 1>&2
+ $echo "$modename: unrecognized option \`$arg'" 1>&2
$echo "$help" 1>&2
exit 1
;;
done
if test -n "$prevopt"; then
- $echo "$progname: option \`$prevopt' requires an argument" 1>&2
+ $echo "$modename: option \`$prevopt' requires an argument" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Just use the default operation mode.
if test -z "$mode"; then
if test -n "$nonopt"; then
- $echo "$progname: warning: cannot infer operation mode from \`$nonopt'" 1>&2
+ $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
else
- $echo "$progname: warning: cannot infer operation mode without MODE-ARGS" 1>&2
+ $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
fi
fi
;;
# Only execute mode is allowed to have -dlopen flags.
if test -n "$execute_dlfiles" && test "$mode" != execute; then
- $echo "$progname: unrecognized option \`-dlopen'" 1>&2
+ $echo "$modename: unrecognized option \`-dlopen'" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Change the help message to a mode-specific one.
generic_help="$help"
- help="Try \`$progname --help --mode=$mode' for more information."
+ help="Try \`$modename --help --mode=$mode' for more information."
# These modes are in order of execution frequency so that they run quickly.
case "$mode" in
# libtool compile mode
compile)
- progname="$progname: compile"
+ modename="$modename: compile"
# Get the compilation command and the source file.
base_compile=
lastarg=
do
# The only flag that cannot be specified is the output filename.
if test "X$arg" = "X-o"; then
- $echo "$progname: you cannot specify the output filename with \`-o'" 1>&2
+ $echo "$modename: you cannot specify the output filename with \`-o'" 1>&2
$echo "$help" 1>&2
exit 1
fi
case "$libobj" in
*.lo) obj=`$echo "$libobj" | sed -e 's/\.lo$/.o/'` ;;
*)
- $echo "$progname: cannot determine name of library object from \`$srcfile'" 1>&2
+ $echo "$modename: cannot determine name of library object from \`$srcfile'" 1>&2
exit 1
;;
esac
if test -z "$base_compile"; then
- $echo "$progname: you must specify a compilation command" 1>&2
+ $echo "$modename: you must specify a compilation command" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Create an invalid libtool object if no PIC, so that we don't accidentally
# link it into a program.
if test "$build_libtool_libs" != yes; then
- $show "$echo timestamp > $libobj"
- $run eval "\$echo timestamp > \$libobj" || exit $?
+ $show "echo timestamp > $libobj"
+ $run eval "echo timestamp > \$libobj" || exit $?
fi
exit 0
# libtool link mode
link)
- progname="$progname: link"
+ modename="$modename: link"
CC="$nonopt"
- allow_undefined=no
+ allow_undefined=yes
compile_command="$CC"
finalize_command="$CC"
case "$arg" in
-all-static | -static)
if test "X$arg" = "X-all-static" && test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
- $echo "$progname: warning: complete static linking is impossible in this configuration" 1>&2
+ $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
fi
build_libtool_libs=no
build_old_libs=yes
;;
-allow-undefined)
- allow_undefined=yes
+ # FIXME: remove this flag sometime in the future.
+ $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
continue
;;
# Add the corresponding hardcode_libdir_flag, if it is not identical.
;;
*)
- $echo "$progname: \`-L$dir' cannot specify a relative directory" 1>&2
+ $echo "$modename: \`-L$dir' cannot specify a relative directory" 1>&2
exit 1
;;
esac
-l*) deplibs="$deplibs $arg" ;;
+ -no-undefined)
+ allow_undefined=no
+ continue
+ ;;
+
-o) prev=output ;;
-rpath)
# Check to see that this really is a libtool archive.
if egrep '^# Generated by ltmain.sh' $arg >/dev/null 2>&1; then :
else
- $echo "$progname: \`$arg' is not a valid libtool archive" 1>&2
+ $echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
exit 1
fi
esac
if test -z "$libdir"; then
- $echo "$progname: \`$arg' contains no -rpath information" 1>&2
+ $echo "$modename: \`$arg' contains no -rpath information" 1>&2
exit 1
fi
done
if test -z "$linklib"; then
- $echo "$progname: cannot find name of link library for \`$arg'" 1>&2
+ $echo "$modename: cannot find name of link library for \`$arg'" 1>&2
exit 1
fi
*)
absdir=`cd "$dir" && pwd`
if test -z "$absdir"; then
- $echo "$progname: cannot determine absolute directory name of \`$dir'" 1>&2
+ $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
exit 1
fi
dir="$absdir"
;;
*)
- $echo "$progname: \`$hardcode_action' is an unknown hardcode action" 1>&2
+ $echo "$modename: \`$hardcode_action' is an unknown hardcode action" 1>&2
exit 1
;;
esac
else
# Transform directly to old archives if we don't build new libraries.
if test -n "$pic_flag" && test -z "$old_library"; then
- $echo "$progname: cannot find static library for \`$arg'" 1>&2
+ $echo "$modename: cannot find static library for \`$arg'" 1>&2
exit 1
fi
esac
# Now actually substitute the argument into the commands.
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
+ if test -n "$arg"; then
+ compile_command="$compile_command $arg"
+ finalize_command="$finalize_command $arg"
+ fi
done
if test -n "$prev"; then
- $echo "$progname: the \`$prevarg' option requires an argument" 1>&2
+ $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
$echo "$help" 1>&2
exit 1
fi
oldobjs=
case "$output" in
"")
- $echo "$progname: you must specify an output file" 1>&2
+ $echo "$modename: you must specify an output file" 1>&2
$echo "$help" 1>&2
exit 1
;;
*/*)
- $echo "$progname: output file \`$output' must have no directory components" 1>&2
+ $echo "$modename: output file \`$output' must have no directory components" 1>&2
exit 1
;;
case "$output" in
lib*) ;;
*)
- $echo "$progname: libtool library \`$arg' must begin with \`lib'" 1>&2
+ $echo "$modename: libtool library \`$arg' must begin with \`lib'" 1>&2
$echo "$help" 1>&2
exit 1
;;
age=0
if test -n "$objs"; then
- $echo "$progname: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
+ $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
exit 1
fi
# How the heck are we supposed to write a wrapper for a shared library?
if test -n "$link_against_libtool_libs"; then
- $echo "$progname: libtool library \`$output' may not depend on uninstalled libraries:$link_against_libtool_libs" 1>&2
+ $echo "$modename: libtool library \`$output' may not depend on uninstalled libraries:$link_against_libtool_libs" 1>&2
exit 1
fi
deplibs="$deplibs -lc"
if test -n "$dlfiles$dlprefiles"; then
- $echo "$progname: warning: \`-dlopen' is ignored while creating libtool libraries" 1>&2
+ $echo "$modename: warning: \`-dlopen' is ignored while creating libtool libraries" 1>&2
# Nullify the symbol file.
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
finalize_command=`$echo "$finalize_command" | sed "s% @SYMFILE@%%"`
fi
if test -z "$rpath"; then
- $echo "$progname: you must specify an installation directory with \`-rpath'" 1>&2
+ $echo "$modename: you must specify an installation directory with \`-rpath'" 1>&2
$echo "$help" 1>&2
exit 1
fi
set dummy $rpath
if test $# -gt 2; then
- $echo "$progname: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
+ $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
fi
install_libdir="$2"
IFS="$save_ifs"
if test -n "$5"; then
- $echo "$progname: too many parameters to \`-version-info'" 1>&2
+ $echo "$modename: too many parameters to \`-version-info'" 1>&2
$echo "$help" 1>&2
exit 1
fi
case "$current" in
0 | [1-9] | [1-9][0-9]*) ;;
*)
- $echo "$progname: CURRENT \`$current' is not a nonnegative integer" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
;;
esac
case "$revision" in
0 | [1-9] | [1-9][0-9]*) ;;
*)
- $echo "$progname: REVISION \`$revision' is not a nonnegative integer" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
;;
esac
case "$age" in
0 | [1-9] | [1-9][0-9]*) ;;
*)
- $echo "$progname: AGE \`$age' is not a nonnegative integer" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
;;
esac
if test $age -gt $current; then
- $echo "$progname: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
fi
;;
*)
- $echo "$progname: unknown library version type \`$version_type'" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
+ $echo "$modename: unknown library version type \`$version_type'" 1>&2
+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
exit 1
;;
esac
# Check to see if the archive will have undefined symbols.
if test "$allow_undefined" = yes; then
if test "$allow_undefined_flag" = unsupported; then
- $echo "$progname: warning: undefined symbols not allowed in $host shared libraries" 1>&2
+ $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
build_libtool_libs=no
build_old_libs=yes
fi
IFS="$save_ifs"
# Create links to the real library.
- for link in $linknames; do
- $show "(cd $objdir && $LN_S $realname $link)"
- $run eval '(cd $objdir && $LN_S $realname $link)' || exit $?
+ for linkname in $linknames; do
+ $show "(cd $objdir && $LN_S $realname $linkname)"
+ $run eval '(cd $objdir && $LN_S $realname $linkname)' || exit $?
done
# If -export-dynamic was specified, set the dlname.
*.lo | *.o)
if test -n "$link_against_libtool_libs"; then
- $echo "$progname: error: cannot link libtool libraries into reloadable objects" 1>&2
+ $echo "$modename: error: cannot link libtool libraries into reloadable objects" 1>&2
exit 1
fi
if test -n "$deplibs"; then
- $echo "$progname: warning: \`-l' and \`-L' are ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-l' and \`-L' are ignored while creating objects" 1>&2
fi
if test -n "$dlfiles$dlprefiles"; then
- $echo "$progname: warning: \`-dlopen' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-dlopen' is ignored while creating objects" 1>&2
# Nullify the symbol file.
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
finalize_command=`$echo "$finalize_command" | sed "s% @SYMFILE@%%"`
fi
if test -n "$rpath"; then
- $echo "$progname: warning: \`-rpath' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-rpath' is ignored while creating objects" 1>&2
fi
if test -n "$vinfo"; then
- $echo "$progname: warning: \`-version-info' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-version-info' is ignored while creating objects" 1>&2
fi
case "$output" in
*.lo)
if test -n "$objs"; then
- $echo "$progname: cannot build library object \`$output' from non-libtool objects" 1>&2
+ $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
exit 1
fi
libobj="$output"
if test "$build_libtool_libs" != yes; then
# Create an invalid libtool object if no PIC, so that we don't
# accidentally link it into a program.
- $show "$echo timestamp > $libobj"
- $run eval "\$echo timestamp > $libobj" || exit $?
+ $show "echo timestamp > $libobj"
+ $run eval "echo timestamp > $libobj" || exit $?
exit 0
fi
*)
if test -n "$vinfo"; then
- $echo "$progname: warning: \`-version-info' is ignored while linking programs" 1>&2
+ $echo "$modename: warning: \`-version-info' is ignored while linking programs" 1>&2
fi
if test -n "$rpath"; then
if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist"
wcout=`wc "$nlist" 2>/dev/null`
- count=`$echo "$wcout" | sed 's/^[ ]*\([0-9][0-9]*\).*$/\1/'`
+ count=`echo "$wcout" | sed 's/^[ ]*\([0-9][0-9]*\).*$/\1/'`
(test "$count" -ge 0) 2>/dev/null || count=-1
else
$rm "$nlist"T
if test -f "$nlist"; then
sed -e 's/^.* \(.*\)$/extern char \1;/' < "$nlist" >> "$objdir/$dlsyms"
else
- $echo '/* NONE */' >> "$objdir/$dlsyms"
+ echo '/* NONE */' >> "$objdir/$dlsyms"
EOF
fi
EOF
if test -f "$nlist"; then
- sed 's/^\(.*\) \(.*\)$/ {"\1", \&\2},/' < "$nlist" >> "$objdir/$dlsyms"
+ sed 's/^\(.*\) \(.*\)$/ {"\1", (__ptr_t) \&\2},/' < "$nlist" >> "$objdir/$dlsyms"
fi
cat <<\EOF >> "$objdir/$dlsyms"
;;
*)
- echo "$progname: unknown suffix for \`$dlsyms'" 1>&2
+ $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
exit 1
;;
esac
compile_command=`$echo "$compile_command" | sed "s%@SYMFILE@%$objdir/${output}S.o%"`
finalize_command=`$echo "$finalize_command" | sed "s%@SYMFILE@%$objdir/${output}S.o%"`
elif test "$export_dynamic" != yes; then
- test -n "$dlfiles$dlprefiles" && $echo "$progname: warning: \`-dlopen' and \`-dlpreopen' are ignored without \`-export-dynamic'" 1>&2
+ test -n "$dlfiles$dlprefiles" && $echo "$modename: warning: \`-dlopen' and \`-dlpreopen' are ignored without \`-export-dynamic'" 1>&2
else
# We keep going just in case the user didn't refer to
# dld_preloaded_symbols. The linker will fail if global_symbol_pipe
# really was required.
- $echo "$progname: not configured to extract global symbols from dlpreopened files" 1>&2
+ $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
# Nullify the symbol file.
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
case "$hardcode_action" in
relink)
# AGH! Flame the AIX and HP-UX people for me, will ya?
- $echo "$progname: warning: using a buggy system linker" 1>&2
- $echo "$progname: relinking will be required before \`$output' can be installed" 1>&2
+ $echo "$modename: warning: using a buggy system linker" 1>&2
+ $echo "$modename: relinking will be required before \`$output' can be installed" 1>&2
;;
esac
# The program doesn't exist.
\$echo "\$0: error: \$progdir/\$program does not exist" 1>&2
\$echo "This script is just a wrapper for \$program." 1>&2
- \$echo "See the $PACKAGE documentation for more information." 1>&2
+ echo "See the $PACKAGE documentation for more information." 1>&2
exit 1
fi
fi
# libtool install mode
install)
- progname="$progname: install"
+ modename="$modename: install"
# There may be an optional /bin/sh argument at the beginning of
# install_prog (especially on Windows NT).
done
if test -z "$install_prog"; then
- $echo "$progname: you must specify an install program" 1>&2
+ $echo "$modename: you must specify an install program" 1>&2
$echo "$help" 1>&2
exit 1
fi
if test -n "$prev"; then
- $echo "$progname: the \`$prev' option requires an argument" 1>&2
+ $echo "$modename: the \`$prev' option requires an argument" 1>&2
$echo "$help" 1>&2
exit 1
fi
if test -z "$files"; then
if test -z "$dest"; then
- $echo "$progname: no file or destination specified" 1>&2
+ $echo "$modename: no file or destination specified" 1>&2
else
- $echo "$progname: you must specify a destination" 1>&2
+ $echo "$modename: you must specify a destination" 1>&2
fi
$echo "$help" 1>&2
exit 1
# Not a directory, so check to see that there is only one file specified.
set dummy $files
if test $# -gt 2; then
- $echo "$progname: \`$dest' is not a directory" 1>&2
+ $echo "$modename: \`$dest' is not a directory" 1>&2
$echo "$help" 1>&2
exit 1
fi
case "$file" in
*.lo) ;;
*)
- $echo "$progname: \`$destdir' must be an absolute directory name" 1>&2
+ $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
$echo "$help" 1>&2
exit 1
;;
# Check to see that this really is a libtool archive.
if egrep '^# Generated by ltmain.sh' $file >/dev/null 2>&1; then :
else
- $echo "$progname: \`$file' is not a valid libtool archive" 1>&2
+ $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
exit 1
fi
$show "$striplib $destdir/$realname"
$run $striplib $destdir/$realname || exit $?
else
- $echo "$progname: warning: no library stripping program" 1>&2
+ $echo "$modename: warning: no library stripping program" 1>&2
fi
fi
destfile=
;;
*)
- $echo "$progname: cannot copy a libtool object to \`$destfile'" 1>&2
+ $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
$echo "$help" 1>&2
exit 1
;;
# Check the variables that should have been set.
if test -z "$link_against_libtool_libs" || test -z "$finalize_command"; then
- $echo "$progname: invalid libtool wrapper script \`$file'" 1>&2
+ $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
exit 1
fi
fi
libfile="$libdir/`$echo "$lib" | sed 's%^.*/%%g'`"
if test -z "$libdir"; then
- $echo "$progname: warning: \`$lib' contains no -rpath information" 1>&2
+ $echo "$modename: warning: \`$lib' contains no -rpath information" 1>&2
elif test -f "$libfile"; then :
else
- $echo "$progname: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
+ $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
finalize=no
fi
done
if test "$hardcode_action" = relink; then
if test "$finalize" = yes; then
- $echo "$progname: warning: relinking \`$file' on behalf of your buggy system linker" 1>&2
+ $echo "$modename: warning: relinking \`$file' on behalf of your buggy system linker" 1>&2
$show "$finalize_command"
if $run eval "$finalize_command"; then :
else
- $echo "$progname: error: relink \`$file' with the above command before installing it" 1>&2
+ $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
continue
fi
file="$objdir/$file"T
else
- $echo "$progname: warning: cannot relink \`$file' on behalf of your buggy system linker" 1>&2
+ $echo "$modename: warning: cannot relink \`$file' on behalf of your buggy system linker" 1>&2
fi
else
# Install the binary that we compiled earlier.
$show "$old_striplib $oldlib"
$run $old_striplib $oldlib || exit $?
else
- $echo "$progname: warning: no static library stripping program" 1>&2
+ $echo "$modename: warning: no static library stripping program" 1>&2
fi
fi
done
if test -n "$future_libdirs"; then
- $echo "$progname: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
+ $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
fi
if test -n "$current_libdirs"; then
# libtool finish mode
finish)
- progname="$progname: finish"
+ modename="$modename: finish"
libdirs="$nonopt"
- if test -n "$finish_cmds" && test -n "$libdirs"; then
+ if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
for dir
do
libdirs="$libdirs $dir"
done
for libdir in $libdirs; do
- # Do each command in the postinstall commands.
- cmds=`eval \\$echo \"$finish_cmds\"`
- IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
- for cmd in $cmds; do
+ if test -n "$finish_cmds"; then
+ # Do each command in the finish commands.
+ cmds=`eval \\$echo \"$finish_cmds\"`
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ $show "$cmd"
+ $run eval "$cmd"
+ done
IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd"
- done
- IFS="$save_ifs"
+ fi
+ if test -n "$finish_eval"; then
+ # Do the single finish_eval.
+ cmds=`eval \\$echo \"$finish_eval\"`
+ $run eval "$cmds"
+ fi
done
fi
- $echo "To link against installed libraries in LIBDIR, users may have to:"
+ echo "To link against installed libraries in LIBDIR, users may have to:"
if test -n "$shlibpath_var"; then
- $echo " - add LIBDIR to their \`$shlibpath_var' environment variable"
+ echo " - add LIBDIR to their \`$shlibpath_var' environment variable"
fi
- $echo " - use the \`-LLIBDIR' linker flag"
+ echo " - use the \`-LLIBDIR' linker flag"
exit 0
;;
# libtool execute mode
execute)
- progname="$progname: execute"
+ modename="$modename: execute"
# The first argument is the command name.
cmd="$nonopt"
if test -z "$cmd"; then
- $echo "$progname: you must specify a COMMAND" 1>&2
+ $echo "$modename: you must specify a COMMAND" 1>&2
$echo "$help"
exit 1
fi
for file in $execute_dlfiles; do
if test -f "$file"; then :
else
- $echo "$progname: \`$file' is not a file" 1>&2
+ $echo "$modename: \`$file' is not a file" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Check to see that this really is a libtool archive.
if egrep '^# Generated by ltmain.sh' $file >/dev/null 2>&1; then :
else
- $echo "$progname: \`$lib' is not a valid libtool archive" 1>&2
+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Skip this library if it cannot be dlopened.
if test -z "$dlname"; then
# Warn if it was a shared library.
- test -n "$library_names" && $echo "$progname: warning: \`$file' was not linked with \`-export-dynamic'"
+ test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
continue
fi
if test -f "$dir/$objdir/$dlname"; then
dir="$dir/$objdir"
else
- $echo "$progname: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
+ $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
exit 1
fi
;;
;;
*)
- $echo "$progname: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
+ $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
continue
;;
esac
# Now actually exec the command.
eval "exec \$cmd$args"
- $echo "$progname: cannot exec \$cmd$args"
+ $echo "$modename: cannot exec \$cmd$args"
exit 1
else
# Display what would be done.
# libtool uninstall mode
uninstall)
- progname="$progname: uninstall"
+ modename="$modename: uninstall"
rm="$nonopt"
files=
done
if test -z "$rm"; then
- $echo "$progname: you must specify an RM program" 1>&2
+ $echo "$modename: you must specify an RM program" 1>&2
$echo "$help" 1>&2
exit 1
fi
test -n "$dlname" && rmfiles="$rmfiles $dir/$dlname"
test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library"
+ $show "$rm $rmfiles"
+ $run $rm $rmfiles
+
+ if test -n "$library_names"; then
+ # Do each command in the postuninstall commands.
+ cmds=`eval \\$echo \"$postuninstall_cmds\"`
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ $show "$cmd"
+ $run eval "$cmd"
+ done
+ IFS="$save_ifs"
+ fi
+
+ if test -n "$old_library"; then
+ # Do each command in the old_postuninstall commands.
+ cmds=`eval \\$echo \"$old_postuninstall_cmds\"`
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ $show "$cmd"
+ $run eval "$cmd"
+ done
+ IFS="$save_ifs"
+ fi
+
# FIXME: should reinstall the best remaining shared library.
fi
;;
oldobj=`$echo "$name" | sed 's/\.lo$/\.o/'`
rmfiles="$rmfiles $dir/$oldobj"
fi
+ $show "$rm $rmfiles"
+ $run $rm $rmfiles
;;
- esac
- $show "$rm $rmfiles"
- $run $rm $rmfiles
+ *)
+ $show "$rm $rmfiles"
+ $run $rm $rmfiles
+ ;;
+ esac
done
exit 0
;;
"")
- $echo "$progname: you must specify a MODE" 1>&2
+ $echo "$modename: you must specify a MODE" 1>&2
$echo "$generic_help" 1>&2
exit 1
;;
esac
- $echo "$progname: invalid operation mode \`$mode'" 1>&2
+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
$echo "$generic_help" 1>&2
exit 1
fi # test -z "$show_help"
# We need to display help for each of the modes.
case "$mode" in
"") cat <<EOF
-Usage: $progname [OPTION]... [MODE-ARG]...
+Usage: $modename [OPTION]... [MODE-ARG]...
Provide generalized library-building support services.
link create a library or an executable
uninstall remove libraries from an installed directory
-MODE-ARGS vary depending on the MODE. Try \`$progname --help --mode=MODE' for
+MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
a more detailed description of MODE.
EOF
;;
compile)
cat <<EOF
-Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
+Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
Compile a source file into a libtool library object.
execute)
cat <<EOF
-Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
+Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
Automatically set library path, then run a program.
finish)
cat <<EOF
-Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
+Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
Complete the installation of libtool libraries.
install)
cat <<EOF
-Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
+Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
Install executables or libraries.
link)
cat <<EOF
-Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
+Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
Link object files or libraries together to form another library, or to
create an executable program.
The following components of LINK-COMMAND are treated specially:
-all-static do not do any dynamic linking at all
- -allow-undefined allow a libtool library to reference undefined symbols
-dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
-dlpreopen FILE link in FILE and add its symbols to dld_preloaded_symbols
-export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
-LLIBDIR search LIBDIR for required installed libraries
-lNAME OUTPUT-FILE requires the installed library libNAME
+ -no-undefined declare that a library does not refer to external symbols
-o OUTPUT-FILE create OUTPUT-FILE from the specified objects
-rpath LIBDIR the created library will eventually be installed in LIBDIR
-static do not do any dynamic linking of libtool libraries
uninstall)
cat <<EOF
-Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
+Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
Remove libraries from an installation directory.
;;
*)
- $echo "$progname: invalid operation mode \`$mode'" 1>&2
+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
$echo "$help" 1>&2
exit 1
;;
esac
-$echo
-$echo "Try \`$progname --help' for more information about other modes."
+echo
+$echo "Try \`$modename --help' for more information about other modes."
exit 0
# A lot of this script is taken from autoconf-2.10.
+echo=echo
+if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
+else
+ # The Solaris and AIX default echo program unquotes backslashes.
+ # This makes it impossible to quote backslashes using
+ # echo "$something" | sed 's/\\/\\\\/g'
+ # So, we emulate echo with printf '%s\n'
+ echo="printf %s\\n"
+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then :
+ else
+ # Oops. We have no working printf. Try to find a not-so-buggy echo.
+ echo=echo
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
+ for dir in $PATH /usr/ucb; do
+ if test -f $dir/echo && test "X`$dir/echo '\t'`" = 'X\t'; then
+ echo="$dir/echo"
+ break
+ fi
+ done
+ IFS="$save_ifs"
+ fi
+fi
+
# The name of this program.
-progname=`echo "$0" | sed 's%^.*/%%'`
+progname=`$echo "$0" | sed 's%^.*/%%'`
# Constants:
PROGRAM=ltconfig
PACKAGE=libtool
-VERSION=1.0f
+VERSION=1.0h
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5'
ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5'
rm="rm -f"
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\([\\"$\\\\]\)/\\\1/g'
+sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
# Same as above, but don't quote variable references.
-double_quote_subst='s/\([\\"\\\\]\)/\\\1/g'
+double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
# Global variables:
can_build_shared=yes
host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
case "$host_os" in
-aix*)
+aix3*)
# AIX sometimes has problems with the GCC collect2 program. For some
# reason, if we set the COLLECT_NAMES environment variable, the problems
# vanish in a puff of smoke.
# Determine commands to create old-style static archives.
old_archive_cmds='$AR cru $oldlib$oldobjs'
old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
# Set a sane default for `AR'.
test -z "$AR" && AR=ar
# Now see if the compiler is really GCC.
with_gcc=no
echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
- echo "$progname:394: checking whether we are using GNU C" >&5
+ echo "$progname:418: checking whether we are using GNU C" >&5
$rm conftest.c
cat > conftest.c <<EOF
yes;
#endif
EOF
- if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:402: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+ if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:426: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
with_gcc=yes
fi
$rm conftest.c
os2*)
# We can build DLLs from non-PIC.
;;
+ amigaos*)
+ # FIXME: we need at least 68020 code to build shared libraries, but
+ # adding the `-m68020' flag to GCC prevents building anything better,
+ # like `-m68040'.
+ pic_flag='-m68020 -resident32 -malways-restore-a4'
+ ;;
*)
pic_flag='-fPIC'
;;
echo > conftest.c
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $pic_flag -DPIC"
- echo "$progname:507: checking if $compiler PIC flag $pic_flag works" >&5
- if { (eval echo $progname:508: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
+ echo "$progname:537: checking if $compiler PIC flag $pic_flag works" >&5
+ if { (eval echo $progname:538: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
# Append any errors to the config.log.
cat conftest.err 1>&5
echo 'main(){return(0);}' > conftest.c
save_LDFLAGS="$LDFLAGS"
LDFLAGS="$LDFLAGS $link_static_flag"
-echo "$progname:550: checking if $compiler static flag $link_static_flag works" >&5
-if { (eval echo $progname:551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+echo "$progname:580: checking if $compiler static flag $link_static_flag works" >&5
+if { (eval echo $progname:581: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
echo "$ac_t$link_static_flag" 1>&6
else
echo "$ac_t"none 1>&6
if test "$with_gcc" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
- echo "$progname:583: checking for ld used by GCC" >&5
+ echo "$progname:613: checking for ld used by GCC" >&5
ac_prog=`($CC -print-prog-name=ld) 2>&5`
case "$ac_prog" in
# Accept absolute paths.
esac
elif test "$with_gnu_ld" = yes; then
echo $ac_n "checking for GNU ld... $ac_c" 1>&6
- echo "$progname:601: checking for GNU ld" >&5
+ echo "$progname:631: checking for GNU ld" >&5
else
echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
- echo "$progname:604: checking for non-GNU ld" >&5
+ echo "$progname:634: checking for non-GNU ld" >&5
fi
if test -z "$LD"; then
hardcode_shlibpath_var=unsupported
runpath_var=
+case "$host_os" in
+amigaos* | sunos4*)
+ # On these operating systems, we should treat GNU ld like the system ld.
+ gnu_ld_acts_native=yes
+ ;;
+*)
+ gnu_ld_acts_native=no
+ ;;
+esac
+
ld_shlibs=yes
-if test "$with_gnu_ld" = yes; then
- # See if GNU ld supports shared libraries.
+if test "$with_gnu_ld" = yes && test "$gnu_ld_acts_native" != yes; then
- case "$host_os" in
- sunos4*)
+ # See if GNU ld supports shared libraries.
+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+ archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs'
+ runpath_var=LD_RUN_PATH
+ hardcode_runpath_var=yes
ld_shlibs=yes
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-
- *)
- if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
- runpath_var=LD_RUN_PATH
- hardcode_runpath_var=yes
- ld_shlibs=yes
- else
- ld_shlibs=no
- fi
- ;;
- esac
+ else
+ ld_shlibs=no
+ fi
if test "$ld_shlibs" = yes; then
- archive_cmds='$CC -shared ${wl}-soname $wl$soname -o $lib$libobjs$deplibs'
hardcode_libdir_flag_spec='${wl}-rpath $wl$libdir'
export_dynamic_flag_spec='${wl}-export-dynamic'
fi
case "$host_os" in
aix3*)
allow_undefined_flag=unsupported
- archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '"'s/.* //'"' > $lib.exp;$LD -o $objdir/$soname$libobjs -bE:$lib.exp -T512 -H512 -bM:SRE$deplibs;$AR cru $lib $objdir/$soname'
+ archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' > $lib.exp;$LD -o $objdir/$soname$libobjs -bE:$lib.exp -T512 -H512 -bM:SRE;$AR cru $lib $objdir/$soname'
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
hardcode_minus_L=yes
aix4*)
allow_undefined_flag=unsupported
- archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '"'s/.* //'"' > $lib.exp;$CC -o $objdir/$soname$libobjs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry$deplibs;$AR cru $lib $objdir/$soname'
+ archive_cmds='$NM$libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' > $lib.exp;$CC -o $objdir/$soname$libobjs ${wl}-bE:$lib.exp ${wl}-bM:SRE ${wl}-bnoentry;$AR cru $lib $objdir/$soname'
hardcode_direct=yes
hardcode_minus_L=yes
;;
+ amigaos*)
+ archive_cmds='$rm $objdir/a2ixlibrary.data;$echo "#define NAME $libname" > $objdir/a2ixlibrary.data;$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data;$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data;$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data;$AR cru $lib$libobjs;$RANLIB $lib;(cd $objdir && a2ixlibrary -32)'
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ ;;
+
# FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
# support. Future versions do this automatically, but an explicit c++rt0.o
# doesn't break anything, and helps significantly (at the cost of a little
# extra space).
freebsd2.2*)
- archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs /usr/lib/c++rt0.o'
+ archive_cmds='$LD -Bshareable -o $lib$libobjs /usr/lib/c++rt0.o'
+ hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
hardcode_shlibpath_var=no
# Unfortunately, older versions of FreeBSD 2 don't have this feature.
freebsd2*)
- archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -Bshareable -o $lib$libobjs'
hardcode_direct=yes
hardcode_minus_L=yes
hardcode_shlibpath_var=no
# FreeBSD 3, at last, uses gcc -shared to do shared libraries.
freebsd3*)
- archive_cmds='$CC -shared -o $lib$libobjs$deplibs'
+ archive_cmds='$CC -shared -o $lib$libobjs'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
;;
hpux9*)
- archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs$deplibs;mv $objdir/$soname $lib'
+ archive_cmds='$rm $objdir/$soname;$LD -b +s +b $install_libdir -o $objdir/$soname$libobjs;mv $objdir/$soname $lib'
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
+ export_dynamic_flag_spec='${wl}-E'
;;
hpux10*)
- archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -b +h $soname +s +b $install_libdir -o $lib$libobjs'
hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
+ export_dynamic_flag_spec='${wl}-E'
;;
irix5* | irix6*)
- archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs$deplibs'
+ archive_cmds='$LD -shared -o $lib -soname $soname -set_version $verstring$libobjs'
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
;;
;;
openbsd*)
- archive_cmds='$LD -Bshareable -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -Bshareable -o $lib$libobjs'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
hardcode_shlibpath_var=no
hardcode_libdir_flag_spec='-L$libdir'
hardcode_minus_L=yes
allow_undefined_flag=unsupported
- archive_cmds='echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def;echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def;echo DATA >> $objdir/$libname.def;echo " SINGLE NONSHARED" >> $objdir/$libname.def;echo EXPORTS >> $objdir/$libname.def;e
-mxexp$libobjs >> $objdir/$libname.def;$CC -Zdll -Zcrtdll -o $lib$libobjs $objdir/$libname.def'
+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def;$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def;$echo DATA >> $objdir/$libname.def;$echo " SINGLE NONSHARED" >> $objdir/$libname.def;$echo EXPORTS >> $objdir/$libname.def;emxexp$libobjs >> $objdir/$libname.def;$CC -Zdll -Zcrtdll -o $lib$libobjs $objdir/$libname.def'
old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
;;
;;
sco3.2v5*)
- archive_cmds='$LD -G -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -G -o $lib$libobjs'
hardcode_direct=yes
;;
solaris2*)
- case "$host_cpu" in
- i386) archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs' ;;
- *) archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs' ;;
- esac
+ archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_shlibpath_var=no
;;
sunos4*)
- archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
+ if test "$with_gcc" = yes; then
+ archive_cmds='$CC -shared -o $lib$libobjs'
+ else
+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib$libobjs'
+ fi
+
+ if test "$with_gnu_ld" = yes; then
+ export_dynamic_flag_spec='${wl}-export-dynamic'
+ fi
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=yes
hardcode_minus_L=yes
;;
uts4*)
- archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs'
+ archive_cmds='$LD -G -h $soname -o $lib$libobjs'
hardcode_libdir_flag_spec='-L$libdir'
hardcode_direct=no
hardcode_minus_L=no
/*) ;; # Let the user override the test with a path.
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
- for ac_dir in /usr/ucb $PATH /bin; do
+ for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do
test -z "$ac_dir" && dir=.
if test -f $ac_dir/nm; then
# Check to see if the nm accepts a BSD-compat flag.
- if ($ac_dir/nm -B /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then
+ # Adding the `sed 1!d' prevents false positives on HP-UX, which says:
+ # nm: unknown option "B" ignored
+ if ($ac_dir/nm -B /dev/null 2>&1 | sed '1!d'; exit 0) | egrep /dev/null >/dev/null; then
NM="$ac_dir/nm -B"
- elif ($ac_dir/nm -p /dev/null 2>&1; exit 0) | grep /dev/null >/dev/null; then
+ elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1!d'; exit 0) | egrep /dev/null >/dev/null; then
NM="$ac_dir/nm -p"
else
NM="$ac_dir/nm"
aix*)
symcode='[BCDTU]'
;;
+irix*)
+ # Cannot use undefined symbols on IRIX because inlined functions mess us up.
+ symcode='[BCDEGRST]'
+ ;;
solaris2*)
symcode='[BDTU]'
;;
main(){nm_test_var='a';nm_test_func();return(0);}
EOF
-echo "$progname:900: checking if global_symbol_pipe works" >&5
-if { (eval echo $progname:901: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
+echo "$progname:953: checking if global_symbol_pipe works" >&5
+if { (eval echo $progname:954: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.o; then
# Now try to grab the symbols.
nlist=conftest.nm
- if { echo "$progname:904: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
+ if { echo "$progname:957: eval \"$NM conftest.o | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.o | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
# Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then
dld_preloaded_symbols[] =
{
EOF
- sed 's/^\(.*\) \(.*\)$/ {"\1", \&\2},/' < "$nlist" >> conftest.c
+ sed 's/^\(.*\) \(.*\)$/ {"\1", (__ptr_t) \&\2},/' < "$nlist" >> conftest.c
cat <<\EOF >> conftest.c
{0},
};
save_CFLAGS="$CFLAGS"
LIBS='conftestm.o'
CFLAGS="$CFLAGS$no_builtin_flag"
- if { (eval echo $progname:962: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+ if { (eval echo $progname:1015: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
pipe_works=yes
else
echo "$progname: failed program was:" >&5
libname_spec='lib$name'
soname_spec=
postinstall_cmds=
+postuninstall_cmds=
finish_cmds=
+finish_eval=
shlibpath_var=
version_type=none
dynamic_linker="$host_os ld.so"
soname_spec='$libname.so.$major'
;;
+amigaos*)
+ library_names_spec='$libname.ixlibrary $libname.a'
+ # Create ${libname}_ixlibrary.a entries in /sys/libs.
+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "$lib" | sed '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
+ ;;
+
freebsd2* | freebsd3*)
version_type=sunos
library_names_spec='$libname.so.$versuffix $libname.so'
;;
os2*)
- version_type=none
libname_spec='$name'
library_names_spec='$libname.dll $libname.a'
dynamic_linker='OS/2 ld.exe'
rmdir .libs 2>/dev/null
echo "$ac_t$objdir" 1>&6
+# Copy echo and quote the copy, instead of the original, because it is
+# used later.
+ltecho="$echo"
+
# Now quote all the things that may contain metacharacters.
-for var in old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
+for var in ltecho old_CC old_CFLAGS old_CPPFLAGS old_LD old_NM old_RANLIB \
old_LN_S AR CC LD LN_S NM reload_flag reload_cmds wl pic_flag \
link_static_flag no_builtin_flag export_dynamic_flag_spec \
profile_flag_pattern libname_spec library_names_spec soname_spec RANLIB \
old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
- archive_cmds postinstall_cmds \
- allow_undefined_flag finish_cmds global_symbol_pipe \
+ old_postuninstall_cmds archive_cmds postinstall_cmds postuninstall_cmds \
+ allow_undefined_flag finish_cmds finish_eval global_symbol_pipe \
striplib old_striplib \
hardcode_libdir_flag_spec hardcode_libdir_separator; do
case "$var" in
reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
- old_postinstall_cmds | archive_cmds | postinstall_cmds | finish_cmds)
+ old_postinstall_cmds | old_postuninstall_cmds | archive_cmds | \
+ postinstall_cmds | postuninstall_cmds | finish_cmds)
# Double-quote double-evaled strings.
- eval "$var=\`echo \"\$$var\" | sed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\"\`"
+ eval "$var=\`\$echo \"\$$var\" | sed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\"\`"
;;
*)
- eval "$var=\`echo \"\$$var\" | sed \"\$sed_quote_subst\"\`"
+ eval "$var=\`\$echo \"\$$var\" | sed \"\$sed_quote_subst\"\`"
;;
esac
done
# Compiler and other test output produced by $progname, useful for
# debugging $progname, is in ./config.log if it exists.
+# An echo program that doesn't interpret backslashes.
+echo="$ltecho"
+
# The version of $progname that generated this script.
LTCONFIG_VERSION="$VERSION"
RANLIB="$RANLIB"
old_archive_cmds="$old_archive_cmds"
old_postinstall_cmds="$old_postinstall_cmds"
+old_postuninstall_cmds="$old_postuninstall_cmds"
# Create an old-style archive from a shared archive.
old_archive_from_new_cmds="$old_archive_from_new_cmds"
# Commands used to build and install a shared archive.
archive_cmds="$archive_cmds"
postinstall_cmds="$postinstall_cmds"
+postuninstall_cmds="$postuninstall_cmds"
# Flag that allows shared libraries with undefined symbols to be built.
allow_undefined_flag="$allow_undefined_flag"
# Commands used to finish a libtool library installation in a directory.
finish_cmds="$finish_cmds"
+# Same as above, but a single script fragment to be evaled but not shown.
+finish_eval="$finish_eval"
+
# Take the output of nm and produce a listing of raw symbols and C names.
global_symbol_pipe="$global_symbol_pipe"
# Flag to hardcode \$libdir into a binary during linking.
# This must work even if \$libdir does not exist.
-#hardcode_libdir_flag_spec="$hardcode_libdir_flag_spec"
+hardcode_libdir_flag_spec="$hardcode_libdir_flag_spec"
# Whether we need a single -rpath flag with a separated argument.
hardcode_libdir_separator="$hardcode_libdir_separator"
;;
*) cat <<EOF >> $ofile
# Find the path to this script.
-thisdir=\`echo "\$0" | sed -e 's%/[^/]*\$%%'\`
+thisdir=\`$echo "\$0" | sed -e 's%/[^/]*\$%%'\`
test "X\$0" = "X\$thisdir" && thisdir=.
# Execute the libtool backend.
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
-#FIXME: echo=echo
-echo='printf %s\n'
-if test "X`$echo '\t'`" = 'X\t'; then :
-else
- # The Solaris and AIX default echo program unquotes backslashes.
- # This makes it impossible to quote backslashes using
- # echo "$something" | sed 's/\\/\\\\/g'
- # So, we emulate echo with printf '%s\n'
- echo='printf %s\n'
- if test "X`$echo '\t'`" = 'X\t'; then :
- else
- # Oops. We have no working printf. Try to find a not-so-buggy echo.
- echo=echo
- IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}:"
- save_PATH="$PATH"
- PATH="$PATH":/usr/ucb
- for dir in $PATH; do
- if test -f $dir/echo && test "X`$dir/echo '\t'`" = 'X\t'; then
- echo="$dir/echo"
- break
- fi
- done
- IFS="$save_ifs"
- PATH="$save_PATH"
- fi
-fi
-
# The name of this program.
progname=`$echo "$0" | sed 's%^.*/%%'`
+modename="$progname"
# Constants.
PROGRAM=ltmain.sh
PACKAGE=libtool
-VERSION=1.0f
+VERSION=1.0h
default_mode=
help="Try \`$progname --help' for more information."
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
-sed_quote_subst='s/\([\\"$\\\\]\)/\\\1/g'
+sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
# NLS nuisances.
# Only set LANG and LC_ALL to C if already set.
if test "${LANG+set}" = set; then LANG=C; export LANG; fi
if test "$LTCONFIG_VERSION" != "$VERSION"; then
- $echo "$progname: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
+ echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
exit 1
fi
if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
- $echo "$progname: not configured to build any kind of library" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
+ echo "$modename: not configured to build any kind of library" 1>&2
+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
exit 1
fi
;;
--version)
- $echo "$PROGRAM (GNU $PACKAGE) $VERSION"
+ echo "$PROGRAM (GNU $PACKAGE) $VERSION"
exit 0
;;
;;
--features)
- $echo "host: $host"
+ echo "host: $host"
if test "$build_libtool_libs" = yes; then
- $echo "enable shared libraries"
+ echo "enable shared libraries"
else
- $echo "disable shared libraries"
+ echo "disable shared libraries"
fi
if test "$build_old_libs" = yes; then
- $echo "enable static libraries"
+ echo "enable static libraries"
else
- $echo "disable static libraries"
+ echo "disable static libraries"
fi
exit 0
;;
;;
-*)
- $echo "$progname: unrecognized option \`$arg'" 1>&2
+ $echo "$modename: unrecognized option \`$arg'" 1>&2
$echo "$help" 1>&2
exit 1
;;
done
if test -n "$prevopt"; then
- $echo "$progname: option \`$prevopt' requires an argument" 1>&2
+ $echo "$modename: option \`$prevopt' requires an argument" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Just use the default operation mode.
if test -z "$mode"; then
if test -n "$nonopt"; then
- $echo "$progname: warning: cannot infer operation mode from \`$nonopt'" 1>&2
+ $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2
else
- $echo "$progname: warning: cannot infer operation mode without MODE-ARGS" 1>&2
+ $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2
fi
fi
;;
# Only execute mode is allowed to have -dlopen flags.
if test -n "$execute_dlfiles" && test "$mode" != execute; then
- $echo "$progname: unrecognized option \`-dlopen'" 1>&2
+ $echo "$modename: unrecognized option \`-dlopen'" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Change the help message to a mode-specific one.
generic_help="$help"
- help="Try \`$progname --help --mode=$mode' for more information."
+ help="Try \`$modename --help --mode=$mode' for more information."
# These modes are in order of execution frequency so that they run quickly.
case "$mode" in
# libtool compile mode
compile)
- progname="$progname: compile"
+ modename="$modename: compile"
# Get the compilation command and the source file.
base_compile=
lastarg=
do
# The only flag that cannot be specified is the output filename.
if test "X$arg" = "X-o"; then
- $echo "$progname: you cannot specify the output filename with \`-o'" 1>&2
+ $echo "$modename: you cannot specify the output filename with \`-o'" 1>&2
$echo "$help" 1>&2
exit 1
fi
case "$libobj" in
*.lo) obj=`$echo "$libobj" | sed -e 's/\.lo$/.o/'` ;;
*)
- $echo "$progname: cannot determine name of library object from \`$srcfile'" 1>&2
+ $echo "$modename: cannot determine name of library object from \`$srcfile'" 1>&2
exit 1
;;
esac
if test -z "$base_compile"; then
- $echo "$progname: you must specify a compilation command" 1>&2
+ $echo "$modename: you must specify a compilation command" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Create an invalid libtool object if no PIC, so that we don't accidentally
# link it into a program.
if test "$build_libtool_libs" != yes; then
- $show "$echo timestamp > $libobj"
- $run eval "\$echo timestamp > \$libobj" || exit $?
+ $show "echo timestamp > $libobj"
+ $run eval "echo timestamp > \$libobj" || exit $?
fi
exit 0
# libtool link mode
link)
- progname="$progname: link"
+ modename="$modename: link"
CC="$nonopt"
- allow_undefined=no
+ allow_undefined=yes
compile_command="$CC"
finalize_command="$CC"
case "$arg" in
-all-static | -static)
if test "X$arg" = "X-all-static" && test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
- $echo "$progname: warning: complete static linking is impossible in this configuration" 1>&2
+ $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
fi
build_libtool_libs=no
build_old_libs=yes
;;
-allow-undefined)
- allow_undefined=yes
+ # FIXME: remove this flag sometime in the future.
+ $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2
continue
;;
# Add the corresponding hardcode_libdir_flag, if it is not identical.
;;
*)
- $echo "$progname: \`-L$dir' cannot specify a relative directory" 1>&2
+ $echo "$modename: \`-L$dir' cannot specify a relative directory" 1>&2
exit 1
;;
esac
-l*) deplibs="$deplibs $arg" ;;
+ -no-undefined)
+ allow_undefined=no
+ continue
+ ;;
+
-o) prev=output ;;
-rpath)
# Check to see that this really is a libtool archive.
if egrep '^# Generated by ltmain.sh' $arg >/dev/null 2>&1; then :
else
- $echo "$progname: \`$arg' is not a valid libtool archive" 1>&2
+ $echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
exit 1
fi
esac
if test -z "$libdir"; then
- $echo "$progname: \`$arg' contains no -rpath information" 1>&2
+ $echo "$modename: \`$arg' contains no -rpath information" 1>&2
exit 1
fi
done
if test -z "$linklib"; then
- $echo "$progname: cannot find name of link library for \`$arg'" 1>&2
+ $echo "$modename: cannot find name of link library for \`$arg'" 1>&2
exit 1
fi
*)
absdir=`cd "$dir" && pwd`
if test -z "$absdir"; then
- $echo "$progname: cannot determine absolute directory name of \`$dir'" 1>&2
+ $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
exit 1
fi
dir="$absdir"
;;
*)
- $echo "$progname: \`$hardcode_action' is an unknown hardcode action" 1>&2
+ $echo "$modename: \`$hardcode_action' is an unknown hardcode action" 1>&2
exit 1
;;
esac
else
# Transform directly to old archives if we don't build new libraries.
if test -n "$pic_flag" && test -z "$old_library"; then
- $echo "$progname: cannot find static library for \`$arg'" 1>&2
+ $echo "$modename: cannot find static library for \`$arg'" 1>&2
exit 1
fi
esac
# Now actually substitute the argument into the commands.
- compile_command="$compile_command $arg"
- finalize_command="$finalize_command $arg"
+ if test -n "$arg"; then
+ compile_command="$compile_command $arg"
+ finalize_command="$finalize_command $arg"
+ fi
done
if test -n "$prev"; then
- $echo "$progname: the \`$prevarg' option requires an argument" 1>&2
+ $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
$echo "$help" 1>&2
exit 1
fi
oldobjs=
case "$output" in
"")
- $echo "$progname: you must specify an output file" 1>&2
+ $echo "$modename: you must specify an output file" 1>&2
$echo "$help" 1>&2
exit 1
;;
*/*)
- $echo "$progname: output file \`$output' must have no directory components" 1>&2
+ $echo "$modename: output file \`$output' must have no directory components" 1>&2
exit 1
;;
case "$output" in
lib*) ;;
*)
- $echo "$progname: libtool library \`$arg' must begin with \`lib'" 1>&2
+ $echo "$modename: libtool library \`$arg' must begin with \`lib'" 1>&2
$echo "$help" 1>&2
exit 1
;;
age=0
if test -n "$objs"; then
- $echo "$progname: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
+ $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
exit 1
fi
# How the heck are we supposed to write a wrapper for a shared library?
if test -n "$link_against_libtool_libs"; then
- $echo "$progname: libtool library \`$output' may not depend on uninstalled libraries:$link_against_libtool_libs" 1>&2
+ $echo "$modename: libtool library \`$output' may not depend on uninstalled libraries:$link_against_libtool_libs" 1>&2
exit 1
fi
deplibs="$deplibs -lc"
if test -n "$dlfiles$dlprefiles"; then
- $echo "$progname: warning: \`-dlopen' is ignored while creating libtool libraries" 1>&2
+ $echo "$modename: warning: \`-dlopen' is ignored while creating libtool libraries" 1>&2
# Nullify the symbol file.
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
finalize_command=`$echo "$finalize_command" | sed "s% @SYMFILE@%%"`
fi
if test -z "$rpath"; then
- $echo "$progname: you must specify an installation directory with \`-rpath'" 1>&2
+ $echo "$modename: you must specify an installation directory with \`-rpath'" 1>&2
$echo "$help" 1>&2
exit 1
fi
set dummy $rpath
if test $# -gt 2; then
- $echo "$progname: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
+ $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2
fi
install_libdir="$2"
IFS="$save_ifs"
if test -n "$5"; then
- $echo "$progname: too many parameters to \`-version-info'" 1>&2
+ $echo "$modename: too many parameters to \`-version-info'" 1>&2
$echo "$help" 1>&2
exit 1
fi
case "$current" in
0 | [1-9] | [1-9][0-9]*) ;;
*)
- $echo "$progname: CURRENT \`$current' is not a nonnegative integer" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
;;
esac
case "$revision" in
0 | [1-9] | [1-9][0-9]*) ;;
*)
- $echo "$progname: REVISION \`$revision' is not a nonnegative integer" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
;;
esac
case "$age" in
0 | [1-9] | [1-9][0-9]*) ;;
*)
- $echo "$progname: AGE \`$age' is not a nonnegative integer" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
;;
esac
if test $age -gt $current; then
- $echo "$progname: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
- $echo "$progname: \`$vinfo' is not valid version information" 1>&2
+ $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2
+ $echo "$modename: \`$vinfo' is not valid version information" 1>&2
exit 1
fi
;;
*)
- $echo "$progname: unknown library version type \`$version_type'" 1>&2
- $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
+ $echo "$modename: unknown library version type \`$version_type'" 1>&2
+ echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
exit 1
;;
esac
# Check to see if the archive will have undefined symbols.
if test "$allow_undefined" = yes; then
if test "$allow_undefined_flag" = unsupported; then
- $echo "$progname: warning: undefined symbols not allowed in $host shared libraries" 1>&2
+ $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2
build_libtool_libs=no
build_old_libs=yes
fi
IFS="$save_ifs"
# Create links to the real library.
- for link in $linknames; do
- $show "(cd $objdir && $LN_S $realname $link)"
- $run eval '(cd $objdir && $LN_S $realname $link)' || exit $?
+ for linkname in $linknames; do
+ $show "(cd $objdir && $LN_S $realname $linkname)"
+ $run eval '(cd $objdir && $LN_S $realname $linkname)' || exit $?
done
# If -export-dynamic was specified, set the dlname.
*.lo | *.o)
if test -n "$link_against_libtool_libs"; then
- $echo "$progname: error: cannot link libtool libraries into reloadable objects" 1>&2
+ $echo "$modename: error: cannot link libtool libraries into reloadable objects" 1>&2
exit 1
fi
if test -n "$deplibs"; then
- $echo "$progname: warning: \`-l' and \`-L' are ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-l' and \`-L' are ignored while creating objects" 1>&2
fi
if test -n "$dlfiles$dlprefiles"; then
- $echo "$progname: warning: \`-dlopen' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-dlopen' is ignored while creating objects" 1>&2
# Nullify the symbol file.
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
finalize_command=`$echo "$finalize_command" | sed "s% @SYMFILE@%%"`
fi
if test -n "$rpath"; then
- $echo "$progname: warning: \`-rpath' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-rpath' is ignored while creating objects" 1>&2
fi
if test -n "$vinfo"; then
- $echo "$progname: warning: \`-version-info' is ignored while creating objects" 1>&2
+ $echo "$modename: warning: \`-version-info' is ignored while creating objects" 1>&2
fi
case "$output" in
*.lo)
if test -n "$objs"; then
- $echo "$progname: cannot build library object \`$output' from non-libtool objects" 1>&2
+ $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
exit 1
fi
libobj="$output"
if test "$build_libtool_libs" != yes; then
# Create an invalid libtool object if no PIC, so that we don't
# accidentally link it into a program.
- $show "$echo timestamp > $libobj"
- $run eval "\$echo timestamp > $libobj" || exit $?
+ $show "echo timestamp > $libobj"
+ $run eval "echo timestamp > $libobj" || exit $?
exit 0
fi
*)
if test -n "$vinfo"; then
- $echo "$progname: warning: \`-version-info' is ignored while linking programs" 1>&2
+ $echo "$modename: warning: \`-version-info' is ignored while linking programs" 1>&2
fi
if test -n "$rpath"; then
if sort "$nlist" | uniq > "$nlist"T; then
mv -f "$nlist"T "$nlist"
wcout=`wc "$nlist" 2>/dev/null`
- count=`$echo "$wcout" | sed 's/^[ ]*\([0-9][0-9]*\).*$/\1/'`
+ count=`echo "$wcout" | sed 's/^[ ]*\([0-9][0-9]*\).*$/\1/'`
(test "$count" -ge 0) 2>/dev/null || count=-1
else
$rm "$nlist"T
if test -f "$nlist"; then
sed -e 's/^.* \(.*\)$/extern char \1;/' < "$nlist" >> "$objdir/$dlsyms"
else
- $echo '/* NONE */' >> "$objdir/$dlsyms"
+ echo '/* NONE */' >> "$objdir/$dlsyms"
EOF
fi
EOF
if test -f "$nlist"; then
- sed 's/^\(.*\) \(.*\)$/ {"\1", \&\2},/' < "$nlist" >> "$objdir/$dlsyms"
+ sed 's/^\(.*\) \(.*\)$/ {"\1", (__ptr_t) \&\2},/' < "$nlist" >> "$objdir/$dlsyms"
fi
cat <<\EOF >> "$objdir/$dlsyms"
;;
*)
- echo "$progname: unknown suffix for \`$dlsyms'" 1>&2
+ $echo "$modename: unknown suffix for \`$dlsyms'" 1>&2
exit 1
;;
esac
compile_command=`$echo "$compile_command" | sed "s%@SYMFILE@%$objdir/${output}S.o%"`
finalize_command=`$echo "$finalize_command" | sed "s%@SYMFILE@%$objdir/${output}S.o%"`
elif test "$export_dynamic" != yes; then
- test -n "$dlfiles$dlprefiles" && $echo "$progname: warning: \`-dlopen' and \`-dlpreopen' are ignored without \`-export-dynamic'" 1>&2
+ test -n "$dlfiles$dlprefiles" && $echo "$modename: warning: \`-dlopen' and \`-dlpreopen' are ignored without \`-export-dynamic'" 1>&2
else
# We keep going just in case the user didn't refer to
# dld_preloaded_symbols. The linker will fail if global_symbol_pipe
# really was required.
- $echo "$progname: not configured to extract global symbols from dlpreopened files" 1>&2
+ $echo "$modename: not configured to extract global symbols from dlpreopened files" 1>&2
# Nullify the symbol file.
compile_command=`$echo "$compile_command" | sed "s% @SYMFILE@%%"`
case "$hardcode_action" in
relink)
# AGH! Flame the AIX and HP-UX people for me, will ya?
- $echo "$progname: warning: using a buggy system linker" 1>&2
- $echo "$progname: relinking will be required before \`$output' can be installed" 1>&2
+ $echo "$modename: warning: using a buggy system linker" 1>&2
+ $echo "$modename: relinking will be required before \`$output' can be installed" 1>&2
;;
esac
# The program doesn't exist.
\$echo "\$0: error: \$progdir/\$program does not exist" 1>&2
\$echo "This script is just a wrapper for \$program." 1>&2
- \$echo "See the $PACKAGE documentation for more information." 1>&2
+ echo "See the $PACKAGE documentation for more information." 1>&2
exit 1
fi
fi
# libtool install mode
install)
- progname="$progname: install"
+ modename="$modename: install"
# There may be an optional /bin/sh argument at the beginning of
# install_prog (especially on Windows NT).
done
if test -z "$install_prog"; then
- $echo "$progname: you must specify an install program" 1>&2
+ $echo "$modename: you must specify an install program" 1>&2
$echo "$help" 1>&2
exit 1
fi
if test -n "$prev"; then
- $echo "$progname: the \`$prev' option requires an argument" 1>&2
+ $echo "$modename: the \`$prev' option requires an argument" 1>&2
$echo "$help" 1>&2
exit 1
fi
if test -z "$files"; then
if test -z "$dest"; then
- $echo "$progname: no file or destination specified" 1>&2
+ $echo "$modename: no file or destination specified" 1>&2
else
- $echo "$progname: you must specify a destination" 1>&2
+ $echo "$modename: you must specify a destination" 1>&2
fi
$echo "$help" 1>&2
exit 1
# Not a directory, so check to see that there is only one file specified.
set dummy $files
if test $# -gt 2; then
- $echo "$progname: \`$dest' is not a directory" 1>&2
+ $echo "$modename: \`$dest' is not a directory" 1>&2
$echo "$help" 1>&2
exit 1
fi
case "$file" in
*.lo) ;;
*)
- $echo "$progname: \`$destdir' must be an absolute directory name" 1>&2
+ $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
$echo "$help" 1>&2
exit 1
;;
# Check to see that this really is a libtool archive.
if egrep '^# Generated by ltmain.sh' $file >/dev/null 2>&1; then :
else
- $echo "$progname: \`$file' is not a valid libtool archive" 1>&2
+ $echo "$modename: \`$file' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
exit 1
fi
$show "$striplib $destdir/$realname"
$run $striplib $destdir/$realname || exit $?
else
- $echo "$progname: warning: no library stripping program" 1>&2
+ $echo "$modename: warning: no library stripping program" 1>&2
fi
fi
destfile=
;;
*)
- $echo "$progname: cannot copy a libtool object to \`$destfile'" 1>&2
+ $echo "$modename: cannot copy a libtool object to \`$destfile'" 1>&2
$echo "$help" 1>&2
exit 1
;;
# Check the variables that should have been set.
if test -z "$link_against_libtool_libs" || test -z "$finalize_command"; then
- $echo "$progname: invalid libtool wrapper script \`$file'" 1>&2
+ $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
exit 1
fi
fi
libfile="$libdir/`$echo "$lib" | sed 's%^.*/%%g'`"
if test -z "$libdir"; then
- $echo "$progname: warning: \`$lib' contains no -rpath information" 1>&2
+ $echo "$modename: warning: \`$lib' contains no -rpath information" 1>&2
elif test -f "$libfile"; then :
else
- $echo "$progname: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
+ $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
finalize=no
fi
done
if test "$hardcode_action" = relink; then
if test "$finalize" = yes; then
- $echo "$progname: warning: relinking \`$file' on behalf of your buggy system linker" 1>&2
+ $echo "$modename: warning: relinking \`$file' on behalf of your buggy system linker" 1>&2
$show "$finalize_command"
if $run eval "$finalize_command"; then :
else
- $echo "$progname: error: relink \`$file' with the above command before installing it" 1>&2
+ $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
continue
fi
file="$objdir/$file"T
else
- $echo "$progname: warning: cannot relink \`$file' on behalf of your buggy system linker" 1>&2
+ $echo "$modename: warning: cannot relink \`$file' on behalf of your buggy system linker" 1>&2
fi
else
# Install the binary that we compiled earlier.
$show "$old_striplib $oldlib"
$run $old_striplib $oldlib || exit $?
else
- $echo "$progname: warning: no static library stripping program" 1>&2
+ $echo "$modename: warning: no static library stripping program" 1>&2
fi
fi
done
if test -n "$future_libdirs"; then
- $echo "$progname: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
+ $echo "$modename: warning: remember to run \`$progname --finish$future_libdirs'" 1>&2
fi
if test -n "$current_libdirs"; then
# libtool finish mode
finish)
- progname="$progname: finish"
+ modename="$modename: finish"
libdirs="$nonopt"
- if test -n "$finish_cmds" && test -n "$libdirs"; then
+ if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
for dir
do
libdirs="$libdirs $dir"
done
for libdir in $libdirs; do
- # Do each command in the postinstall commands.
- cmds=`eval \\$echo \"$finish_cmds\"`
- IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
- for cmd in $cmds; do
+ if test -n "$finish_cmds"; then
+ # Do each command in the finish commands.
+ cmds=`eval \\$echo \"$finish_cmds\"`
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ $show "$cmd"
+ $run eval "$cmd"
+ done
IFS="$save_ifs"
- $show "$cmd"
- $run eval "$cmd"
- done
- IFS="$save_ifs"
+ fi
+ if test -n "$finish_eval"; then
+ # Do the single finish_eval.
+ cmds=`eval \\$echo \"$finish_eval\"`
+ $run eval "$cmds"
+ fi
done
fi
- $echo "To link against installed libraries in LIBDIR, users may have to:"
+ echo "To link against installed libraries in LIBDIR, users may have to:"
if test -n "$shlibpath_var"; then
- $echo " - add LIBDIR to their \`$shlibpath_var' environment variable"
+ echo " - add LIBDIR to their \`$shlibpath_var' environment variable"
fi
- $echo " - use the \`-LLIBDIR' linker flag"
+ echo " - use the \`-LLIBDIR' linker flag"
exit 0
;;
# libtool execute mode
execute)
- progname="$progname: execute"
+ modename="$modename: execute"
# The first argument is the command name.
cmd="$nonopt"
if test -z "$cmd"; then
- $echo "$progname: you must specify a COMMAND" 1>&2
+ $echo "$modename: you must specify a COMMAND" 1>&2
$echo "$help"
exit 1
fi
for file in $execute_dlfiles; do
if test -f "$file"; then :
else
- $echo "$progname: \`$file' is not a file" 1>&2
+ $echo "$modename: \`$file' is not a file" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Check to see that this really is a libtool archive.
if egrep '^# Generated by ltmain.sh' $file >/dev/null 2>&1; then :
else
- $echo "$progname: \`$lib' is not a valid libtool archive" 1>&2
+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
exit 1
fi
# Skip this library if it cannot be dlopened.
if test -z "$dlname"; then
# Warn if it was a shared library.
- test -n "$library_names" && $echo "$progname: warning: \`$file' was not linked with \`-export-dynamic'"
+ test -n "$library_names" && $echo "$modename: warning: \`$file' was not linked with \`-export-dynamic'"
continue
fi
if test -f "$dir/$objdir/$dlname"; then
dir="$dir/$objdir"
else
- $echo "$progname: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
+ $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
exit 1
fi
;;
;;
*)
- $echo "$progname: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
+ $echo "$modename: warning \`-dlopen' is ignored for non-libtool libraries and objects" 1>&2
continue
;;
esac
# Now actually exec the command.
eval "exec \$cmd$args"
- $echo "$progname: cannot exec \$cmd$args"
+ $echo "$modename: cannot exec \$cmd$args"
exit 1
else
# Display what would be done.
# libtool uninstall mode
uninstall)
- progname="$progname: uninstall"
+ modename="$modename: uninstall"
rm="$nonopt"
files=
done
if test -z "$rm"; then
- $echo "$progname: you must specify an RM program" 1>&2
+ $echo "$modename: you must specify an RM program" 1>&2
$echo "$help" 1>&2
exit 1
fi
test -n "$dlname" && rmfiles="$rmfiles $dir/$dlname"
test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library"
+ $show "$rm $rmfiles"
+ $run $rm $rmfiles
+
+ if test -n "$library_names"; then
+ # Do each command in the postuninstall commands.
+ cmds=`eval \\$echo \"$postuninstall_cmds\"`
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ $show "$cmd"
+ $run eval "$cmd"
+ done
+ IFS="$save_ifs"
+ fi
+
+ if test -n "$old_library"; then
+ # Do each command in the old_postuninstall commands.
+ cmds=`eval \\$echo \"$old_postuninstall_cmds\"`
+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=';'
+ for cmd in $cmds; do
+ IFS="$save_ifs"
+ $show "$cmd"
+ $run eval "$cmd"
+ done
+ IFS="$save_ifs"
+ fi
+
# FIXME: should reinstall the best remaining shared library.
fi
;;
oldobj=`$echo "$name" | sed 's/\.lo$/\.o/'`
rmfiles="$rmfiles $dir/$oldobj"
fi
+ $show "$rm $rmfiles"
+ $run $rm $rmfiles
;;
- esac
- $show "$rm $rmfiles"
- $run $rm $rmfiles
+ *)
+ $show "$rm $rmfiles"
+ $run $rm $rmfiles
+ ;;
+ esac
done
exit 0
;;
"")
- $echo "$progname: you must specify a MODE" 1>&2
+ $echo "$modename: you must specify a MODE" 1>&2
$echo "$generic_help" 1>&2
exit 1
;;
esac
- $echo "$progname: invalid operation mode \`$mode'" 1>&2
+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
$echo "$generic_help" 1>&2
exit 1
fi # test -z "$show_help"
# We need to display help for each of the modes.
case "$mode" in
"") cat <<EOF
-Usage: $progname [OPTION]... [MODE-ARG]...
+Usage: $modename [OPTION]... [MODE-ARG]...
Provide generalized library-building support services.
link create a library or an executable
uninstall remove libraries from an installed directory
-MODE-ARGS vary depending on the MODE. Try \`$progname --help --mode=MODE' for
+MODE-ARGS vary depending on the MODE. Try \`$modename --help --mode=MODE' for
a more detailed description of MODE.
EOF
;;
compile)
cat <<EOF
-Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
+Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
Compile a source file into a libtool library object.
execute)
cat <<EOF
-Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
+Usage: $modename [OPTION]... --mode=execute COMMAND [ARGS]...
Automatically set library path, then run a program.
finish)
cat <<EOF
-Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
+Usage: $modename [OPTION]... --mode=finish [LIBDIR]...
Complete the installation of libtool libraries.
install)
cat <<EOF
-Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
+Usage: $modename [OPTION]... --mode=install INSTALL-COMMAND...
Install executables or libraries.
link)
cat <<EOF
-Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
+Usage: $modename [OPTION]... --mode=link LINK-COMMAND...
Link object files or libraries together to form another library, or to
create an executable program.
The following components of LINK-COMMAND are treated specially:
-all-static do not do any dynamic linking at all
- -allow-undefined allow a libtool library to reference undefined symbols
-dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime
-dlpreopen FILE link in FILE and add its symbols to dld_preloaded_symbols
-export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
-LLIBDIR search LIBDIR for required installed libraries
-lNAME OUTPUT-FILE requires the installed library libNAME
+ -no-undefined declare that a library does not refer to external symbols
-o OUTPUT-FILE create OUTPUT-FILE from the specified objects
-rpath LIBDIR the created library will eventually be installed in LIBDIR
-static do not do any dynamic linking of libtool libraries
uninstall)
cat <<EOF
-Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
+Usage: $modename [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
Remove libraries from an installation directory.
;;
*)
- $echo "$progname: invalid operation mode \`$mode'" 1>&2
+ $echo "$modename: invalid operation mode \`$mode'" 1>&2
$echo "$help" 1>&2
exit 1
;;
esac
-$echo
-$echo "Try \`$progname --help' for more information about other modes."
+echo
+$echo "Try \`$modename --help' for more information about other modes."
exit 0