From: Gabriel Kerneis <gabriel@kerneis.info>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: qemu-trivial@nongnu.org, Peter Maydell <peter.maydell@linaro.org>,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH] Quote extra_cflags in config-host.mak
Date: Wed, 11 Sep 2013 16:01:37 +0100 [thread overview]
Message-ID: <20130911150137.GC15227@kerneis.info> (raw)
In-Reply-To: <523083EF.7050203@redhat.com>
On Wed, Sep 11, 2013 at 04:53:35PM +0200, Paolo Bonzini wrote:
> Oh, then it's this line in configure that has to be changed to do proper
> quoting.
>
> printf "# Configured with:" >> $config_host_mak
> printf " '%s'" "$0" "$@" >> $config_host_mak
No, this line has absolutely nothing to do with it. It's purely a
comment that is not executed later. The line that has to be fixed is
really the line starting with "extra_cflags=" in config-host.mak (well,
at least in my experience - my patch does not touch the first line, at
it still solves the issue).
> Something like
>
> for arg in "$0" "$@"; do
> quoted_arg=$(echo "$i" | sed 's/[$\\"]/\\&/g')
> printf ' "%s"' "$quoted_arg"
> done >> $config_host_mak
But we could indeed apply that escaping mechanism to extra_cflags (or
maybe to every variable that is printed to config-host.mk). That's what
I meant when I refered to the following bashism:
printf "extra_cflags=%q\n" "$extra_cflags"
Unfortunately, %q is not portable and we probably need something along
the lines of your proposal above (note that it doesn't handle "("
though, which is precisely the one causing an issue in my example).
--
Gabriel
next prev parent reply other threads:[~2013-09-11 15:01 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-11 13:41 [Qemu-devel] [PATCH] Quote extra_cflags in config-host.mak Gabriel Kerneis
2013-09-11 14:01 ` Paolo Bonzini
2013-09-11 14:42 ` Gabriel Kerneis
2013-09-11 14:53 ` Paolo Bonzini
2013-09-11 15:01 ` Gabriel Kerneis [this message]
2013-09-11 15:06 ` Paolo Bonzini
2013-09-11 15:16 ` Gabriel Kerneis
2013-09-11 15:23 ` Gabriel Kerneis
2013-09-11 15:29 ` Paolo Bonzini
2013-09-11 15:14 ` Gabriel Kerneis
2013-09-11 15:55 ` Eric Blake
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130911150137.GC15227@kerneis.info \
--to=gabriel@kerneis.info \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-trivial@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).