summaryrefslogtreecommitdiffstats
path: root/configure
diff options
context:
space:
mode:
authorPeter Maydell2016-06-13 12:32:24 +0200
committerRiku Voipio2016-06-26 12:17:20 +0200
commitaffc88cc9b5f8cfa0767139c083329d471862901 (patch)
tree993affb80a9eef0d02673d9e711b885c2f16c0fe /configure
parentconfigure: Don't override ARCH=unknown if enabling TCI (diff)
downloadqemu-affc88cc9b5f8cfa0767139c083329d471862901.tar.gz
qemu-affc88cc9b5f8cfa0767139c083329d471862901.tar.xz
qemu-affc88cc9b5f8cfa0767139c083329d471862901.zip
configure: Don't allow user-only targets for unknown CPU architectures
For the user-only targets, we need to know something about the host CPU architecture even if we are using the TCI interpreter rather than TCG. (In particular user-exec.c has code for handling signals that needs to know about that host's context structures.) Specifically forbid building the user-only targets on unknown CPU architectures, rather than allowing them to configure but then fail when building user-exec.c. This change drops supports for two configurations which were theoretically possible before: * linux-user targets on M68K hosts using TCI * linux-user targets on HPPA hosts using TCI We don't think anybody is actually trying to use these in practice, though: * interpreted TCG on a slow host CPU would be unusably slow * the m68k user-exec.c support is missing is_write detection so guest code which writes to the same page it is executing from was broken (will include any guest program using signals) * HPPA TCG backend support was dropped two and a half years ago with no complaints Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure7
1 files changed, 7 insertions, 0 deletions
diff --git a/configure b/configure
index 6696316a83..dce20f0745 100755
--- a/configure
+++ b/configure
@@ -1216,6 +1216,13 @@ esac
QEMU_CFLAGS="$CPU_CFLAGS $QEMU_CFLAGS"
EXTRA_CFLAGS="$CPU_CFLAGS $EXTRA_CFLAGS"
+# For user-mode emulation the host arch has to be one we explicitly
+# support, even if we're using TCI.
+if [ "$ARCH" = "unknown" ]; then
+ bsd_user="no"
+ linux_user="no"
+fi
+
default_target_list=""
mak_wilds=""