On 2022-10-24 10:07, Richard Biener wrote:
On Fri, 21 Oct 2022, Torbj?rn SVENSSON wrote:

When generating the makefile, make sure that the paths are quoted so
that a native Windows path works within Cygwin.

Without this patch, this error is reported by the DejaGNU test suite:

make: [T:\ccMf0kI3.mk:3: T:\ccGEvdDp.ltrans0.ltrans.o] Error 1 (ignored)

The generated makefile fragment without the patch:

T:\ccGEvdDp.ltrans0.ltrans.o:
   @T:\build\bin\arm-none-eabi-g++.exe '-xlto' ... '-o' 
'T:\ccGEvdDp.ltrans0.ltrans.o' 'T:\ccGEvdDp.ltrans0.o'
   @-touch -r T:\ccGEvdDp.ltrans0.o T:\ccGEvdDp.ltrans0.o.tem > /dev/null 2>&1 
&& mv T:\ccGEvdDp.ltrans0.o.tem T:\ccGEvdDp.ltrans0.o
.PHONY: all
all: \
   T:\ccGEvdDp.ltrans0.ltrans.o

With the patch, the touch line would be replace with:

   @-touch -r "T:\ccGEvdDp.ltrans0.o" "T:\ccGEvdDp.ltrans0.o.tem" > /dev/null 2>&1 && mv 
"T:\ccGEvdDp.ltrans0.o.tem" "T:\ccGEvdDp.ltrans0.o"

gcc/ChangeLog:

OK.

Thanks,
Richard.

        * lto-wrapper.cc: Quote paths in makefile.

Co-Authored-By: Yvan ROUX <yvan.r...@foss.st.com>
Signed-off-by: Torbj?rn SVENSSON <torbjorn.svens...@foss.st.com>
---
  gcc/lto-wrapper.cc | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gcc/lto-wrapper.cc b/gcc/lto-wrapper.cc
index 9a764702ffc..b12bcc1ad27 100644
--- a/gcc/lto-wrapper.cc
+++ b/gcc/lto-wrapper.cc
@@ -2010,8 +2010,8 @@ cont:
                 truncate them as soon as we have processed it.  This
                 reduces temporary disk-space usage.  */
              if (! save_temps)
-               fprintf (mstream, "\t@-touch -r %s %s.tem > /dev/null 2>&1 "
-                        "&& mv %s.tem %s\n",
+               fprintf (mstream, "\t@-touch -r \"%s\" \"%s.tem\" > /dev/null "
+                        "2>&1 && mv \"%s.tem\" \"%s\"\n",
                         input_name, input_name, input_name, input_name);
            }
          else




Pushed.

Reply via email to