Skip to content

Commit

Permalink
tests/tcg/configure.sh: add handling for assembler only builds
Browse files Browse the repository at this point in the history
Up until this point we only handled local compilers or assumed we had
everything in the container. This falls down when we are building QEMU
inside the container.

This special handling only affects tricore for now but I put it in a
case just in case we add any other "special" targets. Setting
CROSS_CC_GUEST is a bit of a hack just to ensure the test runs as we
gate on a detected compiler even though the Makefile won't actually
use it. It also means we display something sane in the configure
output.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20210720232703.10650-27-alex.bennee@linaro.org>
  • Loading branch information
stsquad committed Jul 23, 2021
1 parent 2da4225 commit c56f1ee
Showing 1 changed file with 18 additions and 0 deletions.
18 changes: 18 additions & 0 deletions tests/tcg/configure.sh
Expand Up @@ -72,6 +72,10 @@ fi
: ${cross_cc_x86_64="x86_64-linux-gnu-gcc"}
: ${cross_cc_cflags_x86_64="-m64"}

# tricore is special as it doesn't have a compiler
: ${cross_as_tricore="tricore-as"}
: ${cross_ld_tricore="tricore-ld"}

for target in $target_list; do
arch=${target%%-*}

Expand Down Expand Up @@ -247,6 +251,20 @@ for target in $target_list; do
fi
fi
fi

# Special handling for assembler only tests
eval "target_as=\"\${cross_as_$arch}\""
eval "target_ld=\"\${cross_ld_$arch}\""
if has $target_as && has $target_ld; then
case $target in
tricore-softmmu)
echo "CROSS_CC_GUEST=$target_as" >> $config_target_mak
echo "CROSS_AS_GUEST=$target_as" >> $config_target_mak
echo "CROSS_LD_GUEST=$target_ld" >> $config_target_mak
got_cross_cc=yes
;;
esac
fi
fi

if test $got_cross_cc = yes; then
Expand Down

0 comments on commit c56f1ee

Please sign in to comment.