On Mon, Apr 20, 2020 at 06:52:59PM +0200, Andrea Bolognani wrote: > On Mon, 2020-04-20 at 14:05 +0100, Daniel P. Berrangé wrote: > > On Mon, Apr 20, 2020 at 03:00:37PM +0200, Andrea Bolognani wrote: > > > # CentOS 7 doesn't include perl-generators, which is necessary to > > > # build libvirt-tck > > > > perl-Sys-Virt-TCK.spec.PL says > > > > %if 0%{?fedora} || 0%{?rhel} > 7 > > BuildRequires: perl-interpreter > > BuildRequires: perl-generators > > %endif > > > > perl-generators is not a module ever used by code, it is an invention of the > > RPM packaging, to get the automatic Reqiures/Provides lines added. So the > > fact that it doesn't exist on RHEL-7 is simply because it is part of another > > RPM instead (redhat-rpm-config IIRC) > > Okay, my testing was flawed because I failed to add libvirt-tck to > the list of projects associated to the hosts in the inventory. > > What happens if you actually try to build the project is, everything > works fine on both targets until you get to the RPM part, which fails > with > > perl(Config::Record) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch > perl(TAP::Formatter::HTML) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch > perl(TAP::Formatter::JUnit) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch > perl(TAP::Harness::Archive) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch > perl(accessors) is needed by perl-Sys-Virt-TCK-2.0.0-1.el7.noarch > > on CentOS 7 and with > > perl(Config::Record) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch > perl(LWP::UserAgent) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch > perl(Sys::Virt) >= 0.2.1 is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch > perl(TAP::Formatter::HTML) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch > perl(TAP::Formatter::JUnit) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch > perl(TAP::Harness::Archive) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch > perl(accessors) is needed by perl-Sys-Virt-TCK-2.0.0-1.el8.noarch > > on CentOS 8, which looks about right because the corresponding > packages are not available in the repositories. > > Now the question is: if these are actual build requirements, how can > the build succeed and the test suite pass? Well the "build" phase in Perl essentially does nothing more than copying files from one dir to another dir, so that won't care. The test suite will need more stuff, but the test suite is fairly minimal in what it does, so I'm not entirely surprised it passes. I'm 100% confident if you actually run the TCK though it will fail due to these missing pieces, most critically the Config::Record module. I'd probably just leave it disabled on both CentOS but with fixed comments to say why 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 :|