|
From: | Andreas Färber |
Subject: | Re: [Qemu-devel] [Bug 636315] [NEW] configure and build errors on Solaris 10 due to /bin/sh usage |
Date: | Mon, 13 Sep 2010 23:34:33 +0200 |
Am 13.09.2010 um 10:49 schrieb Michael Tokarev:
13.09.2010 01:05, Blue Swirl wrote:On Sun, Sep 12, 2010 at 5:58 PM, Andreas Färber <address@hidden > wrote:Am 12.09.2010 um 19:47 schrieb Blue Swirl:diff --git a/tracetool b/tracetool index 534cc70..c7582bf 100755 --- a/tracetool +++ b/tracetool @@ -48,7 +48,8 @@ get_argnames() { local nfields field name nfields=0 - for field in $(get_args "$1"); do + args=get_args "$1" + for field in "$args"; doThis part yes. (I took the liberty of adding args to the local line above)Um. Are you sure it works as expected?
No, I'm not sure. It's Dark Magic to me and happened to unbreak configure; I'll try out your suggestions the next days.
Thanks, Andreas
I'm not at all shure. There are 2 errors in the above patch: + args=get_args "$1" After this line, variable $args will contain one word: "get_args". Shell will try to execute a command or call a shell function which name is stored in $1, if it is assigned. If it is not, at least bash will complain that it can't execute command "". The proper way is to add backticks: + args=`get_args "$1"` In the second line: + for field in "$args"; do the double quotes ensure that all words in $args are processed as single word, all at once. So the for loop will be executed exactly one time, no matter how many arguments are given (even if there's none). So the right solution is to drop double quotes. JFYI. /mjt
[Prev in Thread] | Current Thread | [Next in Thread] |