diff options
author | Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> | 2022-10-21 12:29:13 +0200 |
---|---|---|
committer | Torbjörn SVENSSON <torbjorn.svensson@foss.st.com> | 2022-10-24 10:20:34 +0200 |
commit | 47db37ed477f29ac52c4484c260138d15e44a36b (patch) | |
tree | 6b8dfb0b14e1a8e976f1feca15c03bdc6404a6d5 /gcc | |
parent | 6bfea64164c3f1989d34656ab96d03a7cda2143e (diff) | |
download | gcc-47db37ed477f29ac52c4484c260138d15e44a36b.zip gcc-47db37ed477f29ac52c4484c260138d15e44a36b.tar.gz gcc-47db37ed477f29ac52c4484c260138d15e44a36b.tar.bz2 |
lto: Always quote path to touch
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:
* lto-wrapper.cc: Quote paths in makefile.
Co-Authored-By: Yvan ROUX <yvan.roux@foss.st.com>
Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/lto-wrapper.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/lto-wrapper.cc b/gcc/lto-wrapper.cc index 9a76470..b12bcc1 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 |