summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2015-10-28 07:56:23 -0400
committerSteve Hay <steve.m.hay@googlemail.com>2015-10-30 20:31:17 +0000
commit51bb07e3ca4c3f09f8009deb028545018e0de2fb (patch)
tree5e97eb5f29a55560ca91945efaa5f27a08a57262
parent6c00558416daf3896da9173080edb533b7341dba (diff)
downloadperl-51bb07e3ca4c3f09f8009deb028545018e0de2fb.tar.gz
For perl #126468: protect quotes in myccflags.
Fixes a problem introduced by 57d2761b where ccflags contents with quotes got broken by the quotes getting stripped. (cherry picked from commit 7bd819935395fd684e09e3c97918ba0ad387288a)
-rwxr-xr-xcflags.SH6
1 files changed, 5 insertions, 1 deletions
diff --git a/cflags.SH b/cflags.SH
index f3e44ad8e9..ec70ed216a 100755
--- a/cflags.SH
+++ b/cflags.SH
@@ -387,6 +387,9 @@ echo "cflags.SH: warn = $warn"
# Code to set any extra flags here.
extra=''
+# Protect double or single quotes for better restoring of ccflags.
+myccflags=`echo $ccflags | sed -e 's/"/\\\"/g' -e "s/'/\\\'/g"`
+
echo "Extracting cflags (with variable substitutions)"
# This section of the file will have variable substitutions done on it.
# Move anything that needs config subs from !NO!SUBS! section to !GROK!THIS!.
@@ -401,7 +404,8 @@ $startsh
# This file is generated by cflags.SH
# Used to restore possible edits by cflags.SH.
-myccflags="$ccflags"
+myccflags="$myccflags"
+
# Extra warnings, used e.g. for gcc.
warn="$warn"
# Extra standardness.