The srcname and the target name were not being quoted.
This caused problems with Java, where .class files may
commonly contain '$'.

Also note that gcj allows multiple input files compiled to a single
.s or .o file: Thus a useful way to compile a bunch of class files is:
  gcj -c *.class -o package.o
or with libool:
  libtool --mode=compile gcj *.class -o package.lo
It appears that func_mode_compile sets srcfile to the *last*
source file; setting it to the first source file might be better.
However, that's not a priority since the multi-source-file mode
does require specifying -o.

I'm not in this list, so please cc any responses to me.
--
        --Per Bothner
[EMAIL PROTECTED]   http://per.bothner.com/
2005-03-06  Per Bothner  <[EMAIL PROTECTED]>

	* ltmain.m4sh (func_mode_compile): Call func_quote_for_eval_result
	for both -o target and srcfile.

--- ltmain.m4sh.~1.56.~	2005-02-22 19:30:30.000000000 -0800
+++ ltmain.m4sh	2005-03-06 14:20:36.151386195 -0800
@@ -1111,7 +1111,8 @@
 	;;
 
       target )
-	libobj="$arg"
+	func_quote_for_eval "$arg"
+	libobj="$func_quote_for_eval_result"
 	arg_mode=normal
 	continue
 	;;
@@ -1176,6 +1177,9 @@
       base_compile="$base_compile $func_quote_for_eval_result"
     done # for arg
 
+    func_quote_for_eval "$srcfile"
+    srcfile="$func_quote_for_eval_result"
+
     case $arg_mode in
     arg)
       func_fatal_error "you must specify an argument for -Xcompile"

Reply via email to