diff mbox series

[v1,3/6] tests/tcg/configure.sh: tweak quoting of target_compiler

Message ID 20210527160319.19834-4-alex.bennee@linaro.org
State Superseded
Headers show
Series testing/next queue (signal, meson, acceptance tags) | expand

Commit Message

Alex Bennée May 27, 2021, 4:03 p.m. UTC
If you configure the host compiler with a multi-command stanza like:

  --cc="ccache gcc"

then the configure.sh machinery falls over with confusion. Work around
this by ensuring we correctly quote so where we need a complete
evaluation we get it. Of course the has() check needs single variable
so we need to unquote that. This does mean it essentially checks that
just the ccache command exits but if we got past that step we still
check the compiler actually does something.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

Cc: Thomas Huth <thuth@redhat.com>
---
 tests/tcg/configure.sh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

-- 
2.20.1

Comments

Thomas Huth May 28, 2021, 4:39 a.m. UTC | #1
On 27/05/2021 18.03, Alex Bennée wrote:
> If you configure the host compiler with a multi-command stanza like:

> 

>    --cc="ccache gcc"

> 

> then the configure.sh machinery falls over with confusion. Work around

> this by ensuring we correctly quote so where we need a complete

> evaluation we get it. Of course the has() check needs single variable

> so we need to unquote that. This does mean it essentially checks that

> just the ccache command exits but if we got past that step we still

> check the compiler actually does something.

> 

> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

> Cc: Thomas Huth <thuth@redhat.com>

> ---

>   tests/tcg/configure.sh | 6 +++---

>   1 file changed, 3 insertions(+), 3 deletions(-)

> 

> diff --git a/tests/tcg/configure.sh b/tests/tcg/configure.sh

> index ed6492ce59..aa7c24328a 100755

> --- a/tests/tcg/configure.sh

> +++ b/tests/tcg/configure.sh

> @@ -222,10 +222,10 @@ for target in $target_list; do

>   

>     got_cross_cc=no

>   

> -  if eval test "x\${cross_cc_$arch}" != xyes; then

> -      eval "target_compiler=\${cross_cc_$arch}"

> +  if eval test "x\"\${cross_cc_$arch}\"" != xyes; then

> +      eval "target_compiler=\"\${cross_cc_$arch}\""

>   

> -      if has "$target_compiler"; then

> +      if has $target_compiler; then

>             if test "$supress_clang" = yes &&

>                     $target_compiler --version | grep -qi "clang"; then

>                 got_cross_cc=no

> 


Reviewed-by: Thomas Huth <thuth@redhat.com>
diff mbox series

Patch

diff --git a/tests/tcg/configure.sh b/tests/tcg/configure.sh
index ed6492ce59..aa7c24328a 100755
--- a/tests/tcg/configure.sh
+++ b/tests/tcg/configure.sh
@@ -222,10 +222,10 @@  for target in $target_list; do
 
   got_cross_cc=no
 
-  if eval test "x\${cross_cc_$arch}" != xyes; then
-      eval "target_compiler=\${cross_cc_$arch}"
+  if eval test "x\"\${cross_cc_$arch}\"" != xyes; then
+      eval "target_compiler=\"\${cross_cc_$arch}\""
 
-      if has "$target_compiler"; then
+      if has $target_compiler; then
           if test "$supress_clang" = yes &&
                   $target_compiler --version | grep -qi "clang"; then
               got_cross_cc=no