From: Willem Toorop Date: Sat, 19 Jul 2025 12:42:44 +0000 (+0200) Subject: Merge branch 'master' into xfr-tsig-update X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f3b960e72b1b99e58f956703e62966f46c474453;p=thirdparty%2Funbound.git Merge branch 'master' into xfr-tsig-update --- f3b960e72b1b99e58f956703e62966f46c474453 diff --cc aclocal.m4 index bf3c57e2f,bf3c57e2f..184d695c4 --- a/aclocal.m4 +++ b/aclocal.m4 @@@ -1,6 -1,6 +1,6 @@@ --# generated automatically by aclocal 1.16.2 -*- Autoconf -*- ++# generated automatically by aclocal 1.16.5 -*- Autoconf -*- --# Copyright (C) 1996-2020 Free Software Foundation, Inc. ++# Copyright (C) 1996-2021 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@@ -14,7 -14,7 +14,8 @@@ m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # --# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. ++# Copyright (C) 1996-2001, 2003-2019, 2021-2022 Free Software ++# Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives @@@ -45,7 -45,7 +46,7 @@@ m4_define([_LT_COPYING], [dn # along with this program. If not, see . ]) --# serial 58 LT_INIT ++# serial 59 LT_INIT # LT_PREREQ(VERSION) @@@ -195,6 -195,6 +196,7 @@@ m4_require([_LT_FILEUTILS_DEFAULTS])dn m4_require([_LT_CHECK_SHELL_FEATURES])dnl m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl m4_require([_LT_CMD_RELOAD])dnl ++m4_require([_LT_DECL_FILECMD])dnl m4_require([_LT_CHECK_MAGIC_METHOD])dnl m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl m4_require([_LT_CMD_OLD_ARCHIVE])dnl @@@ -233,8 -233,8 +235,8 @@@ esa ofile=libtool can_build_shared=yes --# All known linkers require a '.a' archive for static linking (except MSVC, --# which needs '.lib'). ++# All known linkers require a '.a' archive for static linking (except MSVC and ++# ICC, which need '.lib'). libext=a with_gnu_ld=$lt_cv_prog_gnu_ld @@@ -736,7 -736,7 +738,6 @@@ _LT_CONFIG_SAVE_COMMANDS( cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION --# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. @@@ -786,7 -786,7 +787,7 @@@ _LT_EO # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? -- sed '$q' "$ltmain" >> "$cfgfile" \ ++ $SED '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || @@@ -1048,8 -1048,8 +1049,8 @@@ int forced_loaded() { return 2; _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD -- echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD -- $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD ++ echo "$AR $AR_FLAGS libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD ++ $AR $AR_FLAGS libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD cat > conftest.c << _LT_EOF @@@ -1073,17 -1073,17 +1074,12 @@@ _LT_EO _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; -- darwin*) # darwin 5.x on -- # if running on 10.5 or later, the deployment target defaults -- # to the OS version, if on x86, and 10.4, the deployment -- # target defaults to 10.4. Don't you love it? -- case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in -- 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) -- _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; -- 10.[[012]][[,.]]*) -- _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; -- 10.*) -- _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; ++ darwin*) ++ case $MACOSX_DEPLOYMENT_TARGET,$host in ++ 10.[[012]],*|,*powerpc*-darwin[[5-8]]*) ++ _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; ++ *) ++ _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac @@@ -1132,12 -1132,12 +1128,12 @@@ m4_defun([_LT_DARWIN_LINKER_FEATURES] output_verbose_link_cmd=func_echo_all _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" -- _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" -- _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" ++ _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" ++ _LT_TAGVAR(module_expsym_cmds, $1)="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" m4_if([$1], [CXX], [ if test yes != "$lt_cv_apple_cc_single_mod"; then _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" -- _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" ++ _LT_TAGVAR(archive_expsym_cmds, $1)="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" fi ],[]) else @@@ -1251,7 -1251,7 +1247,8 @@@ _LT_DECL([], [ECHO], [1], [An echo prog # _LT_WITH_SYSROOT # ---------------- AC_DEFUN([_LT_WITH_SYSROOT], --[AC_MSG_CHECKING([for sysroot]) ++[m4_require([_LT_DECL_SED])dnl ++AC_MSG_CHECKING([for sysroot]) AC_ARG_WITH([sysroot], [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], [Search for dependent libraries within DIR (or the compiler's sysroot @@@ -1268,7 -1268,7 +1265,7 @@@ case $with_sysroot in # fi ;; #( /*) -- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ++ lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` ;; #( no|'') ;; #( @@@ -1298,7 -1298,7 +1295,7 @@@ ia64-*-hpux* # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; @@@ -1315,7 -1315,7 +1312,7 @@@ echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then if test yes = "$lt_cv_prog_gnu_ld"; then -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; @@@ -1327,7 -1327,7 +1324,7 @@@ ;; esac else -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; @@@ -1349,7 -1349,7 +1346,7 @@@ mips64*-*linux* echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then emul=elf -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; @@@ -1357,7 -1357,7 +1354,7 @@@ emul="${emul}64" ;; esac -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; @@@ -1365,7 -1365,7 +1362,7 @@@ emul="${emul}ltsmip" ;; esac -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; @@@ -1385,14 -1385,14 +1382,14 @@@ s390*-*linux*|s390*-*tpf*|sparc*-*linux # not appear in the list. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then -- case `/usr/bin/file conftest.o` in ++ case `$FILECMD conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) -- case `/usr/bin/file conftest.o` in ++ case `$FILECMD conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; @@@ -1460,7 -1460,7 +1457,7 @@@ # options accordingly. echo 'int i;' > conftest.$ac_ext if AC_TRY_EVAL(ac_compile); then -- case `/usr/bin/file conftest.o` in ++ case `$FILECMD conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) @@@ -1499,9 -1499,9 +1496,22 @@@ need_locks=$enable_libtool_loc m4_defun([_LT_PROG_AR], [AC_CHECK_TOOLS(AR, [ar], false) : ${AR=ar} --: ${AR_FLAGS=cru} _LT_DECL([], [AR], [1], [The archiver]) --_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) ++ ++# Use ARFLAGS variable as AR's operation code to sync the variable naming with ++# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have ++# higher priority because thats what people were doing historically (setting ++# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS ++# variable obsoleted/removed. ++ ++test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} ++lt_ar_flags=$AR_FLAGS ++_LT_DECL([], [lt_ar_flags], [0], [Flags to create an archive (by configure)]) ++ ++# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override ++# by AR_FLAGS because that was never working and AR_FLAGS is about to die. ++_LT_DECL([], [AR_FLAGS], [\@S|@{ARFLAGS-"\@S|@lt_ar_flags"}], ++ [Flags to create an archive]) AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], [lt_cv_ar_at_file=no @@@ -1720,7 -1720,7 +1730,7 @@@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [ lt_cv_sys_max_cmd_len=8192; ;; -- bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) ++ bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@@ -1763,7 -1763,7 +1773,7 @@@ sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then -- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` ++ lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[[ ]]//'` else lt_cv_sys_max_cmd_len=32768 fi @@@ -2213,26 -2213,26 +2223,35 @@@ m4_defun([_LT_CMD_STRIPLIB] striplib= old_striplib= AC_MSG_CHECKING([whether stripping libraries is possible]) --if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then -- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" -- test -z "$striplib" && striplib="$STRIP --strip-unneeded" -- AC_MSG_RESULT([yes]) ++if test -z "$STRIP"; then ++ AC_MSG_RESULT([no]) else --# FIXME - insert some real tests, host_os isn't really good enough -- case $host_os in -- darwin*) -- if test -n "$STRIP"; then ++ if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then ++ old_striplib="$STRIP --strip-debug" ++ striplib="$STRIP --strip-unneeded" ++ AC_MSG_RESULT([yes]) ++ else ++ case $host_os in ++ darwin*) ++ # FIXME - insert some real tests, host_os isn't really good enough striplib="$STRIP -x" old_striplib="$STRIP -S" AC_MSG_RESULT([yes]) -- else ++ ;; ++ freebsd*) ++ if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then ++ old_striplib="$STRIP --strip-debug" ++ striplib="$STRIP --strip-unneeded" ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_RESULT([no]) ++ fi ++ ;; ++ *) AC_MSG_RESULT([no]) -- fi -- ;; -- *) -- AC_MSG_RESULT([no]) -- ;; -- esac ++ ;; ++ esac ++ fi fi _LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) _LT_DECL([], [striplib], [1]) @@@ -2555,7 -2555,7 +2574,7 @@@ cygwin* | mingw* | pw32* | cegcc* case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' -- soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ++ soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' m4_if([$1], [],[ sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) ;; @@@ -2565,14 -2565,14 +2584,14 @@@ ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' -- library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ++ library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' ;; -- *,cl*) -- # Native MSVC ++ *,cl* | *,icl*) ++ # Native MSVC or ICC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' @@@ -2591,7 -2591,7 +2610,7 @@@ done IFS=$lt_save_ifs # Convert to MSYS style. -- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ++ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form @@@ -2628,7 -2628,7 +2647,7 @@@ ;; *) -- # Assume MSVC wrapper ++ # Assume MSVC and ICC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; @@@ -2661,7 -2661,7 +2680,7 @@@ dgux* shlibpath_var=LD_LIBRARY_PATH ;; --freebsd* | dragonfly*) ++freebsd* | dragonfly* | midnightbsd*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then @@@ -2873,9 -2873,9 +2892,6 @@@ linux* | k*bsd*-gnu | kopensolaris*-gn # before this can be enabled. hardcode_into_libs=yes -- # Add ABI-specific directories to the system library path. -- sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" -- # Ideally, we could use ldconfig to report *all* directores which are # searched for libraries, however this is still not possible. Aside from not # being certain /sbin/ldconfig is available, command @@@ -2884,7 -2884,7 +2900,7 @@@ # appending ld.so.conf contents (and includes) to the search path. if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@@ -2896,6 -2896,6 +2912,18 @@@ dynamic_linker='GNU/Linux ld.so' ;; ++netbsdelf*-gnu) ++ version_type=linux ++ need_lib_prefix=no ++ need_version=no ++ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' ++ soname_spec='${libname}${release}${shared_ext}$major' ++ shlibpath_var=LD_LIBRARY_PATH ++ shlibpath_overrides_runpath=no ++ hardcode_into_libs=yes ++ dynamic_linker='NetBSD ld.elf_so' ++ ;; ++ netbsd*) version_type=sunos need_lib_prefix=no @@@ -3463,7 -3463,7 +3491,7 @@@ beos* bsdi[[45]]*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' -- lt_cv_file_magic_cmd='/usr/bin/file -L' ++ lt_cv_file_magic_cmd='$FILECMD -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; @@@ -3497,14 -3497,14 +3525,14 @@@ darwin* | rhapsody* lt_cv_deplibs_check_method=pass_all ;; --freebsd* | dragonfly*) ++freebsd* | dragonfly* | midnightbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' -- lt_cv_file_magic_cmd=/usr/bin/file ++ lt_cv_file_magic_cmd=$FILECMD lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac @@@ -3518,7 -3518,7 +3546,7 @@@ haiku* ;; hpux10.20* | hpux11*) -- lt_cv_file_magic_cmd=/usr/bin/file ++ lt_cv_file_magic_cmd=$FILECMD case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' @@@ -3555,7 -3555,7 +3583,7 @@@ linux* | k*bsd*-gnu | kopensolaris*-gn lt_cv_deplibs_check_method=pass_all ;; --netbsd*) ++netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else @@@ -3565,7 -3565,7 +3593,7 @@@ newos6*) lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' -- lt_cv_file_magic_cmd=/usr/bin/file ++ lt_cv_file_magic_cmd=$FILECMD lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; @@@ -3692,13 -3692,13 +3720,13 @@@ els mingw*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac -- case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in ++ case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) -- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in ++ case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 @@@ -3724,7 -3724,7 +3752,7 @@@ els # Let the user override the test. else AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) -- case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in ++ case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; @@@ -3964,7 -3964,7 +3992,7 @@@ esa if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. -- lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" ++ lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" @@@ -3982,20 -3982,20 +4010,20 @@@ f # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. --lt_cv_sys_global_symbol_to_cdecl="sed -n"\ ++lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address --lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ ++lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. --lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ ++lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ @@@ -4019,7 -4019,7 +4047,7 @@@ for ac_symprfx in "" "_"; d if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function, # D for any global variable and I for any imported variable. -- # Also find C++ and __fastcall symbols from MSVC++, ++ # Also find C++ and __fastcall symbols from MSVC++ or ICC, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK ['"\ " {last_section=section; section=\$ 3};"\ @@@ -4037,9 -4037,9 +4065,9 @@@ " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx]" else -- lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" ++ lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi -- lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" ++ lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no @@@ -4061,7 -4061,7 +4089,8 @@@ _LT_EO if AC_TRY_EVAL(ac_compile); then # Now try to grab the symbols. nlist=conftest.nm -- if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then ++ $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD ++ if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" @@@ -4326,7 -4326,7 +4355,7 @@@ m4_if([$1], [CXX], ;; esac ;; -- freebsd* | dragonfly*) ++ freebsd* | dragonfly* | midnightbsd*) # FreeBSD uses GNU C++ ;; hpux9* | hpux10* | hpux11*) @@@ -4409,7 -4409,7 +4438,7 @@@ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) -- case `$CC -V 2>&1 | sed 5q` in ++ case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@@ -4433,7 -4433,7 +4462,7 @@@ ;; esac ;; -- netbsd*) ++ netbsd* | netbsdelf*-gnu) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise @@@ -4701,6 -4701,6 +4730,12 @@@ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ;; ++ # flang / f18. f95 an alias for gfortran or flang on Debian ++ flang* | f18* | f95*) ++ _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' ++ _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' ++ _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' ++ ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) @@@ -4745,7 -4745,7 +4780,7 @@@ _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' ;; *) -- case `$CC -V 2>&1 | sed 5q` in ++ case `$CC -V 2>&1 | $SED 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' @@@ -4928,7 -4928,7 +4963,7 @@@ m4_if([$1], [CXX], if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else -- _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' ++ _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi ;; pw32*) @@@ -4936,7 -4936,7 +4971,7 @@@ ;; cygwin* | mingw* | cegcc*) case $cc_basename in -- cl*) ++ cl* | icl*) _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' ;; *) @@@ -4945,6 -4945,6 +4980,9 @@@ ;; esac ;; ++ linux* | k*bsd*-gnu | gnu*) ++ _LT_TAGVAR(link_all_deplibs, $1)=no ++ ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; @@@ -4993,20 -4993,20 +5031,23 @@@ dnl Note also adjust exclude_expsyms fo case $host_os in cygwin* | mingw* | pw32* | cegcc*) -- # FIXME: the MSVC++ port hasn't been tested in a loooong time ++ # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using -- # Microsoft Visual C++. ++ # Microsoft Visual C++ or Intel C++ Compiler. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) -- # we just hope/assume this is gcc and not c89 (= MSVC++) ++ # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) with_gnu_ld=yes ;; openbsd* | bitrig*) with_gnu_ld=no ;; ++ linux* | k*bsd*-gnu | gnu*) ++ _LT_TAGVAR(link_all_deplibs, $1)=no ++ ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes @@@ -5053,7 -5053,7 +5094,7 @@@ _LT_TAGVAR(whole_archive_flag_spec, $1)= fi supports_anon_versioning=no -- case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in ++ case `$LD -v | $SED -e 's/([[^)]]\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@@ -5165,6 -5165,6 +5206,7 @@@ _LT_EO emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ++ _LT_TAGVAR(file_list_spec, $1)='@' ;; interix[[3-9]]*) @@@ -5179,7 -5179,7 +5221,7 @@@ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' -- _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ++ _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) @@@ -5222,7 -5222,7 +5264,7 @@@ _LT_TAGVAR(compiler_needs_object, $1)=yes ;; esac -- case `$CC -V 2>&1 | sed 5q` in ++ case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C 5.9 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' _LT_TAGVAR(compiler_needs_object, $1)=yes @@@ -5234,13 -5234,13 +5276,14 @@@ if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ -- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ ++ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi case $cc_basename in tcc*) ++ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' ;; xlf* | bgf* | bgxlf* | mpixlf*) @@@ -5250,7 -5250,7 +5293,7 @@@ _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ -- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ ++ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi @@@ -5261,7 -5261,7 +5304,7 @@@ fi ;; -- netbsd*) ++ netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@@ -5382,7 -5382,7 +5425,7 @@@ _LT_EO if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else -- _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' ++ _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no @@@ -5565,12 -5565,12 +5608,12 @@@ cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using -- # Microsoft Visual C++. ++ # Microsoft Visual C++ or Intel C++ Compiler. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in -- cl*) -- # Native MSVC ++ cl* | icl*) ++ # Native MSVC or ICC _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported _LT_TAGVAR(always_export_symbols, $1)=yes @@@ -5611,7 -5611,7 +5654,7 @@@ fi' ;; *) -- # Assume MSVC wrapper ++ # Assume MSVC and ICC wrapper _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' _LT_TAGVAR(allow_undefined_flag, $1)=unsupported # Tell ltmain to make .lib files, not .a files. @@@ -5659,7 -5659,7 +5702,7 @@@ ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. -- freebsd* | dragonfly*) ++ freebsd* | dragonfly* | midnightbsd*) _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' _LT_TAGVAR(hardcode_direct, $1)=yes @@@ -5782,6 -5782,6 +5825,7 @@@ if test yes = "$lt_cv_irix_exported_symbol"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi ++ _LT_TAGVAR(link_all_deplibs, $1)=no else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' @@@ -5799,11 -5799,11 +5843,12 @@@ # Fabrice Bellard et al's Tiny C Compiler _LT_TAGVAR(ld_shlibs, $1)=yes _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' ++ _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' ;; esac ;; -- netbsd*) ++ netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@@ -5870,6 -5870,6 +5915,7 @@@ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ++ _LT_TAGVAR(file_list_spec, $1)='@' ;; osf3*) @@@ -6425,7 -6425,7 +6471,7 @@@ if test yes != "$_lt_caught_CXX_error" # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. -- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' ++ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' else GXX=no @@@ -6636,8 -6636,8 +6682,8 @@@ cygwin* | mingw* | pw32* | cegcc*) case $GXX,$cc_basename in -- ,cl* | no,cl*) -- # Native MSVC ++ ,cl* | no,cl* | ,icl* | no,icl*) ++ # Native MSVC or ICC # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' @@@ -6735,6 -6735,6 +6781,7 @@@ emximp -o $lib $output_objdir/$libname.def' _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes ++ _LT_TAGVAR(file_list_spec, $1)='@' ;; dgux*) @@@ -6765,7 -6765,7 +6812,7 @@@ _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; -- freebsd* | dragonfly*) ++ freebsd* | dragonfly* | midnightbsd*) # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF # conventions _LT_TAGVAR(ld_shlibs, $1)=yes @@@ -6800,7 -6800,7 +6847,7 @@@ # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. -- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ++ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then @@@ -6865,7 -6865,7 +6912,7 @@@ # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. -- output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ++ output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test yes = "$GXX"; then @@@ -6902,7 -6902,7 +6949,7 @@@ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' -- _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ++ _LT_TAGVAR(archive_expsym_cmds, $1)='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; irix5* | irix6*) case $cc_basename in @@@ -7042,13 -7042,13 +7089,13 @@@ _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' if test yes = "$supports_anon_versioning"; then _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ -- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ ++ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi ;; *) -- case `$CC -V 2>&1 | sed 5q` in ++ case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C++ 5.9 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' @@@ -7204,7 -7204,7 +7251,7 @@@ # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. -- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' ++ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' else # FIXME: insert proper C++ library support @@@ -7288,7 -7288,7 +7335,7 @@@ # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. -- output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' ++ output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' else # g++ 2.7 appears to require '-G' NOT '-shared' on this # platform. @@@ -7299,7 -7299,7 +7346,7 @@@ # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. -- output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' ++ output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"' fi _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' @@@ -8186,6 -8186,6 +8233,14 @@@ _LT_DECL([], [DLLTOOL], [1], [DLL creat AC_SUBST([DLLTOOL]) ]) ++# _LT_DECL_FILECMD ++# ---------------- ++# Check for a file(cmd) program that can be used to detect file type and magic ++m4_defun([_LT_DECL_FILECMD], ++[AC_CHECK_TOOL([FILECMD], [file], [:]) ++_LT_DECL([], [FILECMD], [1], [A file(cmd) program that detects file types]) ++])# _LD_DECL_FILECMD ++ # _LT_DECL_SED # ------------ # Check for a fully-functional sed program, that truncates @@@ -8365,8 -8365,8 +8420,8 @@@ _LT_DECL([to_tool_file_cmd], [lt_cv_to_ # Helper functions for option handling. -*- Autoconf -*- # --# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software --# Foundation, Inc. ++# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free ++# Software Foundation, Inc. # Written by Gary V. Vaughan, 2004 # # This file is free software; the Free Software Foundation gives @@@ -8797,7 -8797,7 +8852,7 @@@ LT_OPTION_DEFINE([LTDL_INIT], [convenie # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # --# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software ++# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # @@@ -8922,7 -8922,7 +8977,8 @@@ m4_define([lt_dict_filter] # ltversion.m4 -- version numbers -*- Autoconf -*- # --# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. ++# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation, ++# Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives @@@ -8931,23 -8931,23 +8987,23 @@@ # @configure_input@ --# serial 4179 ltversion.m4 ++# serial 4245 ltversion.m4 # This file is part of GNU Libtool --m4_define([LT_PACKAGE_VERSION], [2.4.6]) --m4_define([LT_PACKAGE_REVISION], [2.4.6]) ++m4_define([LT_PACKAGE_VERSION], [2.4.7]) ++m4_define([LT_PACKAGE_REVISION], [2.4.7]) AC_DEFUN([LTVERSION_VERSION], --[macro_version='2.4.6' --macro_revision='2.4.6' ++[macro_version='2.4.7' ++macro_revision='2.4.7' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # --# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software --# Foundation, Inc. ++# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free ++# Software Foundation, Inc. # Written by Scott James Remnant, 2004. # # This file is free software; the Free Software Foundation gives @@@ -9044,8 -9044,8 +9100,8 @@@ m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_ m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) --# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- --# serial 11 (pkg-config-0.29.1) ++# pkg.m4 - Macros to locate and use pkg-config. -*- Autoconf -*- ++# serial 12 (pkg-config-0.29.2) dnl Copyright © 2004 Scott James Remnant . dnl Copyright © 2012-2015 Dan Nicholson @@@ -9087,7 -9087,7 +9143,7 @@@ dn dnl See the "Since" comment for each macro you use to see what version dnl of the macros you require. m4_defun([PKG_PREREQ], --[m4_define([PKG_MACROS_VERSION], [0.29.1]) ++[m4_define([PKG_MACROS_VERSION], [0.29.2]) m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) ])dnl PKG_PREREQ @@@ -9132,7 -9132,7 +9188,7 @@@ dnl Check to see whether a particular s dnl PKG_CHECK_MODULES(), but does not set variables or print errors. dnl dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) --dnl only at the first occurence in configure.ac, so if the first place ++dnl only at the first occurrence in configure.ac, so if the first place dnl it's called might be skipped (such as if it is within an "if", you dnl have to call PKG_CHECK_EXISTS manually AC_DEFUN([PKG_CHECK_EXISTS], @@@ -9188,7 -9188,7 +9244,7 @@@ AC_ARG_VAR([$1][_CFLAGS], [C compiler f AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl pkg_failed=no --AC_MSG_CHECKING([for $1]) ++AC_MSG_CHECKING([for $2]) _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) _PKG_CONFIG([$1][_LIBS], [libs], [$2]) @@@ -9198,17 -9198,17 +9254,17 @@@ and $1[]_LIBS to avoid the need to cal See the pkg-config man page for more details.]) if test $pkg_failed = yes; then -- AC_MSG_RESULT([no]) ++ AC_MSG_RESULT([no]) _PKG_SHORT_ERRORS_SUPPORTED if test $_pkg_short_errors_supported = yes; then -- $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` -- else -- $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` ++ $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` ++ else ++ $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` fi -- # Put the nasty error message in config.log where it belongs -- echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD ++ # Put the nasty error message in config.log where it belongs ++ echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD -- m4_default([$4], [AC_MSG_ERROR( ++ m4_default([$4], [AC_MSG_ERROR( [Package requirements ($2) were not met: $$1_PKG_ERRORS @@@ -9219,8 -9219,8 +9275,8 @@@ installed software in a non-standard pr _PKG_TEXT])[]dnl ]) elif test $pkg_failed = untried; then -- AC_MSG_RESULT([no]) -- m4_default([$4], [AC_MSG_FAILURE( ++ AC_MSG_RESULT([no]) ++ m4_default([$4], [AC_MSG_FAILURE( [The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. @@@ -9230,10 -9230,10 +9286,10 @@@ _PKG_TEX To get pkg-config, see .])[]dnl ]) else -- $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS -- $1[]_LIBS=$pkg_cv_[]$1[]_LIBS ++ $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS ++ $1[]_LIBS=$pkg_cv_[]$1[]_LIBS AC_MSG_RESULT([yes]) -- $3 ++ $3 fi[]dnl ])dnl PKG_CHECK_MODULES @@@ -9390,7 -9390,7 +9446,7 @@@ AS_IF([test "$AS_TR_SH([with_]m4_tolowe # AM_CONDITIONAL -*- Autoconf -*- --# Copyright (C) 1997-2020 Free Software Foundation, Inc. ++# Copyright (C) 1997-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@@ -9421,7 -9421,7 +9477,7 @@@ AC_CONFIG_COMMANDS_PRE Usually this means the macro was only invoked conditionally.]]) fi])]) --# Copyright (C) 2006-2020 Free Software Foundation, Inc. ++# Copyright (C) 2006-2021 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --cc configure index f32fa2959,e6cc137bd..3b08e096b --- a/configure +++ b/configure @@@ -774,6 -774,6 +774,7 @@@ RANLI ac_ct_AR DLLTOOL OBJDUMP ++FILECMD LN_S NM ac_ct_DUMPBIN @@@ -7794,8 -7795,8 +7796,8 @@@ esa --macro_version='2.4.6' --macro_revision='2.4.6' ++macro_version='2.4.7' ++macro_revision='2.4.7' @@@ -8279,13 -8280,13 +8281,13 @@@ els mingw*) lt_bad_file=conftest.nm/nofile ;; *) lt_bad_file=/dev/null ;; esac -- case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in ++ case `"$tmp_nm" -B $lt_bad_file 2>&1 | $SED '1q'` in *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" break 2 ;; *) -- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in ++ case `"$tmp_nm" -p /dev/null 2>&1 | $SED '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" break 2 @@@ -8423,7 -8424,7 +8425,7 @@@ esa fi fi -- case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in ++ case `$DUMPBIN -symbols -headers /dev/null 2>&1 | $SED '1q'` in *COFF*) DUMPBIN="$DUMPBIN -symbols -headers" ;; @@@ -8527,7 -8528,7 +8529,7 @@@ else $as_no lt_cv_sys_max_cmd_len=8192; ;; -- bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) ++ bitrig* | darwin* | dragonfly* | freebsd* | midnightbsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@@ -8570,7 -8571,7 +8572,7 @@@ sysv5* | sco5v6* | sysv4.2uw2*) kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` if test -n "$kargmax"; then -- lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` ++ lt_cv_sys_max_cmd_len=`echo $kargmax | $SED 's/.*[ ]//'` else lt_cv_sys_max_cmd_len=32768 fi @@@ -8775,6 -8776,6 +8777,114 @@@ esa ++if test -n "$ac_tool_prefix"; then ++ # Extract the first word of "${ac_tool_prefix}file", so it can be a program name with args. ++set dummy ${ac_tool_prefix}file; ac_word=$2 ++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++printf %s "checking for $ac_word... " >&6; } ++if test ${ac_cv_prog_FILECMD+y} ++then : ++ printf %s "(cached) " >&6 ++else $as_nop ++ if test -n "$FILECMD"; then ++ ac_cv_prog_FILECMD="$FILECMD" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ case $as_dir in #((( ++ '') as_dir=./ ;; ++ */) ;; ++ *) as_dir=$as_dir/ ;; ++ esac ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ++ ac_cv_prog_FILECMD="${ac_tool_prefix}file" ++ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++fi ++fi ++FILECMD=$ac_cv_prog_FILECMD ++if test -n "$FILECMD"; then ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $FILECMD" >&5 ++printf "%s\n" "$FILECMD" >&6; } ++else ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++printf "%s\n" "no" >&6; } ++fi ++ ++ ++fi ++if test -z "$ac_cv_prog_FILECMD"; then ++ ac_ct_FILECMD=$FILECMD ++ # Extract the first word of "file", so it can be a program name with args. ++set dummy file; ac_word=$2 ++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 ++printf %s "checking for $ac_word... " >&6; } ++if test ${ac_cv_prog_ac_ct_FILECMD+y} ++then : ++ printf %s "(cached) " >&6 ++else $as_nop ++ if test -n "$ac_ct_FILECMD"; then ++ ac_cv_prog_ac_ct_FILECMD="$ac_ct_FILECMD" # Let the user override the test. ++else ++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR ++for as_dir in $PATH ++do ++ IFS=$as_save_IFS ++ case $as_dir in #((( ++ '') as_dir=./ ;; ++ */) ;; ++ *) as_dir=$as_dir/ ;; ++ esac ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then ++ ac_cv_prog_ac_ct_FILECMD="file" ++ printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5 ++ break 2 ++ fi ++done ++ done ++IFS=$as_save_IFS ++ ++fi ++fi ++ac_ct_FILECMD=$ac_cv_prog_ac_ct_FILECMD ++if test -n "$ac_ct_FILECMD"; then ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_FILECMD" >&5 ++printf "%s\n" "$ac_ct_FILECMD" >&6; } ++else ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++printf "%s\n" "no" >&6; } ++fi ++ ++ if test "x$ac_ct_FILECMD" = x; then ++ FILECMD=":" ++ else ++ case $cross_compiling:$ac_tool_warned in ++yes:) ++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 ++printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ++ac_tool_warned=yes ;; ++esac ++ FILECMD=$ac_ct_FILECMD ++ fi ++else ++ FILECMD="$ac_cv_prog_FILECMD" ++fi ++ ++ ++ ++ ++ ++ ++ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. set dummy ${ac_tool_prefix}objdump; ac_word=$2 @@@ -8918,7 -8919,7 +9028,7 @@@ beos* bsdi[45]*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' -- lt_cv_file_magic_cmd='/usr/bin/file -L' ++ lt_cv_file_magic_cmd='$FILECMD -L' lt_cv_file_magic_test_file=/shlib/libc.so ;; @@@ -8952,14 -8953,14 +9062,14 @@@ darwin* | rhapsody* lt_cv_deplibs_check_method=pass_all ;; --freebsd* | dragonfly*) ++freebsd* | dragonfly* | midnightbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then case $host_cpu in i*86 ) # Not sure whether the presence of OpenBSD here was a mistake. # Let's accept both of them until this is cleared up. lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' -- lt_cv_file_magic_cmd=/usr/bin/file ++ lt_cv_file_magic_cmd=$FILECMD lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` ;; esac @@@ -8973,7 -8974,7 +9083,7 @@@ haiku* ;; hpux10.20* | hpux11*) -- lt_cv_file_magic_cmd=/usr/bin/file ++ lt_cv_file_magic_cmd=$FILECMD case $host_cpu in ia64*) lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' @@@ -9010,7 -9011,7 +9120,7 @@@ linux* | k*bsd*-gnu | kopensolaris*-gn lt_cv_deplibs_check_method=pass_all ;; --netbsd*) ++netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else @@@ -9020,7 -9021,7 +9130,7 @@@ newos6*) lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' -- lt_cv_file_magic_cmd=/usr/bin/file ++ lt_cv_file_magic_cmd=$FILECMD lt_cv_file_magic_test_file=/usr/lib/libnls.so ;; @@@ -9393,13 -9394,13 +9503,29 @@@ esa fi : ${AR=ar} --: ${AR_FLAGS=cru} ++# Use ARFLAGS variable as AR's operation code to sync the variable naming with ++# Automake. If both AR_FLAGS and ARFLAGS are specified, AR_FLAGS should have ++# higher priority because thats what people were doing historically (setting ++# ARFLAGS for automake and AR_FLAGS for libtool). FIXME: Make the AR_FLAGS ++# variable obsoleted/removed. ++ ++test ${AR_FLAGS+y} || AR_FLAGS=${ARFLAGS-cr} ++lt_ar_flags=$AR_FLAGS ++ ++ ++ ++ ++ ++ ++# Make AR_FLAGS overridable by 'make ARFLAGS='. Don't try to run-time override ++# by AR_FLAGS because that was never working and AR_FLAGS is about to die. ++ @@@ -9863,7 -9864,7 +9989,7 @@@ esa if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Gets list of data symbols to import. -- lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" ++ lt_cv_sys_global_symbol_to_import="$SED -n -e 's/^I .* \(.*\)$/\1/p'" # Adjust the below global symbol transforms to fixup imported variables. lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" @@@ -9881,20 -9882,20 +10007,20 @@@ f # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. --lt_cv_sys_global_symbol_to_cdecl="sed -n"\ ++lt_cv_sys_global_symbol_to_cdecl="$SED -n"\ $lt_cdecl_hook\ " -e 's/^T .* \(.*\)$/extern int \1();/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address --lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ ++lt_cv_sys_global_symbol_to_c_name_address="$SED -n"\ $lt_c_name_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" # Transform an extracted symbol line into symbol name with lib prefix and # symbol address. --lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ ++lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="$SED -n"\ $lt_c_name_lib_hook\ " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ @@@ -9918,7 -9919,7 +10044,7 @@@ for ac_symprfx in "" "_"; d if test "$lt_cv_nm_interface" = "MS dumpbin"; then # Fake it for dumpbin and say T for any non-static function, # D for any global variable and I for any imported variable. -- # Also find C++ and __fastcall symbols from MSVC++, ++ # Also find C++ and __fastcall symbols from MSVC++ or ICC, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ @@@ -9936,9 -9937,9 +10062,9 @@@ " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else -- lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" ++ lt_cv_sys_global_symbol_pipe="$SED -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi -- lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" ++ lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | $SED '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no @@@ -9964,11 -9965,11 +10090,8 @@@ _LT_EO test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm -- if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 -- (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 -- ac_status=$? -- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; } && test -s "$nlist"; then ++ $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5 ++ if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then mv -f "$nlist"T "$nlist" @@@ -10141,7 -10142,7 +10264,7 @@@ case $with_sysroot in # fi ;; #( /*) -- lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` ++ lt_sysroot=`echo "$with_sysroot" | $SED -e "$sed_quote_subst"` ;; #( no|'') ;; #( @@@ -10266,7 -10267,7 +10389,7 @@@ ia64-*-hpux* ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *ELF-32*) HPUX_IA64_MODE=32 ;; @@@ -10287,7 -10288,7 +10410,7 @@@ printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then if test yes = "$lt_cv_prog_gnu_ld"; then -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" ;; @@@ -10299,7 -10300,7 +10422,7 @@@ ;; esac else -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -32" ;; @@@ -10325,7 -10326,7 +10448,7 @@@ mips64*-*linux* printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then emul=elf -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *32-bit*) emul="${emul}32" ;; @@@ -10333,7 -10334,7 +10456,7 @@@ emul="${emul}64" ;; esac -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *MSB*) emul="${emul}btsmip" ;; @@@ -10341,7 -10342,7 +10464,7 @@@ emul="${emul}ltsmip" ;; esac -- case `/usr/bin/file conftest.$ac_objext` in ++ case `$FILECMD conftest.$ac_objext` in *N32*) emul="${emul}n32" ;; @@@ -10365,14 -10366,14 +10488,14 @@@ s390*-*linux*|s390*-*tpf*|sparc*-*linux ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then -- case `/usr/bin/file conftest.o` in ++ case `$FILECMD conftest.o` in *32-bit*) case $host in x86_64-*kfreebsd*-gnu) LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) -- case `/usr/bin/file conftest.o` in ++ case `$FILECMD conftest.o` in *x86-64*) LD="${LD-ld} -m elf32_x86_64" ;; @@@ -10480,7 -10481,7 +10603,7 @@@ printf "%s\n" "$lt_cv_cc_needs_belf" >& ac_status=$? printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then -- case `/usr/bin/file conftest.o` in ++ case `$FILECMD conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in yes*) @@@ -11263,8 -11264,8 +11386,8 @@@ int forced_loaded() { return 2; _LT_EOF echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 -- echo "$AR cru libconftest.a conftest.o" >&5 -- $AR cru libconftest.a conftest.o 2>&5 ++ echo "$AR $AR_FLAGS libconftest.a conftest.o" >&5 ++ $AR $AR_FLAGS libconftest.a conftest.o 2>&5 echo "$RANLIB libconftest.a" >&5 $RANLIB libconftest.a 2>&5 cat > conftest.c << _LT_EOF @@@ -11291,17 -11292,17 +11414,12 @@@ printf "%s\n" "$lt_cv_ld_force_load" >& _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; -- darwin*) # darwin 5.x on -- # if running on 10.5 or later, the deployment target defaults -- # to the OS version, if on x86, and 10.4, the deployment -- # target defaults to 10.4. Don't you love it? -- case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in -- 10.0,*86*-darwin8*|10.0,*-darwin[91]*) -- _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; -- 10.[012][,.]*) -- _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; -- 10.*) -- _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; ++ darwin*) ++ case $MACOSX_DEPLOYMENT_TARGET,$host in ++ 10.[012],*|,*powerpc*-darwin[5-8]*) ++ _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; ++ *) ++ _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac @@@ -11662,8 -11663,8 +11780,8 @@@ esa ofile=libtool can_build_shared=yes --# All known linkers require a '.a' archive for static linking (except MSVC, --# which needs '.lib'). ++# All known linkers require a '.a' archive for static linking (except MSVC and ++# ICC, which need '.lib'). libext=a with_gnu_ld=$lt_cv_prog_gnu_ld @@@ -12127,6 -12128,6 +12245,12 @@@ lt_prog_compiler_static lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-static' ;; ++ # flang / f18. f95 an alias for gfortran or flang on Debian ++ flang* | f18* | f95*) ++ lt_prog_compiler_wl='-Wl,' ++ lt_prog_compiler_pic='-fPIC' ++ lt_prog_compiler_static='-static' ++ ;; # icc used to be incompatible with GCC. # ICC 10 doesn't accept -KPIC any more. icc* | ifort*) @@@ -12171,7 -12172,7 +12295,7 @@@ lt_prog_compiler_static='-qstaticlink' ;; *) -- case `$CC -V 2>&1 | sed 5q` in ++ case `$CC -V 2>&1 | $SED 5q` in *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) # Sun Fortran 8.3 passes all unrecognized flags to the linker lt_prog_compiler_pic='-KPIC' @@@ -12594,20 -12595,20 +12718,23 @@@ printf %s "checking whether the $compil case $host_os in cygwin* | mingw* | pw32* | cegcc*) -- # FIXME: the MSVC++ port hasn't been tested in a loooong time ++ # FIXME: the MSVC++ and ICC port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using -- # Microsoft Visual C++. ++ # Microsoft Visual C++ or Intel C++ Compiler. if test yes != "$GCC"; then with_gnu_ld=no fi ;; interix*) -- # we just hope/assume this is gcc and not c89 (= MSVC++) ++ # we just hope/assume this is gcc and not c89 (= MSVC++ or ICC) with_gnu_ld=yes ;; openbsd* | bitrig*) with_gnu_ld=no ;; ++ linux* | k*bsd*-gnu | gnu*) ++ link_all_deplibs=no ++ ;; esac ld_shlibs=yes @@@ -12654,7 -12655,7 +12781,7 @@@ whole_archive_flag_spec= fi supports_anon_versioning=no -- case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in ++ case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@@ -12766,6 -12767,6 +12893,7 @@@ _LT_EO emximp -o $lib $output_objdir/$libname.def' old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' enable_shared_with_static_runtimes=yes ++ file_list_spec='@' ;; interix[3-9]*) @@@ -12780,7 -12781,7 +12908,7 @@@ # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' -- archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ++ archive_expsym_cmds='$SED "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) @@@ -12823,7 -12824,7 +12951,7 @@@ compiler_needs_object=yes ;; esac -- case `$CC -V 2>&1 | sed 5q` in ++ case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C 5.9 whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes @@@ -12835,13 -12836,13 +12963,14 @@@ if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ -- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ ++ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi case $cc_basename in tcc*) ++ hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' export_dynamic_flag_spec='-rdynamic' ;; xlf* | bgf* | bgxlf* | mpixlf*) @@@ -12851,7 -12852,7 +12980,7 @@@ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ -- cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ ++ cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi @@@ -12862,7 -12863,7 +12991,7 @@@ fi ;; -- netbsd*) ++ netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@@ -12983,7 -12984,7 +13112,7 @@@ _LT_EO if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else -- export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' ++ export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "L") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no @@@ -13254,12 -13255,12 +13383,12 @@@ f cygwin* | mingw* | pw32* | cegcc*) # When not using gcc, we currently assume that we are using -- # Microsoft Visual C++. ++ # Microsoft Visual C++ or Intel C++ Compiler. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. case $cc_basename in -- cl*) -- # Native MSVC ++ cl* | icl*) ++ # Native MSVC or ICC hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported always_export_symbols=yes @@@ -13300,7 -13301,7 +13429,7 @@@ fi' ;; *) -- # Assume MSVC wrapper ++ # Assume MSVC and ICC wrapper hardcode_libdir_flag_spec=' ' allow_undefined_flag=unsupported # Tell ltmain to make .lib files, not .a files. @@@ -13341,8 -13342,8 +13470,8 @@@ output_verbose_link_cmd=func_echo_all archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" -- archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" -- module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" ++ archive_expsym_cmds="$SED 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" ++ module_expsym_cmds="$SED -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" else ld_shlibs=no @@@ -13376,7 -13377,7 +13505,7 @@@ ;; # FreeBSD 3 and greater uses gcc -shared to do shared libraries. -- freebsd* | dragonfly*) ++ freebsd* | dragonfly* | midnightbsd*) archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes @@@ -13539,6 -13540,6 +13668,7 @@@ printf "%s\n" "$lt_cv_irix_exported_sym if test yes = "$lt_cv_irix_exported_symbol"; then archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi ++ link_all_deplibs=no else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' @@@ -13556,11 -13557,11 +13686,12 @@@ # Fabrice Bellard et al's Tiny C Compiler ld_shlibs=yes archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' ++ hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' ;; esac ;; -- netbsd*) ++ netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@@ -13627,6 -13628,6 +13758,7 @@@ emximp -o $lib $output_objdir/$libname.def' old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' enable_shared_with_static_runtimes=yes ++ file_list_spec='@' ;; osf3*) @@@ -14319,7 -14320,7 +14451,7 @@@ cygwin* | mingw* | pw32* | cegcc* case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' -- soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ++ soname_spec='`echo $libname | $SED -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ;; @@@ -14329,14 -14330,14 +14461,14 @@@ ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' -- library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ++ library_names_spec='`echo $libname | $SED -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' ;; -- *,cl*) -- # Native MSVC ++ *,cl* | *,icl*) ++ # Native MSVC or ICC libname_spec='$name' soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' library_names_spec='$libname.dll.lib' @@@ -14355,7 -14356,7 +14487,7 @@@ done IFS=$lt_save_ifs # Convert to MSYS style. -- sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` ++ sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` ;; cygwin*) # Convert to unix form, then to dos form, then back to unix form @@@ -14392,7 -14393,7 +14524,7 @@@ ;; *) -- # Assume MSVC wrapper ++ # Assume MSVC and ICC wrapper library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; @@@ -14425,7 -14426,7 +14557,7 @@@ dgux* shlibpath_var=LD_LIBRARY_PATH ;; --freebsd* | dragonfly*) ++freebsd* | dragonfly* | midnightbsd*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. if test -x /usr/bin/objformat; then @@@ -14659,9 -14660,9 +14791,6 @@@ f # before this can be enabled. hardcode_into_libs=yes -- # Add ABI-specific directories to the system library path. -- sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" -- # Ideally, we could use ldconfig to report *all* directores which are # searched for libraries, however this is still not possible. Aside from not # being certain /sbin/ldconfig is available, command @@@ -14670,7 -14671,7 +14799,7 @@@ # appending ld.so.conf contents (and includes) to the search path. if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@@ -14682,6 -14683,6 +14811,18 @@@ dynamic_linker='GNU/Linux ld.so' ;; ++netbsdelf*-gnu) ++ version_type=linux ++ need_lib_prefix=no ++ need_version=no ++ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' ++ soname_spec='${libname}${release}${shared_ext}$major' ++ shlibpath_var=LD_LIBRARY_PATH ++ shlibpath_overrides_runpath=no ++ hardcode_into_libs=yes ++ dynamic_linker='NetBSD ld.elf_so' ++ ;; ++ netbsd*) version_type=sunos need_lib_prefix=no @@@ -15581,30 -15582,30 +15722,41 @@@ striplib old_striplib= { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 printf %s "checking whether stripping libraries is possible... " >&6; } --if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then -- test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" -- test -z "$striplib" && striplib="$STRIP --strip-unneeded" -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 --printf "%s\n" "yes" >&6; } ++if test -z "$STRIP"; then ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++printf "%s\n" "no" >&6; } else --# FIXME - insert some real tests, host_os isn't really good enough -- case $host_os in -- darwin*) -- if test -n "$STRIP"; then ++ if $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then ++ old_striplib="$STRIP --strip-debug" ++ striplib="$STRIP --strip-unneeded" ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 ++printf "%s\n" "yes" >&6; } ++ else ++ case $host_os in ++ darwin*) ++ # FIXME - insert some real tests, host_os isn't really good enough striplib="$STRIP -x" old_striplib="$STRIP -S" { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } -- else -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ ;; ++ freebsd*) ++ if $STRIP -V 2>&1 | $GREP "elftoolchain" >/dev/null; then ++ old_striplib="$STRIP --strip-debug" ++ striplib="$STRIP --strip-unneeded" ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 ++printf "%s\n" "yes" >&6; } ++ else ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } -- fi -- ;; -- *) -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ fi ++ ;; ++ *) ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } -- ;; -- esac ++ ;; ++ esac ++ fi fi @@@ -17728,8 -17729,8 +17880,8 @@@ then have_systemd=no pkg_failed=no --{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5 --printf %s "checking for SYSTEMD... " >&6; } ++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsystemd" >&5 ++printf %s "checking for libsystemd... " >&6; } if test -n "$SYSTEMD_CFLAGS"; then pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS" @@@ -17769,7 -17770,7 +17921,7 @@@ f if test $pkg_failed = yes; then -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then @@@ -17778,14 -17779,14 +17930,14 @@@ els _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then -- SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd" 2>&1` ++ SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd" 2>&1` else -- SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd" 2>&1` ++ SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd" 2>&1` fi -- # Put the nasty error message in config.log where it belongs -- echo "$SYSTEMD_PKG_ERRORS" >&5 ++ # Put the nasty error message in config.log where it belongs ++ echo "$SYSTEMD_PKG_ERRORS" >&5 -- as_fn_error $? "Package requirements (libsystemd) were not met: ++ as_fn_error $? "Package requirements (libsystemd) were not met: $SYSTEMD_PKG_ERRORS @@@ -17796,9 -17797,9 +17948,9 @@@ Alternatively, you may set the environm and SYSTEMD_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } -- { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 ++ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full @@@ -17811,11 -17812,11 +17963,11 @@@ See the pkg-config man page for more de To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else -- SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS -- SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS ++ SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS ++ SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } -- have_systemd=yes ++ have_systemd=yes fi if test "x$have_systemd" != "xyes" then : @@@ -17823,8 -17824,8 +17975,8 @@@ have_systemd_daemon=no pkg_failed=no --{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD_DAEMON" >&5 --printf %s "checking for SYSTEMD_DAEMON... " >&6; } ++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libsystemd-daemon" >&5 ++printf %s "checking for libsystemd-daemon... " >&6; } if test -n "$SYSTEMD_DAEMON_CFLAGS"; then pkg_cv_SYSTEMD_DAEMON_CFLAGS="$SYSTEMD_DAEMON_CFLAGS" @@@ -17864,7 -17865,7 +18016,7 @@@ f if test $pkg_failed = yes; then -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then @@@ -17873,14 -17874,14 +18025,14 @@@ els _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then -- SYSTEMD_DAEMON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd-daemon" 2>&1` ++ SYSTEMD_DAEMON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd-daemon" 2>&1` else -- SYSTEMD_DAEMON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd-daemon" 2>&1` ++ SYSTEMD_DAEMON_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd-daemon" 2>&1` fi -- # Put the nasty error message in config.log where it belongs -- echo "$SYSTEMD_DAEMON_PKG_ERRORS" >&5 ++ # Put the nasty error message in config.log where it belongs ++ echo "$SYSTEMD_DAEMON_PKG_ERRORS" >&5 -- as_fn_error $? "Package requirements (libsystemd-daemon) were not met: ++ as_fn_error $? "Package requirements (libsystemd-daemon) were not met: $SYSTEMD_DAEMON_PKG_ERRORS @@@ -17891,9 -17892,9 +18043,9 @@@ Alternatively, you may set the environm and SYSTEMD_DAEMON_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details." "$LINENO" 5 elif test $pkg_failed = untried; then -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } -- { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 ++ { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it is in your PATH or set the PKG_CONFIG environment variable to the full @@@ -17906,11 -17907,11 +18058,11 @@@ See the pkg-config man page for more de To get pkg-config, see . See \`config.log' for more details" "$LINENO" 5; } else -- SYSTEMD_DAEMON_CFLAGS=$pkg_cv_SYSTEMD_DAEMON_CFLAGS -- SYSTEMD_DAEMON_LIBS=$pkg_cv_SYSTEMD_DAEMON_LIBS ++ SYSTEMD_DAEMON_CFLAGS=$pkg_cv_SYSTEMD_DAEMON_CFLAGS ++ SYSTEMD_DAEMON_LIBS=$pkg_cv_SYSTEMD_DAEMON_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } -- have_systemd_daemon=yes ++ have_systemd_daemon=yes fi if test "x$have_systemd_daemon" = "xyes" then : @@@ -24515,8 -24532,8 +24701,8 @@@ else $as_no if test -n "$PKG_CONFIG"; then pkg_failed=no --{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for PROTOBUFC" >&5 --printf %s "checking for PROTOBUFC... " >&6; } ++{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libprotobuf-c" >&5 ++printf %s "checking for libprotobuf-c... " >&6; } if test -n "$PROTOBUFC_CFLAGS"; then pkg_cv_PROTOBUFC_CFLAGS="$PROTOBUFC_CFLAGS" @@@ -24556,7 -24573,7 +24742,7 @@@ f if test $pkg_failed = yes; then -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then @@@ -24565,12 -24582,12 +24751,12 @@@ els _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then -- PROTOBUFC_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libprotobuf-c" 2>&1` ++ PROTOBUFC_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libprotobuf-c" 2>&1` else -- PROTOBUFC_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libprotobuf-c" 2>&1` ++ PROTOBUFC_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libprotobuf-c" 2>&1` fi -- # Put the nasty error message in config.log where it belongs -- echo "$PROTOBUFC_PKG_ERRORS" >&5 ++ # Put the nasty error message in config.log where it belongs ++ echo "$PROTOBUFC_PKG_ERRORS" >&5 # pkg-config failed; try falling back to known values @@@ -24588,7 -24605,7 +24774,7 @@@ elif test $pkg_failed = untried; then -- { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 ++ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 printf "%s\n" "no" >&6; } # pkg-config failed; try falling back to known values @@@ -24606,8 -24623,8 +24792,8 @@@ else -- PROTOBUFC_CFLAGS=$pkg_cv_PROTOBUFC_CFLAGS -- PROTOBUFC_LIBS=$pkg_cv_PROTOBUFC_LIBS ++ PROTOBUFC_CFLAGS=$pkg_cv_PROTOBUFC_CFLAGS ++ PROTOBUFC_LIBS=$pkg_cv_PROTOBUFC_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 printf "%s\n" "yes" >&6; } @@@ -26032,6 -26049,6 +26218,7 @@@ lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_ lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' ++FILECMD='`$ECHO "$FILECMD" | $SED "$delay_single_quote_subst"`' OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' @@@ -26040,6 -26057,6 +26227,7 @@@ want_nocaseglob='`$ECHO "$want_nocasegl DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' ++lt_ar_flags='`$ECHO "$lt_ar_flags" | $SED "$delay_single_quote_subst"`' AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' @@@ -26160,6 -26177,6 +26348,7 @@@ LN_S lt_SP2NL \ lt_NL2SP \ reload_flag \ ++FILECMD \ OBJDUMP \ deplibs_check_method \ file_magic_cmd \ @@@ -26168,7 -26185,7 +26357,6 @@@ want_nocaseglob DLLTOOL \ sharedlib_from_linklib_cmd \ AR \ --AR_FLAGS \ archiver_list_spec \ STRIP \ RANLIB \ @@@ -26865,7 -26882,7 +27053,6 @@@ printf "%s\n" "$as_me: executing $ac_fi cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION --# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. @@@ -26985,6 -27002,6 +27172,9 @@@ to_host_file_cmd=$lt_cv_to_host_file_cm # convert \$build files to toolchain format. to_tool_file_cmd=$lt_cv_to_tool_file_cmd ++# A file(cmd) program that detects file types. ++FILECMD=$lt_FILECMD ++ # An object symbol dumper. OBJDUMP=$lt_OBJDUMP @@@ -27009,8 -27026,8 +27199,11 @@@ sharedlib_from_linklib_cmd=$lt_sharedli # The archiver. AR=$lt_AR ++# Flags to create an archive (by configure). ++lt_ar_flags=$lt_ar_flags ++ # Flags to create an archive. --AR_FLAGS=$lt_AR_FLAGS ++AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"} # How to feed a file listing to the archiver. archiver_list_spec=$lt_archiver_list_spec @@@ -27386,7 -27403,7 +27579,7 @@@ ltmain=$ac_aux_dir/ltmain.s # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? -- sed '$q' "$ltmain" >> "$cfgfile" \ ++ $SED '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) mv -f "$cfgfile" "$ofile" || diff --cc ltmain.sh index 7f3523d33,7f3523d33..977e5237b mode 100644,100644..100755 --- a/ltmain.sh +++ b/ltmain.sh @@@ -1,12 -1,12 +1,12 @@@ --#! /bin/sh ++#! /usr/bin/env sh ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in --## by inline-source v2014-01-03.01 ++## by inline-source v2019-02-19.15 --# libtool (GNU libtool) 2.4.6 ++# libtool (GNU libtool) 2.4.7 # Provide generalized library-building support services. # Written by Gordon Matzigkeit , 1996 --# Copyright (C) 1996-2015 Free Software Foundation, Inc. ++# Copyright (C) 1996-2019, 2021-2022 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. @@@ -31,8 -31,8 +31,8 @@@ PROGRAM=libtool PACKAGE=libtool --VERSION=2.4.6 --package_revision=2.4.6 ++VERSION="2.4.7 Debian-2.4.7-7build1" ++package_revision=2.4.7 ## ------ ## @@@ -64,34 -64,34 +64,25 @@@ # libraries, which are installed to $pkgauxdir. # Set a version string for this script. --scriptversion=2015-01-20.17; # UTC ++scriptversion=2019-02-19.15; # UTC # General shell script boiler plate, and helper functions. # Written by Gary V. Vaughan, 2004 --# Copyright (C) 2004-2015 Free Software Foundation, Inc. --# This is free software; see the source for copying conditions. There is NO --# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -- --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 3 of the License, or --# (at your option) any later version. -- --# As a special exception to the GNU General Public License, if you distribute --# this file as part of a program or library that is built using GNU Libtool, --# you may include this file under the same distribution terms that you use --# for the rest of that program. -- --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU --# General Public License for more details. -- --# You should have received a copy of the GNU General Public License --# along with this program. If not, see . ++# This is free software. There is NO warranty; not even for ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ++# ++# Copyright (C) 2004-2019, 2021 Bootstrap Authors ++# ++# This file is dual licensed under the terms of the MIT license ++# , and GPL version 2 or later ++# . You must apply one of ++# these licenses when using or redistributing this software or any of ++# the files within it. See the URLs above, or the file `LICENSE` ++# included in the Bootstrap distribution for the full license texts. --# Please report bugs or propose patches to gary@gnu.org. ++# Please report bugs or propose patches to: ++# ## ------ ## @@@ -139,9 -139,9 +130,12 @@@ d _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" fi" done -- --# CDPATH. --(unset CDPATH) >/dev/null 2>&1 && unset CDPATH ++# These NLS vars are set unconditionally (bootstrap issue #24). Unset those ++# in case the environment reset is needed later and the $save_* variant is not ++# defined (see the code above). ++LC_ALL=C ++LANGUAGE=C ++export LANGUAGE LC_ALL # Make sure IFS has a sensible default sp=' ' @@@ -159,6 -159,6 +153,26 @@@ if test "${PATH_SEPARATOR+set}" != set fi ++# func_unset VAR ++# -------------- ++# Portably unset VAR. ++# In some shells, an 'unset VAR' statement leaves a non-zero return ++# status if VAR is already unset, which might be problematic if the ++# statement is used at the end of a function (thus poisoning its return ++# value) or when 'set -e' is active (causing even a spurious abort of ++# the script in this case). ++func_unset () ++{ ++ { eval $1=; (eval unset $1) >/dev/null 2>&1 && eval unset $1 || : ; } ++} ++ ++ ++# Make sure CDPATH doesn't cause `cd` commands to output the target dir. ++func_unset CDPATH ++ ++# Make sure ${,E,F}GREP behave sanely. ++func_unset GREP_OPTIONS ++ ## ------------------------- ## ## Locate command utilities. ## @@@ -259,7 -259,7 +273,7 @@@ test -z "$SED" && rm -f conftest.in conftest.tmp conftest.nl conftest.out } -- func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin ++ func_path_progs "sed gsed" func_check_prog_sed "$PATH:/usr/xpg4/bin" rm -f conftest.sed SED=$func_path_progs_result } @@@ -295,7 -295,7 +309,7 @@@ test -z "$GREP" && rm -f conftest.in conftest.tmp conftest.nl conftest.out } -- func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin ++ func_path_progs "grep ggrep" func_check_prog_grep "$PATH:/usr/xpg4/bin" GREP=$func_path_progs_result } @@@ -360,6 -360,6 +374,35 @@@ sed_double_backslash=" s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g s/\n//g" ++# require_check_ifs_backslash ++# --------------------------- ++# Check if we can use backslash as IFS='\' separator, and set ++# $check_ifs_backshlash_broken to ':' or 'false'. ++require_check_ifs_backslash=func_require_check_ifs_backslash ++func_require_check_ifs_backslash () ++{ ++ _G_save_IFS=$IFS ++ IFS='\' ++ _G_check_ifs_backshlash='a\\b' ++ for _G_i in $_G_check_ifs_backshlash ++ do ++ case $_G_i in ++ a) ++ check_ifs_backshlash_broken=false ++ ;; ++ '') ++ break ++ ;; ++ *) ++ check_ifs_backshlash_broken=: ++ break ++ ;; ++ esac ++ done ++ IFS=$_G_save_IFS ++ require_check_ifs_backslash=: ++} ++ ## ----------------- ## ## Global variables. ## @@@ -387,7 -387,7 +430,7 @@@ EXIT_SKIP=77 # $? = 77 is used to ind # putting '$debug_cmd' at the start of all your functions, you can get # bash to show function call trace with: # --# debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name ++# debug_cmd='echo "${FUNCNAME[0]} $*" >&2' bash your-script-name debug_cmd=${debug_cmd-":"} exit_cmd=: @@@ -529,27 -529,27 +572,15 @@@ func_require_term_colors ( # --------------------- # Append VALUE onto the existing contents of VAR. -- # We should try to minimise forks, especially on Windows where they are -- # unreasonably slow, so skip the feature probes when bash or zsh are -- # being used: -- if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then -- : ${_G_HAVE_ARITH_OP="yes"} -- : ${_G_HAVE_XSI_OPS="yes"} -- # The += operator was introduced in bash 3.1 -- case $BASH_VERSION in -- [12].* | 3.0 | 3.0*) ;; -- *) -- : ${_G_HAVE_PLUSEQ_OP="yes"} -- ;; -- esac -- fi -- # _G_HAVE_PLUSEQ_OP # Can be empty, in which case the shell is probed, "yes" if += is # useable or anything else if it does not work. -- test -z "$_G_HAVE_PLUSEQ_OP" \ -- && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ -- && _G_HAVE_PLUSEQ_OP=yes ++ if test -z "$_G_HAVE_PLUSEQ_OP" && \ ++ __PLUSEQ_TEST="a" && \ ++ __PLUSEQ_TEST+=" b" 2>/dev/null && \ ++ test "a b" = "$__PLUSEQ_TEST"; then ++ _G_HAVE_PLUSEQ_OP=yes ++ fi if test yes = "$_G_HAVE_PLUSEQ_OP" then @@@ -580,16 -580,16 +611,16 @@@ if test yes = "$_G_HAVE_PLUSEQ_OP"; the { $debug_cmd -- func_quote_for_eval "$2" -- eval "$1+=\\ \$func_quote_for_eval_result" ++ func_quote_arg pretty "$2" ++ eval "$1+=\\ \$func_quote_arg_result" }' else func_append_quoted () { $debug_cmd -- func_quote_for_eval "$2" -- eval "$1=\$$1\\ \$func_quote_for_eval_result" ++ func_quote_arg pretty "$2" ++ eval "$1=\$$1\\ \$func_quote_arg_result" } fi @@@ -1091,85 -1091,85 +1122,203 @@@ func_relative_path ( } --# func_quote_for_eval ARG... --# -------------------------- --# Aesthetically quote ARGs to be evaled later. --# This function returns two values: --# i) func_quote_for_eval_result --# double-quoted, suitable for a subsequent eval --# ii) func_quote_for_eval_unquoted_result --# has all characters that are still active within double --# quotes backslashified. --func_quote_for_eval () ++# func_quote_portable EVAL ARG ++# ---------------------------- ++# Internal function to portably implement func_quote_arg. Note that we still ++# keep attention to performance here so we as much as possible try to avoid ++# calling sed binary (so far O(N) complexity as long as func_append is O(1)). ++func_quote_portable () { $debug_cmd -- func_quote_for_eval_unquoted_result= -- func_quote_for_eval_result= -- while test 0 -lt $#; do -- case $1 in -- *[\\\`\"\$]*) -- _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; -- *) -- _G_unquoted_arg=$1 ;; -- esac -- if test -n "$func_quote_for_eval_unquoted_result"; then -- func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" -- else -- func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg" ++ $require_check_ifs_backslash ++ ++ func_quote_portable_result=$2 ++ ++ # one-time-loop (easy break) ++ while true ++ do ++ if $1; then ++ func_quote_portable_result=`$ECHO "$2" | $SED \ ++ -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ++ break fi -- case $_G_unquoted_arg in -- # Double-quote args containing shell metacharacters to delay -- # word splitting, command substitution and variable expansion -- # for a subsequent eval. -- # Many Bourne shells cannot handle close brackets correctly -- # in scan sets, so we specify it separately. -- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") -- _G_quoted_arg=\"$_G_unquoted_arg\" ++ # Quote for eval. ++ case $func_quote_portable_result in ++ *[\\\`\"\$]*) ++ # Fallback to sed for $func_check_bs_ifs_broken=:, or when the string ++ # contains the shell wildcard characters. ++ case $check_ifs_backshlash_broken$func_quote_portable_result in ++ :*|*[\[\*\?]*) ++ func_quote_portable_result=`$ECHO "$func_quote_portable_result" \ ++ | $SED "$sed_quote_subst"` ++ break ++ ;; ++ esac ++ ++ func_quote_portable_old_IFS=$IFS ++ for _G_char in '\' '`' '"' '$' ++ do ++ # STATE($1) PREV($2) SEPARATOR($3) ++ set start "" "" ++ func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy ++ IFS=$_G_char ++ for _G_part in $func_quote_portable_result ++ do ++ case $1 in ++ quote) ++ func_append func_quote_portable_result "$3$2" ++ set quote "$_G_part" "\\$_G_char" ++ ;; ++ start) ++ set first "" "" ++ func_quote_portable_result= ++ ;; ++ first) ++ set quote "$_G_part" "" ++ ;; ++ esac ++ done ++ done ++ IFS=$func_quote_portable_old_IFS ;; -- *) -- _G_quoted_arg=$_G_unquoted_arg -- ;; ++ *) ;; esac -- -- if test -n "$func_quote_for_eval_result"; then -- func_append func_quote_for_eval_result " $_G_quoted_arg" -- else -- func_append func_quote_for_eval_result "$_G_quoted_arg" -- fi -- shift ++ break done ++ ++ func_quote_portable_unquoted_result=$func_quote_portable_result ++ case $func_quote_portable_result in ++ # double-quote args containing shell metacharacters to delay ++ # word splitting, command substitution and variable expansion ++ # for a subsequent eval. ++ # many bourne shells cannot handle close brackets correctly ++ # in scan sets, so we specify it separately. ++ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") ++ func_quote_portable_result=\"$func_quote_portable_result\" ++ ;; ++ esac } --# func_quote_for_expand ARG --# ------------------------- --# Aesthetically quote ARG to be evaled later; same as above, --# but do not quote variable references. --func_quote_for_expand () --{ -- $debug_cmd ++# func_quotefast_eval ARG ++# ----------------------- ++# Quote one ARG (internal). This is equivalent to 'func_quote_arg eval ARG', ++# but optimized for speed. Result is stored in $func_quotefast_eval. ++if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then ++ printf -v _GL_test_printf_tilde %q '~' ++ if test '\~' = "$_GL_test_printf_tilde"; then ++ func_quotefast_eval () ++ { ++ printf -v func_quotefast_eval_result %q "$1" ++ } ++ else ++ # Broken older Bash implementations. Make those faster too if possible. ++ func_quotefast_eval () ++ { ++ case $1 in ++ '~'*) ++ func_quote_portable false "$1" ++ func_quotefast_eval_result=$func_quote_portable_result ++ ;; ++ *) ++ printf -v func_quotefast_eval_result %q "$1" ++ ;; ++ esac ++ } ++ fi ++else ++ func_quotefast_eval () ++ { ++ func_quote_portable false "$1" ++ func_quotefast_eval_result=$func_quote_portable_result ++ } ++fi -- case $1 in -- *[\\\`\"]*) -- _G_arg=`$ECHO "$1" | $SED \ -- -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;; -- *) -- _G_arg=$1 ;; ++ ++# func_quote_arg MODEs ARG ++# ------------------------ ++# Quote one ARG to be evaled later. MODEs argument may contain zero or more ++# specifiers listed below separated by ',' character. This function returns two ++# values: ++# i) func_quote_arg_result ++# double-quoted (when needed), suitable for a subsequent eval ++# ii) func_quote_arg_unquoted_result ++# has all characters that are still active within double ++# quotes backslashified. Available only if 'unquoted' is specified. ++# ++# Available modes: ++# ---------------- ++# 'eval' (default) ++# - escape shell special characters ++# 'expand' ++# - the same as 'eval'; but do not quote variable references ++# 'pretty' ++# - request aesthetic output, i.e. '"a b"' instead of 'a\ b'. This might ++# be used later in func_quote to get output like: 'echo "a b"' instead ++# of 'echo a\ b'. This is slower than default on some shells. ++# 'unquoted' ++# - produce also $func_quote_arg_unquoted_result which does not contain ++# wrapping double-quotes. ++# ++# Examples for 'func_quote_arg pretty,unquoted string': ++# ++# string | *_result | *_unquoted_result ++# ------------+-----------------------+------------------- ++# " | \" | \" ++# a b | "a b" | a b ++# "a b" | "\"a b\"" | \"a b\" ++# * | "*" | * ++# z="${x-$y}" | "z=\"\${x-\$y}\"" | z=\"\${x-\$y}\" ++# ++# Examples for 'func_quote_arg pretty,unquoted,expand string': ++# ++# string | *_result | *_unquoted_result ++# --------------+---------------------+-------------------- ++# z="${x-$y}" | "z=\"${x-$y}\"" | z=\"${x-$y}\" ++func_quote_arg () ++{ ++ _G_quote_expand=false ++ case ,$1, in ++ *,expand,*) ++ _G_quote_expand=: ++ ;; esac -- case $_G_arg in -- # Double-quote args containing shell metacharacters to delay -- # word splitting and command substitution for a subsequent eval. -- # Many Bourne shells cannot handle close brackets correctly -- # in scan sets, so we specify it separately. -- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") -- _G_arg=\"$_G_arg\" ++ case ,$1, in ++ *,pretty,*|*,expand,*|*,unquoted,*) ++ func_quote_portable $_G_quote_expand "$2" ++ func_quote_arg_result=$func_quote_portable_result ++ func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result ++ ;; ++ *) ++ # Faster quote-for-eval for some shells. ++ func_quotefast_eval "$2" ++ func_quote_arg_result=$func_quotefast_eval_result ;; esac ++} ++ -- func_quote_for_expand_result=$_G_arg ++# func_quote MODEs ARGs... ++# ------------------------ ++# Quote all ARGs to be evaled later and join them into single command. See ++# func_quote_arg's description for more info. ++func_quote () ++{ ++ $debug_cmd ++ _G_func_quote_mode=$1 ; shift ++ func_quote_result= ++ while test 0 -lt $#; do ++ func_quote_arg "$_G_func_quote_mode" "$1" ++ if test -n "$func_quote_result"; then ++ func_append func_quote_result " $func_quote_arg_result" ++ else ++ func_append func_quote_result "$func_quote_arg_result" ++ fi ++ shift ++ done } @@@ -1215,8 -1215,8 +1364,8 @@@ func_show_eval ( _G_cmd=$1 _G_fail_exp=${2-':'} -- func_quote_for_expand "$_G_cmd" -- eval "func_notquiet $func_quote_for_expand_result" ++ func_quote_arg pretty,expand "$_G_cmd" ++ eval "func_notquiet $func_quote_arg_result" $opt_dry_run || { eval "$_G_cmd" @@@ -1241,8 -1241,8 +1390,8 @@@ func_show_eval_locale ( _G_fail_exp=${2-':'} $opt_quiet || { -- func_quote_for_expand "$_G_cmd" -- eval "func_echo $func_quote_for_expand_result" ++ func_quote_arg expand,pretty "$_G_cmd" ++ eval "func_echo $func_quote_arg_result" } $opt_dry_run || { @@@ -1369,30 -1369,30 +1518,26 @@@ func_lt_ver ( # End: #! /bin/sh --# Set a version string for this script. --scriptversion=2014-01-07.03; # UTC -- # A portable, pluggable option parser for Bourne shell. # Written by Gary V. Vaughan, 2010 --# Copyright (C) 2010-2015 Free Software Foundation, Inc. --# This is free software; see the source for copying conditions. There is NO --# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -- --# This program is free software: you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation, either version 3 of the License, or --# (at your option) any later version. -- --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. ++# This is free software. There is NO warranty; not even for ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ++# ++# Copyright (C) 2010-2019, 2021 Bootstrap Authors ++# ++# This file is dual licensed under the terms of the MIT license ++# , and GPL version 2 or later ++# . You must apply one of ++# these licenses when using or redistributing this software or any of ++# the files within it. See the URLs above, or the file `LICENSE` ++# included in the Bootstrap distribution for the full license texts. --# You should have received a copy of the GNU General Public License --# along with this program. If not, see . ++# Please report bugs or propose patches to: ++# --# Please report bugs or propose patches to gary@gnu.org. ++# Set a version string for this script. ++scriptversion=2019-02-19.15; # UTC ## ------ ## @@@ -1415,7 -1415,7 +1560,7 @@@ # # In order for the '--version' option to work, you will need to have a # suitably formatted comment like the one at the top of this file --# starting with '# Written by ' and ending with '# warranty; '. ++# starting with '# Written by ' and ending with '# Copyright'. # # For '-h' and '--help' to work, you will also need a one line # description of your script's purpose in a comment directly above the @@@ -1427,7 -1427,7 +1572,7 @@@ # to display verbose messages only when your user has specified # '--verbose'. # --# After sourcing this file, you can plug processing for additional ++# After sourcing this file, you can plug in processing for additional # options by amending the variables from the 'Configuration' section # below, and following the instructions in the 'Option parsing' # section further down. @@@ -1476,8 -1476,8 +1621,8 @@@ fatal_help="Try '\$progname --help' fo ## ------------------------- ## # This section contains functions for adding, removing, and running hooks --# to the main code. A hook is just a named list of of function, that can --# be run in order later on. ++# in the main code. A hook is just a list of function names that can be ++# run in order later on. # func_hookable FUNC_NAME # ----------------------- @@@ -1510,7 -1510,7 +1655,8 @@@ func_add_hook ( # func_remove_hook FUNC_NAME HOOK_FUNC # ------------------------------------ --# Remove HOOK_FUNC from the list of functions called by FUNC_NAME. ++# Remove HOOK_FUNC from the list of hook functions to be called by ++# FUNC_NAME. func_remove_hook () { $debug_cmd @@@ -1519,10 -1519,10 +1665,28 @@@ } ++# func_propagate_result FUNC_NAME_A FUNC_NAME_B ++# --------------------------------------------- ++# If the *_result variable of FUNC_NAME_A _is set_, assign its value to ++# *_result variable of FUNC_NAME_B. ++func_propagate_result () ++{ ++ $debug_cmd ++ ++ func_propagate_result_result=: ++ if eval "test \"\${${1}_result+set}\" = set" ++ then ++ eval "${2}_result=\$${1}_result" ++ else ++ func_propagate_result_result=false ++ fi ++} ++ ++ # func_run_hooks FUNC_NAME [ARG]... # --------------------------------- # Run all hook functions registered to FUNC_NAME. --# It is assumed that the list of hook functions contains nothing more ++# It's assumed that the list of hook functions contains nothing more # than a whitespace-delimited list of legal shell function names, and # no effort is wasted trying to catch shell meta-characters or preserve # whitespace. @@@ -1530,24 -1530,24 +1694,23 @@@ func_run_hooks ( { $debug_cmd ++ _G_rc_run_hooks=false ++ case " $hookable_fns " in *" $1 "*) ;; -- *) func_fatal_error "'$1' does not support hook funcions.n" ;; ++ *) func_fatal_error "'$1' does not support hook functions." ;; esac eval _G_hook_fns=\$$1_hooks; shift for _G_hook in $_G_hook_fns; do -- eval $_G_hook '"$@"' -- -- # store returned options list back into positional -- # parameters for next 'cmd' execution. -- eval _G_hook_result=\$${_G_hook}_result -- eval set dummy "$_G_hook_result"; shift ++ func_unset "${_G_hook}_result" ++ eval $_G_hook '${1+"$@"}' ++ func_propagate_result $_G_hook func_run_hooks ++ if $func_propagate_result_result; then ++ eval set dummy "$func_run_hooks_result"; shift ++ fi done -- -- func_quote_for_eval ${1+"$@"} -- func_run_hooks_result=$func_quote_for_eval_result } @@@ -1557,10 -1557,10 +1720,18 @@@ ## --------------- ## # In order to add your own option parsing hooks, you must accept the --# full positional parameter list in your hook function, remove any --# options that you action, and then pass back the remaining unprocessed --# options in '_result', escaped suitably for --# 'eval'. Like this: ++# full positional parameter list from your hook function. You may remove ++# or edit any options that you action, and then pass back the remaining ++# unprocessed options in '_result', escaped ++# suitably for 'eval'. ++# ++# The '_result' variable is automatically unset ++# before your hook gets called; for best performance, only set the ++# *_result variable when necessary (i.e. don't call the 'func_quote' ++# function unnecessarily because it can be an expensive operation on some ++# machines). ++# ++# Like this: # # my_options_prep () # { @@@ -1570,9 -1570,9 +1741,8 @@@ # usage_message=$usage_message' # -s, --silent don'\''t print informational messages # ' --# --# func_quote_for_eval ${1+"$@"} --# my_options_prep_result=$func_quote_for_eval_result ++# # No change in '$@' (ignored completely by this hook). Leave ++# # my_options_prep_result variable intact. # } # func_add_hook func_options_prep my_options_prep # @@@ -1581,25 -1581,25 +1751,36 @@@ # { # $debug_cmd # --# # Note that for efficiency, we parse as many options as we can ++# args_changed=false ++# ++# # Note that, for efficiency, we parse as many options as we can # # recognise in a loop before passing the remainder back to the # # caller on the first unrecognised argument we encounter. # while test $# -gt 0; do # opt=$1; shift # case $opt in --# --silent|-s) opt_silent=: ;; ++# --silent|-s) opt_silent=: ++# args_changed=: ++# ;; # # Separate non-argument short options: # -s*) func_split_short_opt "$_G_opt" # set dummy "$func_split_short_opt_name" \ # "-$func_split_short_opt_arg" ${1+"$@"} # shift ++# args_changed=: # ;; --# *) set dummy "$_G_opt" "$*"; shift; break ;; ++# *) # Make sure the first unrecognised option "$_G_opt" ++# # is added back to "$@" in case we need it later, ++# # if $args_changed was set to 'true'. ++# set dummy "$_G_opt" ${1+"$@"}; shift; break ;; # esac # done # --# func_quote_for_eval ${1+"$@"} --# my_silent_option_result=$func_quote_for_eval_result ++# # Only call 'func_quote' here if we processed at least one argument. ++# if $args_changed; then ++# func_quote eval ${1+"$@"} ++# my_silent_option_result=$func_quote_result ++# fi # } # func_add_hook func_parse_options my_silent_option # @@@ -1610,17 -1610,17 +1791,26 @@@ # # $opt_silent && $opt_verbose && func_fatal_help "\ # '--silent' and '--verbose' options are mutually exclusive." --# --# func_quote_for_eval ${1+"$@"} --# my_option_validation_result=$func_quote_for_eval_result # } # func_add_hook func_validate_options my_option_validation # --# You'll alse need to manually amend $usage_message to reflect the extra ++# You'll also need to manually amend $usage_message to reflect the extra # options you parse. It's preferable to append if you can, so that # multiple option parsing hooks can be added safely. ++# func_options_finish [ARG]... ++# ---------------------------- ++# Finishing the option parse loop (call 'func_options' hooks ATM). ++func_options_finish () ++{ ++ $debug_cmd ++ ++ func_run_hooks func_options ${1+"$@"} ++ func_propagate_result func_run_hooks func_options_finish ++} ++ ++ # func_options [ARG]... # --------------------- # All the functions called inside func_options are hookable. See the @@@ -1630,17 -1630,17 +1820,27 @@@ func_options ( { $debug_cmd -- func_options_prep ${1+"$@"} -- eval func_parse_options \ -- ${func_options_prep_result+"$func_options_prep_result"} -- eval func_validate_options \ -- ${func_parse_options_result+"$func_parse_options_result"} ++ _G_options_quoted=false -- eval func_run_hooks func_options \ -- ${func_validate_options_result+"$func_validate_options_result"} ++ for my_func in options_prep parse_options validate_options options_finish ++ do ++ func_unset func_${my_func}_result ++ func_unset func_run_hooks_result ++ eval func_$my_func '${1+"$@"}' ++ func_propagate_result func_$my_func func_options ++ if $func_propagate_result_result; then ++ eval set dummy "$func_options_result"; shift ++ _G_options_quoted=: ++ fi ++ done -- # save modified positional parameters for caller -- func_options_result=$func_run_hooks_result ++ $_G_options_quoted || { ++ # As we (func_options) are top-level options-parser function and ++ # nobody quoted "$@" for us yet, we need to do it explicitly for ++ # caller. ++ func_quote eval ${1+"$@"} ++ func_options_result=$func_quote_result ++ } } @@@ -1649,9 -1649,9 +1849,8 @@@ # All initialisations required before starting the option parse loop. # Note that when calling hook functions, we pass through the list of # positional parameters. If a hook function modifies that list, and --# needs to propogate that back to rest of this script, then the complete --# modified list must be put in 'func_run_hooks_result' before --# returning. ++# needs to propagate that back to rest of this script, then the complete ++# modified list must be put in 'func_run_hooks_result' before returning. func_hookable func_options_prep func_options_prep () { @@@ -1662,9 -1662,9 +1861,7 @@@ opt_warning_types= func_run_hooks func_options_prep ${1+"$@"} -- -- # save modified positional parameters for caller -- func_options_prep_result=$func_run_hooks_result ++ func_propagate_result func_run_hooks func_options_prep } @@@ -1676,25 -1676,25 +1873,32 @@@ func_parse_options ( { $debug_cmd -- func_parse_options_result= -- ++ _G_parse_options_requote=false # this just eases exit handling while test $# -gt 0; do # Defer to hook functions for initial option parsing, so they # get priority in the event of reusing an option name. func_run_hooks func_parse_options ${1+"$@"} -- -- # Adjust func_parse_options positional parameters to match -- eval set dummy "$func_run_hooks_result"; shift ++ func_propagate_result func_run_hooks func_parse_options ++ if $func_propagate_result_result; then ++ eval set dummy "$func_parse_options_result"; shift ++ # Even though we may have changed "$@", we passed the "$@" array ++ # down into the hook and it quoted it for us (because we are in ++ # this if-branch). No need to quote it again. ++ _G_parse_options_requote=false ++ fi # Break out of the loop if we already parsed every option. test $# -gt 0 || break ++ # We expect that one of the options parsed in this function matches ++ # and thus we remove _G_opt from "$@" and need to re-quote. ++ _G_match_parse_options=: _G_opt=$1 shift case $_G_opt in --debug|-x) debug_cmd='set -x' -- func_echo "enabling shell trace mode" ++ func_echo "enabling shell trace mode" >&2 $debug_cmd ;; @@@ -1704,7 -1704,7 +1908,10 @@@ ;; --warnings|--warning|-W) -- test $# = 0 && func_missing_arg $_G_opt && break ++ if test $# = 0 && func_missing_arg $_G_opt; then ++ _G_parse_options_requote=: ++ break ++ fi case " $warning_categories $1" in *" $1 "*) # trailing space prevents matching last $1 above @@@ -1757,15 -1757,15 +1964,24 @@@ shift ;; -- --) break ;; ++ --) _G_parse_options_requote=: ; break ;; -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; -- *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; ++ *) set dummy "$_G_opt" ${1+"$@"}; shift ++ _G_match_parse_options=false ++ break ++ ;; esac ++ ++ if $_G_match_parse_options; then ++ _G_parse_options_requote=: ++ fi done -- # save modified positional parameters for caller -- func_quote_for_eval ${1+"$@"} -- func_parse_options_result=$func_quote_for_eval_result ++ if $_G_parse_options_requote; then ++ # save modified positional parameters for caller ++ func_quote eval ${1+"$@"} ++ func_parse_options_result=$func_quote_result ++ fi } @@@ -1782,12 -1782,12 +1998,10 @@@ func_validate_options ( test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" func_run_hooks func_validate_options ${1+"$@"} ++ func_propagate_result func_run_hooks func_validate_options # Bail if the options were screwed! $exit_cmd $EXIT_FAILURE -- -- # save modified positional parameters for caller -- func_validate_options_result=$func_run_hooks_result } @@@ -1843,8 -1843,8 +2057,8 @@@ func_missing_arg ( # func_split_equals STRING # ------------------------ --# Set func_split_equals_lhs and func_split_equals_rhs shell variables after --# splitting STRING at the '=' sign. ++# Set func_split_equals_lhs and func_split_equals_rhs shell variables ++# after splitting STRING at the '=' sign. test -z "$_G_HAVE_XSI_OPS" \ && (eval 'x=a/b/c; test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ @@@ -1859,8 -1859,8 +2073,9 @@@ the func_split_equals_lhs=${1%%=*} func_split_equals_rhs=${1#*=} -- test "x$func_split_equals_lhs" = "x$1" \ -- && func_split_equals_rhs= ++ if test "x$func_split_equals_lhs" = "x$1"; then ++ func_split_equals_rhs= ++ fi }' else # ...otherwise fall back to using expr, which is often a shell builtin. @@@ -1870,7 -1870,7 +2085,7 @@@ func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` func_split_equals_rhs= -- test "x$func_split_equals_lhs" = "x$1" \ ++ test "x$func_split_equals_lhs=" = "x$1" \ || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` } fi #func_split_equals @@@ -1896,7 -1896,7 +2111,7 @@@ els { $debug_cmd -- func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'` ++ func_split_short_opt_name=`expr "x$1" : 'x\(-.\)'` func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` } fi #func_split_short_opt @@@ -1938,31 -1938,31 +2153,44 @@@ func_usage_message ( # func_version # ------------ # Echo version message to standard output and exit. ++# The version message is extracted from the calling file's header ++# comments, with leading '# ' stripped: ++# 1. First display the progname and version ++# 2. Followed by the header comment line matching /^# Written by / ++# 3. Then a blank line followed by the first following line matching ++# /^# Copyright / ++# 4. Immediately followed by any lines between the previous matches, ++# except lines preceding the intervening completely blank line. ++# For example, see the header comments of this file. func_version () { $debug_cmd printf '%s\n' "$progname $scriptversion" $SED -n ' -- /(C)/!b go -- :more -- /\./!{ -- N -- s|\n# | | -- b more -- } -- :go -- /^# Written by /,/# warranty; / { -- s|^# || -- s|^# *$|| -- s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| -- p ++ /^# Written by /!b ++ s|^# ||; p; n ++ ++ :fwd2blnk ++ /./ { ++ n ++ b fwd2blnk } -- /^# Written by / { -- s|^# || -- p ++ p; n ++ ++ :holdwrnt ++ s|^# || ++ s|^# *$|| ++ /^Copyright /!{ ++ /./H ++ n ++ b holdwrnt } -- /^warranty; /q' < "$progpath" ++ ++ s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| ++ G ++ s|\(\n\)\n*|\1|g ++ p; q' < "$progpath" exit $? } @@@ -1972,12 -1972,12 +2200,12 @@@ # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'before-save-hook 'time-stamp) --# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" ++# time-stamp-pattern: "30/scriptversion=%:y-%02m-%02d.%02H; # UTC" # time-stamp-time-zone: "UTC" # End: # Set a version string. --scriptversion='(GNU libtool) 2.4.6' ++scriptversion='(GNU libtool) 2.4.7' # func_echo ARG... @@@ -2068,12 -2068,12 +2296,12 @@@ include the following information compiler: $LTCC compiler flags: $LTCFLAGS linker: $LD (gnu? $with_gnu_ld) -- version: $progname (GNU libtool) 2.4.6 ++ version: $progname $scriptversion Debian-2.4.7-7build1 automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` Report bugs to . --GNU libtool home page: . ++GNU libtool home page: . General help using GNU software: ." exit 0 } @@@ -2270,6 -2270,6 +2498,10 @@@ libtool_options_prep ( nonopt= preserve_args= ++ _G_rc_lt_options_prep=: ++ ++ _G_rc_lt_options_prep=: ++ # Shorthand for --mode=foo, only valid as the first argument case $1 in clean|clea|cle|cl) @@@ -2293,11 -2293,11 +2525,16 @@@ uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) shift; set dummy --mode uninstall ${1+"$@"}; shift ;; ++ *) ++ _G_rc_lt_options_prep=false ++ ;; esac -- # Pass back the list of options. -- func_quote_for_eval ${1+"$@"} -- libtool_options_prep_result=$func_quote_for_eval_result ++ if $_G_rc_lt_options_prep; then ++ # Pass back the list of options. ++ func_quote eval ${1+"$@"} ++ libtool_options_prep_result=$func_quote_result ++ fi } func_add_hook func_options_prep libtool_options_prep @@@ -2309,9 -2309,9 +2546,12 @@@ libtool_parse_options ( { $debug_cmd ++ _G_rc_lt_parse_options=false ++ # Perform our own loop to consume as many options as possible in # each iteration. while test $# -gt 0; do ++ _G_match_lt_parse_options=: _G_opt=$1 shift case $_G_opt in @@@ -2386,15 -2386,15 +2626,20 @@@ func_append preserve_args " $_G_opt" ;; -- # An option not handled by this hook function: -- *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; ++ # An option not handled by this hook function: ++ *) set dummy "$_G_opt" ${1+"$@"} ; shift ++ _G_match_lt_parse_options=false ++ break ++ ;; esac ++ $_G_match_lt_parse_options && _G_rc_lt_parse_options=: done -- -- # save modified positional parameters for caller -- func_quote_for_eval ${1+"$@"} -- libtool_parse_options_result=$func_quote_for_eval_result ++ if $_G_rc_lt_parse_options; then ++ # save modified positional parameters for caller ++ func_quote eval ${1+"$@"} ++ libtool_parse_options_result=$func_quote_result ++ fi } func_add_hook func_parse_options libtool_parse_options @@@ -2451,8 -2451,8 +2696,8 @@@ libtool_validate_options ( } # Pass back the unparsed argument list -- func_quote_for_eval ${1+"$@"} -- libtool_validate_options_result=$func_quote_for_eval_result ++ func_quote eval ${1+"$@"} ++ libtool_validate_options_result=$func_quote_result } func_add_hook func_validate_options libtool_validate_options @@@ -3418,8 -3418,8 +3663,8 @@@ func_mode_compile ( esac done -- func_quote_for_eval "$libobj" -- test "X$libobj" != "X$func_quote_for_eval_result" \ ++ func_quote_arg pretty "$libobj" ++ test "X$libobj" != "X$func_quote_arg_result" \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ && func_warning "libobj name '$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" @@@ -3492,8 -3492,8 +3737,8 @@@ compiler. func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 srcfile=$func_to_tool_file_result -- func_quote_for_eval "$srcfile" -- qsrcfile=$func_quote_for_eval_result ++ func_quote_arg pretty "$srcfile" ++ qsrcfile=$func_quote_arg_result # Only build a PIC object if we are building libtool libraries. if test yes = "$build_libtool_libs"; then @@@ -3648,7 -3648,7 +3893,8 @@@ This mode accepts the following additio -prefer-non-pic try to build non-PIC objects only -shared do not build a '.o' file suitable for static linking -static only build a '.o' file suitable for static linking -- -Wc,FLAG pass FLAG directly to the compiler ++ -Wc,FLAG ++ -Xcompiler FLAG pass FLAG directly to the compiler COMPILE-COMMAND is a command to be used in creating a 'standard' object file from the given SOURCEFILE. @@@ -3754,6 -3754,6 +4000,8 @@@ The following components of LINK-COMMAN -weak LIBNAME declare that the target provides the LIBNAME interface -Wc,FLAG -Xcompiler FLAG pass linker-specific FLAG directly to the compiler ++ -Wa,FLAG ++ -Xassembler FLAG pass linker-specific FLAG directly to the assembler -Wl,FLAG -Xlinker FLAG pass linker-specific FLAG directly to the linker -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) @@@ -4096,8 -4096,8 +4344,8 @@@ func_mode_install ( case $nonopt in *shtool*) :;; *) false;; esac then # Aesthetically quote it. -- func_quote_for_eval "$nonopt" -- install_prog="$func_quote_for_eval_result " ++ func_quote_arg pretty "$nonopt" ++ install_prog="$func_quote_arg_result " arg=$1 shift else @@@ -4107,8 -4107,8 +4355,8 @@@ # The real first argument should be the name of the installation program. # Aesthetically quote it. -- func_quote_for_eval "$arg" -- func_append install_prog "$func_quote_for_eval_result" ++ func_quote_arg pretty "$arg" ++ func_append install_prog "$func_quote_arg_result" install_shared_prog=$install_prog case " $install_prog " in *[\\\ /]cp\ *) install_cp=: ;; @@@ -4165,12 -4165,12 +4413,12 @@@ esac # Aesthetically quote the argument. -- func_quote_for_eval "$arg" -- func_append install_prog " $func_quote_for_eval_result" ++ func_quote_arg pretty "$arg" ++ func_append install_prog " $func_quote_arg_result" if test -n "$arg2"; then -- func_quote_for_eval "$arg2" ++ func_quote_arg pretty "$arg2" fi -- func_append install_shared_prog " $func_quote_for_eval_result" ++ func_append install_shared_prog " $func_quote_arg_result" done test -z "$install_prog" && \ @@@ -4181,8 -4181,8 +4429,8 @@@ if test -n "$install_override_mode" && $no_mode; then if $install_cp; then :; else -- func_quote_for_eval "$install_override_mode" -- func_append install_shared_prog " -m $func_quote_for_eval_result" ++ func_quote_arg pretty "$install_override_mode" ++ func_append install_shared_prog " -m $func_quote_arg_result" fi fi @@@ -4478,8 -4478,8 +4726,8 @@@ relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` $opt_quiet || { -- func_quote_for_expand "$relink_command" -- eval "func_echo $func_quote_for_expand_result" ++ func_quote_arg expand,pretty "$relink_command" ++ eval "func_echo $func_quote_arg_result" } if eval "$relink_command"; then : else @@@ -5258,7 -5258,7 +5506,8 @@@ els if test \"\$libtool_execute_magic\" != \"$magic\"; then file=\"\$0\"" -- qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` ++ func_quote_arg pretty "$ECHO" ++ qECHO=$func_quote_arg_result $ECHO "\ # A function that is used when there is no print builtin or printf. @@@ -5268,7 -5268,7 +5517,7 @@@ func_fallback_echo ( \$1 _LTECHO_EOF' } -- ECHO=\"$qECHO\" ++ ECHO=$qECHO fi # Very basic option parsing. These options are (a) specific to @@@ -6611,9 -6611,9 +6860,9 @@@ func_mode_link ( while test "$#" -gt 0; do arg=$1 shift -- func_quote_for_eval "$arg" -- qarg=$func_quote_for_eval_unquoted_result -- func_append libtool_args " $func_quote_for_eval_result" ++ func_quote_arg pretty,unquoted "$arg" ++ qarg=$func_quote_arg_unquoted_result ++ func_append libtool_args " $func_quote_arg_result" # If the previous option needs an argument, assign it. if test -n "$prev"; then @@@ -6849,6 -6849,6 +7098,13 @@@ prev= continue ;; ++ xassembler) ++ func_append compiler_flags " -Xassembler $qarg" ++ prev= ++ func_append compile_command " -Xassembler $qarg" ++ func_append finalize_command " -Xassembler $qarg" ++ continue ++ ;; xcclinker) func_append linker_flags " $qarg" func_append compiler_flags " $qarg" @@@ -7019,7 -7019,7 +7275,7 @@@ # These systems don't actually have a C library (as such) test X-lc = "X$arg" && continue ;; -- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) ++ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) # Do not include libc due to us having libc/libc_r. test X-lc = "X$arg" && continue ;; @@@ -7039,7 -7039,7 +7295,7 @@@ esac elif test X-lc_r = "X$arg"; then case $host in -- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) ++ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) # Do not include libc_r directly, use -pthread flag. continue ;; @@@ -7069,8 -7069,8 +7325,20 @@@ prev=xcompiler continue ;; -- -- -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ ++ # Solaris ld rejects as of 11.4. Refer to Oracle bug 22985199. ++ -pthread) ++ case $host in ++ *solaris2*) ;; ++ *) ++ case "$new_inherited_linker_flags " in ++ *" $arg "*) ;; ++ * ) func_append new_inherited_linker_flags " $arg" ;; ++ esac ++ ;; ++ esac ++ continue ++ ;; ++ -mt|-mthreads|-kthread|-Kthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) func_append compiler_flags " $arg" func_append compile_command " $arg" @@@ -7211,9 -7211,9 +7479,9 @@@ save_ifs=$IFS; IFS=, for flag in $args; do IFS=$save_ifs -- func_quote_for_eval "$flag" -- func_append arg " $func_quote_for_eval_result" -- func_append compiler_flags " $func_quote_for_eval_result" ++ func_quote_arg pretty "$flag" ++ func_append arg " $func_quote_arg_result" ++ func_append compiler_flags " $func_quote_arg_result" done IFS=$save_ifs func_stripname ' ' '' "$arg" @@@ -7227,16 -7227,16 +7495,21 @@@ save_ifs=$IFS; IFS=, for flag in $args; do IFS=$save_ifs -- func_quote_for_eval "$flag" -- func_append arg " $wl$func_quote_for_eval_result" -- func_append compiler_flags " $wl$func_quote_for_eval_result" -- func_append linker_flags " $func_quote_for_eval_result" ++ func_quote_arg pretty "$flag" ++ func_append arg " $wl$func_quote_arg_result" ++ func_append compiler_flags " $wl$func_quote_arg_result" ++ func_append linker_flags " $func_quote_arg_result" done IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; ++ -Xassembler) ++ prev=xassembler ++ continue ++ ;; ++ -Xcompiler) prev=xcompiler continue @@@ -7254,8 -7254,8 +7527,8 @@@ # -msg_* for osf cc -msg_*) -- func_quote_for_eval "$arg" -- arg=$func_quote_for_eval_result ++ func_quote_arg pretty "$arg" ++ arg=$func_quote_arg_result ;; # Flags to be passed through unchanged, with rationale: @@@ -7274,12 -7274,12 +7547,17 @@@ # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang ++ # -fsanitize=* Clang/GCC memory and address sanitizer ++ # -fuse-ld=* Linker select flags for GCC ++ # -static-* direct GCC to link specific libraries statically ++ # -fcilkplus Cilk Plus language extension features for C/C++ ++ # -Wa,* Pass flags directly to the assembler -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ -- -specs=*) -- func_quote_for_eval "$arg" -- arg=$func_quote_for_eval_result ++ -specs=*|-fsanitize=*|-fuse-ld=*|-static-*|-fcilkplus|-Wa,*) ++ func_quote_arg pretty "$arg" ++ arg=$func_quote_arg_result func_append compile_command " $arg" func_append finalize_command " $arg" func_append compiler_flags " $arg" @@@ -7300,15 -7300,15 +7578,15 @@@ continue else # Otherwise treat like 'Some other compiler flag' below -- func_quote_for_eval "$arg" -- arg=$func_quote_for_eval_result ++ func_quote_arg pretty "$arg" ++ arg=$func_quote_arg_result fi ;; # Some other compiler flag. -* | +*) -- func_quote_for_eval "$arg" -- arg=$func_quote_for_eval_result ++ func_quote_arg pretty "$arg" ++ arg=$func_quote_arg_result ;; *.$objext) @@@ -7428,8 -7428,8 +7706,8 @@@ *) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. -- func_quote_for_eval "$arg" -- arg=$func_quote_for_eval_result ++ func_quote_arg pretty "$arg" ++ arg=$func_quote_arg_result ;; esac # arg @@@ -7570,7 -7570,7 +7848,10 @@@ case $pass in dlopen) libs=$dlfiles ;; dlpreopen) libs=$dlprefiles ;; -- link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; ++ link) ++ libs="$deplibs %DEPLIBS%" ++ test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" ++ ;; esac fi if test lib,dlpreopen = "$linkmode,$pass"; then @@@ -7889,19 -7889,19 +8170,19 @@@ # It is a libtool convenience library, so add in its objects. func_append convenience " $ladir/$objdir/$old_library" func_append old_convenience " $ladir/$objdir/$old_library" ++ tmp_libs= ++ for deplib in $dependency_libs; do ++ deplibs="$deplib $deplibs" ++ if $opt_preserve_dup_deps; then ++ case "$tmp_libs " in ++ *" $deplib "*) func_append specialdeplibs " $deplib" ;; ++ esac ++ fi ++ func_append tmp_libs " $deplib" ++ done elif test prog != "$linkmode" && test lib != "$linkmode"; then func_fatal_error "'$lib' is not a convenience library" fi -- tmp_libs= -- for deplib in $dependency_libs; do -- deplibs="$deplib $deplibs" -- if $opt_preserve_dup_deps; then -- case "$tmp_libs " in -- *" $deplib "*) func_append specialdeplibs " $deplib" ;; -- esac -- fi -- func_append tmp_libs " $deplib" -- done continue fi # $pass = conv @@@ -8634,7 -8634,7 +8915,7 @@@ test CXX = "$tagname" && { case $host_os in linux*) -- case `$CC -V 2>&1 | sed 5q` in ++ case `$CC -V 2>&1 | $SED 5q` in *Sun\ C*) # Sun C++ 5.9 func_suncc_cstd_abi @@@ -8807,7 -8807,7 +9088,7 @@@ # case $version_type in # correct linux to gnu/linux during the next big refactor -- darwin|freebsd-elf|linux|osf|windows|none) ++ darwin|freebsd-elf|linux|midnightbsd-elf|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result age=$number_minor @@@ -8825,6 -8825,6 +9106,9 @@@ revision=$number_minor lt_irix_increment=no ;; ++ *) ++ func_fatal_configuration "$modename: unknown library version type '$version_type'" ++ ;; esac ;; no) @@@ -8898,7 -8898,7 +9182,7 @@@ versuffix=.$current.$revision ;; -- freebsd-elf) ++ freebsd-elf | midnightbsd-elf) func_arith $current - $age major=.$func_arith_result versuffix=$major.$age.$revision @@@ -9124,7 -9124,7 +9408,7 @@@ *-*-netbsd*) # Don't link with libc until the a.out ld.so is fixed. ;; -- *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) ++ *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*) # Do not include libc due to us having libc/libc_r. ;; *-*-sco3.2v5* | *-*-sco5v6*) @@@ -9935,8 -9935,8 +10219,8 @@@ EO for cmd in $concat_cmds; do IFS=$save_ifs $opt_quiet || { -- func_quote_for_expand "$cmd" -- eval "func_echo $func_quote_for_expand_result" ++ func_quote_arg expand,pretty "$cmd" ++ eval "func_echo $func_quote_arg_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? @@@ -10029,8 -10029,8 +10313,8 @@@ eval cmd=\"$cmd\" IFS=$save_ifs $opt_quiet || { -- func_quote_for_expand "$cmd" -- eval "func_echo $func_quote_for_expand_result" ++ func_quote_arg expand,pretty "$cmd" ++ eval "func_echo $func_quote_arg_result" } $opt_dry_run || eval "$cmd" || { lt_exit=$? @@@ -10504,12 -10504,12 +10788,13 @@@ elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else -- func_quote_for_eval "$var_value" -- relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" ++ func_quote_arg pretty "$var_value" ++ relink_command="$var=$func_quote_arg_result; export $var; $relink_command" fi done -- relink_command="(cd `pwd`; $relink_command)" -- relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` ++ func_quote eval cd "`pwd`" ++ func_quote_arg pretty,unquoted "($func_quote_result; $relink_command)" ++ relink_command=$func_quote_arg_unquoted_result fi # Only actually do things if not in dry run mode. @@@ -10749,13 -10749,13 +11034,15 @@@ elif eval var_value=\$$var; test -z "$var_value"; then relink_command="$var=; export $var; $relink_command" else -- func_quote_for_eval "$var_value" -- relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" ++ func_quote_arg pretty,unquoted "$var_value" ++ relink_command="$var=$func_quote_arg_unquoted_result; export $var; $relink_command" fi done # Quote the link command for shipping. -- relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" -- relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` ++ func_quote eval cd "`pwd`" ++ relink_command="($func_quote_result; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" ++ func_quote_arg pretty,unquoted "$relink_command" ++ relink_command=$func_quote_arg_unquoted_result if test yes = "$hardcode_automatic"; then relink_command= fi