[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 03/16] configure: unify two case statements on $cpu
From: |
Paolo Bonzini |
Subject: |
[PULL 03/16] configure: unify two case statements on $cpu |
Date: |
Sun, 19 Dec 2021 15:16:58 +0100 |
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
configure | 67 ++++++++++++++++++++++++++-----------------------------
1 file changed, 32 insertions(+), 35 deletions(-)
diff --git a/configure b/configure
index f0a82dd8f5..77ccc15b73 100755
--- a/configure
+++ b/configure
@@ -636,32 +636,47 @@ else
fi
ARCH=
-# Normalise host CPU name and set ARCH.
+# Normalise host CPU name, set ARCH and multilib cflags
# Note that this case should only have supported host CPUs, not guests.
case "$cpu" in
- ppc|ppc64|s390x|sparc64|x32|riscv)
- ;;
- ppc64le)
- ARCH="ppc64"
- ;;
+ aarch64|riscv) ;;
+ armv*b|armv*l|arm)
+ cpu="arm" ;;
+
i386|i486|i586|i686|i86pc|BePC)
cpu="i386"
- ;;
+ CPU_CFLAGS="-m32" ;;
+ x32)
+ CPU_CFLAGS="-mx32" ;;
x86_64|amd64)
cpu="x86_64"
- ;;
- armv*b|armv*l|arm)
- cpu="arm"
- ;;
- aarch64)
- cpu="aarch64"
- ;;
+ # ??? Only extremely old AMD cpus do not have cmpxchg16b.
+ # If we truly care, we should simply detect this case at
+ # runtime and generate the fallback to serial emulation.
+ CPU_CFLAGS="-m64 -mcx16" ;;
+
mips*)
- cpu="mips"
- ;;
+ cpu="mips" ;;
+
+ ppc)
+ CPU_CFLAGS="-m32" ;;
+ ppc64)
+ CPU_CFLAGS="-m64" ;;
+ ppc64le)
+ ARCH="ppc64" ;;
+
+ s390)
+ CPU_CFLAGS="-m31"
+ ARCH=unknown ;;
+ s390x)
+ CPU_CFLAGS="-m64" ;;
+
sparc|sun4[cdmuv])
cpu="sparc"
- ;;
+ CPU_CFLAGS="-m32 -mv8plus -mcpu=ultrasparc" ;;
+ sparc64)
+ CPU_CFLAGS="-m64 -mcpu=ultrasparc" ;;
+
*)
# This will result in either an error or falling back to TCI later
ARCH=unknown
@@ -1252,24 +1267,6 @@ local_statedir="${local_statedir:-$prefix/var}"
firmwarepath="${firmwarepath:-$datadir/qemu-firmware}"
localedir="${localedir:-$datadir/locale}"
-case "$cpu" in
- ppc) CPU_CFLAGS="-m32" ;;
- ppc64) CPU_CFLAGS="-m64" ;;
- sparc) CPU_CFLAGS="-m32 -mv8plus -mcpu=ultrasparc" ;;
- sparc64) CPU_CFLAGS="-m64 -mcpu=ultrasparc" ;;
- s390) CPU_CFLAGS="-m31" ;;
- s390x) CPU_CFLAGS="-m64" ;;
- i386) CPU_CFLAGS="-m32" ;;
- x32) CPU_CFLAGS="-mx32" ;;
-
- # ??? Only extremely old AMD cpus do not have cmpxchg16b.
- # If we truly care, we should simply detect this case at
- # runtime and generate the fallback to serial emulation.
- x86_64) CPU_CFLAGS="-m64 -mcx16" ;;
-
- # No special flags required for other host CPUs
-esac
-
if eval test -z "\${cross_cc_$cpu}"; then
eval "cross_cc_${cpu}=\$cc"
cross_cc_vars="$cross_cc_vars cross_cc_${cpu}"
--
2.33.1
- [PULL 00/16] Misc patches for 2021-12-20, Paolo Bonzini, 2021/12/19
- [PULL 01/16] configure: make $targetos lowercase, use windows instead of MINGW32, Paolo Bonzini, 2021/12/19
- [PULL 03/16] configure: unify two case statements on $cpu,
Paolo Bonzini <=
- [PULL 04/16] configure: unify ppc64 and ppc64le, Paolo Bonzini, 2021/12/19
- [PULL 02/16] configure: move target detection before CPU detection, Paolo Bonzini, 2021/12/19
- [PULL 05/16] configure: unify x86_64 and x32, Paolo Bonzini, 2021/12/19
- [PULL 06/16] meson: rename "arch" variable, Paolo Bonzini, 2021/12/19
- [PULL 07/16] configure, meson: move ARCH to meson.build, Paolo Bonzini, 2021/12/19
- [PULL 08/16] configure: remove unnecessary symlinks, Paolo Bonzini, 2021/12/19
- [PULL 10/16] meson: reenable test-fdmon-epoll, Paolo Bonzini, 2021/12/19
- [PULL 11/16] cpu: remove unnecessary #ifdef CONFIG_TCG, Paolo Bonzini, 2021/12/19
- [PULL 09/16] configure: remove DIRS, Paolo Bonzini, 2021/12/19