Commit 898be3e0 authored by Peter Maydell's avatar Peter Maydell
Browse files

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: default avatarPeter Maydell <peter.maydell@linaro.org>
Message-id: 1490106717-9542-1-git-send-email-peter.maydell@linaro.org
parent 41a56822
Loading
Loading
Loading
Loading
+47 −2
Original line number Diff line number Diff line
@@ -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