[libvirt PATCH 000/351] port libvirt to Meson build system

Daniel P. Berrangé berrange at redhat.com
Fri Jul 17 14:28:52 UTC 2020


On Thu, Jul 16, 2020 at 11:53:56AM +0200, Pavel Hrdina wrote:
> So I was finally able to produce the patches to port libvirt to Meson.
> Obviously, it is a lot of changes. It might look that some of the
> patches could be squashed together but I would rather have it as
> separated as possible to make the review not that difficult.
> 
> Once we are done with review I suggest to squash all patches to single
> patch as it doesn't make sense to keep them separated as it will not be
> possible to build complete libvirt code by any of the build systems.
> Trying to achieve that would be even more challenging and the review
> would me more difficult.
> 
> The reasoning behind taking this approach is to have 1:1 conversion from
> autotools to Meson where each patch removes that part from autotools. It
> serves as a check that nothing is skipped and to make sure that the
> conversion is complete.
> 
> As probably most of us know Meson is completely different build system
> and one of the most challenging things was to deal with the fact that
> meson doesn't allow user functions and that everything has to be defined
> before it is used.
> 
> Patches are available in my Gitlab repo as well:
> 
>     git clone -b meson https://gitlab.com/phrdina/libvirt.git
> 
> and link to Giltab pipeline:
> 
>     https://gitlab.com/phrdina/libvirt/-/pipelines/167276632

FWIW, some unit tests fail for me - Fedora 31, with pip installed meson 0.55

 11/154 check-virnetprotocol            FAIL           0.09s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py virnetprotocol virt_net_rpc /home/berrange/src/virt/libvirt/build/src/rpc /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/virnetprotocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@virt_net_rpc at .*' in '/home/berrange/src/virt/libvirt/build/src/rpc'
-------

 12/154 check-virkeepaliveprotocol      FAIL           0.11s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py virkeepaliveprotocol virt_net_rpc /home/berrange/src/virt/libvirt/build/src/rpc /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/virkeepaliveprotocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@virt_net_rpc at .*' in '/home/berrange/src/virt/libvirt/build/src/rpc'
-------

 13/154 check-remote_protocol           FAIL           0.09s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py remote_protocol virt_remote_driver /home/berrange/src/virt/libvirt/build/src/remote /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/remote_protocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@virt_remote_driver at .*' in '/home/berrange/src/virt/libvirt/build/src/remote'
-------

 14/154 check-qemu_protocol             FAIL           0.11s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py qemu_protocol virt_remote_driver /home/berrange/src/virt/libvirt/build/src/remote /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/qemu_protocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@virt_remote_driver at .*' in '/home/berrange/src/virt/libvirt/build/src/remote'
-------

 15/154 check-lxc_protocol              FAIL           0.10s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py lxc_protocol virt_remote_driver /home/berrange/src/virt/libvirt/build/src/remote /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/lxc_protocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@virt_remote_driver at .*' in '/home/berrange/src/virt/libvirt/build/src/remote'
-------

 16/154 check-admin_protocol            FAIL           0.08s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py admin_protocol virt_admin_driver /home/berrange/src/virt/libvirt/build/src/admin /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/admin_protocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@virt_admin_driver at .*' in '/home/berrange/src/virt/libvirt/build/src/admin'
-------

 17/154 check-lock_protocol             FAIL           0.08s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py lock_protocol lockd_impl /home/berrange/src/virt/libvirt/build/src/locking /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/lock_protocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@lockd_impl at .*' in '/home/berrange/src/virt/libvirt/build/src/locking'
-------

 18/154 check-lxc_monitor_protocol      FAIL           0.08s (exit status 1)

--- command ---
14:26:24 LC_CTYPE='en_US.UTF-8' LC_ALL='' LANG='C' /usr/bin/python3 /home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py lxc_monitor_protocol virt_driver_lxc_impl /home/berrange/src/virt/libvirt/build/src/lxc /usr/bin/pdwtags /home/berrange/src/virt/libvirt/build/../src/lxc_monitor_protocol-structs
--- stderr ---
Traceback (most recent call last):
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 55, in <module>
    objectdir = get_subdir(builddir, r'.*@{0}@.*'.format(libname))
  File "/home/berrange/src/virt/libvirt/scripts/check-remote-protocol.py", line 50, in get_subdir
    raise Exception("Failed to find '{0}' in '{1}'".format(subdir, dirname))
Exception: Failed to find '.*@virt_driver_lxc_impl at .*' in '/home/berrange/src/virt/libvirt/build/src/lxc'
-------


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list