+2005-03-06 Per Bothner <per@bothner.com>,
+ Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ Allow special characters in source file names. Will break unless
+ `-o target' is also given, which must not contain special characters.
+ En passant, fix source file quoting broken for cygwin/MSVC.
+
+ * ltmain.m4sh (func_mode_compile): Use new variable qsrcfile
+ for quoted source file name for compile $command. Fix missing
+ quotes for _c_o lockfile.
+ * NEWS: Update.
+
2005-03-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_link): Reword double negation in
* Support for linux-dietlibc (`diet' as well as `diet-dyn', separately).
* `libtoolize --install' now also installs `install-sh'.
* Support (mostly) for DragonFly BSD.
+* Allow shell special characters like `$' in source file names, but not
+ in object names, to enhance GCJ support.
\f
New in 1.9f: 2004-10-23; CVS version 1.9e, Libtool team:
* Calculate dllsearchpath correctly for wrapper scripts on cygwin.
esac
done
+ func_quote_for_eval "$libobj"
+ test "X$libobj" != "X$func_quote_for_eval_result" \
+ && func_fatal_error "libobj name \`$libobj' may not contain shell special characters."
objname=`$ECHO "X$obj" | $Xsed -e 's%^.*/%%'`
xdir=`$ECHO "X$obj" | $Xsed -e 's%/[[^/]]*$%%'`
if test "X$xdir" = "X$obj"; then
$run $RM $removelist
exit $EXIT_FAILURE
fi
- $ECHO $srcfile > "$lockfile"
+ $ECHO "$srcfile" > "$lockfile"
fi
if test -n "$fix_srcfile_path"; then
eval srcfile=\"$fix_srcfile_path\"
fi
+ func_quote_for_eval "$srcfile"
+ qsrcfile=$func_quote_for_eval_result
$run $RM "$libobj" "${libobj}T"
fbsd_hideous_sh_bug=$base_compile
if test "$pic_mode" != no; then
- command="$base_compile $srcfile $pic_flag"
+ command="$base_compile $qsrcfile $pic_flag"
else
# Don't build PIC code
- command="$base_compile $srcfile"
+ command="$base_compile $qsrcfile"
fi
func_mkdir_p "$xdir$objdir"
if test "$build_old_libs" = yes; then
if test "$pic_mode" != yes; then
# Don't build PIC code
- command="$base_compile $srcfile"
+ command="$base_compile $qsrcfile"
else
- command="$base_compile $srcfile $pic_flag"
+ command="$base_compile $qsrcfile $pic_flag"
fi
if test "$compiler_c_o" = yes; then
command="$command -o $obj"