qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2] configure: Warn about deprecated hosts


From: Thomas Huth
Subject: Re: [Qemu-devel] [PATCH v2] configure: Warn about deprecated hosts
Date: Tue, 21 Mar 2017 18:55:51 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0

On 21.03.2017 15:31, Peter Maydell wrote:
> 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 <address@hidden>
> ---
> v2: mark FreeBSD as 'supported' as I have got a
> VM config going for it for build tests.
> NetBSD doesn't boot inside KVM (!), and OpenBSD I have got
> running but "make check" hangs where we try to run guest code.
> 
>  configure | 49 +++++++++++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 47 insertions(+), 2 deletions(-)
> 
> diff --git a/configure b/configure
> index 02e3b69..3291603 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"

I'd still prefer if we could start with a warning here instead of a hard
error ... but well, if someone really wants to compile on an unsupported
host OS, I guess they are also smart enough to patch the configure
script here on their own... so I shut up now... ;-)

>  ;;
>  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 address@hidden"
> +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."

Maybe rather just "Host OS" instead of "CPU host OS" ?

> +    echo "The QEMU project intends to remove support for this host CPU in"

At least here I think you should replace "host CPU" with "host OS". With
that modification:

Reviewed-by: Thomas Huth <address@hidden>

> +    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 address@hidden"
> +fi
> +
>  config_host_mak="config-host.mak"
>  
>  echo "# Automatically generated by configure - do not modify" 
> >config-all-disas.mak
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]