Disable netcf backend for interface driver

Signed-off-by: Laine Stump <laine@redhat.com>
This commit is contained in:
Laine Stump 2021-02-02 12:07:02 -05:00
parent f9639a0012
commit b97ad8956c
2 changed files with 83 additions and 6 deletions

View File

@ -0,0 +1,60 @@
From b776d049b8c89b033004ad9502270d4b255a1958 Mon Sep 17 00:00:00 2001
From: Laine Stump <laine@redhat.com>
Date: Thu, 21 Jan 2021 16:01:06 -0500
Subject: [PATCH 1/2] build: support explicitly disabling netcf
placing "-Dnetcf=disabled" on the meson commandline was ignored,
meaning that even with that option the build would get WITH_NETCF if
the netcf-devel package was found - the only way to disable it was to
uninstall netcf-devel.
This patch adds the small bit of logic to check the netcf meson
commandline option (in addition to whether netcf-devel is installed)
before defining WITH_NETCF.
Signed-off-by: Laine Stump <laine@redhat.com>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
(cherry picked from commit 06169a115d46d8870a96d293c2faf6ea87e71020)
---
meson.build | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/meson.build b/meson.build
index b5164f68ed..e9d6d9f82e 100644
--- a/meson.build
+++ b/meson.build
@@ -1155,8 +1155,10 @@ libm_dep = cc.find_library('m', required : false)
netcf_version = '0.1.8'
netcf_dep = dependency('netcf', version: '>=' + netcf_version, required: get_option('netcf'))
-if netcf_dep.found()
- conf.set('WITH_NETCF', 1)
+if not get_option('netcf').disabled()
+ if netcf_dep.found()
+ conf.set('WITH_NETCF', 1)
+ endif
endif
have_gnu_gettext_tools = false
@@ -1550,7 +1552,7 @@ elif get_option('driver_hyperv').enabled()
error('openwsman is required for the Hyper-V driver')
endif
-if not get_option('driver_interface').disabled() and conf.has('WITH_LIBVIRTD') and (udev_dep.found() or netcf_dep.found())
+if not get_option('driver_interface').disabled() and conf.has('WITH_LIBVIRTD') and (udev_dep.found() or conf.has('WITH_NETCF'))
conf.set('WITH_INTERFACE', 1)
elif get_option('driver_interface').enabled()
error('Requested the Interface driver without netcf or udev and libvirtd support')
@@ -2362,7 +2364,7 @@ libs_summary = {
'libssh': libssh_dep.found(),
'libssh2': libssh2_dep.found(),
'libutil': libutil_dep.found(),
- 'netcf': netcf_dep.found(),
+ 'netcf': conf.has('WITH_NETCF'),
'NLS': have_gnu_gettext_tools,
'numactl': numactl_dep.found(),
'openwsman': openwsman_dep.found(),
--
2.29.2

View File

@ -101,6 +101,7 @@
%define with_sanlock 0 %define with_sanlock 0
%define with_numad 0 %define with_numad 0
%define with_firewalld_zone 0 %define with_firewalld_zone 0
%define with_netcf 0
%define with_libssh2 0 %define with_libssh2 0
%define with_wireshark 0 %define with_wireshark 0
%define with_libssh 0 %define with_libssh 0
@ -145,6 +146,10 @@
%define with_firewalld_zone 0%{!?_without_firewalld_zone:1} %define with_firewalld_zone 0%{!?_without_firewalld_zone:1}
%endif %endif
%if (0%{?fedora} && 0%{?fedora} < 34) || (0%{?rhel} && 0%{?rhel} < 9)
%define with_netcf 0%{!?_without_netcf:1}
%endif
# fuse is used to provide virtualized /proc for LXC # fuse is used to provide virtualized /proc for LXC
%if %{with_lxc} %if %{with_lxc}
@ -214,7 +219,7 @@
Summary: Library providing a simple virtualization API Summary: Library providing a simple virtualization API
Name: libvirt Name: libvirt
Version: 7.0.0 Version: 7.0.0
Release: 2%{?dist} Release: 3%{?dist}
License: LGPLv2+ License: LGPLv2+
URL: https://libvirt.org/ URL: https://libvirt.org/
@ -223,6 +228,8 @@ URL: https://libvirt.org/
%endif %endif
Source: https://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.xz Source: https://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.xz
Patch0001: 0001-build-support-explicitly-disabling-netcf.patch
Requires: libvirt-daemon = %{version}-%{release} Requires: libvirt-daemon = %{version}-%{release}
Requires: libvirt-daemon-config-network = %{version}-%{release} Requires: libvirt-daemon-config-network = %{version}-%{release}
Requires: libvirt-daemon-config-nwfilter = %{version}-%{release} Requires: libvirt-daemon-config-nwfilter = %{version}-%{release}
@ -358,8 +365,9 @@ BuildRequires: fuse-devel >= 2.8.6
%if %{with_libssh2} %if %{with_libssh2}
BuildRequires: libssh2-devel >= 1.3.0 BuildRequires: libssh2-devel >= 1.3.0
%endif %endif
%if %{with_netcf}
BuildRequires: netcf-devel >= 0.2.2 BuildRequires: netcf-devel >= 0.2.2
%endif
%if %{with_esx} %if %{with_esx}
BuildRequires: libcurl-devel BuildRequires: libcurl-devel
%endif %endif
@ -528,13 +536,13 @@ capabilities.
Summary: Interface driver plugin for the libvirtd daemon Summary: Interface driver plugin for the libvirtd daemon
Requires: libvirt-daemon = %{version}-%{release} Requires: libvirt-daemon = %{version}-%{release}
Requires: libvirt-libs = %{version}-%{release} Requires: libvirt-libs = %{version}-%{release}
%if %{with_netcf}
Requires: netcf-libs >= 0.2.2 Requires: netcf-libs >= 0.2.2
%endif
%description daemon-driver-interface %description daemon-driver-interface
The interface driver plugin for the libvirtd daemon, providing The interface driver plugin for the libvirtd daemon, providing
an implementation of the network interface APIs using the an implementation of the host network interface APIs.
netcf library
%package daemon-driver-secret %package daemon-driver-secret
Summary: Secret driver plugin for the libvirtd daemon Summary: Secret driver plugin for the libvirtd daemon
@ -1100,6 +1108,12 @@ exit 1
%define arg_firewalld_zone -Dfirewalld_zone=disabled %define arg_firewalld_zone -Dfirewalld_zone=disabled
%endif %endif
%if %{with_netcf}
%define arg_netcf -Dnetcf=enabled
%else
%define arg_netcf -Dnetcf=disabled
%endif
%if %{with_wireshark} %if %{with_wireshark}
%define arg_wireshark -Dwireshark_dissector=enabled %define arg_wireshark -Dwireshark_dissector=enabled
%else %else
@ -1170,7 +1184,7 @@ export SOURCE_DATE_EPOCH=$(stat --printf='%Y' %{_specdir}/%{name}.spec)
%{?arg_numad} \ %{?arg_numad} \
-Dcapng=enabled \ -Dcapng=enabled \
%{?arg_fuse} \ %{?arg_fuse} \
-Dnetcf=enabled \ %{?arg_netcf} \
-Dselinux=enabled \ -Dselinux=enabled \
%{?arg_selinux_mount} \ %{?arg_selinux_mount} \
-Dapparmor=disabled \ -Dapparmor=disabled \
@ -1950,6 +1964,9 @@ exit 0
%changelog %changelog
* Tue Feb 02 2021 Laine Stump <laine@redhat.com> - 7.0.0-3
- disable netcf in build
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 7.0.0-2 * Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 7.0.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild