From patchwork Fri Mar 17 11:08:22 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 95415 Delivered-To: patches@linaro.org Received: by 10.140.89.134 with SMTP id v6csp250800qgd; Fri, 17 Mar 2017 04:08:25 -0700 (PDT) X-Received: by 10.223.174.131 with SMTP id y3mr12547199wrc.40.1489748905572; Fri, 17 Mar 2017 04:08:25 -0700 (PDT) Return-Path: Received: from orth.archaic.org.uk (orth.archaic.org.uk. [2001:8b0:1d0::2]) by mx.google.com with ESMTPS id x7si10734446wrd.161.2017.03.17.04.08.25 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 17 Mar 2017 04:08:25 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) client-ip=2001:8b0:1d0::2; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from pm215 by orth.archaic.org.uk with local (Exim 4.84_2) (envelope-from ) id 1copk7-0004iK-Aq; Fri, 17 Mar 2017 11:08:23 +0000 From: Peter Maydell To: qemu-devel@nongnu.org Cc: patches@linaro.org, Thomas Huth , Paolo Bonzini , Richard Henderson , Aurelien Jarno , "Daniel P. Berrange" Subject: [PATCH] configure: Warn about deprecated hosts Date: Fri, 17 Mar 2017 11:08:22 +0000 Message-Id: <1489748902-21765-1-git-send-email-peter.maydell@linaro.org> X-Mailer: git-send-email 2.7.4 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: * Cygwin * GNU/kFreeBSD * FreeBSD * 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 --- This list is definitely too all-encompassing, and we should move at least some of the BSDs into "not-deprecated". I'm posting the patch for the moment for code review on the logic and as a placeholder. --- configure | 48 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 46 insertions(+), 2 deletions(-) -- 2.7.4 diff --git a/configure b/configure index 75c7c35..5ddc985 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" @@ -568,6 +580,7 @@ MINGW32*) else audio_drv_list="" fi + supported_os="yes" ;; GNU/kFreeBSD) bsd="yes" @@ -626,6 +639,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" @@ -672,7 +686,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" @@ -682,6 +696,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 @@ -5095,6 +5113,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