qemu-devel
[Top][All Lists]
Advanced

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

configure --without-default-features confusion


From: Cole Robinson
Subject: configure --without-default-features confusion
Date: Thu, 8 Jul 2021 15:12:51 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0

Hi all,

I'm a bit confused about the intended scope of ./configure
--without-default-features. When I try it here there's still lots of
stuff enabled:

$ ./configure --without-default-features
    ...
    VNC support                  : YES
    VNC SASL support             : YES
    VNC JPEG support             : YES
    VNC PNG support              : YES
    brlapi support               : YES
    vde support                  : NO
    netmap support               : NO
    Linux AIO support            : NO
    Linux io_uring support       : YES
    ATTR/XATTR support           : YES
    RDMA support                 : NO
    PVRDMA support               : NO
    ...

So rdma/pvrdma, which I have libs for, are disabled, but brlapi, which I
have libs for, is auto enabled. VNC is not dependent on any external
libraries, but it's still enabled. Etc.

...okay now that I poke at this a bit, the brlapi bit and most (but not
all) other features are disabled if I fix this:

> diff --git a/configure b/configure
> index 650d9c0735..a71ebe10ff 100755
> --- a/configure
> +++ b/configure
> @@ -5189,7 +5189,7 @@ if test "$skip_meson" = no; then
>          -Ddocs=$docs -Dsphinx_build=$sphinx_build -Dinstall_blobs=$blobs \
>          -Dvhost_user_blk_server=$vhost_user_blk_server 
> -Dmultiprocess=$multiprocess \
>          -Dfuse=$fuse -Dfuse_lseek=$fuse_lseek 
> -Dguest_agent_msi=$guest_agent_msi -Dbpf=$bpf\
> -        $(if test "$default_features" = no; then echo 
> "-Dauto_features=disabled"; fi) \
> +        $(if test "$default_feature" = no; then echo 
> "-Dauto_features=disabled"; fi) \
>         -Dtcg_interpreter=$tcg_interpreter \
>          $cross_arg \
>          "$PWD" "$source_path"

But there's still a handful of things that are left enabled, for example
 VNC, xen, vhost-vdpa, ...

Is the intention for this knob to be a 'disable everything'? If so maybe
it should be renamed to --disable-everything to make it less ambiguous,
and make it trigger every single --disable-XXX knob. That would be
useful for Fedora + RHEL qemu building where we enumerate every
--disable-XXX knob already, then build the configure invocation back up
with everything we explicitly want to --enable.

There would need to be some extra work done like adding --enable-XXX
counterparts for things that lack them, like --enable-blobs. Also it's
unclear if we would want it to trigger stuff like --disable-strip,
--disable-werror, etc

Thanks,
Cole




reply via email to

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