diff options
Diffstat (limited to 'tests/tcg/configure.sh')
-rwxr-xr-x | tests/tcg/configure.sh | 42 |
1 files changed, 38 insertions, 4 deletions
diff --git a/tests/tcg/configure.sh b/tests/tcg/configure.sh index ce304f4933..fa1a4261a4 100755 --- a/tests/tcg/configure.sh +++ b/tests/tcg/configure.sh @@ -52,7 +52,7 @@ fi : ${cross_cc_hexagon="hexagon-unknown-linux-musl-clang"} : ${cross_cc_cflags_hexagon="-mv67 -O2 -static"} : ${cross_cc_hppa="hppa-linux-gnu-gcc"} -: ${cross_cc_i386="i386-pc-linux-gnu-gcc"} +: ${cross_cc_i386="i686-linux-gnu-gcc"} : ${cross_cc_cflags_i386="-m32"} : ${cross_cc_m68k="m68k-linux-gnu-gcc"} : $(cross_cc_mips64el="mips64el-linux-gnuabi64-gcc") @@ -69,7 +69,7 @@ fi : ${cross_cc_cflags_sparc="-m32 -mv8plus -mcpu=ultrasparc"} : ${cross_cc_sparc64="sparc64-linux-gnu-gcc"} : ${cross_cc_cflags_sparc64="-m64 -mcpu=ultrasparc"} -: ${cross_cc_x86_64="x86_64-pc-linux-gnu-gcc"} +: ${cross_cc_x86_64="x86_64-linux-gnu-gcc"} : ${cross_cc_cflags_x86_64="-m64"} for target in $target_list; do @@ -108,79 +108,103 @@ for target in $target_list; do case $target in aarch64-*) # We don't have any bigendian build tools so we only use this for AArch64 + container_hosts="x86_64 aarch64" container_image=debian-arm64-test-cross container_cross_cc=aarch64-linux-gnu-gcc-10 ;; alpha-*) + container_hosts=x86_64 container_image=debian-alpha-cross container_cross_cc=alpha-linux-gnu-gcc ;; arm-*) # We don't have any bigendian build tools so we only use this for ARM + container_hosts="x86_64 aarch64" container_image=debian-armhf-cross container_cross_cc=arm-linux-gnueabihf-gcc ;; cris-*) + container_hosts=x86_64 container_image=fedora-cris-cross container_cross_cc=cris-linux-gnu-gcc ;; hppa-*) + container_hosts=x86_64 container_image=debian-hppa-cross container_cross_cc=hppa-linux-gnu-gcc ;; i386-*) + container_hosts=x86_64 container_image=fedora-i386-cross container_cross_cc=gcc ;; m68k-*) + container_hosts=x86_64 container_image=debian-m68k-cross container_cross_cc=m68k-linux-gnu-gcc ;; mips64el-*) + container_hosts=x86_64 container_image=debian-mips64el-cross container_cross_cc=mips64el-linux-gnuabi64-gcc ;; mips64-*) + container_hosts=x86_64 container_image=debian-mips64-cross container_cross_cc=mips64-linux-gnuabi64-gcc ;; mipsel-*) + container_hosts=x86_64 container_image=debian-mipsel-cross container_cross_cc=mipsel-linux-gnu-gcc ;; mips-*) + container_hosts=x86_64 container_image=debian-mips-cross container_cross_cc=mips-linux-gnu-gcc ;; ppc-*|ppc64abi32-*) + container_hosts=x86_64 container_image=debian-powerpc-cross container_cross_cc=powerpc-linux-gnu-gcc ;; ppc64-*) + container_hosts=x86_64 container_image=debian-ppc64-cross container_cross_cc=powerpc64-linux-gnu-gcc ;; ppc64le-*) + container_hosts=x86_64 container_image=debian-ppc64el-cross container_cross_cc=powerpc64le-linux-gnu-gcc ;; riscv64-*) + container_hosts=x86_64 container_image=debian-riscv64-cross container_cross_cc=riscv64-linux-gnu-gcc ;; s390x-*) + container_hosts=x86_64 container_image=debian-s390x-cross container_cross_cc=s390x-linux-gnu-gcc ;; sh4-*) + container_hosts=x86_64 container_image=debian-sh4-cross container_cross_cc=sh4-linux-gnu-gcc ;; sparc64-*) + container_hosts=x86_64 container_image=debian-sparc64-cross container_cross_cc=sparc64-linux-gnu-gcc ;; + x86_64-*) + container_hosts="aarch64 ppc64el x86_64" + container_image=debian-amd64-cross + container_cross_cc=x86_64-linux-gnu-gcc + ;; xtensa*-softmmu) + container_hosts=x86_64 container_image=debian-xtensa-cross # default to the dc232b cpu @@ -257,6 +281,12 @@ for target in $target_list; do echo "CROSS_CC_HAS_POWER8_VECTOR=y" >> $config_target_mak fi ;; + i386-linux-user) + if do_compiler "$target_compiler" $target_compiler_cflags \ + -Werror -fno-pie -o $TMPE $TMPC; then + echo "CROSS_CC_HAS_I386_NOPIE=y" >> $config_target_mak + fi + ;; esac enabled_cross_compilers="$enabled_cross_compilers $target_compiler" @@ -265,7 +295,11 @@ for target in $target_list; do done if test $got_cross_cc = no && test "$container" != no && test -n "$container_image"; then - echo "DOCKER_IMAGE=$container_image" >> $config_target_mak - echo "DOCKER_CROSS_CC_GUEST=$container_cross_cc" >> $config_target_mak + for host in $container_hosts; do + if test "$host" = "$ARCH"; then + echo "DOCKER_IMAGE=$container_image" >> $config_target_mak + echo "DOCKER_CROSS_CC_GUEST=$container_cross_cc" >> $config_target_mak + fi + done fi done |