aboutsummaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2017-03-21 14:31:57 +0000
committerPeter Maydell <peter.maydell@linaro.org>2017-03-21 15:46:22 +0000
commit898be3e0415c6d614395c087ef1e91210797cda7 (patch)
treeaa0abd88c1601f8e1278f8791ca3e209216eecb6 /configure
parent41a56822e3049a83e05ebd1b0d7d040cb09a52fb (diff)
configure: Warn about deprecated hosts
We plan to drop support in a future QEMU release for host OSes and host architectures for which we have no test machine where we can build and run tests. For the 2.9 release, make configure print a warning if it is run on such a host, so that the user has some warning of the plans and can volunteer to help us maintain the port if they need it to continue to function. This commit flags up as deprecated the CPU architectures: * ia64 * sparc * anything which we don't have a TCG port for (and which was presumably using TCI) and the OSes: * GNU/kFreeBSD * DragonFly BSD * NetBSD * OpenBSD * Solaris * AIX * Haiku It also makes entirely unrecognized host OS strings be rejected rather than treated as if they were Linux (which likely never worked). Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1490106717-9542-1-git-send-email-peter.maydell@linaro.org
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure49
1 files changed, 47 insertions, 2 deletions
diff --git a/configure b/configure
index 02e3b695d3..3291603844 100755
--- a/configure
+++ b/configure
@@ -321,6 +321,9 @@ tcmalloc="no"
jemalloc="no"
replication="yes"
+supported_cpu="no"
+supported_os="no"
+
# parse CC options first
for opt do
optarg=$(expr "x$opt" : 'x[^=]*=\(.*\)')
@@ -517,23 +520,32 @@ ARCH=
# Normalise host CPU name and set ARCH.
# Note that this case should only have supported host CPUs, not guests.
case "$cpu" in
- ia64|ppc|ppc64|s390|s390x|sparc64|x32)
+ ppc|ppc64|s390|s390x|x32)
+ cpu="$cpu"
+ supported_cpu="yes"
+ ;;
+ ia64|sparc64)
cpu="$cpu"
;;
i386|i486|i586|i686|i86pc|BePC)
cpu="i386"
+ supported_cpu="yes"
;;
x86_64|amd64)
cpu="x86_64"
+ supported_cpu="yes"
;;
armv*b|armv*l|arm)
cpu="arm"
+ supported_cpu="yes"
;;
aarch64)
cpu="aarch64"
+ supported_cpu="yes"
;;
mips*)
cpu="mips"
+ supported_cpu="yes"
;;
sparc|sun4[cdmuv])
cpu="sparc"
@@ -562,6 +574,7 @@ MINGW32*)
else
audio_drv_list=""
fi
+ supported_os="yes"
;;
GNU/kFreeBSD)
bsd="yes"
@@ -579,6 +592,7 @@ FreeBSD)
libs_qga="-lutil $libs_qga"
netmap="" # enable netmap autodetect
HOST_VARIANT_DIR="freebsd"
+ supported_os="yes"
;;
DragonFly)
bsd="yes"
@@ -620,6 +634,7 @@ Darwin)
# won't work when we're compiling with gcc as a C compiler.
QEMU_CFLAGS="-DOS_OBJECT_USE_OBJC=0 $QEMU_CFLAGS"
HOST_VARIANT_DIR="darwin"
+ supported_os="yes"
;;
SunOS)
solaris="yes"
@@ -666,7 +681,7 @@ Haiku)
QEMU_CFLAGS="-DB_USE_POSITIVE_POSIX_ERRORS $QEMU_CFLAGS"
LIBS="-lposix_error_mapper -lnetwork $LIBS"
;;
-*)
+Linux)
audio_drv_list="oss"
audio_possible_drivers="oss alsa sdl pa"
linux="yes"
@@ -676,6 +691,10 @@ Haiku)
vhost_scsi="yes"
vhost_vsock="yes"
QEMU_INCLUDES="-I\$(SRC_PATH)/linux-headers -I$(pwd)/linux-headers $QEMU_INCLUDES"
+ supported_os="yes"
+;;
+*)
+ error_exit "Unsupported host OS $targetos"
;;
esac
@@ -5108,6 +5127,32 @@ if test "$sdl_too_old" = "yes"; then
echo "-> Your SDL version is too old - please upgrade to have SDL support"
fi
+if test "$supported_cpu" = "no"; then
+ echo
+ echo "WARNING: SUPPORT FOR THIS HOST CPU WILL GO AWAY IN FUTURE RELEASES!"
+ echo
+ echo "CPU host architecture $cpu support is not currently maintained."
+ echo "The QEMU project intends to remove support for this host CPU in"
+ echo "a future release if nobody volunteers to maintain it and to"
+ echo "provide a build host for our continuous integration setup."
+ echo "configure has succeeded and you can continue to build, but"
+ echo "if you care about QEMU on this platform you should contact"
+ echo "us upstream at qemu-devel@nongnu.org."
+fi
+
+if test "$supported_os" = "no"; then
+ echo
+ echo "WARNING: SUPPORT FOR THIS HOST OS WILL GO AWAY IN FUTURE RELEASES!"
+ echo
+ echo "CPU host OS $targetos support is not currently maintained."
+ echo "The QEMU project intends to remove support for this host CPU in"
+ echo "a future release if nobody volunteers to maintain it and to"
+ echo "provide a build host for our continuous integration setup."
+ echo "configure has succeeded and you can continue to build, but"
+ echo "if you care about QEMU on this platform you should contact"
+ echo "us upstream at qemu-devel@nongnu.org."
+fi
+
config_host_mak="config-host.mak"
echo "# Automatically generated by configure - do not modify" >config-all-disas.mak