Here are the improvements you suggested. I'll send a patch for sed_make_literal_regex soon.
Ok? Paolo * libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex and sysroot_cmd delimiter from pipe to slash. Wrap the entire for loop with "if $opt_dry_run...fi" and print an explanatory message for the --dry-run case. --- libltdl/config/ltmain.m4sh | 21 ++++++++++++--------- 1 files changed, 12 insertions(+), 9 deletions(-) diff --git a/libltdl/config/ltmain.m4sh b/libltdl/config/ltmain.m4sh index d29fd5d..4e922ac 100644 --- a/libltdl/config/ltmain.m4sh +++ b/libltdl/config/ltmain.m4sh @@ -1419,24 +1419,27 @@ func_mode_finish () done if test -n "$libs"; then - tmpdir=`func_mktempdir` if test -n "$lt_sysroot"; then - sysroot_regex=`$ECHO "$lt_sysroot" | $SED 's/[].[^$\\*|]/\\\\&/g'` - sysroot_cmd="s|\([ ']\)$sysroot_regex|\1|g;" + sysroot_regex=`$ECHO "$lt_sysroot" | $SED 's/[].[^$\\*/]/\\\\&/g'` + sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" else sysroot_cmd= fi # Remove sysroot references - for lib in $libs; do - $opt_dry_run || { + if $opt_dry_run; then + tmpdir=`func_mktempdir` + for lib in $libs; do sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ > $tmpdir/tmp-la mv -f $tmpdir/tmp-la $lib - } - file="$outputname" - done - $opt_dry_run || ${RM}r "$tmpdir" + done + ${RM}r "$tmpdir" + else + for lib in $libs; do + echo "removing references to $lt_sysroot and \`=' prefixes from $lib" + done + fi fi if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then -- 1.7.1