Date   

Re: [PATCH 1/2] xtf: introduce recipe for the Xen Test Framework

Bertrand Marquis
 

Hi Christopher,

On 13 Apr 2021, at 07:43, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:
Very nice feature, we are working on adding support for arm on XTF and this will be really usefull.

On my test I have some errors during the packing of XTF:

ERROR: xtf-0+gitAUTOINC+8ab1513972-r0 do_package_write_rpm: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
0001:
*** 0002:do_package_rpm(d)
0003:
File: '/home/bermar01/Development/xen-dev/yocto-master/poky/meta/classes/package_rpm.bbclass', lineno: 718, function: do_package_rpm
0714:
0715: # Build the rpm package!
0716: d.setVar('BUILDSPEC', cmd + "\n" + cleanupcmd + "\n")
0717: d.setVarFlag('BUILDSPEC', 'func', '1')
*** 0718: bb.build.exec_func('BUILDSPEC', d)
0719:
0720: if d.getVar('RPM_SIGN_PACKAGES') == '1':
0721: bb.build.exec_func("sign_rpm", d)
0722:}
File: '/home/bermar01/Development/xen-dev/yocto-master/poky/bitbake/lib/bb/build.py', lineno: 256, function: exec_func
0252: with bb.utils.fileslocked(lockfiles):
0253: if ispython:
0254: exec_func_python(func, d, runfile, cwd=adir)
0255: else:
*** 0256: exec_func_shell(func, d, runfile, cwd=adir)
0257:
0258: try:
0259: curcwd = os.getcwd()
0260: except:
File: '/home/bermar01/Development/xen-dev/yocto-master/poky/bitbake/lib/bb/build.py', lineno: 503, function: exec_func_shell
0499: with open(fifopath, 'r+b', buffering=0) as fifo:
0500: try:
0501: bb.debug(2, "Executing shell function %s" % func)
0502: with open(os.devnull, 'r+') as stdin, logfile:
*** 0503: bb.process.run(cmd, shell=False, stdin=stdin, log=logfile, extrafiles=[(fifo,readfifo)])
0504: except bb.process.ExecutionError as exe:
0505: # Find the backtrace that the shell trap generated
0506: backtrace_marker_regex = re.compile(r"WARNING: Backtrace \(BB generated script\)")
0507: stdout_lines = (exe.stdout or "").split("\n")
File: '/home/bermar01/Development/xen-dev/yocto-master/poky/bitbake/lib/bb/process.py', lineno: 184, function: run
0180: if not stderr is None:
0181: stderr = stderr.decode("utf-8")
0182:
0183: if pipe.returncode != 0:
*** 0184: raise ExecutionError(cmd, pipe.returncode, stdout, stderr)
0185: return stdout, stderr
Exception: bb.process.ExecutionError: Execution of '/home/bermar01/Development/xen-dev/build-master/metavirt-host-x86_64-4.14-release.prj/tmp/work/core2-64-poky-linux/xtf/0+gitAUTOINC+8ab1513972-r0/temp/run.BUILDSPEC.25424' failed with exit code 1:

Processing files: xtf-0+git0+8ab1513972-r0.core2_64
error: Recognition of file "/home/bermar01/Development/xen-dev/build-master/metavirt-host-x86_64-4.14-release.prj/tmp/work/core2-64-poky-linux/xtf/0+gitAUTOINC+8ab1513972-r0/package/usr/libexec/xtf/tests/xsa-170/test-hvm64-xsa-170" failed: mode 100755 Bad magic format `, bad note description size %#lx' (bad format char: #)
error: Recognition of file "/home/bermar01/Development/xen-dev/build-master/metavirt-host-x86_64-4.14-release.prj/tmp/work/core2-64-poky-linux/xtf/0+gitAUTOINC+8ab1513972-r0/package/usr/libexec/xtf/tests/fpu-exception-emulation/test-hvm64-fpu-exception-emulation" failed: mode 100755 Bad magic format `, bad note description size %#lx' (bad format char: #)
error: Recognition of file "/home/bermar01/Development/xen-dev/build-master/metavirt-host-x86_64-4.14-release.prj/tmp/work/core2-64-poky-linux/xtf/0+gitAUTOINC+8ab1513972-r0/package/usr/libexec/xtf/tests/xsa-269/test-hvm64-xsa-269" failed: mode 100755 Bad magic format `, bad note description size %#lx' (bad format char: #)
error: Recognition of file "/home/bermar01/Development/xen-dev/build-master/metavirt-host-x86_64-4.14-release.prj/tmp/work/core2-64-poky-linux/xtf/0+gitAUTOINC+8ab1513972-r0/package/usr/libexec/xtf/tests/xsa-188/test-hvm64-xsa-188" failed: mode 100755 Bad magic format `, bad note description size %#lx' (bad format char: #)
error: Recognition of file "/home/bermar01/Development/xen-dev/build-master/metavirt-host-x86_64-4.14-release.prj/tmp/work/core2-64-poky-linux/xtf/0+gitAUTOINC+8ab1513972-r0/package/usr/libexec/xtf/tests/xsa-221/test-hvm64-xsa-221" failed: mode 100755 Bad magic format `, bad note description size %#lx' (bad format char: #)

I cannot really confirm where this is coming from and it can really be that this is a consequence of something changed in poky or oe.

Cheers
Bertrand

Signed-off-by: Christopher Clark <christopher.w.clark@...>
---
recipes-extended/xen/xtf_git.bb | 61 +++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
create mode 100644 recipes-extended/xen/xtf_git.bb

diff --git a/recipes-extended/xen/xtf_git.bb b/recipes-extended/xen/xtf_git.bb
new file mode 100644
index 0000000..6dc0f8d
--- /dev/null
+++ b/recipes-extended/xen/xtf_git.bb
@@ -0,0 +1,61 @@
+SUMMARY = "Xen Test Framework"
+HOMEPAGE = "https://xenbits.xenproject.org/docs/xtf/"
+LICENSE = "BSD-2-Clause"
+
+SRC_URI = "git://xenbits.xen.org/xtf"
+SRCREV = "8ab15139728a8efd3ebbb60beb16a958a6a93fa1"
+
+COMPATIBLE_HOST = '(x86_64.*).*-linux'
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=a5680865974e05cf0510615ee1d745d8"
+
+PV = "0+git${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+inherit python3native
+
+# To build 32-bit binaries some files from 32-bit glibc are needed.
+# To enable multilib, please add the following to your local.conf -:
+#
+# require conf/multilib.conf
+# MULTILIBS = "multilib:lib32"
+# DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
+
+# Use this multilib prefix for x86 32-bit to match local.conf:
+MLPREFIX32 = "lib32-"
+# Add the multilib 32-bit glibc to DEPENDS only when necessary:
+# The DEPENDS on a multilib 32-bit glibc is only added when target is x86-64
+# This x86-64 override is never intended for native use, so clear that.
+GLIBC32 = ""
+GLIBC32_x86-64 = "${MLPREFIX32}glibc"
+GLIBC32_class-native = ""
+DEPENDS += "${GLIBC32}"
+
+PACKAGES = "${PN}"
+
+FILES_${PN} = " \
+ ${libexecdir}/* \
+ "
+
+RDEPENDS_${PN} = " \
+ xen-tools-xl \
+ python3 \
+ "
+
+do_compile() {
+ oe_runmake CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} -I${RECIPE_SYSROOT}/../${MLPREFIX32}recipe-sysroot/usr/include" \
+ CPP="${CPP}" \
+ OBJCOPY="${OBJCOPY}" \
+ PYTHON="${PYTHON}"
+ # switch the shebang to python3
+ sed 's,^\(#!/usr/bin/env python\)$,\13,' -i "${B}/xtf-runner"
+}
+
+do_install() {
+ oe_runmake install DESTDIR="${D}" xtfdir="${libexecdir}/${BPN}" PYTHON="${PYTHON}"
+}
+
+INSANE_SKIP = "arch"
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Re: [PATCH 2/2] xen, xen-tools: upgrade version to latest 4.15

Bertrand Marquis
 

Hi Christopher,

On 13 Apr 2021, at 04:09, Christopher Clark via lists.yoctoproject.org <christopher.w.clark=gmail.com@...> wrote:

Update the git recipes revision to the recent master branch point for
starting 4.16 development.

Remove the xen-tools python patch for 4.14.
I do not think the 4.14 recipe should be removed as we decided a while ago that we should
always have a recipe for:
- current release - 1
- current release
- master

More then that we have very near Hardknott release and meta-virtualization was not branched
so this is a really bad idea to do a version bump right now.

I would suggest to:
- add recipes for Xen and Xen-tools 4.15
- set preferred version to 4.14

and after branching change the preferred version to 4.15 on master.

What do you think ?

Regards
Bertrand


Signed-off-by: Christopher Clark <christopher.w.clark@...>
Signed-off-by: Christopher Clark <christopher.w.clark@...>
---
...ython-pygrub-pass-DISTUTILS-xen-4.14.patch | 66 -------------------
.../{xen-tools_4.14.bb => xen-tools_4.15.bb} | 6 +-
recipes-extended/xen/xen-tools_git.bb | 4 +-
.../xen/{xen_4.14.bb => xen_4.15.bb} | 4 +-
recipes-extended/xen/xen_git.bb | 4 +-
5 files changed, 9 insertions(+), 75 deletions(-)
delete mode 100644 recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch
rename recipes-extended/xen/{xen-tools_4.14.bb => xen-tools_4.15.bb} (68%)
rename recipes-extended/xen/{xen_4.14.bb => xen_4.15.bb} (85%)

diff --git a/recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch b/recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch
deleted file mode 100644
index f0688fd..0000000
--- a/recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From d79dcc2002008c58683de82f06c168d6eea57991 Mon Sep 17 00:00:00 2001
-From: Maciej Pijanowski <maciej.pijanowski@...>
-Date: Fri, 19 Oct 2018 11:01:37 +0200
-Subject: [PATCH] python,pygrub: pass DISTUTILS env vars as setup.py args
-
-Allow to respect the target install dir (PYTHON_SITEPACKAGES_DIR)
-as well as other parameters set by the OpenEmbedded build system.
-This is especially useful when the target libdir is not the default one
-(/usr/lib), but for example /usr/lib64.
-
-Signed-off-by: Maciej Pijanowski <maciej.pijanowski@...>
-
-Forward-ported to Xen 4.12.0
-Signed-off-by: Christopher Clark <christopher.clark6@...>
-
-Modified to support pygrub installation with python 3
-Signed-off-by: Christopher Clark <christopher.clark6@...>
-
-Forward-ported to Xen 4.14.0
-Signed-off-by: Christopher Clark <christopher.clark6@...>
-diff --git a/tools/pygrub/Makefile b/tools/pygrub/Makefile
-index 3063c49..513314b 100644
---- a/tools/pygrub/Makefile
-+++ b/tools/pygrub/Makefile
-@@ -10,14 +10,17 @@ INSTALL_LOG = build/installed_files.txt
- all: build
- .PHONY: build
- build:
--CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) setup.py build
-+CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) setup.py build $(DISTUTILS_BUILD_ARGS)
-
- .PHONY: install
- install: all
- $(INSTALL_DIR) $(DESTDIR)/$(bindir)
- CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) \
- setup.py install --record $(INSTALL_LOG) $(PYTHON_PREFIX_ARG) \
-- --root="$(DESTDIR)" --install-scripts=$(LIBEXEC_BIN) --force
-+ --root="$(DESTDIR)" --install-scripts=$(LIBEXEC_BIN) --force \
-+ $(DISTUTILS_INSTALL_ARGS)
-+rm -f $(DESTDIR)/$(LIBEXEC_BIN)/pygrub
-+$(INSTALL_PYTHON_PROG) src/pygrub $(DESTDIR)/$(LIBEXEC_BIN)/pygrub
- set -e; if [ $(bindir) != $(LIBEXEC_BIN) -a \
- "`readlink -f $(DESTDIR)/$(bindir)`" != \
- "`readlink -f $(LIBEXEC_BIN)`" ]; then \
-diff --git a/tools/python/Makefile b/tools/python/Makefile
-index 541858e..4d4a344 100644
---- a/tools/python/Makefile
-+++ b/tools/python/Makefile
-@@ -10,7 +10,7 @@ INSTALL_LOG = build/installed_files.txt
-
- .PHONY: build
- build:
--CC="$(CC)" CFLAGS="$(PY_CFLAGS)" $(PYTHON) setup.py build
-+CC="$(CC)" CFLAGS="$(PY_CFLAGS)" $(PYTHON) setup.py build $(DISTUTILS_BUILD_ARGS)
-
- .PHONY: install
- install:
-@@ -18,7 +18,7 @@ install:
-
- CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) \
- setup.py install --record $(INSTALL_LOG) $(PYTHON_PREFIX_ARG) \
----root="$(DESTDIR)" --force
-+--root="$(DESTDIR)" --force $(DISTUTILS_INSTALL_ARGS)
-
- $(INSTALL_PYTHON_PROG) scripts/convert-legacy-stream $(DESTDIR)$(LIBEXEC_BIN)
- $(INSTALL_PYTHON_PROG) scripts/verify-stream-v2 $(DESTDIR)$(LIBEXEC_BIN)
diff --git a/recipes-extended/xen/xen-tools_4.14.bb b/recipes-extended/xen/xen-tools_4.15.bb
similarity index 68%
rename from recipes-extended/xen/xen-tools_4.14.bb
rename to recipes-extended/xen/xen-tools_4.15.bb
index a79b41d..314dc52 100644
--- a/recipes-extended/xen/xen-tools_4.14.bb
+++ b/recipes-extended/xen/xen-tools_4.15.bb
@@ -1,11 +1,11 @@
-SRCREV ?= "ad844aa352559a8b1f36e391a27d9d7dbddbdc36"
+SRCREV ?= "e25aa9939ae0cd8317605be3d5c5611b76bc4ab4"

-XEN_REL ?= "4.14"
+XEN_REL ?= "4.15"
XEN_BRANCH ?= "stable-${XEN_REL}"

SRC_URI = " \
git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} \
- file://0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch \
+ file://0001-python-pygrub-pass-DISTUTILS-xen-4.15.patch \
"

LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5"
diff --git a/recipes-extended/xen/xen-tools_git.bb b/recipes-extended/xen/xen-tools_git.bb
index 71850ee..0188bdd 100644
--- a/recipes-extended/xen/xen-tools_git.bb
+++ b/recipes-extended/xen/xen-tools_git.bb
@@ -1,6 +1,6 @@
-SRCREV ?= "9dc687f155a57216b83b17f9cde55dd43e06b0cd"
+SRCREV ?= "e680cc48b7184d3489873d6776f84ba1fc238ced"

-XEN_REL ?= "4.15"
+XEN_REL ?= "4.16"
XEN_BRANCH ?= "master"

SRC_URI = " \
diff --git a/recipes-extended/xen/xen_4.14.bb b/recipes-extended/xen/xen_4.15.bb
similarity index 85%
rename from recipes-extended/xen/xen_4.14.bb
rename to recipes-extended/xen/xen_4.15.bb
index 653e3b6..2842c0a 100644
--- a/recipes-extended/xen/xen_4.14.bb
+++ b/recipes-extended/xen/xen_4.15.bb
@@ -1,6 +1,6 @@
-SRCREV ?= "ad844aa352559a8b1f36e391a27d9d7dbddbdc36"
+SRCREV ?= "e25aa9939ae0cd8317605be3d5c5611b76bc4ab4"

-XEN_REL ?= "4.14"
+XEN_REL ?= "4.15"
XEN_BRANCH ?= "stable-${XEN_REL}"

SRC_URI = " \
diff --git a/recipes-extended/xen/xen_git.bb b/recipes-extended/xen/xen_git.bb
index 2b62c5c..eaf3956 100644
--- a/recipes-extended/xen/xen_git.bb
+++ b/recipes-extended/xen/xen_git.bb
@@ -1,6 +1,6 @@
-SRCREV ?= "9dc687f155a57216b83b17f9cde55dd43e06b0cd"
+SRCREV ?= "e680cc48b7184d3489873d6776f84ba1fc238ced"

-XEN_REL ?= "4.15"
+XEN_REL ?= "4.16"
XEN_BRANCH ?= "master"

SRC_URI = " \
--
2.25.1



IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


Re: [PATCH] xen: drop i686 support also from xen-tools/xen-python2

Martin Jansa
 

Thanks! This should work for me as well.


On Tue, Apr 13, 2021 at 5:15 AM Christopher Clark <christopher.w.clark@...> wrote:
On Tue, Apr 6, 2021 at 10:59 PM Christopher Clark
<christopher.w.clark@...> wrote:
>
> On Sun, Apr 4, 2021 at 2:26 AM Martin Jansa <martin.jansa@...> wrote:
> >
> > * this commit seems no longer true for current version of xen:
> >   commit a0964e2044cb1ccdd4f64173658ce7602257ff48
> >   Author: Christopher Clark <christopher.w.clark@...>
> >   Date:   Tue Feb 25 16:16:00 2020 -0800
> >
> >     xen, xen-tools: separate COMPATIBLE_HOST for hypervisor and tools
> >
> >     The tools have broader platform compatibility than the hypervisor.
> >
> > * xen-tools are failing to build for qemux86 as shown in:
> >   http://errors.yoctoproject.org/Errors/Details/575367/
> >
> >   make[8]: Entering directory 'TOPDIR/tmp-glibc/work/core2-32-oe-linux/xen-tools/4.14+stableAUTOINC+ad844aa352-r0/git/tools/firmware/xen-dir/xen-root/xen'
> >   echo "*** Xen x86/32 target no longer supported!"
> >   *** Xen x86/32 target no longer supported!
> >   make[8]: Leaving directory 'TOPDIR/tmp-glibc/work/core2-32-oe-linux/xen-tools/4.14+stableAUTOINC+ad844aa352-r0/git/tools/firmware/xen-dir/xen-root/xen'
> >   ln -sf xen-root/xen/xen xen-shim
> >   ln -sf xen-root/xen/xen-syms xen-shim-syms
> >   ...
> >   install: cannot stat 'xen-dir/xen-shim': No such file or directory
> >   make[4]: *** [Makefile:51: install] Error 1
> >
> >   revert the commit and also drop i686 from map_xen_arch
>
> Thanks for reporting this, Martin. I need to look into this. I can see
> why this particular part of the tools build is not suitable for x86/32
> but I don't think that it necessarily means that the entire suite of
> xen-tools should be removed with it for x86/32, and if not then this
> won't be the change that we will want to fix this build issue.

To follow up on this: I've just posted an alternative patch that fixes
the 32-bit x86 xen-tools build, so patch from this thread will not be
required.

thanks

Christopher


>
> Christopher
>
>
> >
> > Signed-off-by: Martin Jansa <Martin.Jansa@...>
> > ---
> >  recipes-extended/xen/xen-arch.inc       | 3 +--
> >  recipes-extended/xen/xen-hypervisor.inc | 3 ---
> >  recipes-extended/xen/xen-python2.bb     | 3 ---
> >  recipes-extended/xen/xen-tools.inc      | 2 --
> >  recipes-extended/xen/xen.inc            | 2 ++
> >  5 files changed, 3 insertions(+), 10 deletions(-)
> >
> > diff --git a/recipes-extended/xen/xen-arch.inc b/recipes-extended/xen/xen-arch.inc
> > index fb0093e..9676045 100644
> > --- a/recipes-extended/xen/xen-arch.inc
> > +++ b/recipes-extended/xen/xen-arch.inc
> > @@ -8,8 +8,7 @@ def map_xen_arch(a, d):
> >      import re
> >      valid_archs = d.getVar('valid_xen_archs').split()
> >
> > -    if   re.match("i.86", a):        return "x86_32"
> > -    elif re.match("x86.64", a):      return "x86_64"
> > +    if re.match("x86.64", a):      return "x86_64"
> >      elif re.match("arm.*", a):       return "arm32"
> >      elif re.match("aarch64.*", a):   return "arm64"
> >      elif a in valid_archs:           return a
> > diff --git a/recipes-extended/xen/xen-hypervisor.inc b/recipes-extended/xen/xen-hypervisor.inc
> > index 916bd3c..d8e57e2 100644
> > --- a/recipes-extended/xen/xen-hypervisor.inc
> > +++ b/recipes-extended/xen/xen-hypervisor.inc
> > @@ -6,9 +6,6 @@ DESCRIPTION = "The Xen hypervisor"
> >  # this allows for varying the target architecture or toolchain used
> >  # to build the different components. eg. 32-bit tools and a 64-bit hypervisor.
> >
> > -# The Xen hypervisor has a narrower compatible platform range than the Xen tools
> > -COMPATIBLE_HOST = '(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
> > -
> >  inherit deploy python3native cml1
> >
> >  PACKAGES = " \
> > diff --git a/recipes-extended/xen/xen-python2.bb b/recipes-extended/xen/xen-python2.bb
> > index ad3c1fd..08d8e92 100644
> > --- a/recipes-extended/xen/xen-python2.bb
> > +++ b/recipes-extended/xen/xen-python2.bb
> > @@ -6,9 +6,6 @@ SECTION = "console/tools"
> >
> >  SRCREV ?= "a5fcafbfbee55261853fba07149c1c795f2baf58"
> >
> > -# The same restriction as xen-tools.inc, because of the dependency on xen-tools-xentrace from xen-tools-xentrace-format
> > -COMPATIBLE_HOST = 'i686-.*-linux|(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
> > -
> >  XEN_REL ?= "4.12"
> >  XEN_BRANCH ?= "stable-4.12"
> >
> > diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
> > index 722c503..35d0c58 100644
> > --- a/recipes-extended/xen/xen-tools.inc
> > +++ b/recipes-extended/xen/xen-tools.inc
> > @@ -1,8 +1,6 @@
> >  SUMMARY = "Xen hypervisor tools"
> >  DESCRIPTION = "Tools and utility software for the Xen hypervisor"
> >
> > -COMPATIBLE_HOST = 'i686-.*-linux|(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
> > -
> >  inherit setuptools3 update-rc.d systemd deploy
> >  require xen-blktap.inc
> >
> > diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
> > index 9e8fcad..8277939 100644
> > --- a/recipes-extended/xen/xen.inc
> > +++ b/recipes-extended/xen/xen.inc
> > @@ -2,6 +2,8 @@ HOMEPAGE = "http://xen.org"
> >  LICENSE = "GPLv2"
> >  SECTION = "console/tools"
> >
> > +COMPATIBLE_HOST = '(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
> > +
> >  inherit autotools-brokensep
> >
> >  require xen-arch.inc
> > --
> > 2.30.2
> >


[PATCH 2/2] xtf-image: add a new image for the Xen Test Framework

Christopher Clark
 

Testing the Xen hypervisor, with the qemux86-64 MACHINE:
runqemu xtf-image nographic slirp
(login as root)
cd /usr/libexec/xtf
./xtf-runner --list pv
# run an example test:
./xtf-runner test-pv64-livepatch-priv-check

Signed-off-by: Christopher Clark <christopher.w.clark@...>
---
recipes-extended/images/xtf-image.bb | 14 ++++++++++++++
1 file changed, 14 insertions(+)
create mode 100644 recipes-extended/images/xtf-image.bb

diff --git a/recipes-extended/images/xtf-image.bb b/recipes-extended/images/xtf-image.bb
new file mode 100644
index 0000000..24bf504
--- /dev/null
+++ b/recipes-extended/images/xtf-image.bb
@@ -0,0 +1,14 @@
+require recipes-extended/images/xen-image-minimal.bb
+
+IMAGE_NAME="xtf"
+
+IMAGE_INSTALL_append = " xtf"
+
+WKS_FILE_DEPENDS_remove = "grub-efi"
+
+QB_DEFAULT_FSTYPE = "wic"
+
+# Set the dom0 memory level lower than that assigned to qemu
+# to leave enough free for the XTF microkernels to run.
+QB_MEM = "-m 400"
+SYSLINUX_XEN_ARGS_append = " dom0_mem=256M"
--
2.25.1


[PATCH 1/2] xtf: introduce recipe for the Xen Test Framework

Christopher Clark
 

Signed-off-by: Christopher Clark <christopher.w.clark@...>
---
recipes-extended/xen/xtf_git.bb | 61 +++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
create mode 100644 recipes-extended/xen/xtf_git.bb

diff --git a/recipes-extended/xen/xtf_git.bb b/recipes-extended/xen/xtf_git.bb
new file mode 100644
index 0000000..6dc0f8d
--- /dev/null
+++ b/recipes-extended/xen/xtf_git.bb
@@ -0,0 +1,61 @@
+SUMMARY = "Xen Test Framework"
+HOMEPAGE = "https://xenbits.xenproject.org/docs/xtf/"
+LICENSE = "BSD-2-Clause"
+
+SRC_URI = "git://xenbits.xen.org/xtf"
+SRCREV = "8ab15139728a8efd3ebbb60beb16a958a6a93fa1"
+
+COMPATIBLE_HOST = '(x86_64.*).*-linux'
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=a5680865974e05cf0510615ee1d745d8"
+
+PV = "0+git${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+inherit python3native
+
+# To build 32-bit binaries some files from 32-bit glibc are needed.
+# To enable multilib, please add the following to your local.conf -:
+#
+# require conf/multilib.conf
+# MULTILIBS = "multilib:lib32"
+# DEFAULTTUNE_virtclass-multilib-lib32 = "x86"
+
+# Use this multilib prefix for x86 32-bit to match local.conf:
+MLPREFIX32 = "lib32-"
+# Add the multilib 32-bit glibc to DEPENDS only when necessary:
+# The DEPENDS on a multilib 32-bit glibc is only added when target is x86-64
+# This x86-64 override is never intended for native use, so clear that.
+GLIBC32 = ""
+GLIBC32_x86-64 = "${MLPREFIX32}glibc"
+GLIBC32_class-native = ""
+DEPENDS += "${GLIBC32}"
+
+PACKAGES = "${PN}"
+
+FILES_${PN} = " \
+ ${libexecdir}/* \
+ "
+
+RDEPENDS_${PN} = " \
+ xen-tools-xl \
+ python3 \
+ "
+
+do_compile() {
+ oe_runmake CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS} -I${RECIPE_SYSROOT}/../${MLPREFIX32}recipe-sysroot/usr/include" \
+ CPP="${CPP}" \
+ OBJCOPY="${OBJCOPY}" \
+ PYTHON="${PYTHON}"
+ # switch the shebang to python3
+ sed 's,^\(#!/usr/bin/env python\)$,\13,' -i "${B}/xtf-runner"
+}
+
+do_install() {
+ oe_runmake install DESTDIR="${D}" xtfdir="${libexecdir}/${BPN}" PYTHON="${PYTHON}"
+}
+
+INSANE_SKIP = "arch"
+INHIBIT_PACKAGE_STRIP = "1"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
--
2.25.1


[PATCH] novnc: Correct LICENSE

zangrc
 

The LICENSE.txt file is described as follows:
The default noVNC license is MPL-2.0.

Signed-off-by: Zang Ruochen <zangrc.fnst@...>
---
meta-openstack/recipes-extended/novnc/novnc_git.bb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-openstack/recipes-extended/novnc/novnc_git.bb b/meta-openstack/recipes-extended/novnc/novnc_git.bb
index ee20e3b..7099d85 100644
--- a/meta-openstack/recipes-extended/novnc/novnc_git.bb
+++ b/meta-openstack/recipes-extended/novnc/novnc_git.bb
@@ -4,7 +4,7 @@ SECTION = "web"

PR = "r0"

-LICENSE = "MIT"
+LICENSE = "MPL-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ac06308a999996ffc2d24d81b3a39f1b"

SRCREV = "8f12ca7a5a64144fe548cada332d5d19ef26a1fe"
--
2.25.1


Re: [PATCH] libvirt: uprev v6.3 -> v7.2

Xu, Yanfei
 

On 4/12/21 8:45 PM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]
On Sun, Apr 11, 2021 at 10:30 PM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/10/21 3:52 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

On Fri, Apr 9, 2021 at 3:13 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail.com@...> wrote:

On Fri, Apr 9, 2021 at 3:07 PM Bruce Ashfield <bruce.ashfield@...> wrote:

On Wed, Apr 7, 2021 at 5:23 AM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/7/21 8:35 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

In message: [meta-virtualization][PATCH] libvirt: uprev v6.3 -> v7.2
on 02/04/2021 Xu, Yanfei wrote:

From: Yanfei Xu <yanfei.xu@...>

This upgrade spans 9 small release. The detailed realese logs could
refer to: https://gitlab.com/libvirt/libvirt/-/blob/master/NEWS.rst

Libvirt's buildsystem has changed to meson, So this upgrade drop some
obsolete patches applied to makefile.

Due to libvirt's meson currently doesn't support to explicit the runtime
binaries path. I made a patch which is
0001-meson-add-options-to-explicit-binaries-path.patch for solving the
problem.
We've tranditionally had runtime issues each time libvirt was
uprev'd.
Yes. I saw there were some ancient patches...


Can you summarize the testing that you did after the upgrade ?
OK. I did the testing with our libvirt testcase and ovs testcase.
The summary is as follow:

libvirt_test (keyword: ) test results:
*1 Run libvirt_test testing(do_test1) PASS
*2 Check result (virsh_local_capabilities) PASS
*3 Check result (virsh_local_domcapabilities) PASS
*4 Check result (virsh_local_freecell) PASS
*5 Check result (virsh_local_help) PASS
*6 Check result (virsh_local_hostname) PASS
*7 Check result (virsh_local_iface-begin) PASS
*8 Check result (virsh_local_iface-commit) PASS
*9 Check result (virsh_local_iface-list) PASS
*10 Check result (virsh_local_list) PASS
*11 Check result (virsh_local_maxvcpus) PASS
*12 Check result (virsh_local_net-list) PASS
*13 Check result (virsh_local_nodecpumap) PASS
*14 Check result (virsh_local_nodecpustats) PASS
*15 Check result (virsh_local_nodedev-list) PASS
*16 Check result (virsh_local_nodeinfo) PASS
*17 Check result (virsh_local_node-memory-tune) PASS
*18 Check result (virsh_local_nodememstats) PASS
*19 Check result (virsh_local_nwfilter-binding-list) PASS
*20 Check result (virsh_local_nwfilter-list) PASS
*21 Check result (virsh_local_pool-capabilities) PASS
*22 Check result (virsh_local_pool-list) PASS
*23 Check result (virsh_local_pwd) PASS
*24 Check result (virsh_local_secret-list) PASS
*25 Check result (virsh_local_sysinfo) PASS
*26 Check result (virsh_local_uri) PASS
*27 Check result (virsh_local_version) PASS

openvswitch_vm2vm (keyword: qemux86) test results:
*1 openvswitch_vm2vm testing(do_test1) PASS
*2 Check result (ovs_vm2vm_boot_guest1) PASS
*3 Check result (ovs_vm2vm_boot_guest2) PASS
*4 Check result (ovs_vm2vm_netperf_test) PASS
*5 Check result (ovs_vm2vm_destroy_guest1) PASS
*6 Check result (ovs_vm2vm_destroy_guest2) PASS
*7 check testcase call trace(do_check_call_trace) PASS
Thanks, this helps.

The patch came through corrupted, and I fixed it up locally and then
added your test summary to the commit.
Thanks Bruce.


But it failed to build in my configuration:

| Library xentoollog found: YES
| Header <libxl.h> has symbol "LIBXL_DOMAIN_TYPE_PVH" : YES
| Checking if "lxc support" compiles: YES
|
| ../libvirt-7.2.0/meson.build:1725:61: ERROR: Program or command
'getent' not found or not executable
|
I realize that HOSTTOOLS_NONFATAL += "getent" is set, but it doesn't
help if meson is failing config.
And of course, when I change it to just HOSTTOOLS += "getent", I get a
failure that getent isn't found.

What's your host distro ?

I do have getent available on my host, but it isn't being found/used:

build [/home/bruc...poky/build]> /usr/bin/getent
/usr/bin/getent: wrong number of arguments
I am sorry for this. I made the patch on wrlinux-ovp distro, but the
meta-virtualization seems the same with upstream's. :(

I just reproduced the problem you met on poky and still analysing the
error about gentent. I will update mails once I get any clue.
No worries! I'm glad it wasn't just my builder.
I'll wait until I hear more. If you need to discuss any option/ideas,
you can also come by #meta-virt on freenode IRC.\
Thanks, will join.


The reason about setting HOSTTOOLS_NONFATAL += "getent" is that I met the same problem which can not find 'getent'. But we could ignore this because we have set qemu_user and qemu_group in PACKAGECONFIG[qemu]. The getent is used by meson.build to get these.

It is wired that poky project still fail about getent with HOSTTOOLS_NONFATAL += "getent". It works on my wrlinux ovp project... Now I meet an annoying error of poky when debugging the getent, It always reports:

bitbake livirt

ERROR: linux-yocto-5.10.25+gitAUTOINC+031f6c76e4_cf5b0320cf-r0 do_unpack: Unpack failure for URL: 'git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=v5.10/standard/
base;'. No up to date source found: clone directory not available or not up to date: /buildarea/raid0/yxu2/repo/poky/poky-new/poky/build12524n/downloads/git2/git.yoctoproject.or
g.linux-yocto.git; shallow clone not enabled
ERROR: Logfile of failure stored in: /buildarea/raid0/yxu2/repo/poky/poky-new/poky/build12524n/tmp/work/qemux86_64-poky-linux/linux-yocto/5.10.25+gitAUTOINC+031f6c76e4_cf5b0320c
f-r0/temp/log.do_unpack.163604
ERROR: Task (/buildarea/raid0/yxu2/repo/poky/poky-new/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb:do_unpack) failed with exit code '1'
NOTE: Tasks Summary: Attempted 3832 tasks of which 3819 didn't need to be rerun and 1 failed.


Another thing I am going to drop the ptest part of libvirt this upgrade in v2, it is kind of complex. Poky raises error about the ptest do_compile. We could put that in next stage, and focus on the libvirt basic function this time. How do you think about it?


Best regards,
Yanfei

Bruce


Thanks,
Yanfei

Bruce

Bruce


I'm building tip of tree for everything, qemux86-64

Bruce



Thanks,
Yanfei


Bruce


Signed-off-by: Yanfei Xu <yanfei.xu@...>
---
recipes-extended/libvirt/libvirt-python.inc | 4 +-
...drop-unnecessary-libgnu.la-reference.patch | 31 ----
...dd-options-to-explicit-binaries-path.patch | 86 ++++++++++
.../libvirt/0001-to-fix-build-error.patch | 47 -----
...-search-for-rpc-rpc.h-in-the-sysroot.patch | 34 ----
.../libvirt/install-missing-file.patch | 50 ------
...read-safety-in-lxc-callback-handling.patch | 63 -------
...virt-use-pkg-config-to-locate-libcap.patch | 43 -----
.../libvirt/qemu-fix-crash-in-qemuOpen.patch | 39 -----
.../libvirt/libvirt/runptest.patch | 116 -------------
...t-net-rpc-to-virt-host-validate-when.patch | 91 ----------
.../{libvirt_6.3.0.bb => libvirt_7.2.0.bb} | 161 ++++++------------
12 files changed, 141 insertions(+), 624 deletions(-)
delete mode 100644 recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
create mode 100644 recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
delete mode 100644 recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
delete mode 100644 recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
delete mode 100644 recipes-extended/libvirt/libvirt/install-missing-file.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
delete mode 100644 recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
delete mode 100644 recipes-extended/libvirt/libvirt/runptest.patch
delete mode 100644 recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
rename recipes-extended/libvirt/{libvirt_6.3.0.bb => libvirt_7.2.0.bb} (69%)

diff --git a/recipes-extended/libvirt/libvirt-python.inc b/recipes-extended/libvirt/libvirt-python.inc
index bcd76572..0c661af8 100644
--- a/recipes-extended/libvirt/libvirt-python.inc
+++ b/recipes-extended/libvirt/libvirt-python.inc
@@ -17,8 +17,8 @@ FILES_${PN}-python = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"

SRC_URI += "http://libvirt.org/sources/python/libvirt-python-${PV}.tar.gz;name=libvirt_python"

-SRC_URI[libvirt_python.md5sum] = "4cf898350ee9a47f94986d402c153bdb"
-SRC_URI[libvirt_python.sha256sum] = "c772421ecc144f098f4ab15db700c62db9b9e6e76b876217edcfd62e9ce02750"
+SRC_URI[libvirt_python.md5sum] = "19bf22414a43d358581b9259b52047a7"
+SRC_URI[libvirt_python.sha256sum] = "c0c3bac54c55622e17927b09cd9843869600d71842fb072c99491fe2608dcee7"

export LIBVIRT_API_PATH = "${S}/docs/libvirt-api.xml"
export LIBVIRT_CFLAGS = "-I${S}/include"
diff --git a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch b/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
deleted file mode 100644
index f02a5d64..00000000
--- a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 30a056069cb35804434fb036e51ae97f33c02025 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Sat, 7 Mar 2020 21:36:27 -0500
-Subject: [PATCH] build: drop unnecessary libgnu.la reference
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-
----
- tools/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 2a0a989..93fe283 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -168,7 +168,6 @@ virt_host_validate_LDADD = \
-
- if WITH_GNUTLS
- virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
-@@ -270,7 +269,6 @@ BUILT_SOURCES =
-
- if WITH_GNUTLS
- virsh_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
diff --git a/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
new file mode 100644
index 00000000..4c545d4a
--- /dev/null
+++ b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
@@ -0,0 +1,86 @@
+From 2e061ccf093063267277893cd5cacc9e7188c629 Mon Sep 17 00:00:00 2001
+From: Yanfei Xu <yanfei.xu@...>
+Date: Thu, 25 Mar 2021 16:24:04 +0800
+Subject: [PATCH] meson: add options to explicit binaries path
+
+In cross compile evironment, path of binaries is possiblely different
+between target and host. Let's add options to explicit binaries path
+to solve this problem.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yanfei Xu <yanfei.xu@...>
+---
+ meson.build | 18 ++++++++++++------
+ meson_options.txt | 23 +++++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 369548f127..6c93be8e4b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -943,18 +943,24 @@ optional_programs = [
+ 'udevadm',
+ ]
+
++# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
++# /usr/sbin, /sbin, and fall back to the default from middle column.
+ foreach name : optional_programs
+- prog = find_program(name, required: false, dirs: libvirt_sbin_path)
+ varname = name.underscorify()
+- if prog.found()
+- prog_path = prog.path()
++ prog_path = get_option(name + '-path')
++ if prog_path != ''
++ message('Using @1@ for @0@'.format(name, prog_path))
+ else
+- prog_path = name
++ prog = find_program(name, required: false, dirs: libvirt_sbin_path)
++ if prog.found()
++ prog_path = prog.path()
++ else
++ prog_path = name
++ endif
++ set_variable('@0@_prog'.format(varname), prog)
+ endif
+-
+ conf.set_quoted(varname.to_upper(), prog_path)
+ conf.set_quoted('@0@_PATH'.format(varname.to_upper()), prog_path)
+- set_variable('@0@_prog'.format(varname), prog)
+ endforeach
+
+
+diff --git a/meson_options.txt b/meson_options.txt
+index e5d79c2b6b..f06f46c7bb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -102,3 +102,26 @@ option('numad', type: 'feature', value: 'auto', description: 'use numad to manag
+ option('pm_utils', type: 'feature', value: 'auto', description: 'use pm-utils for power management')
+ option('sysctl_config', type: 'feature', value: 'auto', description: 'Whether to install sysctl configs')
+ option('tls_priority', type: 'string', value: 'NORMAL', description: 'set the default TLS session priority string')
++
++
++option('addr2line-path', type : 'string', description : 'path to addr2line')
++option('augparse-path', type : 'string', description : 'path to augparse')
++option('dmidecode-path', type : 'string', description : 'path to dmidecode')
++option('dnsmasq-path', type : 'string', description : 'path to dnsmasq')
++option('ebtables-path', type : 'string', description : 'path to ebtables')
++option('flake8-path', type : 'string', description : 'path to flake8')
++option('ip-path', type : 'string', description : 'path to ip')
++option('ip6tables-path', type : 'string', description : 'path to ip6tables')
++option('iptables-path', type : 'string', description : 'path to iptables')
++option('iscsiadm-path', type : 'string', description : 'path to iscsiadm')
++option('mdevctl-path', type : 'string', description : 'path to mdevctl')
++option('mm-ctl-path', type : 'string', description : 'path to mm-ctl')
++option('modprobe-path', type : 'string', description : 'path to modprobe')
++option('ovs-vsctl-path', type : 'string', description : 'path to ovs-vsctl')
++option('pdwtags-path', type : 'string', description : 'path to pdwtags')
++option('radvd-path', type : 'string', description : 'path to radvd')
++option('rmmod-path', type : 'string', description : 'path to rmmod')
++option('scrub-path', type : 'string', description : 'path to scrub')
++option('tc-path', type : 'string', description : 'path to tc')
++option('udevadm-path', type : 'string', description : 'path to udevadm')
++
+--
+2.27.0
+
diff --git a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch b/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
deleted file mode 100644
index b0148e5c..00000000
--- a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 3566bcacaa6408fb8f655d1749a20b2f30e0c765 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@...>
-Date: Fri, 31 Jul 2015 03:17:07 +0900
-Subject: [PATCH] to fix build error
-
-The error likes as following
-
-| Generating internals/command.html.tmp
-| /bin/sh: line 3: internals/command.html.tmp: No such file or directory
-| rm: Generating internals/locking.html.tmp
-| cannot remove `internals/command.html.tmp': No such file or directory
-| make[3]: *** [internals/command.html.tmp] Error 1
-| make[3]: *** Waiting for unfinished jobs....
-
-Signed-off-by: Lei Maohui <leimaohui@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- docs/Makefile.am | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index ce3d296..2c8180f 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -366,7 +366,7 @@ EXTRA_DIST= \
- aclperms.htmlinc \
- $(schema_DATA)
-
--acl_generated = aclperms.htmlinc
-+acl.html:: $(srcdir)/aclperms.htmlinc
-
- aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \
- $(top_srcdir)/scripts/genaclperms.py Makefile.am
-@@ -432,8 +432,7 @@ manpages/%.html.in: manpages/%.rst
- $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
- $(RST2HTML) --strict $< > $@ || { rm $@ && exit 1; }
-
--%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
-- $(acl_generated)
-+%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl
- $(AM_V_GEN)name=`echo $@ | sed -e 's/.tmp//'`; \
- genhtmlin=`echo $@ | sed -e 's/.tmp/.in/'`; \
- rst=`echo $@ | sed -e 's/.html.tmp/.rst/'`; \
diff --git a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch b/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
deleted file mode 100644
index 395d5610..00000000
--- a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 79f5975db01af0599860ccca7ef44b0e27105a04 Mon Sep 17 00:00:00 2001
-From: Mark Asselstine <mark.asselstine@...>
-Date: Thu, 10 May 2018 12:05:04 -0400
-Subject: [PATCH] configure.ac: search for rpc/rpc.h in the sysroot
-
-We want to avoid host contamination and use the sysroot as the base
-directory for our search so add the '=' the the '-I' when searching
-for libtirpc's rpc.h header.
-
-Upstream-Status: Inappropriate [old release]
-
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-xdr.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/m4/virt-xdr.m4 b/m4/virt-xdr.m4
-index 8375415..12b51f7 100644
---- a/m4/virt-xdr.m4
-+++ b/m4/virt-xdr.m4
-@@ -30,10 +30,10 @@ AC_DEFUN([LIBVIRT_CHECK_XDR], [
- ])
- with_xdr="yes"
-
-- dnl Recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
-+ dnl Recent glibc requires -I=/usr/include/tirpc for <rpc/rpc.h>
- old_CFLAGS=$CFLAGS
- AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
-- for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
-+ for add_CFLAGS in '' '-I=/usr/include/tirpc' 'missing'; do
- if test x"$add_CFLAGS" = xmissing; then
- lv_cv_xdr_cflags=missing; break
- fi
diff --git a/recipes-extended/libvirt/libvirt/install-missing-file.patch b/recipes-extended/libvirt/libvirt/install-missing-file.patch
deleted file mode 100644
index 6aa36df8..00000000
--- a/recipes-extended/libvirt/libvirt/install-missing-file.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From aa75f5136066d239d48a21373b3d96ee12378e8d Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 17:24:17 +0800
-Subject: [PATCH] Install missing conf file
-
-openvzutilstest.conf file is needed by openvzutilstest test.
-
-Upstream-Status: Inapproriate
-
-Signed-off-by: Catalin Enache <catalin.enache@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 4a808dd..0c3e799 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -173,6 +173,7 @@ EXTRA_DIST = \
- $(NULL)
-
- test_helpers = commandhelper ssh
-+test_misc =
- test_programs = virshtest sockettest \
- virhostcputest virbuftest \
- commandtest seclabeltest \
-@@ -311,6 +312,7 @@ endif WITH_LXC
-
- if WITH_OPENVZ
- test_programs += openvzutilstest
-+test_misc += openvzutilstest.conf
- endif WITH_OPENVZ
-
- if WITH_ESX
-@@ -1551,7 +1553,7 @@ endif ! WITH_LINUX
-
- buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-
--PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+PTESTS = $(TESTS) $(test_helpers) $(test_misc) test-lib.sh virschematest
-
- install-ptest:
- list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
diff --git a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch b/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
deleted file mode 100644
index 558d5ef6..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From ad5d9cee87357f9f38f62583119606ef95ba10df Mon Sep 17 00:00:00 2001
-From: Bogdan Purcareata <bogdan.purcareata@...>
-Date: Fri, 24 May 2013 16:46:00 +0300
-Subject: [PATCH] Fix thread safety in LXC callback handling
-
-Signed-off-by: Bogdan Purcareata <bogdan.purcareata@...>
----
- src/lxc/lxc_process.c | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
-index aaa81a7..0eadc67 100644
---- a/src/lxc/lxc_process.c
-+++ b/src/lxc/lxc_process.c
-@@ -609,8 +609,13 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- virLXCProtocolExitStatus status,
- virDomainObjPtr vm)
- {
-+ virLXCDriverPtr driver = lxc_driver;
- virLXCDomainObjPrivatePtr priv = vm->privateData;
-
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
- switch (status) {
- case VIR_LXC_PROTOCOL_EXIT_STATUS_SHUTDOWN:
- priv->stopReason = VIR_DOMAIN_EVENT_STOPPED_SHUTDOWN;
-@@ -628,6 +633,8 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- }
- VIR_DEBUG("Domain shutoff reason %d (from status %d)",
- priv->stopReason, status);
-+
-+ virObjectUnlock(vm);
- }
-
- /* XXX a little evil */
-@@ -636,12 +643,21 @@ static void virLXCProcessMonitorInitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- pid_t initpid,
- virDomainObjPtr vm)
- {
-- virLXCDomainObjPrivatePtr priv = vm->privateData;
-+ virLXCDriverPtr driver = lxc_driver;
-+ virLXCDomainObjPrivatePtr priv;
-+
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
-+ priv = vm->privateData;
- priv->initpid = initpid;
- virDomainAuditInit(vm, initpid);
-
- if (virDomainSaveStatus(lxc_driver->caps, lxc_driver->stateDir, vm) < 0)
- VIR_WARN("Cannot update XML with PID for LXC %s", vm->def->name);
-+
-+ virObjectUnlock(vm);
- }
-
- static virLXCMonitorCallbacks monitorCallbacks = {
---
-1.7.11.7
-
diff --git a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch b/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
deleted file mode 100644
index 87b55915..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 94bd514e1b6e602a48285db94e65050f8f0c2585 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Wed, 8 Apr 2015 13:03:03 -0400
-Subject: [PATCH] libvirt: use pkg-config to locate libcap
-
-libvirt wants to use pcap-config to locate the exisence and location
-of libpcap. oe-core stubs this script and replaces it with pkg-config,
-which can lead to the host pcap-config triggering and either breaking
-the build or introducing host contamination.
-
-To fix this issue, we patch configure to use 'pkg-config libcap' to
-locate the correct libraries.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[MA: Update to apply agains v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-libpcap.m4 | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/m4/virt-libpcap.m4 b/m4/virt-libpcap.m4
-index 605c2fd..e0ab018 100644
---- a/m4/virt-libpcap.m4
-+++ b/m4/virt-libpcap.m4
-@@ -23,14 +23,14 @@ AC_DEFUN([LIBVIRT_ARG_LIBPCAP], [
-
- AC_DEFUN([LIBVIRT_CHECK_LIBPCAP], [
- LIBPCAP_REQUIRED="1.5.0"
-- LIBPCAP_CONFIG="pcap-config"
-+ LIBPCAP_CONFIG="pkg-config libpcap"
- LIBPCAP_CFLAGS=""
- LIBPCAP_LIBS=""
-
- if test "x$with_libpcap" != "xno"; then
- case $with_libpcap in
-- ''|yes|check) LIBPCAP_CONFIG="pcap-config" ;;
-- *) LIBPCAP_CONFIG="$with_libpcap/bin/pcap-config" ;;
-+ ''|yes|check) LIBPCAP_CONFIG="pkg-config libpcap" ;;
-+ *) LIBPCAP_CONFIG="$with_libpcap/bin/pkg-config libpcap" ;;
- esac
- AS_IF([test "x$LIBPCAP_CONFIG" != "x"], [
- AC_MSG_CHECKING(libpcap $LIBPCAP_CONFIG >= $LIBPCAP_REQUIRED )
diff --git a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch b/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
deleted file mode 100644
index 3cf9e839..00000000
--- a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 74bff2509080912ea8abf1de8fd95fa2412b659a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@...>
-Date: Thu, 11 Apr 2013 11:37:25 +0200
-Subject: [PATCH] qemu: fix crash in qemuOpen
-
-commit 74bff2509080912ea8abf1de8fd95fa2412b659a from upsteam
-git://libvirt.org/libvirt.git
-
-If the path part of connection URI is not present, cfg is used
-unitialized.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=950855
----
- src/qemu/qemu_driver.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
-index 2c0d7d1..0d41e39 100644
---- a/src/qemu/qemu_driver.c
-+++ b/src/qemu/qemu_driver.c
-@@ -1026,6 +1026,7 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-+ cfg = virQEMUDriverGetConfig(qemu_driver);
- if (conn->uri->path == NULL) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("no QEMU URI path given, try %s"),
-@@ -1033,7 +1034,6 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-- cfg = virQEMUDriverGetConfig(qemu_driver);
- if (cfg->privileged) {
- if (STRNEQ(conn->uri->path, "/system") &&
- STRNEQ(conn->uri->path, "/session")) {
---
-1.7.1
-
diff --git a/recipes-extended/libvirt/libvirt/runptest.patch b/recipes-extended/libvirt/libvirt/runptest.patch
deleted file mode 100644
index f6bc7736..00000000
--- a/recipes-extended/libvirt/libvirt/runptest.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From d210838a4433dd254c1a11b08b804ebe9ff5f378 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 10:20:47 +0800
-Subject: [PATCH] Add 'install-ptest' rule
-
-Change TESTS_ENVIRONMENT to allow running outside build dir.
-
-Upstream-status: Pending
-Signed-off-by: Mihaela Sendrea <mihaela.sendrea@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Allow separate source and build dirs]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ZH: add missing test_helper files]
-Signed-off-by: He Zhe <zhe.he@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 68 +++++++++++++++++++++++++++++++++++++++++------
- 1 file changed, 60 insertions(+), 8 deletions(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index ada5b8f..4a808dd 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -28,11 +28,13 @@ AM_CPPFLAGS = \
-
- WARN_CFLAGS += $(RELAXED_FRAME_LIMIT_CFLAGS)
-
-+PTEST_DIR ?= $(libdir)/libvirt/ptest
-+
- AM_CFLAGS = \
-- -Dabs_builddir="\"$(abs_builddir)\"" \
-- -Dabs_top_builddir="\"$(abs_top_builddir)\"" \
-- -Dabs_srcdir="\"$(abs_srcdir)\"" \
-- -Dabs_top_srcdir="\"$(abs_top_srcdir)\"" \
-+ -Dabs_builddir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_builddir="\"$(PTEST_DIR)\"" \
-+ -Dabs_srcdir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_srcdir="\"$(PTEST_DIR)\"" \
- $(LIBXML_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(LIBNL_CFLAGS) \
-@@ -474,10 +476,10 @@ TESTS = $(test_programs) \
-
- VIR_TEST_EXPENSIVE ?= $(VIR_TEST_EXPENSIVE_DEFAULT)
- TESTS_ENVIRONMENT = \
-- abs_top_builddir="$(abs_top_builddir)" \
-- abs_top_srcdir="$(abs_top_srcdir)" \
-- abs_builddir="$(abs_builddir)" \
-- abs_srcdir="$(abs_srcdir)" \
-+ abs_top_builddir="$(PTEST_DIR)" \
-+ abs_top_srcdir="$(PTEST_DIR)" \
-+ abs_builddir="$(PTEST_DIR)/tests" \
-+ abs_srcdir="$(PTEST_DIR)/tests" \
- LIBVIRT_AUTOSTART=0 \
- LC_ALL=C \
- VIR_TEST_EXPENSIVE=$(VIR_TEST_EXPENSIVE) \
-@@ -1547,4 +1549,54 @@ else ! WITH_LINUX
- EXTRA_DIST += virscsitest.c
- endif ! WITH_LINUX
-
-+buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-+
-+PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+
-+install-ptest:
-+ list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
-+ install -d $(DEST_DIR)/tools
-+ @(if [ -d ../tools/.libs ] ; then cd ../tools/.libs; fi; \
-+ install * $(DEST_DIR)/tools)
-+ install -d $(DEST_DIR)/src/network
-+ cp $(top_srcdir)/src/network/*.xml $(DEST_DIR)/src/network
-+ install -d $(DEST_DIR)/src/cpu_map
-+ cp $(top_srcdir)/src/cpu_map/*.xml $(DEST_DIR)/src/cpu_map
-+ install ../src/libvirt_iohelper $(DEST_DIR)/src
-+ install -D ../src/libvirtd $(DEST_DIR)/src/libvirtd
-+ install -d $(DEST_DIR)/src/remote
-+ install -D $(top_srcdir)/../build/src/remote/libvirtd.conf $(DEST_DIR)/src/remote/libvirtd.conf
-+ install -d $(DEST_DIR)/src/remote/.libs
-+ @(if [ -d ../src/remote/.libs ] ; then cd ../src/remote/.libs; fi; \
-+ install * $(DEST_DIR)/src/remote/.libs)
-+ install -d $(DEST_DIR)/src/.libs
-+ @(if [ -d ../src/.libs ] ; then cd ../src/.libs; fi; \
-+ install * $(DEST_DIR)/src/.libs)
-+ install -d $(DEST_DIR)/docs/schemas
-+ cp $(top_srcdir)/docs/schemas/*.rng $(DEST_DIR)/docs/schemas
-+ cp -r $(top_srcdir)/build-aux $(DEST_DIR)
-+ install -d $(DEST_DIR)/examples/xml
-+ cp -r $(top_srcdir)/examples/xml/test $(DEST_DIR)/examples/xml
-+ install -d $(DEST_DIR)/tests/.libs
-+ find . -type d -name "*xml2xml*" -exec cp -r {} $(DEST_DIR)/tests \;
-+ find . -type d -name "*data" -exec cp -r {} $(DEST_DIR)/tests \;
-+ @(for file in $(PTESTS); do \
-+ if [ -f .libs/$$file ]; then \
-+ install .libs/$$file $(DEST_DIR)/tests; \
-+ elif [ -f $(srcdir)/$$file ]; then \
-+ install $(srcdir)/$$file $(DEST_DIR)/tests; \
-+ else \
-+ install $(builddir)/$$file $(DEST_DIR)/tests; \
-+ fi; \
-+ done;)
-+ @(if [ -d .libs ]; then install .libs/*.so $(DEST_DIR)/tests/.libs; fi;)
-+ cp ../config.h $(DEST_DIR)
-+ cp Makefile $(DEST_DIR)/tests
-+ sed -i -e 's/^Makefile:/_Makefile:/' $(DEST_DIR)/tests/Makefile
-+ cp ../Makefile $(DEST_DIR)
-+ sed -i -e 's|^Makefile:|_Makefile:|' $(DEST_DIR)/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/tests/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/Makefile
-+ sed -i -e 's|^\(.*\.log:\) \(.*EXEEXT.*\)|\1|g' $(DEST_DIR)/tests/Makefile
-+
- CLEANFILES = *.cov *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda
diff --git a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch b/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
deleted file mode 100644
index bb500fde..00000000
--- a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 7dc21edd851b260485b432c096f8e90f6fa07778 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Tue, 7 May 2019 15:26:32 +0800
-Subject: [PATCH] tools: add libvirt-net-rpc to virt-host-validate when TLS is
- enabled
-
-When gnu-tls is enabled for libvirt references to virNetTLSInit are
-generated in libvirt. Any binaries linking against libvirt, must also
-link against libvirt-net-rpc which provides the implementation.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ddu: rebase to v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- examples/Makefile.am | 20 ++++++++++++++++++++
- tools/Makefile.am | 12 ++++++++++++
- 2 files changed, 32 insertions(+)
-
-diff --git a/examples/Makefile.am b/examples/Makefile.am
-index ad635bd..a94f41d 100644
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -74,6 +74,10 @@ LDADD = \
- $(top_builddir)/src/libvirt-admin.la \
- $(NULL)
-
-+if WITH_GNUTLS
-+LDADD += $(top_builddir)/src/libvirt-net-rpc.la
-+endif
-+
- noinst_PROGRAMS = \
- c/admin/client_close \
- c/admin/client_info \
-@@ -111,6 +115,22 @@ c_misc_openauth_SOURCES = c/misc/openauth.c
- examplesdir = $(docdir)/examples
-
- adminexamplesdir = $(examplesdir)/c/admin
-+
-+if WITH_GNUTLS
-+dominfo_info1_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+domsuspend_suspend_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+hellolibvirt_hellolibvirt_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+openauth_openauth_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+endif
-+
- adminexamples_DATA = $(ADMIN_EXAMPLES)
-
- domainexamplesdir = $(examplesdir)/c/domain
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 53df930..2a0a989 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -166,6 +166,12 @@ virt_host_validate_LDADD = \
- $(GLIB_LIBS) \
- $(NULL)
-
-+if WITH_GNUTLS
-+virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- virt_host_validate_CFLAGS = \
- $(AM_CFLAGS) \
- $(NULL)
-@@ -262,6 +268,12 @@ virt_admin_CFLAGS = \
- $(READLINE_CFLAGS)
- BUILT_SOURCES =
-
-+if WITH_GNUTLS
-+virsh_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- if WITH_WIN_ICON
- virsh_LDADD += virsh_win_icon.$(OBJEXT)
-
diff --git a/recipes-extended/libvirt/libvirt_6.3.0.bb b/recipes-extended/libvirt/libvirt_7.2.0.bb
similarity index 69%
rename from recipes-extended/libvirt/libvirt_6.3.0.bb
rename to recipes-extended/libvirt/libvirt_7.2.0.bb
index 41abb06f..790071d5 100644
--- a/recipes-extended/libvirt/libvirt_6.3.0.bb
+++ b/recipes-extended/libvirt/libvirt_7.2.0.bb
@@ -18,96 +18,42 @@ RDEPENDS_${PN} = "gettext-runtime"

RDEPENDS_${PN}-ptest += "make gawk perl bash"

-RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd"
+RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd ebtables"
RDEPENDS_libvirt-libvirtd_append_x86-64 = " dmidecode"
RDEPENDS_libvirt-libvirtd_append_x86 = " dmidecode"

#connman blocks the 53 port and libvirtd can't start its DNS service
RCONFLICTS_${PN}_libvirtd = "connman"

+HOSTTOOLS_NONFATAL += "getent"
+
SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.xz;name=libvirt \
- file://tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch \
file://libvirtd.sh \
file://libvirtd.conf \
file://dnsmasq.conf \
- file://runptest.patch \
file://run-ptest \
- file://libvirt-use-pkg-config-to-locate-libcap.patch \
- file://0001-to-fix-build-error.patch \
- file://install-missing-file.patch \
file://0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch \
- file://configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch \
- file://0001-build-drop-unnecessary-libgnu.la-reference.patch \
file://hook_support.py \
file://gnutls-helper.py \
+ file://0001-meson-add-options-to-explicit-binaries-path.patch \
"

-SRC_URI[libvirt.md5sum] = "1bd4435f77924f5ec9928b538daf4a02"
-SRC_URI[libvirt.sha256sum] = "74069438d34082336e99a88146349e21130552b96efc3b7c562f6878127996f5"
+SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3"
+SRC_URI[libvirt.sha256sum] = "01f459d0c7ba5009622a628dba1a026200e8f4a299fea783b936a71d7e0ed1d0"

-inherit autotools gettext update-rc.d pkgconfig ptest systemd useradd perlnative
+inherit meson gettext update-rc.d pkgconfig ptest systemd useradd perlnative
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "-r qemu; -r kvm"
USERADD_PARAM_${PN} = "-r -g qemu -G kvm qemu"

-# Override the default set in autotools.bbclass so that we will use relative pathnames
-# to our local m4 files. This prevents an "Argument list too long" error during configuration
-# if our project is in a directory with an absolute pathname of more than about 125 characters.
-#
-acpaths = "-I ./m4"
-
-CACHED_CONFIGUREVARS += "\
-ac_cv_path_XMLCATLOG=/usr/bin/xmlcatalog \
-ac_cv_path_AUGPARSE=/usr/bin/augparse \
-ac_cv_path_DMIDECODE=/usr/sbin/dmidecode \
-ac_cv_path_DNSMASQ=/usr/bin/dnsmasq \
-ac_cv_path_BRCTL=/usr/sbin/brctl \
-ac_cv_path_TC=/sbin/tc \
-ac_cv_path_UDEVADM=/sbin/udevadm \
-ac_cv_path_MODPROBE=/sbin/modprobe \
-ac_cv_path_IP_PATH=/bin/ip \
-ac_cv_path_IPTABLES_PATH=/usr/sbin/iptables \
-ac_cv_path_IP6TABLES_PATH=/usr/sbin/ip6tables \
-ac_cv_path_MOUNT=/bin/mount \
-ac_cv_path_UMOUNT=/bin/umount \
-ac_cv_path_MKFS=/usr/sbin/mkfs \
-ac_cv_path_SHOWMOUNT=/usr/sbin/showmount \
-ac_cv_path_PVCREATE=/usr/sbin/pvcreate \
-ac_cv_path_VGCREATE=/usr/sbin/vgcreate \
-ac_cv_path_LVCREATE=/usr/sbin/lvcreate \
-ac_cv_path_PVREMOVE=/usr/sbin/pvremove \
-ac_cv_path_VGREMOVE=/usr/sbin/vgremove \
-ac_cv_path_LVREMOVE=/usr/sbin/lvremove \
-ac_cv_path_LVCHANGE=/usr/sbin/lvchange \
-ac_cv_path_VGCHANGE=/usr/sbin/vgchange \
-ac_cv_path_VGSCAN=/usr/sbin/vgscan \
-ac_cv_path_PVS=/usr/sbin/pvs \
-ac_cv_path_VGS=/usr/sbin/vgs \
-ac_cv_path_LVS=/usr/sbin/lvs \
-ac_cv_path_PARTED=/usr/sbin/parted \
-ac_cv_path_DMSETUP=/usr/sbin/dmsetup"
-
-# Ensure that libvirt uses polkit rather than policykit, whether the host has
-# pkcheck installed or not, and ensure the path is correct per our config.
-CACHED_CONFIGUREVARS += "ac_cv_path_PKCHECK_PATH=${bindir}/pkcheck"
-
-# Some other possible paths we are not yet setting
-#ac_cv_path_RPCGEN=
-#ac_cv_path_XSLTPROC=
-#ac_cv_path_RADVD=
-#ac_cv_path_UDEVSETTLE=
-#ac_cv_path_EBTABLES_PATH=
-#ac_cv_path_PKG_CONFIG=
-#ac_cv_path_ac_pt_PKG_CONFIG
-#ac_cv_path_POLKIT_AUTH=
-#ac_cv_path_DTRACE=
-#ac_cv_path_ISCSIADM=
-#ac_cv_path_MSGFMT=
-#ac_cv_path_GMSGFMT=
-#ac_cv_path_XGETTEXT=
-#ac_cv_path_MSGMERGE=
-#ac_cv_path_SCRUB=
-#ac_cv_path_PYTHON=
+
+EXTRA_OEMESON += " \
+ -Dip6tables-path=/usr/sbin/ip6tables \
+ -Ddmidecode-path=/usr/sbin/dmidecode \
+ -Ddnsmasq-path=/usr/bin/dnsmasq \
+ -Diptables-path=/usr/sbin/iptables \
+ -Debtables-path=/sbin/ebtables \
+ "

ALLOW_EMPTY_${PN} = "1"

@@ -191,7 +137,7 @@ PRIVATE_LIBS_${PN}-ptest = " \
# full config
PACKAGECONFIG ??= "gnutls qemu yajl openvz vmware vbox esx iproute2 lxc test \
remote macvtap libvirtd netcf udev python ebtables \
- fuse iproute2 firewalld libpcap \
+ fuse firewalld libpcap \
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'libxl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'polkit', '', d)} \
@@ -208,37 +154,34 @@ PACKAGECONFIG_remove_armeb = "numactl"
# enable,disable,depends,rdepends
#
PACKAGECONFIG[gnutls] = ",,,gnutls-bin"
-PACKAGECONFIG[qemu] = "--with-qemu --with-qemu-user=qemu --with-qemu-group=qemu,--without-qemu,qemu,"
-PACKAGECONFIG[yajl] = "--with-yajl,--without-yajl,yajl,yajl"
-PACKAGECONFIG[libxl] = "--with-libxl=${STAGING_DIR_TARGET}/lib,--without-libxl,xen,"
-PACKAGECONFIG[openvz] = "--with-openvz,--without-openvz,,"
-PACKAGECONFIG[vmware] = "--with-vmware,--without-vmware,,"
-PACKAGECONFIG[vbox] = "--with-vbox,--without-vbox,,"
-PACKAGECONFIG[esx] = "--with-esx,--without-esx,,"
-PACKAGECONFIG[hyperv] = "--with-hyperv,--without-hyperv,,"
-PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit,polkit"
-PACKAGECONFIG[lxc] = "--with-lxc,--without-lxc, lxc,"
-PACKAGECONFIG[test] = "--with-test=yes,--with-test=no,,"
-PACKAGECONFIG[remote] = "--with-remote,--without-remote,,"
-PACKAGECONFIG[macvtap] = "--with-macvtap=yes,--with-macvtap=no,libnl,libnl"
-PACKAGECONFIG[libvirtd] = "--with-libvirtd,--without-libvirtd,,"
-PACKAGECONFIG[netcf] = "--with-netcf,--without-netcf,netcf,netcf"
-PACKAGECONFIG[dtrace] = "--with-dtrace,--without-dtrace,,"
-PACKAGECONFIG[udev] = "--with-udev --with-pciaccess,--without-udev,udev libpciaccess,"
-PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
-PACKAGECONFIG[ebtables] = "ac_cv_path_EBTABLES_PATH=/sbin/ebtables,ac_cv_path_EBTABLES_PATH=,ebtables,ebtables"
+PACKAGECONFIG[qemu] = "-Ddriver_qemu=enabled -Dqemu_user=qemu -Dqemu_group=qemu,-Dqemu=disabled,qemu,"
+PACKAGECONFIG[yajl] = "-Dyajl=enabled,-Dyajl=disabled,yajl,yajl"
+PACKAGECONFIG[libxl] = "-Dlibxl=${STAGING_DIR_TARGET}/lib,,xen,"
+PACKAGECONFIG[openvz] = "-Ddriver_openvz=enabled,-Ddriver_openvz=disabled,,"
+PACKAGECONFIG[vmware] = "-Ddriver_vmware=enabled,-Ddriver_vmware=disabled,,"
+PACKAGECONFIG[vbox] = "-Ddriver_vbox=enabled,-Ddriver_vbox=disabled,,"
+PACKAGECONFIG[esx] = "-Ddriver_esx=enabled,-Ddriver_esx=disabled,,"
+PACKAGECONFIG[hyperv] = "-Ddriver_hyperv=enabled,-Ddriver_hyperv=disabled,,"
+PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit,polkit"
+PACKAGECONFIG[lxc] = "-Ddriver_lxc=enabled,-Ddriver_lxc=disabled,lxc,"
+PACKAGECONFIG[test] = "-Ddriver_test=enabled,-Ddriver_test=disabled,,"
+PACKAGECONFIG[remote] = "-Ddriver_remote=enabled,-Ddriver_remote=disabled,,"
+PACKAGECONFIG[libvirtd] = "-Ddriver_libvirtd=enabled,-Ddriver_libvirtd=disabled,,"
+PACKAGECONFIG[netcf] = "-Dnetcf=enabled,-Dnetcf=disabled,netcf,netcf"
+PACKAGECONFIG[dtrace] = "-Ddtrace=enabled,-Ddtrace=disabled,,"
+PACKAGECONFIG[udev] = "-Dudev=enabled -Dpciaccess=enabled,-Dudev=disabled,udev libpciaccess,"
+PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux,"
PACKAGECONFIG[python] = ",,python3,"
-PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,cyrus-sasl"
-PACKAGECONFIG[iproute2] = "ac_cv_path_IP_PATH=/sbin/ip,ac_cv_path_IP_PATH=,iproute2,iproute2"
-PACKAGECONFIG[numactl] = "--with-numactl,--without-numactl,numactl,"
-PACKAGECONFIG[fuse] = "--with-fuse,--without-fuse,fuse,"
-PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit,"
-PACKAGECONFIG[libcap-ng] = "--with-capng,--without-capng,libcap-ng,"
-PACKAGECONFIG[wireshark] = "--with-wireshark-dissector,--without-wireshark-dissector,wireshark libwsutil,"
-PACKAGECONFIG[apparmor-profiles] = "--with-apparmor-profiles, --without-apparmor-profiles,"
-PACKAGECONFIG[firewalld] = "--with-firewalld, --without-firewalld,"
-PACKAGECONFIG[libpcap] = "--with-libpcap, --without-libpcap,libpcap,libpcap"
-PACKAGECONFIG[numad] = "--with-numad, --without-numad,"
+PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl,cyrus-sasl"
+PACKAGECONFIG[numactl] = "-Dnumactl=enabled,-Dnumactl=disabled,numactl,"
+PACKAGECONFIG[fuse] = "-Dfuse=enabled,-Dfuse=disabled,fuse,"
+PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit,"
+PACKAGECONFIG[libcap-ng] = "-Dcapng=enabled,-Dcapng=disabled,libcap-ng,"
+PACKAGECONFIG[wireshark] = "-Dwireshark_dissector=enabled,-Dwireshark_dissector=disabled,wireshark libwsutil,"
+PACKAGECONFIG[apparmor_profiles] = "-Dapparmor_profiles=true, -Dapparmor_profiles=false,"
+PACKAGECONFIG[firewalld] = "-Dfirewalld=enabled, -Dfirewalld=disabled,"
+PACKAGECONFIG[libpcap] = "-Dlibpcap=enabled, -Dlibpcap=disabled,libpcap,libpcap"
+PACKAGECONFIG[numad] = "-Dnumad=enabled, -Dnumad=disabled,"

# Enable the Python tool support
require libvirt-python.inc
@@ -255,7 +198,7 @@ do_compile() {

cd ${B}
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
- oe_runmake all
+ ninja all
}

do_install_prepend() {
@@ -278,6 +221,8 @@ do_install_append() {
fi

if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ mkdir -p ${D}/lib
+ mv ${D}/usr/lib/systemd ${D}/lib
# This variable is used by libvirtd.service to start libvirtd in the right mode
sed -i '/#LIBVIRTD_ARGS="--listen"/a LIBVIRTD_ARGS="--listen --daemon"' ${D}/${sysconfdir}/sysconfig/libvirtd

@@ -360,7 +305,7 @@ do_install_append() {
# connection via 127.0.0.1 is available out of box.
install -d ${D}/etc/pki/CA
install -d ${D}/etc/pki/libvirt/private
- install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
+ install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
install -m 0644 ${WORKDIR}/cakey.pem ${D}/${sysconfdir}/pki/libvirt/private/cakey.pem
install -m 0644 ${WORKDIR}/cacert.pem ${D}/${sysconfdir}/pki/CA/cacert.pem
install -m 0644 ${WORKDIR}/serverkey.pem ${D}/${sysconfdir}/pki/libvirt/private/serverkey.pem
@@ -376,10 +321,10 @@ do_install_append() {
chmod 4755 ${D}${bindir}/virt-login-shell
}

-EXTRA_OECONF += " \
- --with-init-script=systemd \
- --with-test-suite \
- --with-runstatedir=/run \
+EXTRA_OEMESON += " \
+ -Dinit_script=systemd \
+ -Drunstatedir=/run \
+ -Dtests=enabled \
"

# gcc9 end up mis-compiling qemuxml2argvtest.o with Og which then
@@ -392,11 +337,11 @@ EXTRA_OEMAKE = "BUILD_DIR=${B} DEST_DIR=${D}${PTEST_PATH} PTEST_DIR=${PTEST_PATH
PRIVATE_LIBS_${PN}-ptest_append = "libvirt-admin.so.0"

do_compile_ptest() {
- oe_runmake -C tests buildtest-TESTS
+ ninja -C tests buildtest-TESTS
}

do_install_ptest() {
- oe_runmake -C tests install-ptest
+ ninja -C tests install-ptest

find ${S}/tests -maxdepth 1 -type d -exec cp -r {} ${D}${PTEST_PATH}/tests/ \;

--
2.27.0




--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Re: [PATCH] xen: drop i686 support also from xen-tools/xen-python2

Christopher Clark
 

On Tue, Apr 6, 2021 at 10:59 PM Christopher Clark
<christopher.w.clark@...> wrote:

On Sun, Apr 4, 2021 at 2:26 AM Martin Jansa <martin.jansa@...> wrote:

* this commit seems no longer true for current version of xen:
commit a0964e2044cb1ccdd4f64173658ce7602257ff48
Author: Christopher Clark <christopher.w.clark@...>
Date: Tue Feb 25 16:16:00 2020 -0800

xen, xen-tools: separate COMPATIBLE_HOST for hypervisor and tools

The tools have broader platform compatibility than the hypervisor.

* xen-tools are failing to build for qemux86 as shown in:
http://errors.yoctoproject.org/Errors/Details/575367/

make[8]: Entering directory 'TOPDIR/tmp-glibc/work/core2-32-oe-linux/xen-tools/4.14+stableAUTOINC+ad844aa352-r0/git/tools/firmware/xen-dir/xen-root/xen'
echo "*** Xen x86/32 target no longer supported!"
*** Xen x86/32 target no longer supported!
make[8]: Leaving directory 'TOPDIR/tmp-glibc/work/core2-32-oe-linux/xen-tools/4.14+stableAUTOINC+ad844aa352-r0/git/tools/firmware/xen-dir/xen-root/xen'
ln -sf xen-root/xen/xen xen-shim
ln -sf xen-root/xen/xen-syms xen-shim-syms
...
install: cannot stat 'xen-dir/xen-shim': No such file or directory
make[4]: *** [Makefile:51: install] Error 1

revert the commit and also drop i686 from map_xen_arch
Thanks for reporting this, Martin. I need to look into this. I can see
why this particular part of the tools build is not suitable for x86/32
but I don't think that it necessarily means that the entire suite of
xen-tools should be removed with it for x86/32, and if not then this
won't be the change that we will want to fix this build issue.
To follow up on this: I've just posted an alternative patch that fixes
the 32-bit x86 xen-tools build, so patch from this thread will not be
required.

thanks

Christopher



Christopher



Signed-off-by: Martin Jansa <Martin.Jansa@...>
---
recipes-extended/xen/xen-arch.inc | 3 +--
recipes-extended/xen/xen-hypervisor.inc | 3 ---
recipes-extended/xen/xen-python2.bb | 3 ---
recipes-extended/xen/xen-tools.inc | 2 --
recipes-extended/xen/xen.inc | 2 ++
5 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/recipes-extended/xen/xen-arch.inc b/recipes-extended/xen/xen-arch.inc
index fb0093e..9676045 100644
--- a/recipes-extended/xen/xen-arch.inc
+++ b/recipes-extended/xen/xen-arch.inc
@@ -8,8 +8,7 @@ def map_xen_arch(a, d):
import re
valid_archs = d.getVar('valid_xen_archs').split()

- if re.match("i.86", a): return "x86_32"
- elif re.match("x86.64", a): return "x86_64"
+ if re.match("x86.64", a): return "x86_64"
elif re.match("arm.*", a): return "arm32"
elif re.match("aarch64.*", a): return "arm64"
elif a in valid_archs: return a
diff --git a/recipes-extended/xen/xen-hypervisor.inc b/recipes-extended/xen/xen-hypervisor.inc
index 916bd3c..d8e57e2 100644
--- a/recipes-extended/xen/xen-hypervisor.inc
+++ b/recipes-extended/xen/xen-hypervisor.inc
@@ -6,9 +6,6 @@ DESCRIPTION = "The Xen hypervisor"
# this allows for varying the target architecture or toolchain used
# to build the different components. eg. 32-bit tools and a 64-bit hypervisor.

-# The Xen hypervisor has a narrower compatible platform range than the Xen tools
-COMPATIBLE_HOST = '(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
-
inherit deploy python3native cml1

PACKAGES = " \
diff --git a/recipes-extended/xen/xen-python2.bb b/recipes-extended/xen/xen-python2.bb
index ad3c1fd..08d8e92 100644
--- a/recipes-extended/xen/xen-python2.bb
+++ b/recipes-extended/xen/xen-python2.bb
@@ -6,9 +6,6 @@ SECTION = "console/tools"

SRCREV ?= "a5fcafbfbee55261853fba07149c1c795f2baf58"

-# The same restriction as xen-tools.inc, because of the dependency on xen-tools-xentrace from xen-tools-xentrace-format
-COMPATIBLE_HOST = 'i686-.*-linux|(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
-
XEN_REL ?= "4.12"
XEN_BRANCH ?= "stable-4.12"

diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 722c503..35d0c58 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -1,8 +1,6 @@
SUMMARY = "Xen hypervisor tools"
DESCRIPTION = "Tools and utility software for the Xen hypervisor"

-COMPATIBLE_HOST = 'i686-.*-linux|(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
-
inherit setuptools3 update-rc.d systemd deploy
require xen-blktap.inc

diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 9e8fcad..8277939 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -2,6 +2,8 @@ HOMEPAGE = "http://xen.org"
LICENSE = "GPLv2"
SECTION = "console/tools"

+COMPATIBLE_HOST = '(x86_64.*).*-linux|aarch64.*-linux|arm-.*-linux-gnueabi'
+
inherit autotools-brokensep

require xen-arch.inc
--
2.30.2


[PATCH 2/2] xen, xen-tools: upgrade version to latest 4.15

Christopher Clark
 

Update the git recipes revision to the recent master branch point for
starting 4.16 development.

Remove the xen-tools python patch for 4.14.

Signed-off-by: Christopher Clark <christopher.w.clark@...>
Signed-off-by: Christopher Clark <christopher.w.clark@...>
---
...ython-pygrub-pass-DISTUTILS-xen-4.14.patch | 66 -------------------
.../{xen-tools_4.14.bb => xen-tools_4.15.bb} | 6 +-
recipes-extended/xen/xen-tools_git.bb | 4 +-
.../xen/{xen_4.14.bb => xen_4.15.bb} | 4 +-
recipes-extended/xen/xen_git.bb | 4 +-
5 files changed, 9 insertions(+), 75 deletions(-)
delete mode 100644 recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch
rename recipes-extended/xen/{xen-tools_4.14.bb => xen-tools_4.15.bb} (68%)
rename recipes-extended/xen/{xen_4.14.bb => xen_4.15.bb} (85%)

diff --git a/recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch b/recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch
deleted file mode 100644
index f0688fd..0000000
--- a/recipes-extended/xen/files/0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From d79dcc2002008c58683de82f06c168d6eea57991 Mon Sep 17 00:00:00 2001
-From: Maciej Pijanowski <maciej.pijanowski@...>
-Date: Fri, 19 Oct 2018 11:01:37 +0200
-Subject: [PATCH] python,pygrub: pass DISTUTILS env vars as setup.py args
-
-Allow to respect the target install dir (PYTHON_SITEPACKAGES_DIR)
-as well as other parameters set by the OpenEmbedded build system.
-This is especially useful when the target libdir is not the default one
-(/usr/lib), but for example /usr/lib64.
-
-Signed-off-by: Maciej Pijanowski <maciej.pijanowski@...>
-
-Forward-ported to Xen 4.12.0
-Signed-off-by: Christopher Clark <christopher.clark6@...>
-
-Modified to support pygrub installation with python 3
-Signed-off-by: Christopher Clark <christopher.clark6@...>
-
-Forward-ported to Xen 4.14.0
-Signed-off-by: Christopher Clark <christopher.clark6@...>
-diff --git a/tools/pygrub/Makefile b/tools/pygrub/Makefile
-index 3063c49..513314b 100644
---- a/tools/pygrub/Makefile
-+++ b/tools/pygrub/Makefile
-@@ -10,14 +10,17 @@ INSTALL_LOG = build/installed_files.txt
- all: build
- .PHONY: build
- build:
-- CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) setup.py build
-+ CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) setup.py build $(DISTUTILS_BUILD_ARGS)
-
- .PHONY: install
- install: all
- $(INSTALL_DIR) $(DESTDIR)/$(bindir)
- CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) \
- setup.py install --record $(INSTALL_LOG) $(PYTHON_PREFIX_ARG) \
-- --root="$(DESTDIR)" --install-scripts=$(LIBEXEC_BIN) --force
-+ --root="$(DESTDIR)" --install-scripts=$(LIBEXEC_BIN) --force \
-+ $(DISTUTILS_INSTALL_ARGS)
-+ rm -f $(DESTDIR)/$(LIBEXEC_BIN)/pygrub
-+ $(INSTALL_PYTHON_PROG) src/pygrub $(DESTDIR)/$(LIBEXEC_BIN)/pygrub
- set -e; if [ $(bindir) != $(LIBEXEC_BIN) -a \
- "`readlink -f $(DESTDIR)/$(bindir)`" != \
- "`readlink -f $(LIBEXEC_BIN)`" ]; then \
-diff --git a/tools/python/Makefile b/tools/python/Makefile
-index 541858e..4d4a344 100644
---- a/tools/python/Makefile
-+++ b/tools/python/Makefile
-@@ -10,7 +10,7 @@ INSTALL_LOG = build/installed_files.txt
-
- .PHONY: build
- build:
-- CC="$(CC)" CFLAGS="$(PY_CFLAGS)" $(PYTHON) setup.py build
-+ CC="$(CC)" CFLAGS="$(PY_CFLAGS)" $(PYTHON) setup.py build $(DISTUTILS_BUILD_ARGS)
-
- .PHONY: install
- install:
-@@ -18,7 +18,7 @@ install:
-
- CC="$(CC)" CFLAGS="$(PY_CFLAGS)" LDFLAGS="$(PY_LDFLAGS)" $(PYTHON) \
- setup.py install --record $(INSTALL_LOG) $(PYTHON_PREFIX_ARG) \
-- --root="$(DESTDIR)" --force
-+ --root="$(DESTDIR)" --force $(DISTUTILS_INSTALL_ARGS)
-
- $(INSTALL_PYTHON_PROG) scripts/convert-legacy-stream $(DESTDIR)$(LIBEXEC_BIN)
- $(INSTALL_PYTHON_PROG) scripts/verify-stream-v2 $(DESTDIR)$(LIBEXEC_BIN)
diff --git a/recipes-extended/xen/xen-tools_4.14.bb b/recipes-extended/xen/xen-tools_4.15.bb
similarity index 68%
rename from recipes-extended/xen/xen-tools_4.14.bb
rename to recipes-extended/xen/xen-tools_4.15.bb
index a79b41d..314dc52 100644
--- a/recipes-extended/xen/xen-tools_4.14.bb
+++ b/recipes-extended/xen/xen-tools_4.15.bb
@@ -1,11 +1,11 @@
-SRCREV ?= "ad844aa352559a8b1f36e391a27d9d7dbddbdc36"
+SRCREV ?= "e25aa9939ae0cd8317605be3d5c5611b76bc4ab4"

-XEN_REL ?= "4.14"
+XEN_REL ?= "4.15"
XEN_BRANCH ?= "stable-${XEN_REL}"

SRC_URI = " \
git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} \
- file://0001-python-pygrub-pass-DISTUTILS-xen-4.14.patch \
+ file://0001-python-pygrub-pass-DISTUTILS-xen-4.15.patch \
"

LIC_FILES_CHKSUM ?= "file://COPYING;md5=419739e325a50f3d7b4501338e44a4e5"
diff --git a/recipes-extended/xen/xen-tools_git.bb b/recipes-extended/xen/xen-tools_git.bb
index 71850ee..0188bdd 100644
--- a/recipes-extended/xen/xen-tools_git.bb
+++ b/recipes-extended/xen/xen-tools_git.bb
@@ -1,6 +1,6 @@
-SRCREV ?= "9dc687f155a57216b83b17f9cde55dd43e06b0cd"
+SRCREV ?= "e680cc48b7184d3489873d6776f84ba1fc238ced"

-XEN_REL ?= "4.15"
+XEN_REL ?= "4.16"
XEN_BRANCH ?= "master"

SRC_URI = " \
diff --git a/recipes-extended/xen/xen_4.14.bb b/recipes-extended/xen/xen_4.15.bb
similarity index 85%
rename from recipes-extended/xen/xen_4.14.bb
rename to recipes-extended/xen/xen_4.15.bb
index 653e3b6..2842c0a 100644
--- a/recipes-extended/xen/xen_4.14.bb
+++ b/recipes-extended/xen/xen_4.15.bb
@@ -1,6 +1,6 @@
-SRCREV ?= "ad844aa352559a8b1f36e391a27d9d7dbddbdc36"
+SRCREV ?= "e25aa9939ae0cd8317605be3d5c5611b76bc4ab4"

-XEN_REL ?= "4.14"
+XEN_REL ?= "4.15"
XEN_BRANCH ?= "stable-${XEN_REL}"

SRC_URI = " \
diff --git a/recipes-extended/xen/xen_git.bb b/recipes-extended/xen/xen_git.bb
index 2b62c5c..eaf3956 100644
--- a/recipes-extended/xen/xen_git.bb
+++ b/recipes-extended/xen/xen_git.bb
@@ -1,6 +1,6 @@
-SRCREV ?= "9dc687f155a57216b83b17f9cde55dd43e06b0cd"
+SRCREV ?= "e680cc48b7184d3489873d6776f84ba1fc238ced"

-XEN_REL ?= "4.15"
+XEN_REL ?= "4.16"
XEN_BRANCH ?= "master"

SRC_URI = " \
--
2.25.1


[PATCH 1/2] xen-tools: fix 32-bit x86 build by setting pvshim configure flags

Christopher Clark
 

Enable building the PV shim for x86_64 only.

Signed-off-by: Christopher Clark <christopher.w.clark@...>
---
recipes-extended/xen/xen.inc | 1 +
1 file changed, 1 insertion(+)

diff --git a/recipes-extended/xen/xen.inc b/recipes-extended/xen/xen.inc
index 9e8fcad..2fbdb3a 100644
--- a/recipes-extended/xen/xen.inc
+++ b/recipes-extended/xen/xen.inc
@@ -125,6 +125,7 @@ EXTRA_OECONF += " \
--disable-rombios \
--disable-ocamltools \
--disable-qemu-traditional \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', '--enable-pvshim', '--disable-pvshim', d)} \
"

EXTRA_OEMAKE += "STDVGA_ROM=${STAGING_DIR_HOST}/usr/share/firmware/vgabios-0.7a.bin"
--
2.25.1


Re: [PATCH] libvirt: uprev v6.3 -> v7.2

Bruce Ashfield
 

On Sun, Apr 11, 2021 at 10:30 PM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/10/21 3:52 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

On Fri, Apr 9, 2021 at 3:13 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail.com@...> wrote:

On Fri, Apr 9, 2021 at 3:07 PM Bruce Ashfield <bruce.ashfield@...> wrote:

On Wed, Apr 7, 2021 at 5:23 AM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/7/21 8:35 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

In message: [meta-virtualization][PATCH] libvirt: uprev v6.3 -> v7.2
on 02/04/2021 Xu, Yanfei wrote:

From: Yanfei Xu <yanfei.xu@...>

This upgrade spans 9 small release. The detailed realese logs could
refer to: https://gitlab.com/libvirt/libvirt/-/blob/master/NEWS.rst

Libvirt's buildsystem has changed to meson, So this upgrade drop some
obsolete patches applied to makefile.

Due to libvirt's meson currently doesn't support to explicit the runtime
binaries path. I made a patch which is
0001-meson-add-options-to-explicit-binaries-path.patch for solving the
problem.
We've tranditionally had runtime issues each time libvirt was
uprev'd.
Yes. I saw there were some ancient patches...


Can you summarize the testing that you did after the upgrade ?
OK. I did the testing with our libvirt testcase and ovs testcase.
The summary is as follow:

libvirt_test (keyword: ) test results:
*1 Run libvirt_test testing(do_test1) PASS
*2 Check result (virsh_local_capabilities) PASS
*3 Check result (virsh_local_domcapabilities) PASS
*4 Check result (virsh_local_freecell) PASS
*5 Check result (virsh_local_help) PASS
*6 Check result (virsh_local_hostname) PASS
*7 Check result (virsh_local_iface-begin) PASS
*8 Check result (virsh_local_iface-commit) PASS
*9 Check result (virsh_local_iface-list) PASS
*10 Check result (virsh_local_list) PASS
*11 Check result (virsh_local_maxvcpus) PASS
*12 Check result (virsh_local_net-list) PASS
*13 Check result (virsh_local_nodecpumap) PASS
*14 Check result (virsh_local_nodecpustats) PASS
*15 Check result (virsh_local_nodedev-list) PASS
*16 Check result (virsh_local_nodeinfo) PASS
*17 Check result (virsh_local_node-memory-tune) PASS
*18 Check result (virsh_local_nodememstats) PASS
*19 Check result (virsh_local_nwfilter-binding-list) PASS
*20 Check result (virsh_local_nwfilter-list) PASS
*21 Check result (virsh_local_pool-capabilities) PASS
*22 Check result (virsh_local_pool-list) PASS
*23 Check result (virsh_local_pwd) PASS
*24 Check result (virsh_local_secret-list) PASS
*25 Check result (virsh_local_sysinfo) PASS
*26 Check result (virsh_local_uri) PASS
*27 Check result (virsh_local_version) PASS

openvswitch_vm2vm (keyword: qemux86) test results:
*1 openvswitch_vm2vm testing(do_test1) PASS
*2 Check result (ovs_vm2vm_boot_guest1) PASS
*3 Check result (ovs_vm2vm_boot_guest2) PASS
*4 Check result (ovs_vm2vm_netperf_test) PASS
*5 Check result (ovs_vm2vm_destroy_guest1) PASS
*6 Check result (ovs_vm2vm_destroy_guest2) PASS
*7 check testcase call trace(do_check_call_trace) PASS
Thanks, this helps.

The patch came through corrupted, and I fixed it up locally and then
added your test summary to the commit.
Thanks Bruce.


But it failed to build in my configuration:

| Library xentoollog found: YES
| Header <libxl.h> has symbol "LIBXL_DOMAIN_TYPE_PVH" : YES
| Checking if "lxc support" compiles: YES
|
| ../libvirt-7.2.0/meson.build:1725:61: ERROR: Program or command
'getent' not found or not executable
|
I realize that HOSTTOOLS_NONFATAL += "getent" is set, but it doesn't
help if meson is failing config.
And of course, when I change it to just HOSTTOOLS += "getent", I get a
failure that getent isn't found.

What's your host distro ?

I do have getent available on my host, but it isn't being found/used:

build [/home/bruc...poky/build]> /usr/bin/getent
/usr/bin/getent: wrong number of arguments
I am sorry for this. I made the patch on wrlinux-ovp distro, but the
meta-virtualization seems the same with upstream's. :(

I just reproduced the problem you met on poky and still analysing the
error about gentent. I will update mails once I get any clue.
No worries! I'm glad it wasn't just my builder.

I'll wait until I hear more. If you need to discuss any option/ideas,
you can also come by #meta-virt on freenode IRC.

Bruce


Thanks,
Yanfei

Bruce

Bruce


I'm building tip of tree for everything, qemux86-64

Bruce



Thanks,
Yanfei


Bruce


Signed-off-by: Yanfei Xu <yanfei.xu@...>
---
recipes-extended/libvirt/libvirt-python.inc | 4 +-
...drop-unnecessary-libgnu.la-reference.patch | 31 ----
...dd-options-to-explicit-binaries-path.patch | 86 ++++++++++
.../libvirt/0001-to-fix-build-error.patch | 47 -----
...-search-for-rpc-rpc.h-in-the-sysroot.patch | 34 ----
.../libvirt/install-missing-file.patch | 50 ------
...read-safety-in-lxc-callback-handling.patch | 63 -------
...virt-use-pkg-config-to-locate-libcap.patch | 43 -----
.../libvirt/qemu-fix-crash-in-qemuOpen.patch | 39 -----
.../libvirt/libvirt/runptest.patch | 116 -------------
...t-net-rpc-to-virt-host-validate-when.patch | 91 ----------
.../{libvirt_6.3.0.bb => libvirt_7.2.0.bb} | 161 ++++++------------
12 files changed, 141 insertions(+), 624 deletions(-)
delete mode 100644 recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
create mode 100644 recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
delete mode 100644 recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
delete mode 100644 recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
delete mode 100644 recipes-extended/libvirt/libvirt/install-missing-file.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
delete mode 100644 recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
delete mode 100644 recipes-extended/libvirt/libvirt/runptest.patch
delete mode 100644 recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
rename recipes-extended/libvirt/{libvirt_6.3.0.bb => libvirt_7.2.0.bb} (69%)

diff --git a/recipes-extended/libvirt/libvirt-python.inc b/recipes-extended/libvirt/libvirt-python.inc
index bcd76572..0c661af8 100644
--- a/recipes-extended/libvirt/libvirt-python.inc
+++ b/recipes-extended/libvirt/libvirt-python.inc
@@ -17,8 +17,8 @@ FILES_${PN}-python = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"

SRC_URI += "http://libvirt.org/sources/python/libvirt-python-${PV}.tar.gz;name=libvirt_python"

-SRC_URI[libvirt_python.md5sum] = "4cf898350ee9a47f94986d402c153bdb"
-SRC_URI[libvirt_python.sha256sum] = "c772421ecc144f098f4ab15db700c62db9b9e6e76b876217edcfd62e9ce02750"
+SRC_URI[libvirt_python.md5sum] = "19bf22414a43d358581b9259b52047a7"
+SRC_URI[libvirt_python.sha256sum] = "c0c3bac54c55622e17927b09cd9843869600d71842fb072c99491fe2608dcee7"

export LIBVIRT_API_PATH = "${S}/docs/libvirt-api.xml"
export LIBVIRT_CFLAGS = "-I${S}/include"
diff --git a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch b/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
deleted file mode 100644
index f02a5d64..00000000
--- a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 30a056069cb35804434fb036e51ae97f33c02025 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Sat, 7 Mar 2020 21:36:27 -0500
-Subject: [PATCH] build: drop unnecessary libgnu.la reference
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-
----
- tools/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 2a0a989..93fe283 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -168,7 +168,6 @@ virt_host_validate_LDADD = \
-
- if WITH_GNUTLS
- virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
-@@ -270,7 +269,6 @@ BUILT_SOURCES =
-
- if WITH_GNUTLS
- virsh_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
diff --git a/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
new file mode 100644
index 00000000..4c545d4a
--- /dev/null
+++ b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
@@ -0,0 +1,86 @@
+From 2e061ccf093063267277893cd5cacc9e7188c629 Mon Sep 17 00:00:00 2001
+From: Yanfei Xu <yanfei.xu@...>
+Date: Thu, 25 Mar 2021 16:24:04 +0800
+Subject: [PATCH] meson: add options to explicit binaries path
+
+In cross compile evironment, path of binaries is possiblely different
+between target and host. Let's add options to explicit binaries path
+to solve this problem.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yanfei Xu <yanfei.xu@...>
+---
+ meson.build | 18 ++++++++++++------
+ meson_options.txt | 23 +++++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 369548f127..6c93be8e4b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -943,18 +943,24 @@ optional_programs = [
+ 'udevadm',
+ ]
+
++# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
++# /usr/sbin, /sbin, and fall back to the default from middle column.
+ foreach name : optional_programs
+- prog = find_program(name, required: false, dirs: libvirt_sbin_path)
+ varname = name.underscorify()
+- if prog.found()
+- prog_path = prog.path()
++ prog_path = get_option(name + '-path')
++ if prog_path != ''
++ message('Using @1@ for @0@'.format(name, prog_path))
+ else
+- prog_path = name
++ prog = find_program(name, required: false, dirs: libvirt_sbin_path)
++ if prog.found()
++ prog_path = prog.path()
++ else
++ prog_path = name
++ endif
++ set_variable('@0@_prog'.format(varname), prog)
+ endif
+-
+ conf.set_quoted(varname.to_upper(), prog_path)
+ conf.set_quoted('@0@_PATH'.format(varname.to_upper()), prog_path)
+- set_variable('@0@_prog'.format(varname), prog)
+ endforeach
+
+
+diff --git a/meson_options.txt b/meson_options.txt
+index e5d79c2b6b..f06f46c7bb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -102,3 +102,26 @@ option('numad', type: 'feature', value: 'auto', description: 'use numad to manag
+ option('pm_utils', type: 'feature', value: 'auto', description: 'use pm-utils for power management')
+ option('sysctl_config', type: 'feature', value: 'auto', description: 'Whether to install sysctl configs')
+ option('tls_priority', type: 'string', value: 'NORMAL', description: 'set the default TLS session priority string')
++
++
++option('addr2line-path', type : 'string', description : 'path to addr2line')
++option('augparse-path', type : 'string', description : 'path to augparse')
++option('dmidecode-path', type : 'string', description : 'path to dmidecode')
++option('dnsmasq-path', type : 'string', description : 'path to dnsmasq')
++option('ebtables-path', type : 'string', description : 'path to ebtables')
++option('flake8-path', type : 'string', description : 'path to flake8')
++option('ip-path', type : 'string', description : 'path to ip')
++option('ip6tables-path', type : 'string', description : 'path to ip6tables')
++option('iptables-path', type : 'string', description : 'path to iptables')
++option('iscsiadm-path', type : 'string', description : 'path to iscsiadm')
++option('mdevctl-path', type : 'string', description : 'path to mdevctl')
++option('mm-ctl-path', type : 'string', description : 'path to mm-ctl')
++option('modprobe-path', type : 'string', description : 'path to modprobe')
++option('ovs-vsctl-path', type : 'string', description : 'path to ovs-vsctl')
++option('pdwtags-path', type : 'string', description : 'path to pdwtags')
++option('radvd-path', type : 'string', description : 'path to radvd')
++option('rmmod-path', type : 'string', description : 'path to rmmod')
++option('scrub-path', type : 'string', description : 'path to scrub')
++option('tc-path', type : 'string', description : 'path to tc')
++option('udevadm-path', type : 'string', description : 'path to udevadm')
++
+--
+2.27.0
+
diff --git a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch b/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
deleted file mode 100644
index b0148e5c..00000000
--- a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 3566bcacaa6408fb8f655d1749a20b2f30e0c765 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@...>
-Date: Fri, 31 Jul 2015 03:17:07 +0900
-Subject: [PATCH] to fix build error
-
-The error likes as following
-
-| Generating internals/command.html.tmp
-| /bin/sh: line 3: internals/command.html.tmp: No such file or directory
-| rm: Generating internals/locking.html.tmp
-| cannot remove `internals/command.html.tmp': No such file or directory
-| make[3]: *** [internals/command.html.tmp] Error 1
-| make[3]: *** Waiting for unfinished jobs....
-
-Signed-off-by: Lei Maohui <leimaohui@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- docs/Makefile.am | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index ce3d296..2c8180f 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -366,7 +366,7 @@ EXTRA_DIST= \
- aclperms.htmlinc \
- $(schema_DATA)
-
--acl_generated = aclperms.htmlinc
-+acl.html:: $(srcdir)/aclperms.htmlinc
-
- aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \
- $(top_srcdir)/scripts/genaclperms.py Makefile.am
-@@ -432,8 +432,7 @@ manpages/%.html.in: manpages/%.rst
- $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
- $(RST2HTML) --strict $< > $@ || { rm $@ && exit 1; }
-
--%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
-- $(acl_generated)
-+%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl
- $(AM_V_GEN)name=`echo $@ | sed -e 's/.tmp//'`; \
- genhtmlin=`echo $@ | sed -e 's/.tmp/.in/'`; \
- rst=`echo $@ | sed -e 's/.html.tmp/.rst/'`; \
diff --git a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch b/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
deleted file mode 100644
index 395d5610..00000000
--- a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 79f5975db01af0599860ccca7ef44b0e27105a04 Mon Sep 17 00:00:00 2001
-From: Mark Asselstine <mark.asselstine@...>
-Date: Thu, 10 May 2018 12:05:04 -0400
-Subject: [PATCH] configure.ac: search for rpc/rpc.h in the sysroot
-
-We want to avoid host contamination and use the sysroot as the base
-directory for our search so add the '=' the the '-I' when searching
-for libtirpc's rpc.h header.
-
-Upstream-Status: Inappropriate [old release]
-
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-xdr.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/m4/virt-xdr.m4 b/m4/virt-xdr.m4
-index 8375415..12b51f7 100644
---- a/m4/virt-xdr.m4
-+++ b/m4/virt-xdr.m4
-@@ -30,10 +30,10 @@ AC_DEFUN([LIBVIRT_CHECK_XDR], [
- ])
- with_xdr="yes"
-
-- dnl Recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
-+ dnl Recent glibc requires -I=/usr/include/tirpc for <rpc/rpc.h>
- old_CFLAGS=$CFLAGS
- AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
-- for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
-+ for add_CFLAGS in '' '-I=/usr/include/tirpc' 'missing'; do
- if test x"$add_CFLAGS" = xmissing; then
- lv_cv_xdr_cflags=missing; break
- fi
diff --git a/recipes-extended/libvirt/libvirt/install-missing-file.patch b/recipes-extended/libvirt/libvirt/install-missing-file.patch
deleted file mode 100644
index 6aa36df8..00000000
--- a/recipes-extended/libvirt/libvirt/install-missing-file.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From aa75f5136066d239d48a21373b3d96ee12378e8d Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 17:24:17 +0800
-Subject: [PATCH] Install missing conf file
-
-openvzutilstest.conf file is needed by openvzutilstest test.
-
-Upstream-Status: Inapproriate
-
-Signed-off-by: Catalin Enache <catalin.enache@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 4a808dd..0c3e799 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -173,6 +173,7 @@ EXTRA_DIST = \
- $(NULL)
-
- test_helpers = commandhelper ssh
-+test_misc =
- test_programs = virshtest sockettest \
- virhostcputest virbuftest \
- commandtest seclabeltest \
-@@ -311,6 +312,7 @@ endif WITH_LXC
-
- if WITH_OPENVZ
- test_programs += openvzutilstest
-+test_misc += openvzutilstest.conf
- endif WITH_OPENVZ
-
- if WITH_ESX
-@@ -1551,7 +1553,7 @@ endif ! WITH_LINUX
-
- buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-
--PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+PTESTS = $(TESTS) $(test_helpers) $(test_misc) test-lib.sh virschematest
-
- install-ptest:
- list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
diff --git a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch b/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
deleted file mode 100644
index 558d5ef6..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From ad5d9cee87357f9f38f62583119606ef95ba10df Mon Sep 17 00:00:00 2001
-From: Bogdan Purcareata <bogdan.purcareata@...>
-Date: Fri, 24 May 2013 16:46:00 +0300
-Subject: [PATCH] Fix thread safety in LXC callback handling
-
-Signed-off-by: Bogdan Purcareata <bogdan.purcareata@...>
----
- src/lxc/lxc_process.c | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
-index aaa81a7..0eadc67 100644
---- a/src/lxc/lxc_process.c
-+++ b/src/lxc/lxc_process.c
-@@ -609,8 +609,13 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- virLXCProtocolExitStatus status,
- virDomainObjPtr vm)
- {
-+ virLXCDriverPtr driver = lxc_driver;
- virLXCDomainObjPrivatePtr priv = vm->privateData;
-
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
- switch (status) {
- case VIR_LXC_PROTOCOL_EXIT_STATUS_SHUTDOWN:
- priv->stopReason = VIR_DOMAIN_EVENT_STOPPED_SHUTDOWN;
-@@ -628,6 +633,8 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- }
- VIR_DEBUG("Domain shutoff reason %d (from status %d)",
- priv->stopReason, status);
-+
-+ virObjectUnlock(vm);
- }
-
- /* XXX a little evil */
-@@ -636,12 +643,21 @@ static void virLXCProcessMonitorInitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- pid_t initpid,
- virDomainObjPtr vm)
- {
-- virLXCDomainObjPrivatePtr priv = vm->privateData;
-+ virLXCDriverPtr driver = lxc_driver;
-+ virLXCDomainObjPrivatePtr priv;
-+
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
-+ priv = vm->privateData;
- priv->initpid = initpid;
- virDomainAuditInit(vm, initpid);
-
- if (virDomainSaveStatus(lxc_driver->caps, lxc_driver->stateDir, vm) < 0)
- VIR_WARN("Cannot update XML with PID for LXC %s", vm->def->name);
-+
-+ virObjectUnlock(vm);
- }
-
- static virLXCMonitorCallbacks monitorCallbacks = {
---
-1.7.11.7
-
diff --git a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch b/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
deleted file mode 100644
index 87b55915..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 94bd514e1b6e602a48285db94e65050f8f0c2585 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Wed, 8 Apr 2015 13:03:03 -0400
-Subject: [PATCH] libvirt: use pkg-config to locate libcap
-
-libvirt wants to use pcap-config to locate the exisence and location
-of libpcap. oe-core stubs this script and replaces it with pkg-config,
-which can lead to the host pcap-config triggering and either breaking
-the build or introducing host contamination.
-
-To fix this issue, we patch configure to use 'pkg-config libcap' to
-locate the correct libraries.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[MA: Update to apply agains v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-libpcap.m4 | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/m4/virt-libpcap.m4 b/m4/virt-libpcap.m4
-index 605c2fd..e0ab018 100644
---- a/m4/virt-libpcap.m4
-+++ b/m4/virt-libpcap.m4
-@@ -23,14 +23,14 @@ AC_DEFUN([LIBVIRT_ARG_LIBPCAP], [
-
- AC_DEFUN([LIBVIRT_CHECK_LIBPCAP], [
- LIBPCAP_REQUIRED="1.5.0"
-- LIBPCAP_CONFIG="pcap-config"
-+ LIBPCAP_CONFIG="pkg-config libpcap"
- LIBPCAP_CFLAGS=""
- LIBPCAP_LIBS=""
-
- if test "x$with_libpcap" != "xno"; then
- case $with_libpcap in
-- ''|yes|check) LIBPCAP_CONFIG="pcap-config" ;;
-- *) LIBPCAP_CONFIG="$with_libpcap/bin/pcap-config" ;;
-+ ''|yes|check) LIBPCAP_CONFIG="pkg-config libpcap" ;;
-+ *) LIBPCAP_CONFIG="$with_libpcap/bin/pkg-config libpcap" ;;
- esac
- AS_IF([test "x$LIBPCAP_CONFIG" != "x"], [
- AC_MSG_CHECKING(libpcap $LIBPCAP_CONFIG >= $LIBPCAP_REQUIRED )
diff --git a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch b/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
deleted file mode 100644
index 3cf9e839..00000000
--- a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 74bff2509080912ea8abf1de8fd95fa2412b659a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@...>
-Date: Thu, 11 Apr 2013 11:37:25 +0200
-Subject: [PATCH] qemu: fix crash in qemuOpen
-
-commit 74bff2509080912ea8abf1de8fd95fa2412b659a from upsteam
-git://libvirt.org/libvirt.git
-
-If the path part of connection URI is not present, cfg is used
-unitialized.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=950855
----
- src/qemu/qemu_driver.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
-index 2c0d7d1..0d41e39 100644
---- a/src/qemu/qemu_driver.c
-+++ b/src/qemu/qemu_driver.c
-@@ -1026,6 +1026,7 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-+ cfg = virQEMUDriverGetConfig(qemu_driver);
- if (conn->uri->path == NULL) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("no QEMU URI path given, try %s"),
-@@ -1033,7 +1034,6 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-- cfg = virQEMUDriverGetConfig(qemu_driver);
- if (cfg->privileged) {
- if (STRNEQ(conn->uri->path, "/system") &&
- STRNEQ(conn->uri->path, "/session")) {
---
-1.7.1
-
diff --git a/recipes-extended/libvirt/libvirt/runptest.patch b/recipes-extended/libvirt/libvirt/runptest.patch
deleted file mode 100644
index f6bc7736..00000000
--- a/recipes-extended/libvirt/libvirt/runptest.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From d210838a4433dd254c1a11b08b804ebe9ff5f378 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 10:20:47 +0800
-Subject: [PATCH] Add 'install-ptest' rule
-
-Change TESTS_ENVIRONMENT to allow running outside build dir.
-
-Upstream-status: Pending
-Signed-off-by: Mihaela Sendrea <mihaela.sendrea@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Allow separate source and build dirs]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ZH: add missing test_helper files]
-Signed-off-by: He Zhe <zhe.he@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 68 +++++++++++++++++++++++++++++++++++++++++------
- 1 file changed, 60 insertions(+), 8 deletions(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index ada5b8f..4a808dd 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -28,11 +28,13 @@ AM_CPPFLAGS = \
-
- WARN_CFLAGS += $(RELAXED_FRAME_LIMIT_CFLAGS)
-
-+PTEST_DIR ?= $(libdir)/libvirt/ptest
-+
- AM_CFLAGS = \
-- -Dabs_builddir="\"$(abs_builddir)\"" \
-- -Dabs_top_builddir="\"$(abs_top_builddir)\"" \
-- -Dabs_srcdir="\"$(abs_srcdir)\"" \
-- -Dabs_top_srcdir="\"$(abs_top_srcdir)\"" \
-+ -Dabs_builddir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_builddir="\"$(PTEST_DIR)\"" \
-+ -Dabs_srcdir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_srcdir="\"$(PTEST_DIR)\"" \
- $(LIBXML_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(LIBNL_CFLAGS) \
-@@ -474,10 +476,10 @@ TESTS = $(test_programs) \
-
- VIR_TEST_EXPENSIVE ?= $(VIR_TEST_EXPENSIVE_DEFAULT)
- TESTS_ENVIRONMENT = \
-- abs_top_builddir="$(abs_top_builddir)" \
-- abs_top_srcdir="$(abs_top_srcdir)" \
-- abs_builddir="$(abs_builddir)" \
-- abs_srcdir="$(abs_srcdir)" \
-+ abs_top_builddir="$(PTEST_DIR)" \
-+ abs_top_srcdir="$(PTEST_DIR)" \
-+ abs_builddir="$(PTEST_DIR)/tests" \
-+ abs_srcdir="$(PTEST_DIR)/tests" \
- LIBVIRT_AUTOSTART=0 \
- LC_ALL=C \
- VIR_TEST_EXPENSIVE=$(VIR_TEST_EXPENSIVE) \
-@@ -1547,4 +1549,54 @@ else ! WITH_LINUX
- EXTRA_DIST += virscsitest.c
- endif ! WITH_LINUX
-
-+buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-+
-+PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+
-+install-ptest:
-+ list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
-+ install -d $(DEST_DIR)/tools
-+ @(if [ -d ../tools/.libs ] ; then cd ../tools/.libs; fi; \
-+ install * $(DEST_DIR)/tools)
-+ install -d $(DEST_DIR)/src/network
-+ cp $(top_srcdir)/src/network/*.xml $(DEST_DIR)/src/network
-+ install -d $(DEST_DIR)/src/cpu_map
-+ cp $(top_srcdir)/src/cpu_map/*.xml $(DEST_DIR)/src/cpu_map
-+ install ../src/libvirt_iohelper $(DEST_DIR)/src
-+ install -D ../src/libvirtd $(DEST_DIR)/src/libvirtd
-+ install -d $(DEST_DIR)/src/remote
-+ install -D $(top_srcdir)/../build/src/remote/libvirtd.conf $(DEST_DIR)/src/remote/libvirtd.conf
-+ install -d $(DEST_DIR)/src/remote/.libs
-+ @(if [ -d ../src/remote/.libs ] ; then cd ../src/remote/.libs; fi; \
-+ install * $(DEST_DIR)/src/remote/.libs)
-+ install -d $(DEST_DIR)/src/.libs
-+ @(if [ -d ../src/.libs ] ; then cd ../src/.libs; fi; \
-+ install * $(DEST_DIR)/src/.libs)
-+ install -d $(DEST_DIR)/docs/schemas
-+ cp $(top_srcdir)/docs/schemas/*.rng $(DEST_DIR)/docs/schemas
-+ cp -r $(top_srcdir)/build-aux $(DEST_DIR)
-+ install -d $(DEST_DIR)/examples/xml
-+ cp -r $(top_srcdir)/examples/xml/test $(DEST_DIR)/examples/xml
-+ install -d $(DEST_DIR)/tests/.libs
-+ find . -type d -name "*xml2xml*" -exec cp -r {} $(DEST_DIR)/tests \;
-+ find . -type d -name "*data" -exec cp -r {} $(DEST_DIR)/tests \;
-+ @(for file in $(PTESTS); do \
-+ if [ -f .libs/$$file ]; then \
-+ install .libs/$$file $(DEST_DIR)/tests; \
-+ elif [ -f $(srcdir)/$$file ]; then \
-+ install $(srcdir)/$$file $(DEST_DIR)/tests; \
-+ else \
-+ install $(builddir)/$$file $(DEST_DIR)/tests; \
-+ fi; \
-+ done;)
-+ @(if [ -d .libs ]; then install .libs/*.so $(DEST_DIR)/tests/.libs; fi;)
-+ cp ../config.h $(DEST_DIR)
-+ cp Makefile $(DEST_DIR)/tests
-+ sed -i -e 's/^Makefile:/_Makefile:/' $(DEST_DIR)/tests/Makefile
-+ cp ../Makefile $(DEST_DIR)
-+ sed -i -e 's|^Makefile:|_Makefile:|' $(DEST_DIR)/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/tests/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/Makefile
-+ sed -i -e 's|^\(.*\.log:\) \(.*EXEEXT.*\)|\1|g' $(DEST_DIR)/tests/Makefile
-+
- CLEANFILES = *.cov *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda
diff --git a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch b/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
deleted file mode 100644
index bb500fde..00000000
--- a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 7dc21edd851b260485b432c096f8e90f6fa07778 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Tue, 7 May 2019 15:26:32 +0800
-Subject: [PATCH] tools: add libvirt-net-rpc to virt-host-validate when TLS is
- enabled
-
-When gnu-tls is enabled for libvirt references to virNetTLSInit are
-generated in libvirt. Any binaries linking against libvirt, must also
-link against libvirt-net-rpc which provides the implementation.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ddu: rebase to v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- examples/Makefile.am | 20 ++++++++++++++++++++
- tools/Makefile.am | 12 ++++++++++++
- 2 files changed, 32 insertions(+)
-
-diff --git a/examples/Makefile.am b/examples/Makefile.am
-index ad635bd..a94f41d 100644
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -74,6 +74,10 @@ LDADD = \
- $(top_builddir)/src/libvirt-admin.la \
- $(NULL)
-
-+if WITH_GNUTLS
-+LDADD += $(top_builddir)/src/libvirt-net-rpc.la
-+endif
-+
- noinst_PROGRAMS = \
- c/admin/client_close \
- c/admin/client_info \
-@@ -111,6 +115,22 @@ c_misc_openauth_SOURCES = c/misc/openauth.c
- examplesdir = $(docdir)/examples
-
- adminexamplesdir = $(examplesdir)/c/admin
-+
-+if WITH_GNUTLS
-+dominfo_info1_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+domsuspend_suspend_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+hellolibvirt_hellolibvirt_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+openauth_openauth_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+endif
-+
- adminexamples_DATA = $(ADMIN_EXAMPLES)
-
- domainexamplesdir = $(examplesdir)/c/domain
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 53df930..2a0a989 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -166,6 +166,12 @@ virt_host_validate_LDADD = \
- $(GLIB_LIBS) \
- $(NULL)
-
-+if WITH_GNUTLS
-+virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- virt_host_validate_CFLAGS = \
- $(AM_CFLAGS) \
- $(NULL)
-@@ -262,6 +268,12 @@ virt_admin_CFLAGS = \
- $(READLINE_CFLAGS)
- BUILT_SOURCES =
-
-+if WITH_GNUTLS
-+virsh_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- if WITH_WIN_ICON
- virsh_LDADD += virsh_win_icon.$(OBJEXT)
-
diff --git a/recipes-extended/libvirt/libvirt_6.3.0.bb b/recipes-extended/libvirt/libvirt_7.2.0.bb
similarity index 69%
rename from recipes-extended/libvirt/libvirt_6.3.0.bb
rename to recipes-extended/libvirt/libvirt_7.2.0.bb
index 41abb06f..790071d5 100644
--- a/recipes-extended/libvirt/libvirt_6.3.0.bb
+++ b/recipes-extended/libvirt/libvirt_7.2.0.bb
@@ -18,96 +18,42 @@ RDEPENDS_${PN} = "gettext-runtime"

RDEPENDS_${PN}-ptest += "make gawk perl bash"

-RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd"
+RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd ebtables"
RDEPENDS_libvirt-libvirtd_append_x86-64 = " dmidecode"
RDEPENDS_libvirt-libvirtd_append_x86 = " dmidecode"

#connman blocks the 53 port and libvirtd can't start its DNS service
RCONFLICTS_${PN}_libvirtd = "connman"

+HOSTTOOLS_NONFATAL += "getent"
+
SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.xz;name=libvirt \
- file://tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch \
file://libvirtd.sh \
file://libvirtd.conf \
file://dnsmasq.conf \
- file://runptest.patch \
file://run-ptest \
- file://libvirt-use-pkg-config-to-locate-libcap.patch \
- file://0001-to-fix-build-error.patch \
- file://install-missing-file.patch \
file://0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch \
- file://configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch \
- file://0001-build-drop-unnecessary-libgnu.la-reference.patch \
file://hook_support.py \
file://gnutls-helper.py \
+ file://0001-meson-add-options-to-explicit-binaries-path.patch \
"

-SRC_URI[libvirt.md5sum] = "1bd4435f77924f5ec9928b538daf4a02"
-SRC_URI[libvirt.sha256sum] = "74069438d34082336e99a88146349e21130552b96efc3b7c562f6878127996f5"
+SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3"
+SRC_URI[libvirt.sha256sum] = "01f459d0c7ba5009622a628dba1a026200e8f4a299fea783b936a71d7e0ed1d0"

-inherit autotools gettext update-rc.d pkgconfig ptest systemd useradd perlnative
+inherit meson gettext update-rc.d pkgconfig ptest systemd useradd perlnative
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "-r qemu; -r kvm"
USERADD_PARAM_${PN} = "-r -g qemu -G kvm qemu"

-# Override the default set in autotools.bbclass so that we will use relative pathnames
-# to our local m4 files. This prevents an "Argument list too long" error during configuration
-# if our project is in a directory with an absolute pathname of more than about 125 characters.
-#
-acpaths = "-I ./m4"
-
-CACHED_CONFIGUREVARS += "\
-ac_cv_path_XMLCATLOG=/usr/bin/xmlcatalog \
-ac_cv_path_AUGPARSE=/usr/bin/augparse \
-ac_cv_path_DMIDECODE=/usr/sbin/dmidecode \
-ac_cv_path_DNSMASQ=/usr/bin/dnsmasq \
-ac_cv_path_BRCTL=/usr/sbin/brctl \
-ac_cv_path_TC=/sbin/tc \
-ac_cv_path_UDEVADM=/sbin/udevadm \
-ac_cv_path_MODPROBE=/sbin/modprobe \
-ac_cv_path_IP_PATH=/bin/ip \
-ac_cv_path_IPTABLES_PATH=/usr/sbin/iptables \
-ac_cv_path_IP6TABLES_PATH=/usr/sbin/ip6tables \
-ac_cv_path_MOUNT=/bin/mount \
-ac_cv_path_UMOUNT=/bin/umount \
-ac_cv_path_MKFS=/usr/sbin/mkfs \
-ac_cv_path_SHOWMOUNT=/usr/sbin/showmount \
-ac_cv_path_PVCREATE=/usr/sbin/pvcreate \
-ac_cv_path_VGCREATE=/usr/sbin/vgcreate \
-ac_cv_path_LVCREATE=/usr/sbin/lvcreate \
-ac_cv_path_PVREMOVE=/usr/sbin/pvremove \
-ac_cv_path_VGREMOVE=/usr/sbin/vgremove \
-ac_cv_path_LVREMOVE=/usr/sbin/lvremove \
-ac_cv_path_LVCHANGE=/usr/sbin/lvchange \
-ac_cv_path_VGCHANGE=/usr/sbin/vgchange \
-ac_cv_path_VGSCAN=/usr/sbin/vgscan \
-ac_cv_path_PVS=/usr/sbin/pvs \
-ac_cv_path_VGS=/usr/sbin/vgs \
-ac_cv_path_LVS=/usr/sbin/lvs \
-ac_cv_path_PARTED=/usr/sbin/parted \
-ac_cv_path_DMSETUP=/usr/sbin/dmsetup"
-
-# Ensure that libvirt uses polkit rather than policykit, whether the host has
-# pkcheck installed or not, and ensure the path is correct per our config.
-CACHED_CONFIGUREVARS += "ac_cv_path_PKCHECK_PATH=${bindir}/pkcheck"
-
-# Some other possible paths we are not yet setting
-#ac_cv_path_RPCGEN=
-#ac_cv_path_XSLTPROC=
-#ac_cv_path_RADVD=
-#ac_cv_path_UDEVSETTLE=
-#ac_cv_path_EBTABLES_PATH=
-#ac_cv_path_PKG_CONFIG=
-#ac_cv_path_ac_pt_PKG_CONFIG
-#ac_cv_path_POLKIT_AUTH=
-#ac_cv_path_DTRACE=
-#ac_cv_path_ISCSIADM=
-#ac_cv_path_MSGFMT=
-#ac_cv_path_GMSGFMT=
-#ac_cv_path_XGETTEXT=
-#ac_cv_path_MSGMERGE=
-#ac_cv_path_SCRUB=
-#ac_cv_path_PYTHON=
+
+EXTRA_OEMESON += " \
+ -Dip6tables-path=/usr/sbin/ip6tables \
+ -Ddmidecode-path=/usr/sbin/dmidecode \
+ -Ddnsmasq-path=/usr/bin/dnsmasq \
+ -Diptables-path=/usr/sbin/iptables \
+ -Debtables-path=/sbin/ebtables \
+ "

ALLOW_EMPTY_${PN} = "1"

@@ -191,7 +137,7 @@ PRIVATE_LIBS_${PN}-ptest = " \
# full config
PACKAGECONFIG ??= "gnutls qemu yajl openvz vmware vbox esx iproute2 lxc test \
remote macvtap libvirtd netcf udev python ebtables \
- fuse iproute2 firewalld libpcap \
+ fuse firewalld libpcap \
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'libxl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'polkit', '', d)} \
@@ -208,37 +154,34 @@ PACKAGECONFIG_remove_armeb = "numactl"
# enable,disable,depends,rdepends
#
PACKAGECONFIG[gnutls] = ",,,gnutls-bin"
-PACKAGECONFIG[qemu] = "--with-qemu --with-qemu-user=qemu --with-qemu-group=qemu,--without-qemu,qemu,"
-PACKAGECONFIG[yajl] = "--with-yajl,--without-yajl,yajl,yajl"
-PACKAGECONFIG[libxl] = "--with-libxl=${STAGING_DIR_TARGET}/lib,--without-libxl,xen,"
-PACKAGECONFIG[openvz] = "--with-openvz,--without-openvz,,"
-PACKAGECONFIG[vmware] = "--with-vmware,--without-vmware,,"
-PACKAGECONFIG[vbox] = "--with-vbox,--without-vbox,,"
-PACKAGECONFIG[esx] = "--with-esx,--without-esx,,"
-PACKAGECONFIG[hyperv] = "--with-hyperv,--without-hyperv,,"
-PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit,polkit"
-PACKAGECONFIG[lxc] = "--with-lxc,--without-lxc, lxc,"
-PACKAGECONFIG[test] = "--with-test=yes,--with-test=no,,"
-PACKAGECONFIG[remote] = "--with-remote,--without-remote,,"
-PACKAGECONFIG[macvtap] = "--with-macvtap=yes,--with-macvtap=no,libnl,libnl"
-PACKAGECONFIG[libvirtd] = "--with-libvirtd,--without-libvirtd,,"
-PACKAGECONFIG[netcf] = "--with-netcf,--without-netcf,netcf,netcf"
-PACKAGECONFIG[dtrace] = "--with-dtrace,--without-dtrace,,"
-PACKAGECONFIG[udev] = "--with-udev --with-pciaccess,--without-udev,udev libpciaccess,"
-PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
-PACKAGECONFIG[ebtables] = "ac_cv_path_EBTABLES_PATH=/sbin/ebtables,ac_cv_path_EBTABLES_PATH=,ebtables,ebtables"
+PACKAGECONFIG[qemu] = "-Ddriver_qemu=enabled -Dqemu_user=qemu -Dqemu_group=qemu,-Dqemu=disabled,qemu,"
+PACKAGECONFIG[yajl] = "-Dyajl=enabled,-Dyajl=disabled,yajl,yajl"
+PACKAGECONFIG[libxl] = "-Dlibxl=${STAGING_DIR_TARGET}/lib,,xen,"
+PACKAGECONFIG[openvz] = "-Ddriver_openvz=enabled,-Ddriver_openvz=disabled,,"
+PACKAGECONFIG[vmware] = "-Ddriver_vmware=enabled,-Ddriver_vmware=disabled,,"
+PACKAGECONFIG[vbox] = "-Ddriver_vbox=enabled,-Ddriver_vbox=disabled,,"
+PACKAGECONFIG[esx] = "-Ddriver_esx=enabled,-Ddriver_esx=disabled,,"
+PACKAGECONFIG[hyperv] = "-Ddriver_hyperv=enabled,-Ddriver_hyperv=disabled,,"
+PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit,polkit"
+PACKAGECONFIG[lxc] = "-Ddriver_lxc=enabled,-Ddriver_lxc=disabled,lxc,"
+PACKAGECONFIG[test] = "-Ddriver_test=enabled,-Ddriver_test=disabled,,"
+PACKAGECONFIG[remote] = "-Ddriver_remote=enabled,-Ddriver_remote=disabled,,"
+PACKAGECONFIG[libvirtd] = "-Ddriver_libvirtd=enabled,-Ddriver_libvirtd=disabled,,"
+PACKAGECONFIG[netcf] = "-Dnetcf=enabled,-Dnetcf=disabled,netcf,netcf"
+PACKAGECONFIG[dtrace] = "-Ddtrace=enabled,-Ddtrace=disabled,,"
+PACKAGECONFIG[udev] = "-Dudev=enabled -Dpciaccess=enabled,-Dudev=disabled,udev libpciaccess,"
+PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux,"
PACKAGECONFIG[python] = ",,python3,"
-PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,cyrus-sasl"
-PACKAGECONFIG[iproute2] = "ac_cv_path_IP_PATH=/sbin/ip,ac_cv_path_IP_PATH=,iproute2,iproute2"
-PACKAGECONFIG[numactl] = "--with-numactl,--without-numactl,numactl,"
-PACKAGECONFIG[fuse] = "--with-fuse,--without-fuse,fuse,"
-PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit,"
-PACKAGECONFIG[libcap-ng] = "--with-capng,--without-capng,libcap-ng,"
-PACKAGECONFIG[wireshark] = "--with-wireshark-dissector,--without-wireshark-dissector,wireshark libwsutil,"
-PACKAGECONFIG[apparmor-profiles] = "--with-apparmor-profiles, --without-apparmor-profiles,"
-PACKAGECONFIG[firewalld] = "--with-firewalld, --without-firewalld,"
-PACKAGECONFIG[libpcap] = "--with-libpcap, --without-libpcap,libpcap,libpcap"
-PACKAGECONFIG[numad] = "--with-numad, --without-numad,"
+PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl,cyrus-sasl"
+PACKAGECONFIG[numactl] = "-Dnumactl=enabled,-Dnumactl=disabled,numactl,"
+PACKAGECONFIG[fuse] = "-Dfuse=enabled,-Dfuse=disabled,fuse,"
+PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit,"
+PACKAGECONFIG[libcap-ng] = "-Dcapng=enabled,-Dcapng=disabled,libcap-ng,"
+PACKAGECONFIG[wireshark] = "-Dwireshark_dissector=enabled,-Dwireshark_dissector=disabled,wireshark libwsutil,"
+PACKAGECONFIG[apparmor_profiles] = "-Dapparmor_profiles=true, -Dapparmor_profiles=false,"
+PACKAGECONFIG[firewalld] = "-Dfirewalld=enabled, -Dfirewalld=disabled,"
+PACKAGECONFIG[libpcap] = "-Dlibpcap=enabled, -Dlibpcap=disabled,libpcap,libpcap"
+PACKAGECONFIG[numad] = "-Dnumad=enabled, -Dnumad=disabled,"

# Enable the Python tool support
require libvirt-python.inc
@@ -255,7 +198,7 @@ do_compile() {

cd ${B}
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
- oe_runmake all
+ ninja all
}

do_install_prepend() {
@@ -278,6 +221,8 @@ do_install_append() {
fi

if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ mkdir -p ${D}/lib
+ mv ${D}/usr/lib/systemd ${D}/lib
# This variable is used by libvirtd.service to start libvirtd in the right mode
sed -i '/#LIBVIRTD_ARGS="--listen"/a LIBVIRTD_ARGS="--listen --daemon"' ${D}/${sysconfdir}/sysconfig/libvirtd

@@ -360,7 +305,7 @@ do_install_append() {
# connection via 127.0.0.1 is available out of box.
install -d ${D}/etc/pki/CA
install -d ${D}/etc/pki/libvirt/private
- install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
+ install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
install -m 0644 ${WORKDIR}/cakey.pem ${D}/${sysconfdir}/pki/libvirt/private/cakey.pem
install -m 0644 ${WORKDIR}/cacert.pem ${D}/${sysconfdir}/pki/CA/cacert.pem
install -m 0644 ${WORKDIR}/serverkey.pem ${D}/${sysconfdir}/pki/libvirt/private/serverkey.pem
@@ -376,10 +321,10 @@ do_install_append() {
chmod 4755 ${D}${bindir}/virt-login-shell
}

-EXTRA_OECONF += " \
- --with-init-script=systemd \
- --with-test-suite \
- --with-runstatedir=/run \
+EXTRA_OEMESON += " \
+ -Dinit_script=systemd \
+ -Drunstatedir=/run \
+ -Dtests=enabled \
"

# gcc9 end up mis-compiling qemuxml2argvtest.o with Og which then
@@ -392,11 +337,11 @@ EXTRA_OEMAKE = "BUILD_DIR=${B} DEST_DIR=${D}${PTEST_PATH} PTEST_DIR=${PTEST_PATH
PRIVATE_LIBS_${PN}-ptest_append = "libvirt-admin.so.0"

do_compile_ptest() {
- oe_runmake -C tests buildtest-TESTS
+ ninja -C tests buildtest-TESTS
}

do_install_ptest() {
- oe_runmake -C tests install-ptest
+ ninja -C tests install-ptest

find ${S}/tests -maxdepth 1 -type d -exec cp -r {} ${D}${PTEST_PATH}/tests/ \;

--
2.27.0




--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Re: [PATCH] libvirt: uprev v6.3 -> v7.2

Xu, Yanfei
 

On 4/10/21 3:52 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]
On Fri, Apr 9, 2021 at 3:13 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail.com@...> wrote:

On Fri, Apr 9, 2021 at 3:07 PM Bruce Ashfield <bruce.ashfield@...> wrote:

On Wed, Apr 7, 2021 at 5:23 AM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/7/21 8:35 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

In message: [meta-virtualization][PATCH] libvirt: uprev v6.3 -> v7.2
on 02/04/2021 Xu, Yanfei wrote:

From: Yanfei Xu <yanfei.xu@...>

This upgrade spans 9 small release. The detailed realese logs could
refer to: https://gitlab.com/libvirt/libvirt/-/blob/master/NEWS.rst

Libvirt's buildsystem has changed to meson, So this upgrade drop some
obsolete patches applied to makefile.

Due to libvirt's meson currently doesn't support to explicit the runtime
binaries path. I made a patch which is
0001-meson-add-options-to-explicit-binaries-path.patch for solving the
problem.
We've tranditionally had runtime issues each time libvirt was
uprev'd.
Yes. I saw there were some ancient patches...


Can you summarize the testing that you did after the upgrade ?
OK. I did the testing with our libvirt testcase and ovs testcase.
The summary is as follow:

libvirt_test (keyword: ) test results:
*1 Run libvirt_test testing(do_test1) PASS
*2 Check result (virsh_local_capabilities) PASS
*3 Check result (virsh_local_domcapabilities) PASS
*4 Check result (virsh_local_freecell) PASS
*5 Check result (virsh_local_help) PASS
*6 Check result (virsh_local_hostname) PASS
*7 Check result (virsh_local_iface-begin) PASS
*8 Check result (virsh_local_iface-commit) PASS
*9 Check result (virsh_local_iface-list) PASS
*10 Check result (virsh_local_list) PASS
*11 Check result (virsh_local_maxvcpus) PASS
*12 Check result (virsh_local_net-list) PASS
*13 Check result (virsh_local_nodecpumap) PASS
*14 Check result (virsh_local_nodecpustats) PASS
*15 Check result (virsh_local_nodedev-list) PASS
*16 Check result (virsh_local_nodeinfo) PASS
*17 Check result (virsh_local_node-memory-tune) PASS
*18 Check result (virsh_local_nodememstats) PASS
*19 Check result (virsh_local_nwfilter-binding-list) PASS
*20 Check result (virsh_local_nwfilter-list) PASS
*21 Check result (virsh_local_pool-capabilities) PASS
*22 Check result (virsh_local_pool-list) PASS
*23 Check result (virsh_local_pwd) PASS
*24 Check result (virsh_local_secret-list) PASS
*25 Check result (virsh_local_sysinfo) PASS
*26 Check result (virsh_local_uri) PASS
*27 Check result (virsh_local_version) PASS

openvswitch_vm2vm (keyword: qemux86) test results:
*1 openvswitch_vm2vm testing(do_test1) PASS
*2 Check result (ovs_vm2vm_boot_guest1) PASS
*3 Check result (ovs_vm2vm_boot_guest2) PASS
*4 Check result (ovs_vm2vm_netperf_test) PASS
*5 Check result (ovs_vm2vm_destroy_guest1) PASS
*6 Check result (ovs_vm2vm_destroy_guest2) PASS
*7 check testcase call trace(do_check_call_trace) PASS
Thanks, this helps.

The patch came through corrupted, and I fixed it up locally and then
added your test summary to the commit.
Thanks Bruce.


But it failed to build in my configuration:

| Library xentoollog found: YES
| Header <libxl.h> has symbol "LIBXL_DOMAIN_TYPE_PVH" : YES
| Checking if "lxc support" compiles: YES
|
| ../libvirt-7.2.0/meson.build:1725:61: ERROR: Program or command
'getent' not found or not executable
|
I realize that HOSTTOOLS_NONFATAL += "getent" is set, but it doesn't
help if meson is failing config.
And of course, when I change it to just HOSTTOOLS += "getent", I get a
failure that getent isn't found.
What's your host distro ?
I do have getent available on my host, but it isn't being found/used:
build [/home/bruc...poky/build]> /usr/bin/getent
/usr/bin/getent: wrong number of arguments
I am sorry for this. I made the patch on wrlinux-ovp distro, but the meta-virtualization seems the same with upstream's. :(

I just reproduced the problem you met on poky and still analysing the error about gentent. I will update mails once I get any clue.

Thanks,
Yanfei

Bruce

Bruce


I'm building tip of tree for everything, qemux86-64

Bruce



Thanks,
Yanfei


Bruce


Signed-off-by: Yanfei Xu <yanfei.xu@...>
---
recipes-extended/libvirt/libvirt-python.inc | 4 +-
...drop-unnecessary-libgnu.la-reference.patch | 31 ----
...dd-options-to-explicit-binaries-path.patch | 86 ++++++++++
.../libvirt/0001-to-fix-build-error.patch | 47 -----
...-search-for-rpc-rpc.h-in-the-sysroot.patch | 34 ----
.../libvirt/install-missing-file.patch | 50 ------
...read-safety-in-lxc-callback-handling.patch | 63 -------
...virt-use-pkg-config-to-locate-libcap.patch | 43 -----
.../libvirt/qemu-fix-crash-in-qemuOpen.patch | 39 -----
.../libvirt/libvirt/runptest.patch | 116 -------------
...t-net-rpc-to-virt-host-validate-when.patch | 91 ----------
.../{libvirt_6.3.0.bb => libvirt_7.2.0.bb} | 161 ++++++------------
12 files changed, 141 insertions(+), 624 deletions(-)
delete mode 100644 recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
create mode 100644 recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
delete mode 100644 recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
delete mode 100644 recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
delete mode 100644 recipes-extended/libvirt/libvirt/install-missing-file.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
delete mode 100644 recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
delete mode 100644 recipes-extended/libvirt/libvirt/runptest.patch
delete mode 100644 recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
rename recipes-extended/libvirt/{libvirt_6.3.0.bb => libvirt_7.2.0.bb} (69%)

diff --git a/recipes-extended/libvirt/libvirt-python.inc b/recipes-extended/libvirt/libvirt-python.inc
index bcd76572..0c661af8 100644
--- a/recipes-extended/libvirt/libvirt-python.inc
+++ b/recipes-extended/libvirt/libvirt-python.inc
@@ -17,8 +17,8 @@ FILES_${PN}-python = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"

SRC_URI += "http://libvirt.org/sources/python/libvirt-python-${PV}.tar.gz;name=libvirt_python"

-SRC_URI[libvirt_python.md5sum] = "4cf898350ee9a47f94986d402c153bdb"
-SRC_URI[libvirt_python.sha256sum] = "c772421ecc144f098f4ab15db700c62db9b9e6e76b876217edcfd62e9ce02750"
+SRC_URI[libvirt_python.md5sum] = "19bf22414a43d358581b9259b52047a7"
+SRC_URI[libvirt_python.sha256sum] = "c0c3bac54c55622e17927b09cd9843869600d71842fb072c99491fe2608dcee7"

export LIBVIRT_API_PATH = "${S}/docs/libvirt-api.xml"
export LIBVIRT_CFLAGS = "-I${S}/include"
diff --git a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch b/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
deleted file mode 100644
index f02a5d64..00000000
--- a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 30a056069cb35804434fb036e51ae97f33c02025 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Sat, 7 Mar 2020 21:36:27 -0500
-Subject: [PATCH] build: drop unnecessary libgnu.la reference
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-
----
- tools/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 2a0a989..93fe283 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -168,7 +168,6 @@ virt_host_validate_LDADD = \
-
- if WITH_GNUTLS
- virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
-@@ -270,7 +269,6 @@ BUILT_SOURCES =
-
- if WITH_GNUTLS
- virsh_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
diff --git a/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
new file mode 100644
index 00000000..4c545d4a
--- /dev/null
+++ b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
@@ -0,0 +1,86 @@
+From 2e061ccf093063267277893cd5cacc9e7188c629 Mon Sep 17 00:00:00 2001
+From: Yanfei Xu <yanfei.xu@...>
+Date: Thu, 25 Mar 2021 16:24:04 +0800
+Subject: [PATCH] meson: add options to explicit binaries path
+
+In cross compile evironment, path of binaries is possiblely different
+between target and host. Let's add options to explicit binaries path
+to solve this problem.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yanfei Xu <yanfei.xu@...>
+---
+ meson.build | 18 ++++++++++++------
+ meson_options.txt | 23 +++++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 369548f127..6c93be8e4b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -943,18 +943,24 @@ optional_programs = [
+ 'udevadm',
+ ]
+
++# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
++# /usr/sbin, /sbin, and fall back to the default from middle column.
+ foreach name : optional_programs
+- prog = find_program(name, required: false, dirs: libvirt_sbin_path)
+ varname = name.underscorify()
+- if prog.found()
+- prog_path = prog.path()
++ prog_path = get_option(name + '-path')
++ if prog_path != ''
++ message('Using @1@ for @0@'.format(name, prog_path))
+ else
+- prog_path = name
++ prog = find_program(name, required: false, dirs: libvirt_sbin_path)
++ if prog.found()
++ prog_path = prog.path()
++ else
++ prog_path = name
++ endif
++ set_variable('@0@_prog'.format(varname), prog)
+ endif
+-
+ conf.set_quoted(varname.to_upper(), prog_path)
+ conf.set_quoted('@0@_PATH'.format(varname.to_upper()), prog_path)
+- set_variable('@0@_prog'.format(varname), prog)
+ endforeach
+
+
+diff --git a/meson_options.txt b/meson_options.txt
+index e5d79c2b6b..f06f46c7bb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -102,3 +102,26 @@ option('numad', type: 'feature', value: 'auto', description: 'use numad to manag
+ option('pm_utils', type: 'feature', value: 'auto', description: 'use pm-utils for power management')
+ option('sysctl_config', type: 'feature', value: 'auto', description: 'Whether to install sysctl configs')
+ option('tls_priority', type: 'string', value: 'NORMAL', description: 'set the default TLS session priority string')
++
++
++option('addr2line-path', type : 'string', description : 'path to addr2line')
++option('augparse-path', type : 'string', description : 'path to augparse')
++option('dmidecode-path', type : 'string', description : 'path to dmidecode')
++option('dnsmasq-path', type : 'string', description : 'path to dnsmasq')
++option('ebtables-path', type : 'string', description : 'path to ebtables')
++option('flake8-path', type : 'string', description : 'path to flake8')
++option('ip-path', type : 'string', description : 'path to ip')
++option('ip6tables-path', type : 'string', description : 'path to ip6tables')
++option('iptables-path', type : 'string', description : 'path to iptables')
++option('iscsiadm-path', type : 'string', description : 'path to iscsiadm')
++option('mdevctl-path', type : 'string', description : 'path to mdevctl')
++option('mm-ctl-path', type : 'string', description : 'path to mm-ctl')
++option('modprobe-path', type : 'string', description : 'path to modprobe')
++option('ovs-vsctl-path', type : 'string', description : 'path to ovs-vsctl')
++option('pdwtags-path', type : 'string', description : 'path to pdwtags')
++option('radvd-path', type : 'string', description : 'path to radvd')
++option('rmmod-path', type : 'string', description : 'path to rmmod')
++option('scrub-path', type : 'string', description : 'path to scrub')
++option('tc-path', type : 'string', description : 'path to tc')
++option('udevadm-path', type : 'string', description : 'path to udevadm')
++
+--
+2.27.0
+
diff --git a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch b/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
deleted file mode 100644
index b0148e5c..00000000
--- a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 3566bcacaa6408fb8f655d1749a20b2f30e0c765 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@...>
-Date: Fri, 31 Jul 2015 03:17:07 +0900
-Subject: [PATCH] to fix build error
-
-The error likes as following
-
-| Generating internals/command.html.tmp
-| /bin/sh: line 3: internals/command.html.tmp: No such file or directory
-| rm: Generating internals/locking.html.tmp
-| cannot remove `internals/command.html.tmp': No such file or directory
-| make[3]: *** [internals/command.html.tmp] Error 1
-| make[3]: *** Waiting for unfinished jobs....
-
-Signed-off-by: Lei Maohui <leimaohui@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- docs/Makefile.am | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index ce3d296..2c8180f 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -366,7 +366,7 @@ EXTRA_DIST= \
- aclperms.htmlinc \
- $(schema_DATA)
-
--acl_generated = aclperms.htmlinc
-+acl.html:: $(srcdir)/aclperms.htmlinc
-
- aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \
- $(top_srcdir)/scripts/genaclperms.py Makefile.am
-@@ -432,8 +432,7 @@ manpages/%.html.in: manpages/%.rst
- $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
- $(RST2HTML) --strict $< > $@ || { rm $@ && exit 1; }
-
--%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
-- $(acl_generated)
-+%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl
- $(AM_V_GEN)name=`echo $@ | sed -e 's/.tmp//'`; \
- genhtmlin=`echo $@ | sed -e 's/.tmp/.in/'`; \
- rst=`echo $@ | sed -e 's/.html.tmp/.rst/'`; \
diff --git a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch b/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
deleted file mode 100644
index 395d5610..00000000
--- a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 79f5975db01af0599860ccca7ef44b0e27105a04 Mon Sep 17 00:00:00 2001
-From: Mark Asselstine <mark.asselstine@...>
-Date: Thu, 10 May 2018 12:05:04 -0400
-Subject: [PATCH] configure.ac: search for rpc/rpc.h in the sysroot
-
-We want to avoid host contamination and use the sysroot as the base
-directory for our search so add the '=' the the '-I' when searching
-for libtirpc's rpc.h header.
-
-Upstream-Status: Inappropriate [old release]
-
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-xdr.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/m4/virt-xdr.m4 b/m4/virt-xdr.m4
-index 8375415..12b51f7 100644
---- a/m4/virt-xdr.m4
-+++ b/m4/virt-xdr.m4
-@@ -30,10 +30,10 @@ AC_DEFUN([LIBVIRT_CHECK_XDR], [
- ])
- with_xdr="yes"
-
-- dnl Recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
-+ dnl Recent glibc requires -I=/usr/include/tirpc for <rpc/rpc.h>
- old_CFLAGS=$CFLAGS
- AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
-- for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
-+ for add_CFLAGS in '' '-I=/usr/include/tirpc' 'missing'; do
- if test x"$add_CFLAGS" = xmissing; then
- lv_cv_xdr_cflags=missing; break
- fi
diff --git a/recipes-extended/libvirt/libvirt/install-missing-file.patch b/recipes-extended/libvirt/libvirt/install-missing-file.patch
deleted file mode 100644
index 6aa36df8..00000000
--- a/recipes-extended/libvirt/libvirt/install-missing-file.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From aa75f5136066d239d48a21373b3d96ee12378e8d Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 17:24:17 +0800
-Subject: [PATCH] Install missing conf file
-
-openvzutilstest.conf file is needed by openvzutilstest test.
-
-Upstream-Status: Inapproriate
-
-Signed-off-by: Catalin Enache <catalin.enache@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 4a808dd..0c3e799 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -173,6 +173,7 @@ EXTRA_DIST = \
- $(NULL)
-
- test_helpers = commandhelper ssh
-+test_misc =
- test_programs = virshtest sockettest \
- virhostcputest virbuftest \
- commandtest seclabeltest \
-@@ -311,6 +312,7 @@ endif WITH_LXC
-
- if WITH_OPENVZ
- test_programs += openvzutilstest
-+test_misc += openvzutilstest.conf
- endif WITH_OPENVZ
-
- if WITH_ESX
-@@ -1551,7 +1553,7 @@ endif ! WITH_LINUX
-
- buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-
--PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+PTESTS = $(TESTS) $(test_helpers) $(test_misc) test-lib.sh virschematest
-
- install-ptest:
- list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
diff --git a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch b/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
deleted file mode 100644
index 558d5ef6..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From ad5d9cee87357f9f38f62583119606ef95ba10df Mon Sep 17 00:00:00 2001
-From: Bogdan Purcareata <bogdan.purcareata@...>
-Date: Fri, 24 May 2013 16:46:00 +0300
-Subject: [PATCH] Fix thread safety in LXC callback handling
-
-Signed-off-by: Bogdan Purcareata <bogdan.purcareata@...>
----
- src/lxc/lxc_process.c | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
-index aaa81a7..0eadc67 100644
---- a/src/lxc/lxc_process.c
-+++ b/src/lxc/lxc_process.c
-@@ -609,8 +609,13 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- virLXCProtocolExitStatus status,
- virDomainObjPtr vm)
- {
-+ virLXCDriverPtr driver = lxc_driver;
- virLXCDomainObjPrivatePtr priv = vm->privateData;
-
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
- switch (status) {
- case VIR_LXC_PROTOCOL_EXIT_STATUS_SHUTDOWN:
- priv->stopReason = VIR_DOMAIN_EVENT_STOPPED_SHUTDOWN;
-@@ -628,6 +633,8 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- }
- VIR_DEBUG("Domain shutoff reason %d (from status %d)",
- priv->stopReason, status);
-+
-+ virObjectUnlock(vm);
- }
-
- /* XXX a little evil */
-@@ -636,12 +643,21 @@ static void virLXCProcessMonitorInitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- pid_t initpid,
- virDomainObjPtr vm)
- {
-- virLXCDomainObjPrivatePtr priv = vm->privateData;
-+ virLXCDriverPtr driver = lxc_driver;
-+ virLXCDomainObjPrivatePtr priv;
-+
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
-+ priv = vm->privateData;
- priv->initpid = initpid;
- virDomainAuditInit(vm, initpid);
-
- if (virDomainSaveStatus(lxc_driver->caps, lxc_driver->stateDir, vm) < 0)
- VIR_WARN("Cannot update XML with PID for LXC %s", vm->def->name);
-+
-+ virObjectUnlock(vm);
- }
-
- static virLXCMonitorCallbacks monitorCallbacks = {
---
-1.7.11.7
-
diff --git a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch b/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
deleted file mode 100644
index 87b55915..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 94bd514e1b6e602a48285db94e65050f8f0c2585 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Wed, 8 Apr 2015 13:03:03 -0400
-Subject: [PATCH] libvirt: use pkg-config to locate libcap
-
-libvirt wants to use pcap-config to locate the exisence and location
-of libpcap. oe-core stubs this script and replaces it with pkg-config,
-which can lead to the host pcap-config triggering and either breaking
-the build or introducing host contamination.
-
-To fix this issue, we patch configure to use 'pkg-config libcap' to
-locate the correct libraries.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[MA: Update to apply agains v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-libpcap.m4 | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/m4/virt-libpcap.m4 b/m4/virt-libpcap.m4
-index 605c2fd..e0ab018 100644
---- a/m4/virt-libpcap.m4
-+++ b/m4/virt-libpcap.m4
-@@ -23,14 +23,14 @@ AC_DEFUN([LIBVIRT_ARG_LIBPCAP], [
-
- AC_DEFUN([LIBVIRT_CHECK_LIBPCAP], [
- LIBPCAP_REQUIRED="1.5.0"
-- LIBPCAP_CONFIG="pcap-config"
-+ LIBPCAP_CONFIG="pkg-config libpcap"
- LIBPCAP_CFLAGS=""
- LIBPCAP_LIBS=""
-
- if test "x$with_libpcap" != "xno"; then
- case $with_libpcap in
-- ''|yes|check) LIBPCAP_CONFIG="pcap-config" ;;
-- *) LIBPCAP_CONFIG="$with_libpcap/bin/pcap-config" ;;
-+ ''|yes|check) LIBPCAP_CONFIG="pkg-config libpcap" ;;
-+ *) LIBPCAP_CONFIG="$with_libpcap/bin/pkg-config libpcap" ;;
- esac
- AS_IF([test "x$LIBPCAP_CONFIG" != "x"], [
- AC_MSG_CHECKING(libpcap $LIBPCAP_CONFIG >= $LIBPCAP_REQUIRED )
diff --git a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch b/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
deleted file mode 100644
index 3cf9e839..00000000
--- a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 74bff2509080912ea8abf1de8fd95fa2412b659a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@...>
-Date: Thu, 11 Apr 2013 11:37:25 +0200
-Subject: [PATCH] qemu: fix crash in qemuOpen
-
-commit 74bff2509080912ea8abf1de8fd95fa2412b659a from upsteam
-git://libvirt.org/libvirt.git
-
-If the path part of connection URI is not present, cfg is used
-unitialized.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=950855
----
- src/qemu/qemu_driver.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
-index 2c0d7d1..0d41e39 100644
---- a/src/qemu/qemu_driver.c
-+++ b/src/qemu/qemu_driver.c
-@@ -1026,6 +1026,7 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-+ cfg = virQEMUDriverGetConfig(qemu_driver);
- if (conn->uri->path == NULL) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("no QEMU URI path given, try %s"),
-@@ -1033,7 +1034,6 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-- cfg = virQEMUDriverGetConfig(qemu_driver);
- if (cfg->privileged) {
- if (STRNEQ(conn->uri->path, "/system") &&
- STRNEQ(conn->uri->path, "/session")) {
---
-1.7.1
-
diff --git a/recipes-extended/libvirt/libvirt/runptest.patch b/recipes-extended/libvirt/libvirt/runptest.patch
deleted file mode 100644
index f6bc7736..00000000
--- a/recipes-extended/libvirt/libvirt/runptest.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From d210838a4433dd254c1a11b08b804ebe9ff5f378 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 10:20:47 +0800
-Subject: [PATCH] Add 'install-ptest' rule
-
-Change TESTS_ENVIRONMENT to allow running outside build dir.
-
-Upstream-status: Pending
-Signed-off-by: Mihaela Sendrea <mihaela.sendrea@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Allow separate source and build dirs]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ZH: add missing test_helper files]
-Signed-off-by: He Zhe <zhe.he@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 68 +++++++++++++++++++++++++++++++++++++++++------
- 1 file changed, 60 insertions(+), 8 deletions(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index ada5b8f..4a808dd 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -28,11 +28,13 @@ AM_CPPFLAGS = \
-
- WARN_CFLAGS += $(RELAXED_FRAME_LIMIT_CFLAGS)
-
-+PTEST_DIR ?= $(libdir)/libvirt/ptest
-+
- AM_CFLAGS = \
-- -Dabs_builddir="\"$(abs_builddir)\"" \
-- -Dabs_top_builddir="\"$(abs_top_builddir)\"" \
-- -Dabs_srcdir="\"$(abs_srcdir)\"" \
-- -Dabs_top_srcdir="\"$(abs_top_srcdir)\"" \
-+ -Dabs_builddir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_builddir="\"$(PTEST_DIR)\"" \
-+ -Dabs_srcdir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_srcdir="\"$(PTEST_DIR)\"" \
- $(LIBXML_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(LIBNL_CFLAGS) \
-@@ -474,10 +476,10 @@ TESTS = $(test_programs) \
-
- VIR_TEST_EXPENSIVE ?= $(VIR_TEST_EXPENSIVE_DEFAULT)
- TESTS_ENVIRONMENT = \
-- abs_top_builddir="$(abs_top_builddir)" \
-- abs_top_srcdir="$(abs_top_srcdir)" \
-- abs_builddir="$(abs_builddir)" \
-- abs_srcdir="$(abs_srcdir)" \
-+ abs_top_builddir="$(PTEST_DIR)" \
-+ abs_top_srcdir="$(PTEST_DIR)" \
-+ abs_builddir="$(PTEST_DIR)/tests" \
-+ abs_srcdir="$(PTEST_DIR)/tests" \
- LIBVIRT_AUTOSTART=0 \
- LC_ALL=C \
- VIR_TEST_EXPENSIVE=$(VIR_TEST_EXPENSIVE) \
-@@ -1547,4 +1549,54 @@ else ! WITH_LINUX
- EXTRA_DIST += virscsitest.c
- endif ! WITH_LINUX
-
-+buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-+
-+PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+
-+install-ptest:
-+ list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
-+ install -d $(DEST_DIR)/tools
-+ @(if [ -d ../tools/.libs ] ; then cd ../tools/.libs; fi; \
-+ install * $(DEST_DIR)/tools)
-+ install -d $(DEST_DIR)/src/network
-+ cp $(top_srcdir)/src/network/*.xml $(DEST_DIR)/src/network
-+ install -d $(DEST_DIR)/src/cpu_map
-+ cp $(top_srcdir)/src/cpu_map/*.xml $(DEST_DIR)/src/cpu_map
-+ install ../src/libvirt_iohelper $(DEST_DIR)/src
-+ install -D ../src/libvirtd $(DEST_DIR)/src/libvirtd
-+ install -d $(DEST_DIR)/src/remote
-+ install -D $(top_srcdir)/../build/src/remote/libvirtd.conf $(DEST_DIR)/src/remote/libvirtd.conf
-+ install -d $(DEST_DIR)/src/remote/.libs
-+ @(if [ -d ../src/remote/.libs ] ; then cd ../src/remote/.libs; fi; \
-+ install * $(DEST_DIR)/src/remote/.libs)
-+ install -d $(DEST_DIR)/src/.libs
-+ @(if [ -d ../src/.libs ] ; then cd ../src/.libs; fi; \
-+ install * $(DEST_DIR)/src/.libs)
-+ install -d $(DEST_DIR)/docs/schemas
-+ cp $(top_srcdir)/docs/schemas/*.rng $(DEST_DIR)/docs/schemas
-+ cp -r $(top_srcdir)/build-aux $(DEST_DIR)
-+ install -d $(DEST_DIR)/examples/xml
-+ cp -r $(top_srcdir)/examples/xml/test $(DEST_DIR)/examples/xml
-+ install -d $(DEST_DIR)/tests/.libs
-+ find . -type d -name "*xml2xml*" -exec cp -r {} $(DEST_DIR)/tests \;
-+ find . -type d -name "*data" -exec cp -r {} $(DEST_DIR)/tests \;
-+ @(for file in $(PTESTS); do \
-+ if [ -f .libs/$$file ]; then \
-+ install .libs/$$file $(DEST_DIR)/tests; \
-+ elif [ -f $(srcdir)/$$file ]; then \
-+ install $(srcdir)/$$file $(DEST_DIR)/tests; \
-+ else \
-+ install $(builddir)/$$file $(DEST_DIR)/tests; \
-+ fi; \
-+ done;)
-+ @(if [ -d .libs ]; then install .libs/*.so $(DEST_DIR)/tests/.libs; fi;)
-+ cp ../config.h $(DEST_DIR)
-+ cp Makefile $(DEST_DIR)/tests
-+ sed -i -e 's/^Makefile:/_Makefile:/' $(DEST_DIR)/tests/Makefile
-+ cp ../Makefile $(DEST_DIR)
-+ sed -i -e 's|^Makefile:|_Makefile:|' $(DEST_DIR)/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/tests/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/Makefile
-+ sed -i -e 's|^\(.*\.log:\) \(.*EXEEXT.*\)|\1|g' $(DEST_DIR)/tests/Makefile
-+
- CLEANFILES = *.cov *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda
diff --git a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch b/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
deleted file mode 100644
index bb500fde..00000000
--- a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 7dc21edd851b260485b432c096f8e90f6fa07778 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Tue, 7 May 2019 15:26:32 +0800
-Subject: [PATCH] tools: add libvirt-net-rpc to virt-host-validate when TLS is
- enabled
-
-When gnu-tls is enabled for libvirt references to virNetTLSInit are
-generated in libvirt. Any binaries linking against libvirt, must also
-link against libvirt-net-rpc which provides the implementation.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ddu: rebase to v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- examples/Makefile.am | 20 ++++++++++++++++++++
- tools/Makefile.am | 12 ++++++++++++
- 2 files changed, 32 insertions(+)
-
-diff --git a/examples/Makefile.am b/examples/Makefile.am
-index ad635bd..a94f41d 100644
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -74,6 +74,10 @@ LDADD = \
- $(top_builddir)/src/libvirt-admin.la \
- $(NULL)
-
-+if WITH_GNUTLS
-+LDADD += $(top_builddir)/src/libvirt-net-rpc.la
-+endif
-+
- noinst_PROGRAMS = \
- c/admin/client_close \
- c/admin/client_info \
-@@ -111,6 +115,22 @@ c_misc_openauth_SOURCES = c/misc/openauth.c
- examplesdir = $(docdir)/examples
-
- adminexamplesdir = $(examplesdir)/c/admin
-+
-+if WITH_GNUTLS
-+dominfo_info1_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+domsuspend_suspend_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+hellolibvirt_hellolibvirt_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+openauth_openauth_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+endif
-+
- adminexamples_DATA = $(ADMIN_EXAMPLES)
-
- domainexamplesdir = $(examplesdir)/c/domain
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 53df930..2a0a989 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -166,6 +166,12 @@ virt_host_validate_LDADD = \
- $(GLIB_LIBS) \
- $(NULL)
-
-+if WITH_GNUTLS
-+virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- virt_host_validate_CFLAGS = \
- $(AM_CFLAGS) \
- $(NULL)
-@@ -262,6 +268,12 @@ virt_admin_CFLAGS = \
- $(READLINE_CFLAGS)
- BUILT_SOURCES =
-
-+if WITH_GNUTLS
-+virsh_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- if WITH_WIN_ICON
- virsh_LDADD += virsh_win_icon.$(OBJEXT)
-
diff --git a/recipes-extended/libvirt/libvirt_6.3.0.bb b/recipes-extended/libvirt/libvirt_7.2.0.bb
similarity index 69%
rename from recipes-extended/libvirt/libvirt_6.3.0.bb
rename to recipes-extended/libvirt/libvirt_7.2.0.bb
index 41abb06f..790071d5 100644
--- a/recipes-extended/libvirt/libvirt_6.3.0.bb
+++ b/recipes-extended/libvirt/libvirt_7.2.0.bb
@@ -18,96 +18,42 @@ RDEPENDS_${PN} = "gettext-runtime"

RDEPENDS_${PN}-ptest += "make gawk perl bash"

-RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd"
+RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd ebtables"
RDEPENDS_libvirt-libvirtd_append_x86-64 = " dmidecode"
RDEPENDS_libvirt-libvirtd_append_x86 = " dmidecode"

#connman blocks the 53 port and libvirtd can't start its DNS service
RCONFLICTS_${PN}_libvirtd = "connman"

+HOSTTOOLS_NONFATAL += "getent"
+
SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.xz;name=libvirt \
- file://tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch \
file://libvirtd.sh \
file://libvirtd.conf \
file://dnsmasq.conf \
- file://runptest.patch \
file://run-ptest \
- file://libvirt-use-pkg-config-to-locate-libcap.patch \
- file://0001-to-fix-build-error.patch \
- file://install-missing-file.patch \
file://0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch \
- file://configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch \
- file://0001-build-drop-unnecessary-libgnu.la-reference.patch \
file://hook_support.py \
file://gnutls-helper.py \
+ file://0001-meson-add-options-to-explicit-binaries-path.patch \
"

-SRC_URI[libvirt.md5sum] = "1bd4435f77924f5ec9928b538daf4a02"
-SRC_URI[libvirt.sha256sum] = "74069438d34082336e99a88146349e21130552b96efc3b7c562f6878127996f5"
+SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3"
+SRC_URI[libvirt.sha256sum] = "01f459d0c7ba5009622a628dba1a026200e8f4a299fea783b936a71d7e0ed1d0"

-inherit autotools gettext update-rc.d pkgconfig ptest systemd useradd perlnative
+inherit meson gettext update-rc.d pkgconfig ptest systemd useradd perlnative
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "-r qemu; -r kvm"
USERADD_PARAM_${PN} = "-r -g qemu -G kvm qemu"

-# Override the default set in autotools.bbclass so that we will use relative pathnames
-# to our local m4 files. This prevents an "Argument list too long" error during configuration
-# if our project is in a directory with an absolute pathname of more than about 125 characters.
-#
-acpaths = "-I ./m4"
-
-CACHED_CONFIGUREVARS += "\
-ac_cv_path_XMLCATLOG=/usr/bin/xmlcatalog \
-ac_cv_path_AUGPARSE=/usr/bin/augparse \
-ac_cv_path_DMIDECODE=/usr/sbin/dmidecode \
-ac_cv_path_DNSMASQ=/usr/bin/dnsmasq \
-ac_cv_path_BRCTL=/usr/sbin/brctl \
-ac_cv_path_TC=/sbin/tc \
-ac_cv_path_UDEVADM=/sbin/udevadm \
-ac_cv_path_MODPROBE=/sbin/modprobe \
-ac_cv_path_IP_PATH=/bin/ip \
-ac_cv_path_IPTABLES_PATH=/usr/sbin/iptables \
-ac_cv_path_IP6TABLES_PATH=/usr/sbin/ip6tables \
-ac_cv_path_MOUNT=/bin/mount \
-ac_cv_path_UMOUNT=/bin/umount \
-ac_cv_path_MKFS=/usr/sbin/mkfs \
-ac_cv_path_SHOWMOUNT=/usr/sbin/showmount \
-ac_cv_path_PVCREATE=/usr/sbin/pvcreate \
-ac_cv_path_VGCREATE=/usr/sbin/vgcreate \
-ac_cv_path_LVCREATE=/usr/sbin/lvcreate \
-ac_cv_path_PVREMOVE=/usr/sbin/pvremove \
-ac_cv_path_VGREMOVE=/usr/sbin/vgremove \
-ac_cv_path_LVREMOVE=/usr/sbin/lvremove \
-ac_cv_path_LVCHANGE=/usr/sbin/lvchange \
-ac_cv_path_VGCHANGE=/usr/sbin/vgchange \
-ac_cv_path_VGSCAN=/usr/sbin/vgscan \
-ac_cv_path_PVS=/usr/sbin/pvs \
-ac_cv_path_VGS=/usr/sbin/vgs \
-ac_cv_path_LVS=/usr/sbin/lvs \
-ac_cv_path_PARTED=/usr/sbin/parted \
-ac_cv_path_DMSETUP=/usr/sbin/dmsetup"
-
-# Ensure that libvirt uses polkit rather than policykit, whether the host has
-# pkcheck installed or not, and ensure the path is correct per our config.
-CACHED_CONFIGUREVARS += "ac_cv_path_PKCHECK_PATH=${bindir}/pkcheck"
-
-# Some other possible paths we are not yet setting
-#ac_cv_path_RPCGEN=
-#ac_cv_path_XSLTPROC=
-#ac_cv_path_RADVD=
-#ac_cv_path_UDEVSETTLE=
-#ac_cv_path_EBTABLES_PATH=
-#ac_cv_path_PKG_CONFIG=
-#ac_cv_path_ac_pt_PKG_CONFIG
-#ac_cv_path_POLKIT_AUTH=
-#ac_cv_path_DTRACE=
-#ac_cv_path_ISCSIADM=
-#ac_cv_path_MSGFMT=
-#ac_cv_path_GMSGFMT=
-#ac_cv_path_XGETTEXT=
-#ac_cv_path_MSGMERGE=
-#ac_cv_path_SCRUB=
-#ac_cv_path_PYTHON=
+
+EXTRA_OEMESON += " \
+ -Dip6tables-path=/usr/sbin/ip6tables \
+ -Ddmidecode-path=/usr/sbin/dmidecode \
+ -Ddnsmasq-path=/usr/bin/dnsmasq \
+ -Diptables-path=/usr/sbin/iptables \
+ -Debtables-path=/sbin/ebtables \
+ "

ALLOW_EMPTY_${PN} = "1"

@@ -191,7 +137,7 @@ PRIVATE_LIBS_${PN}-ptest = " \
# full config
PACKAGECONFIG ??= "gnutls qemu yajl openvz vmware vbox esx iproute2 lxc test \
remote macvtap libvirtd netcf udev python ebtables \
- fuse iproute2 firewalld libpcap \
+ fuse firewalld libpcap \
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'libxl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'polkit', '', d)} \
@@ -208,37 +154,34 @@ PACKAGECONFIG_remove_armeb = "numactl"
# enable,disable,depends,rdepends
#
PACKAGECONFIG[gnutls] = ",,,gnutls-bin"
-PACKAGECONFIG[qemu] = "--with-qemu --with-qemu-user=qemu --with-qemu-group=qemu,--without-qemu,qemu,"
-PACKAGECONFIG[yajl] = "--with-yajl,--without-yajl,yajl,yajl"
-PACKAGECONFIG[libxl] = "--with-libxl=${STAGING_DIR_TARGET}/lib,--without-libxl,xen,"
-PACKAGECONFIG[openvz] = "--with-openvz,--without-openvz,,"
-PACKAGECONFIG[vmware] = "--with-vmware,--without-vmware,,"
-PACKAGECONFIG[vbox] = "--with-vbox,--without-vbox,,"
-PACKAGECONFIG[esx] = "--with-esx,--without-esx,,"
-PACKAGECONFIG[hyperv] = "--with-hyperv,--without-hyperv,,"
-PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit,polkit"
-PACKAGECONFIG[lxc] = "--with-lxc,--without-lxc, lxc,"
-PACKAGECONFIG[test] = "--with-test=yes,--with-test=no,,"
-PACKAGECONFIG[remote] = "--with-remote,--without-remote,,"
-PACKAGECONFIG[macvtap] = "--with-macvtap=yes,--with-macvtap=no,libnl,libnl"
-PACKAGECONFIG[libvirtd] = "--with-libvirtd,--without-libvirtd,,"
-PACKAGECONFIG[netcf] = "--with-netcf,--without-netcf,netcf,netcf"
-PACKAGECONFIG[dtrace] = "--with-dtrace,--without-dtrace,,"
-PACKAGECONFIG[udev] = "--with-udev --with-pciaccess,--without-udev,udev libpciaccess,"
-PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
-PACKAGECONFIG[ebtables] = "ac_cv_path_EBTABLES_PATH=/sbin/ebtables,ac_cv_path_EBTABLES_PATH=,ebtables,ebtables"
+PACKAGECONFIG[qemu] = "-Ddriver_qemu=enabled -Dqemu_user=qemu -Dqemu_group=qemu,-Dqemu=disabled,qemu,"
+PACKAGECONFIG[yajl] = "-Dyajl=enabled,-Dyajl=disabled,yajl,yajl"
+PACKAGECONFIG[libxl] = "-Dlibxl=${STAGING_DIR_TARGET}/lib,,xen,"
+PACKAGECONFIG[openvz] = "-Ddriver_openvz=enabled,-Ddriver_openvz=disabled,,"
+PACKAGECONFIG[vmware] = "-Ddriver_vmware=enabled,-Ddriver_vmware=disabled,,"
+PACKAGECONFIG[vbox] = "-Ddriver_vbox=enabled,-Ddriver_vbox=disabled,,"
+PACKAGECONFIG[esx] = "-Ddriver_esx=enabled,-Ddriver_esx=disabled,,"
+PACKAGECONFIG[hyperv] = "-Ddriver_hyperv=enabled,-Ddriver_hyperv=disabled,,"
+PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit,polkit"
+PACKAGECONFIG[lxc] = "-Ddriver_lxc=enabled,-Ddriver_lxc=disabled,lxc,"
+PACKAGECONFIG[test] = "-Ddriver_test=enabled,-Ddriver_test=disabled,,"
+PACKAGECONFIG[remote] = "-Ddriver_remote=enabled,-Ddriver_remote=disabled,,"
+PACKAGECONFIG[libvirtd] = "-Ddriver_libvirtd=enabled,-Ddriver_libvirtd=disabled,,"
+PACKAGECONFIG[netcf] = "-Dnetcf=enabled,-Dnetcf=disabled,netcf,netcf"
+PACKAGECONFIG[dtrace] = "-Ddtrace=enabled,-Ddtrace=disabled,,"
+PACKAGECONFIG[udev] = "-Dudev=enabled -Dpciaccess=enabled,-Dudev=disabled,udev libpciaccess,"
+PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux,"
PACKAGECONFIG[python] = ",,python3,"
-PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,cyrus-sasl"
-PACKAGECONFIG[iproute2] = "ac_cv_path_IP_PATH=/sbin/ip,ac_cv_path_IP_PATH=,iproute2,iproute2"
-PACKAGECONFIG[numactl] = "--with-numactl,--without-numactl,numactl,"
-PACKAGECONFIG[fuse] = "--with-fuse,--without-fuse,fuse,"
-PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit,"
-PACKAGECONFIG[libcap-ng] = "--with-capng,--without-capng,libcap-ng,"
-PACKAGECONFIG[wireshark] = "--with-wireshark-dissector,--without-wireshark-dissector,wireshark libwsutil,"
-PACKAGECONFIG[apparmor-profiles] = "--with-apparmor-profiles, --without-apparmor-profiles,"
-PACKAGECONFIG[firewalld] = "--with-firewalld, --without-firewalld,"
-PACKAGECONFIG[libpcap] = "--with-libpcap, --without-libpcap,libpcap,libpcap"
-PACKAGECONFIG[numad] = "--with-numad, --without-numad,"
+PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl,cyrus-sasl"
+PACKAGECONFIG[numactl] = "-Dnumactl=enabled,-Dnumactl=disabled,numactl,"
+PACKAGECONFIG[fuse] = "-Dfuse=enabled,-Dfuse=disabled,fuse,"
+PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit,"
+PACKAGECONFIG[libcap-ng] = "-Dcapng=enabled,-Dcapng=disabled,libcap-ng,"
+PACKAGECONFIG[wireshark] = "-Dwireshark_dissector=enabled,-Dwireshark_dissector=disabled,wireshark libwsutil,"
+PACKAGECONFIG[apparmor_profiles] = "-Dapparmor_profiles=true, -Dapparmor_profiles=false,"
+PACKAGECONFIG[firewalld] = "-Dfirewalld=enabled, -Dfirewalld=disabled,"
+PACKAGECONFIG[libpcap] = "-Dlibpcap=enabled, -Dlibpcap=disabled,libpcap,libpcap"
+PACKAGECONFIG[numad] = "-Dnumad=enabled, -Dnumad=disabled,"

# Enable the Python tool support
require libvirt-python.inc
@@ -255,7 +198,7 @@ do_compile() {

cd ${B}
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
- oe_runmake all
+ ninja all
}

do_install_prepend() {
@@ -278,6 +221,8 @@ do_install_append() {
fi

if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ mkdir -p ${D}/lib
+ mv ${D}/usr/lib/systemd ${D}/lib
# This variable is used by libvirtd.service to start libvirtd in the right mode
sed -i '/#LIBVIRTD_ARGS="--listen"/a LIBVIRTD_ARGS="--listen --daemon"' ${D}/${sysconfdir}/sysconfig/libvirtd

@@ -360,7 +305,7 @@ do_install_append() {
# connection via 127.0.0.1 is available out of box.
install -d ${D}/etc/pki/CA
install -d ${D}/etc/pki/libvirt/private
- install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
+ install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
install -m 0644 ${WORKDIR}/cakey.pem ${D}/${sysconfdir}/pki/libvirt/private/cakey.pem
install -m 0644 ${WORKDIR}/cacert.pem ${D}/${sysconfdir}/pki/CA/cacert.pem
install -m 0644 ${WORKDIR}/serverkey.pem ${D}/${sysconfdir}/pki/libvirt/private/serverkey.pem
@@ -376,10 +321,10 @@ do_install_append() {
chmod 4755 ${D}${bindir}/virt-login-shell
}

-EXTRA_OECONF += " \
- --with-init-script=systemd \
- --with-test-suite \
- --with-runstatedir=/run \
+EXTRA_OEMESON += " \
+ -Dinit_script=systemd \
+ -Drunstatedir=/run \
+ -Dtests=enabled \
"

# gcc9 end up mis-compiling qemuxml2argvtest.o with Og which then
@@ -392,11 +337,11 @@ EXTRA_OEMAKE = "BUILD_DIR=${B} DEST_DIR=${D}${PTEST_PATH} PTEST_DIR=${PTEST_PATH
PRIVATE_LIBS_${PN}-ptest_append = "libvirt-admin.so.0"

do_compile_ptest() {
- oe_runmake -C tests buildtest-TESTS
+ ninja -C tests buildtest-TESTS
}

do_install_ptest() {
- oe_runmake -C tests install-ptest
+ ninja -C tests install-ptest

find ${S}/tests -maxdepth 1 -type d -exec cp -r {} ${D}${PTEST_PATH}/tests/ \;

--
2.27.0




--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Re: [PATCH] libvirt: uprev v6.3 -> v7.2

Bruce Ashfield
 

On Fri, Apr 9, 2021 at 3:13 PM Bruce Ashfield via
lists.yoctoproject.org
<bruce.ashfield=gmail.com@...> wrote:

On Fri, Apr 9, 2021 at 3:07 PM Bruce Ashfield <bruce.ashfield@...> wrote:

On Wed, Apr 7, 2021 at 5:23 AM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/7/21 8:35 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

In message: [meta-virtualization][PATCH] libvirt: uprev v6.3 -> v7.2
on 02/04/2021 Xu, Yanfei wrote:

From: Yanfei Xu <yanfei.xu@...>

This upgrade spans 9 small release. The detailed realese logs could
refer to: https://gitlab.com/libvirt/libvirt/-/blob/master/NEWS.rst

Libvirt's buildsystem has changed to meson, So this upgrade drop some
obsolete patches applied to makefile.

Due to libvirt's meson currently doesn't support to explicit the runtime
binaries path. I made a patch which is
0001-meson-add-options-to-explicit-binaries-path.patch for solving the
problem.
We've tranditionally had runtime issues each time libvirt was
uprev'd.
Yes. I saw there were some ancient patches...


Can you summarize the testing that you did after the upgrade ?
OK. I did the testing with our libvirt testcase and ovs testcase.
The summary is as follow:

libvirt_test (keyword: ) test results:
*1 Run libvirt_test testing(do_test1) PASS
*2 Check result (virsh_local_capabilities) PASS
*3 Check result (virsh_local_domcapabilities) PASS
*4 Check result (virsh_local_freecell) PASS
*5 Check result (virsh_local_help) PASS
*6 Check result (virsh_local_hostname) PASS
*7 Check result (virsh_local_iface-begin) PASS
*8 Check result (virsh_local_iface-commit) PASS
*9 Check result (virsh_local_iface-list) PASS
*10 Check result (virsh_local_list) PASS
*11 Check result (virsh_local_maxvcpus) PASS
*12 Check result (virsh_local_net-list) PASS
*13 Check result (virsh_local_nodecpumap) PASS
*14 Check result (virsh_local_nodecpustats) PASS
*15 Check result (virsh_local_nodedev-list) PASS
*16 Check result (virsh_local_nodeinfo) PASS
*17 Check result (virsh_local_node-memory-tune) PASS
*18 Check result (virsh_local_nodememstats) PASS
*19 Check result (virsh_local_nwfilter-binding-list) PASS
*20 Check result (virsh_local_nwfilter-list) PASS
*21 Check result (virsh_local_pool-capabilities) PASS
*22 Check result (virsh_local_pool-list) PASS
*23 Check result (virsh_local_pwd) PASS
*24 Check result (virsh_local_secret-list) PASS
*25 Check result (virsh_local_sysinfo) PASS
*26 Check result (virsh_local_uri) PASS
*27 Check result (virsh_local_version) PASS

openvswitch_vm2vm (keyword: qemux86) test results:
*1 openvswitch_vm2vm testing(do_test1) PASS
*2 Check result (ovs_vm2vm_boot_guest1) PASS
*3 Check result (ovs_vm2vm_boot_guest2) PASS
*4 Check result (ovs_vm2vm_netperf_test) PASS
*5 Check result (ovs_vm2vm_destroy_guest1) PASS
*6 Check result (ovs_vm2vm_destroy_guest2) PASS
*7 check testcase call trace(do_check_call_trace) PASS
Thanks, this helps.

The patch came through corrupted, and I fixed it up locally and then
added your test summary to the commit.

But it failed to build in my configuration:

| Library xentoollog found: YES
| Header <libxl.h> has symbol "LIBXL_DOMAIN_TYPE_PVH" : YES
| Checking if "lxc support" compiles: YES
|
| ../libvirt-7.2.0/meson.build:1725:61: ERROR: Program or command
'getent' not found or not executable
|
I realize that HOSTTOOLS_NONFATAL += "getent" is set, but it doesn't
help if meson is failing config.
And of course, when I change it to just HOSTTOOLS += "getent", I get a
failure that getent isn't found.

What's your host distro ?

I do have getent available on my host, but it isn't being found/used:

build [/home/bruc...poky/build]> /usr/bin/getent
/usr/bin/getent: wrong number of arguments

Bruce

Bruce


I'm building tip of tree for everything, qemux86-64

Bruce



Thanks,
Yanfei


Bruce


Signed-off-by: Yanfei Xu <yanfei.xu@...>
---
recipes-extended/libvirt/libvirt-python.inc | 4 +-
...drop-unnecessary-libgnu.la-reference.patch | 31 ----
...dd-options-to-explicit-binaries-path.patch | 86 ++++++++++
.../libvirt/0001-to-fix-build-error.patch | 47 -----
...-search-for-rpc-rpc.h-in-the-sysroot.patch | 34 ----
.../libvirt/install-missing-file.patch | 50 ------
...read-safety-in-lxc-callback-handling.patch | 63 -------
...virt-use-pkg-config-to-locate-libcap.patch | 43 -----
.../libvirt/qemu-fix-crash-in-qemuOpen.patch | 39 -----
.../libvirt/libvirt/runptest.patch | 116 -------------
...t-net-rpc-to-virt-host-validate-when.patch | 91 ----------
.../{libvirt_6.3.0.bb => libvirt_7.2.0.bb} | 161 ++++++------------
12 files changed, 141 insertions(+), 624 deletions(-)
delete mode 100644 recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
create mode 100644 recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
delete mode 100644 recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
delete mode 100644 recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
delete mode 100644 recipes-extended/libvirt/libvirt/install-missing-file.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
delete mode 100644 recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
delete mode 100644 recipes-extended/libvirt/libvirt/runptest.patch
delete mode 100644 recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
rename recipes-extended/libvirt/{libvirt_6.3.0.bb => libvirt_7.2.0.bb} (69%)

diff --git a/recipes-extended/libvirt/libvirt-python.inc b/recipes-extended/libvirt/libvirt-python.inc
index bcd76572..0c661af8 100644
--- a/recipes-extended/libvirt/libvirt-python.inc
+++ b/recipes-extended/libvirt/libvirt-python.inc
@@ -17,8 +17,8 @@ FILES_${PN}-python = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"

SRC_URI += "http://libvirt.org/sources/python/libvirt-python-${PV}.tar.gz;name=libvirt_python"

-SRC_URI[libvirt_python.md5sum] = "4cf898350ee9a47f94986d402c153bdb"
-SRC_URI[libvirt_python.sha256sum] = "c772421ecc144f098f4ab15db700c62db9b9e6e76b876217edcfd62e9ce02750"
+SRC_URI[libvirt_python.md5sum] = "19bf22414a43d358581b9259b52047a7"
+SRC_URI[libvirt_python.sha256sum] = "c0c3bac54c55622e17927b09cd9843869600d71842fb072c99491fe2608dcee7"

export LIBVIRT_API_PATH = "${S}/docs/libvirt-api.xml"
export LIBVIRT_CFLAGS = "-I${S}/include"
diff --git a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch b/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
deleted file mode 100644
index f02a5d64..00000000
--- a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 30a056069cb35804434fb036e51ae97f33c02025 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Sat, 7 Mar 2020 21:36:27 -0500
-Subject: [PATCH] build: drop unnecessary libgnu.la reference
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-
----
- tools/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 2a0a989..93fe283 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -168,7 +168,6 @@ virt_host_validate_LDADD = \
-
- if WITH_GNUTLS
- virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
-@@ -270,7 +269,6 @@ BUILT_SOURCES =
-
- if WITH_GNUTLS
- virsh_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
diff --git a/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
new file mode 100644
index 00000000..4c545d4a
--- /dev/null
+++ b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
@@ -0,0 +1,86 @@
+From 2e061ccf093063267277893cd5cacc9e7188c629 Mon Sep 17 00:00:00 2001
+From: Yanfei Xu <yanfei.xu@...>
+Date: Thu, 25 Mar 2021 16:24:04 +0800
+Subject: [PATCH] meson: add options to explicit binaries path
+
+In cross compile evironment, path of binaries is possiblely different
+between target and host. Let's add options to explicit binaries path
+to solve this problem.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yanfei Xu <yanfei.xu@...>
+---
+ meson.build | 18 ++++++++++++------
+ meson_options.txt | 23 +++++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 369548f127..6c93be8e4b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -943,18 +943,24 @@ optional_programs = [
+ 'udevadm',
+ ]
+
++# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
++# /usr/sbin, /sbin, and fall back to the default from middle column.
+ foreach name : optional_programs
+- prog = find_program(name, required: false, dirs: libvirt_sbin_path)
+ varname = name.underscorify()
+- if prog.found()
+- prog_path = prog.path()
++ prog_path = get_option(name + '-path')
++ if prog_path != ''
++ message('Using @1@ for @0@'.format(name, prog_path))
+ else
+- prog_path = name
++ prog = find_program(name, required: false, dirs: libvirt_sbin_path)
++ if prog.found()
++ prog_path = prog.path()
++ else
++ prog_path = name
++ endif
++ set_variable('@0@_prog'.format(varname), prog)
+ endif
+-
+ conf.set_quoted(varname.to_upper(), prog_path)
+ conf.set_quoted('@0@_PATH'.format(varname.to_upper()), prog_path)
+- set_variable('@0@_prog'.format(varname), prog)
+ endforeach
+
+
+diff --git a/meson_options.txt b/meson_options.txt
+index e5d79c2b6b..f06f46c7bb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -102,3 +102,26 @@ option('numad', type: 'feature', value: 'auto', description: 'use numad to manag
+ option('pm_utils', type: 'feature', value: 'auto', description: 'use pm-utils for power management')
+ option('sysctl_config', type: 'feature', value: 'auto', description: 'Whether to install sysctl configs')
+ option('tls_priority', type: 'string', value: 'NORMAL', description: 'set the default TLS session priority string')
++
++
++option('addr2line-path', type : 'string', description : 'path to addr2line')
++option('augparse-path', type : 'string', description : 'path to augparse')
++option('dmidecode-path', type : 'string', description : 'path to dmidecode')
++option('dnsmasq-path', type : 'string', description : 'path to dnsmasq')
++option('ebtables-path', type : 'string', description : 'path to ebtables')
++option('flake8-path', type : 'string', description : 'path to flake8')
++option('ip-path', type : 'string', description : 'path to ip')
++option('ip6tables-path', type : 'string', description : 'path to ip6tables')
++option('iptables-path', type : 'string', description : 'path to iptables')
++option('iscsiadm-path', type : 'string', description : 'path to iscsiadm')
++option('mdevctl-path', type : 'string', description : 'path to mdevctl')
++option('mm-ctl-path', type : 'string', description : 'path to mm-ctl')
++option('modprobe-path', type : 'string', description : 'path to modprobe')
++option('ovs-vsctl-path', type : 'string', description : 'path to ovs-vsctl')
++option('pdwtags-path', type : 'string', description : 'path to pdwtags')
++option('radvd-path', type : 'string', description : 'path to radvd')
++option('rmmod-path', type : 'string', description : 'path to rmmod')
++option('scrub-path', type : 'string', description : 'path to scrub')
++option('tc-path', type : 'string', description : 'path to tc')
++option('udevadm-path', type : 'string', description : 'path to udevadm')
++
+--
+2.27.0
+
diff --git a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch b/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
deleted file mode 100644
index b0148e5c..00000000
--- a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 3566bcacaa6408fb8f655d1749a20b2f30e0c765 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@...>
-Date: Fri, 31 Jul 2015 03:17:07 +0900
-Subject: [PATCH] to fix build error
-
-The error likes as following
-
-| Generating internals/command.html.tmp
-| /bin/sh: line 3: internals/command.html.tmp: No such file or directory
-| rm: Generating internals/locking.html.tmp
-| cannot remove `internals/command.html.tmp': No such file or directory
-| make[3]: *** [internals/command.html.tmp] Error 1
-| make[3]: *** Waiting for unfinished jobs....
-
-Signed-off-by: Lei Maohui <leimaohui@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- docs/Makefile.am | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index ce3d296..2c8180f 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -366,7 +366,7 @@ EXTRA_DIST= \
- aclperms.htmlinc \
- $(schema_DATA)
-
--acl_generated = aclperms.htmlinc
-+acl.html:: $(srcdir)/aclperms.htmlinc
-
- aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \
- $(top_srcdir)/scripts/genaclperms.py Makefile.am
-@@ -432,8 +432,7 @@ manpages/%.html.in: manpages/%.rst
- $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
- $(RST2HTML) --strict $< > $@ || { rm $@ && exit 1; }
-
--%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
-- $(acl_generated)
-+%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl
- $(AM_V_GEN)name=`echo $@ | sed -e 's/.tmp//'`; \
- genhtmlin=`echo $@ | sed -e 's/.tmp/.in/'`; \
- rst=`echo $@ | sed -e 's/.html.tmp/.rst/'`; \
diff --git a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch b/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
deleted file mode 100644
index 395d5610..00000000
--- a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 79f5975db01af0599860ccca7ef44b0e27105a04 Mon Sep 17 00:00:00 2001
-From: Mark Asselstine <mark.asselstine@...>
-Date: Thu, 10 May 2018 12:05:04 -0400
-Subject: [PATCH] configure.ac: search for rpc/rpc.h in the sysroot
-
-We want to avoid host contamination and use the sysroot as the base
-directory for our search so add the '=' the the '-I' when searching
-for libtirpc's rpc.h header.
-
-Upstream-Status: Inappropriate [old release]
-
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-xdr.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/m4/virt-xdr.m4 b/m4/virt-xdr.m4
-index 8375415..12b51f7 100644
---- a/m4/virt-xdr.m4
-+++ b/m4/virt-xdr.m4
-@@ -30,10 +30,10 @@ AC_DEFUN([LIBVIRT_CHECK_XDR], [
- ])
- with_xdr="yes"
-
-- dnl Recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
-+ dnl Recent glibc requires -I=/usr/include/tirpc for <rpc/rpc.h>
- old_CFLAGS=$CFLAGS
- AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
-- for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
-+ for add_CFLAGS in '' '-I=/usr/include/tirpc' 'missing'; do
- if test x"$add_CFLAGS" = xmissing; then
- lv_cv_xdr_cflags=missing; break
- fi
diff --git a/recipes-extended/libvirt/libvirt/install-missing-file.patch b/recipes-extended/libvirt/libvirt/install-missing-file.patch
deleted file mode 100644
index 6aa36df8..00000000
--- a/recipes-extended/libvirt/libvirt/install-missing-file.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From aa75f5136066d239d48a21373b3d96ee12378e8d Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 17:24:17 +0800
-Subject: [PATCH] Install missing conf file
-
-openvzutilstest.conf file is needed by openvzutilstest test.
-
-Upstream-Status: Inapproriate
-
-Signed-off-by: Catalin Enache <catalin.enache@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 4a808dd..0c3e799 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -173,6 +173,7 @@ EXTRA_DIST = \
- $(NULL)
-
- test_helpers = commandhelper ssh
-+test_misc =
- test_programs = virshtest sockettest \
- virhostcputest virbuftest \
- commandtest seclabeltest \
-@@ -311,6 +312,7 @@ endif WITH_LXC
-
- if WITH_OPENVZ
- test_programs += openvzutilstest
-+test_misc += openvzutilstest.conf
- endif WITH_OPENVZ
-
- if WITH_ESX
-@@ -1551,7 +1553,7 @@ endif ! WITH_LINUX
-
- buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-
--PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+PTESTS = $(TESTS) $(test_helpers) $(test_misc) test-lib.sh virschematest
-
- install-ptest:
- list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
diff --git a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch b/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
deleted file mode 100644
index 558d5ef6..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From ad5d9cee87357f9f38f62583119606ef95ba10df Mon Sep 17 00:00:00 2001
-From: Bogdan Purcareata <bogdan.purcareata@...>
-Date: Fri, 24 May 2013 16:46:00 +0300
-Subject: [PATCH] Fix thread safety in LXC callback handling
-
-Signed-off-by: Bogdan Purcareata <bogdan.purcareata@...>
----
- src/lxc/lxc_process.c | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
-index aaa81a7..0eadc67 100644
---- a/src/lxc/lxc_process.c
-+++ b/src/lxc/lxc_process.c
-@@ -609,8 +609,13 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- virLXCProtocolExitStatus status,
- virDomainObjPtr vm)
- {
-+ virLXCDriverPtr driver = lxc_driver;
- virLXCDomainObjPrivatePtr priv = vm->privateData;
-
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
- switch (status) {
- case VIR_LXC_PROTOCOL_EXIT_STATUS_SHUTDOWN:
- priv->stopReason = VIR_DOMAIN_EVENT_STOPPED_SHUTDOWN;
-@@ -628,6 +633,8 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- }
- VIR_DEBUG("Domain shutoff reason %d (from status %d)",
- priv->stopReason, status);
-+
-+ virObjectUnlock(vm);
- }
-
- /* XXX a little evil */
-@@ -636,12 +643,21 @@ static void virLXCProcessMonitorInitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- pid_t initpid,
- virDomainObjPtr vm)
- {
-- virLXCDomainObjPrivatePtr priv = vm->privateData;
-+ virLXCDriverPtr driver = lxc_driver;
-+ virLXCDomainObjPrivatePtr priv;
-+
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
-+ priv = vm->privateData;
- priv->initpid = initpid;
- virDomainAuditInit(vm, initpid);
-
- if (virDomainSaveStatus(lxc_driver->caps, lxc_driver->stateDir, vm) < 0)
- VIR_WARN("Cannot update XML with PID for LXC %s", vm->def->name);
-+
-+ virObjectUnlock(vm);
- }
-
- static virLXCMonitorCallbacks monitorCallbacks = {
---
-1.7.11.7
-
diff --git a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch b/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
deleted file mode 100644
index 87b55915..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 94bd514e1b6e602a48285db94e65050f8f0c2585 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Wed, 8 Apr 2015 13:03:03 -0400
-Subject: [PATCH] libvirt: use pkg-config to locate libcap
-
-libvirt wants to use pcap-config to locate the exisence and location
-of libpcap. oe-core stubs this script and replaces it with pkg-config,
-which can lead to the host pcap-config triggering and either breaking
-the build or introducing host contamination.
-
-To fix this issue, we patch configure to use 'pkg-config libcap' to
-locate the correct libraries.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[MA: Update to apply agains v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-libpcap.m4 | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/m4/virt-libpcap.m4 b/m4/virt-libpcap.m4
-index 605c2fd..e0ab018 100644
---- a/m4/virt-libpcap.m4
-+++ b/m4/virt-libpcap.m4
-@@ -23,14 +23,14 @@ AC_DEFUN([LIBVIRT_ARG_LIBPCAP], [
-
- AC_DEFUN([LIBVIRT_CHECK_LIBPCAP], [
- LIBPCAP_REQUIRED="1.5.0"
-- LIBPCAP_CONFIG="pcap-config"
-+ LIBPCAP_CONFIG="pkg-config libpcap"
- LIBPCAP_CFLAGS=""
- LIBPCAP_LIBS=""
-
- if test "x$with_libpcap" != "xno"; then
- case $with_libpcap in
-- ''|yes|check) LIBPCAP_CONFIG="pcap-config" ;;
-- *) LIBPCAP_CONFIG="$with_libpcap/bin/pcap-config" ;;
-+ ''|yes|check) LIBPCAP_CONFIG="pkg-config libpcap" ;;
-+ *) LIBPCAP_CONFIG="$with_libpcap/bin/pkg-config libpcap" ;;
- esac
- AS_IF([test "x$LIBPCAP_CONFIG" != "x"], [
- AC_MSG_CHECKING(libpcap $LIBPCAP_CONFIG >= $LIBPCAP_REQUIRED )
diff --git a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch b/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
deleted file mode 100644
index 3cf9e839..00000000
--- a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 74bff2509080912ea8abf1de8fd95fa2412b659a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@...>
-Date: Thu, 11 Apr 2013 11:37:25 +0200
-Subject: [PATCH] qemu: fix crash in qemuOpen
-
-commit 74bff2509080912ea8abf1de8fd95fa2412b659a from upsteam
-git://libvirt.org/libvirt.git
-
-If the path part of connection URI is not present, cfg is used
-unitialized.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=950855
----
- src/qemu/qemu_driver.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
-index 2c0d7d1..0d41e39 100644
---- a/src/qemu/qemu_driver.c
-+++ b/src/qemu/qemu_driver.c
-@@ -1026,6 +1026,7 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-+ cfg = virQEMUDriverGetConfig(qemu_driver);
- if (conn->uri->path == NULL) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("no QEMU URI path given, try %s"),
-@@ -1033,7 +1034,6 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-- cfg = virQEMUDriverGetConfig(qemu_driver);
- if (cfg->privileged) {
- if (STRNEQ(conn->uri->path, "/system") &&
- STRNEQ(conn->uri->path, "/session")) {
---
-1.7.1
-
diff --git a/recipes-extended/libvirt/libvirt/runptest.patch b/recipes-extended/libvirt/libvirt/runptest.patch
deleted file mode 100644
index f6bc7736..00000000
--- a/recipes-extended/libvirt/libvirt/runptest.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From d210838a4433dd254c1a11b08b804ebe9ff5f378 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 10:20:47 +0800
-Subject: [PATCH] Add 'install-ptest' rule
-
-Change TESTS_ENVIRONMENT to allow running outside build dir.
-
-Upstream-status: Pending
-Signed-off-by: Mihaela Sendrea <mihaela.sendrea@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Allow separate source and build dirs]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ZH: add missing test_helper files]
-Signed-off-by: He Zhe <zhe.he@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 68 +++++++++++++++++++++++++++++++++++++++++------
- 1 file changed, 60 insertions(+), 8 deletions(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index ada5b8f..4a808dd 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -28,11 +28,13 @@ AM_CPPFLAGS = \
-
- WARN_CFLAGS += $(RELAXED_FRAME_LIMIT_CFLAGS)
-
-+PTEST_DIR ?= $(libdir)/libvirt/ptest
-+
- AM_CFLAGS = \
-- -Dabs_builddir="\"$(abs_builddir)\"" \
-- -Dabs_top_builddir="\"$(abs_top_builddir)\"" \
-- -Dabs_srcdir="\"$(abs_srcdir)\"" \
-- -Dabs_top_srcdir="\"$(abs_top_srcdir)\"" \
-+ -Dabs_builddir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_builddir="\"$(PTEST_DIR)\"" \
-+ -Dabs_srcdir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_srcdir="\"$(PTEST_DIR)\"" \
- $(LIBXML_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(LIBNL_CFLAGS) \
-@@ -474,10 +476,10 @@ TESTS = $(test_programs) \
-
- VIR_TEST_EXPENSIVE ?= $(VIR_TEST_EXPENSIVE_DEFAULT)
- TESTS_ENVIRONMENT = \
-- abs_top_builddir="$(abs_top_builddir)" \
-- abs_top_srcdir="$(abs_top_srcdir)" \
-- abs_builddir="$(abs_builddir)" \
-- abs_srcdir="$(abs_srcdir)" \
-+ abs_top_builddir="$(PTEST_DIR)" \
-+ abs_top_srcdir="$(PTEST_DIR)" \
-+ abs_builddir="$(PTEST_DIR)/tests" \
-+ abs_srcdir="$(PTEST_DIR)/tests" \
- LIBVIRT_AUTOSTART=0 \
- LC_ALL=C \
- VIR_TEST_EXPENSIVE=$(VIR_TEST_EXPENSIVE) \
-@@ -1547,4 +1549,54 @@ else ! WITH_LINUX
- EXTRA_DIST += virscsitest.c
- endif ! WITH_LINUX
-
-+buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-+
-+PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+
-+install-ptest:
-+ list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
-+ install -d $(DEST_DIR)/tools
-+ @(if [ -d ../tools/.libs ] ; then cd ../tools/.libs; fi; \
-+ install * $(DEST_DIR)/tools)
-+ install -d $(DEST_DIR)/src/network
-+ cp $(top_srcdir)/src/network/*.xml $(DEST_DIR)/src/network
-+ install -d $(DEST_DIR)/src/cpu_map
-+ cp $(top_srcdir)/src/cpu_map/*.xml $(DEST_DIR)/src/cpu_map
-+ install ../src/libvirt_iohelper $(DEST_DIR)/src
-+ install -D ../src/libvirtd $(DEST_DIR)/src/libvirtd
-+ install -d $(DEST_DIR)/src/remote
-+ install -D $(top_srcdir)/../build/src/remote/libvirtd.conf $(DEST_DIR)/src/remote/libvirtd.conf
-+ install -d $(DEST_DIR)/src/remote/.libs
-+ @(if [ -d ../src/remote/.libs ] ; then cd ../src/remote/.libs; fi; \
-+ install * $(DEST_DIR)/src/remote/.libs)
-+ install -d $(DEST_DIR)/src/.libs
-+ @(if [ -d ../src/.libs ] ; then cd ../src/.libs; fi; \
-+ install * $(DEST_DIR)/src/.libs)
-+ install -d $(DEST_DIR)/docs/schemas
-+ cp $(top_srcdir)/docs/schemas/*.rng $(DEST_DIR)/docs/schemas
-+ cp -r $(top_srcdir)/build-aux $(DEST_DIR)
-+ install -d $(DEST_DIR)/examples/xml
-+ cp -r $(top_srcdir)/examples/xml/test $(DEST_DIR)/examples/xml
-+ install -d $(DEST_DIR)/tests/.libs
-+ find . -type d -name "*xml2xml*" -exec cp -r {} $(DEST_DIR)/tests \;
-+ find . -type d -name "*data" -exec cp -r {} $(DEST_DIR)/tests \;
-+ @(for file in $(PTESTS); do \
-+ if [ -f .libs/$$file ]; then \
-+ install .libs/$$file $(DEST_DIR)/tests; \
-+ elif [ -f $(srcdir)/$$file ]; then \
-+ install $(srcdir)/$$file $(DEST_DIR)/tests; \
-+ else \
-+ install $(builddir)/$$file $(DEST_DIR)/tests; \
-+ fi; \
-+ done;)
-+ @(if [ -d .libs ]; then install .libs/*.so $(DEST_DIR)/tests/.libs; fi;)
-+ cp ../config.h $(DEST_DIR)
-+ cp Makefile $(DEST_DIR)/tests
-+ sed -i -e 's/^Makefile:/_Makefile:/' $(DEST_DIR)/tests/Makefile
-+ cp ../Makefile $(DEST_DIR)
-+ sed -i -e 's|^Makefile:|_Makefile:|' $(DEST_DIR)/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/tests/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/Makefile
-+ sed -i -e 's|^\(.*\.log:\) \(.*EXEEXT.*\)|\1|g' $(DEST_DIR)/tests/Makefile
-+
- CLEANFILES = *.cov *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda
diff --git a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch b/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
deleted file mode 100644
index bb500fde..00000000
--- a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 7dc21edd851b260485b432c096f8e90f6fa07778 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Tue, 7 May 2019 15:26:32 +0800
-Subject: [PATCH] tools: add libvirt-net-rpc to virt-host-validate when TLS is
- enabled
-
-When gnu-tls is enabled for libvirt references to virNetTLSInit are
-generated in libvirt. Any binaries linking against libvirt, must also
-link against libvirt-net-rpc which provides the implementation.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ddu: rebase to v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- examples/Makefile.am | 20 ++++++++++++++++++++
- tools/Makefile.am | 12 ++++++++++++
- 2 files changed, 32 insertions(+)
-
-diff --git a/examples/Makefile.am b/examples/Makefile.am
-index ad635bd..a94f41d 100644
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -74,6 +74,10 @@ LDADD = \
- $(top_builddir)/src/libvirt-admin.la \
- $(NULL)
-
-+if WITH_GNUTLS
-+LDADD += $(top_builddir)/src/libvirt-net-rpc.la
-+endif
-+
- noinst_PROGRAMS = \
- c/admin/client_close \
- c/admin/client_info \
-@@ -111,6 +115,22 @@ c_misc_openauth_SOURCES = c/misc/openauth.c
- examplesdir = $(docdir)/examples
-
- adminexamplesdir = $(examplesdir)/c/admin
-+
-+if WITH_GNUTLS
-+dominfo_info1_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+domsuspend_suspend_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+hellolibvirt_hellolibvirt_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+openauth_openauth_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+endif
-+
- adminexamples_DATA = $(ADMIN_EXAMPLES)
-
- domainexamplesdir = $(examplesdir)/c/domain
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 53df930..2a0a989 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -166,6 +166,12 @@ virt_host_validate_LDADD = \
- $(GLIB_LIBS) \
- $(NULL)
-
-+if WITH_GNUTLS
-+virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- virt_host_validate_CFLAGS = \
- $(AM_CFLAGS) \
- $(NULL)
-@@ -262,6 +268,12 @@ virt_admin_CFLAGS = \
- $(READLINE_CFLAGS)
- BUILT_SOURCES =
-
-+if WITH_GNUTLS
-+virsh_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- if WITH_WIN_ICON
- virsh_LDADD += virsh_win_icon.$(OBJEXT)
-
diff --git a/recipes-extended/libvirt/libvirt_6.3.0.bb b/recipes-extended/libvirt/libvirt_7.2.0.bb
similarity index 69%
rename from recipes-extended/libvirt/libvirt_6.3.0.bb
rename to recipes-extended/libvirt/libvirt_7.2.0.bb
index 41abb06f..790071d5 100644
--- a/recipes-extended/libvirt/libvirt_6.3.0.bb
+++ b/recipes-extended/libvirt/libvirt_7.2.0.bb
@@ -18,96 +18,42 @@ RDEPENDS_${PN} = "gettext-runtime"

RDEPENDS_${PN}-ptest += "make gawk perl bash"

-RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd"
+RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd ebtables"
RDEPENDS_libvirt-libvirtd_append_x86-64 = " dmidecode"
RDEPENDS_libvirt-libvirtd_append_x86 = " dmidecode"

#connman blocks the 53 port and libvirtd can't start its DNS service
RCONFLICTS_${PN}_libvirtd = "connman"

+HOSTTOOLS_NONFATAL += "getent"
+
SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.xz;name=libvirt \
- file://tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch \
file://libvirtd.sh \
file://libvirtd.conf \
file://dnsmasq.conf \
- file://runptest.patch \
file://run-ptest \
- file://libvirt-use-pkg-config-to-locate-libcap.patch \
- file://0001-to-fix-build-error.patch \
- file://install-missing-file.patch \
file://0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch \
- file://configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch \
- file://0001-build-drop-unnecessary-libgnu.la-reference.patch \
file://hook_support.py \
file://gnutls-helper.py \
+ file://0001-meson-add-options-to-explicit-binaries-path.patch \
"

-SRC_URI[libvirt.md5sum] = "1bd4435f77924f5ec9928b538daf4a02"
-SRC_URI[libvirt.sha256sum] = "74069438d34082336e99a88146349e21130552b96efc3b7c562f6878127996f5"
+SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3"
+SRC_URI[libvirt.sha256sum] = "01f459d0c7ba5009622a628dba1a026200e8f4a299fea783b936a71d7e0ed1d0"

-inherit autotools gettext update-rc.d pkgconfig ptest systemd useradd perlnative
+inherit meson gettext update-rc.d pkgconfig ptest systemd useradd perlnative
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "-r qemu; -r kvm"
USERADD_PARAM_${PN} = "-r -g qemu -G kvm qemu"

-# Override the default set in autotools.bbclass so that we will use relative pathnames
-# to our local m4 files. This prevents an "Argument list too long" error during configuration
-# if our project is in a directory with an absolute pathname of more than about 125 characters.
-#
-acpaths = "-I ./m4"
-
-CACHED_CONFIGUREVARS += "\
-ac_cv_path_XMLCATLOG=/usr/bin/xmlcatalog \
-ac_cv_path_AUGPARSE=/usr/bin/augparse \
-ac_cv_path_DMIDECODE=/usr/sbin/dmidecode \
-ac_cv_path_DNSMASQ=/usr/bin/dnsmasq \
-ac_cv_path_BRCTL=/usr/sbin/brctl \
-ac_cv_path_TC=/sbin/tc \
-ac_cv_path_UDEVADM=/sbin/udevadm \
-ac_cv_path_MODPROBE=/sbin/modprobe \
-ac_cv_path_IP_PATH=/bin/ip \
-ac_cv_path_IPTABLES_PATH=/usr/sbin/iptables \
-ac_cv_path_IP6TABLES_PATH=/usr/sbin/ip6tables \
-ac_cv_path_MOUNT=/bin/mount \
-ac_cv_path_UMOUNT=/bin/umount \
-ac_cv_path_MKFS=/usr/sbin/mkfs \
-ac_cv_path_SHOWMOUNT=/usr/sbin/showmount \
-ac_cv_path_PVCREATE=/usr/sbin/pvcreate \
-ac_cv_path_VGCREATE=/usr/sbin/vgcreate \
-ac_cv_path_LVCREATE=/usr/sbin/lvcreate \
-ac_cv_path_PVREMOVE=/usr/sbin/pvremove \
-ac_cv_path_VGREMOVE=/usr/sbin/vgremove \
-ac_cv_path_LVREMOVE=/usr/sbin/lvremove \
-ac_cv_path_LVCHANGE=/usr/sbin/lvchange \
-ac_cv_path_VGCHANGE=/usr/sbin/vgchange \
-ac_cv_path_VGSCAN=/usr/sbin/vgscan \
-ac_cv_path_PVS=/usr/sbin/pvs \
-ac_cv_path_VGS=/usr/sbin/vgs \
-ac_cv_path_LVS=/usr/sbin/lvs \
-ac_cv_path_PARTED=/usr/sbin/parted \
-ac_cv_path_DMSETUP=/usr/sbin/dmsetup"
-
-# Ensure that libvirt uses polkit rather than policykit, whether the host has
-# pkcheck installed or not, and ensure the path is correct per our config.
-CACHED_CONFIGUREVARS += "ac_cv_path_PKCHECK_PATH=${bindir}/pkcheck"
-
-# Some other possible paths we are not yet setting
-#ac_cv_path_RPCGEN=
-#ac_cv_path_XSLTPROC=
-#ac_cv_path_RADVD=
-#ac_cv_path_UDEVSETTLE=
-#ac_cv_path_EBTABLES_PATH=
-#ac_cv_path_PKG_CONFIG=
-#ac_cv_path_ac_pt_PKG_CONFIG
-#ac_cv_path_POLKIT_AUTH=
-#ac_cv_path_DTRACE=
-#ac_cv_path_ISCSIADM=
-#ac_cv_path_MSGFMT=
-#ac_cv_path_GMSGFMT=
-#ac_cv_path_XGETTEXT=
-#ac_cv_path_MSGMERGE=
-#ac_cv_path_SCRUB=
-#ac_cv_path_PYTHON=
+
+EXTRA_OEMESON += " \
+ -Dip6tables-path=/usr/sbin/ip6tables \
+ -Ddmidecode-path=/usr/sbin/dmidecode \
+ -Ddnsmasq-path=/usr/bin/dnsmasq \
+ -Diptables-path=/usr/sbin/iptables \
+ -Debtables-path=/sbin/ebtables \
+ "

ALLOW_EMPTY_${PN} = "1"

@@ -191,7 +137,7 @@ PRIVATE_LIBS_${PN}-ptest = " \
# full config
PACKAGECONFIG ??= "gnutls qemu yajl openvz vmware vbox esx iproute2 lxc test \
remote macvtap libvirtd netcf udev python ebtables \
- fuse iproute2 firewalld libpcap \
+ fuse firewalld libpcap \
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'libxl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'polkit', '', d)} \
@@ -208,37 +154,34 @@ PACKAGECONFIG_remove_armeb = "numactl"
# enable,disable,depends,rdepends
#
PACKAGECONFIG[gnutls] = ",,,gnutls-bin"
-PACKAGECONFIG[qemu] = "--with-qemu --with-qemu-user=qemu --with-qemu-group=qemu,--without-qemu,qemu,"
-PACKAGECONFIG[yajl] = "--with-yajl,--without-yajl,yajl,yajl"
-PACKAGECONFIG[libxl] = "--with-libxl=${STAGING_DIR_TARGET}/lib,--without-libxl,xen,"
-PACKAGECONFIG[openvz] = "--with-openvz,--without-openvz,,"
-PACKAGECONFIG[vmware] = "--with-vmware,--without-vmware,,"
-PACKAGECONFIG[vbox] = "--with-vbox,--without-vbox,,"
-PACKAGECONFIG[esx] = "--with-esx,--without-esx,,"
-PACKAGECONFIG[hyperv] = "--with-hyperv,--without-hyperv,,"
-PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit,polkit"
-PACKAGECONFIG[lxc] = "--with-lxc,--without-lxc, lxc,"
-PACKAGECONFIG[test] = "--with-test=yes,--with-test=no,,"
-PACKAGECONFIG[remote] = "--with-remote,--without-remote,,"
-PACKAGECONFIG[macvtap] = "--with-macvtap=yes,--with-macvtap=no,libnl,libnl"
-PACKAGECONFIG[libvirtd] = "--with-libvirtd,--without-libvirtd,,"
-PACKAGECONFIG[netcf] = "--with-netcf,--without-netcf,netcf,netcf"
-PACKAGECONFIG[dtrace] = "--with-dtrace,--without-dtrace,,"
-PACKAGECONFIG[udev] = "--with-udev --with-pciaccess,--without-udev,udev libpciaccess,"
-PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
-PACKAGECONFIG[ebtables] = "ac_cv_path_EBTABLES_PATH=/sbin/ebtables,ac_cv_path_EBTABLES_PATH=,ebtables,ebtables"
+PACKAGECONFIG[qemu] = "-Ddriver_qemu=enabled -Dqemu_user=qemu -Dqemu_group=qemu,-Dqemu=disabled,qemu,"
+PACKAGECONFIG[yajl] = "-Dyajl=enabled,-Dyajl=disabled,yajl,yajl"
+PACKAGECONFIG[libxl] = "-Dlibxl=${STAGING_DIR_TARGET}/lib,,xen,"
+PACKAGECONFIG[openvz] = "-Ddriver_openvz=enabled,-Ddriver_openvz=disabled,,"
+PACKAGECONFIG[vmware] = "-Ddriver_vmware=enabled,-Ddriver_vmware=disabled,,"
+PACKAGECONFIG[vbox] = "-Ddriver_vbox=enabled,-Ddriver_vbox=disabled,,"
+PACKAGECONFIG[esx] = "-Ddriver_esx=enabled,-Ddriver_esx=disabled,,"
+PACKAGECONFIG[hyperv] = "-Ddriver_hyperv=enabled,-Ddriver_hyperv=disabled,,"
+PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit,polkit"
+PACKAGECONFIG[lxc] = "-Ddriver_lxc=enabled,-Ddriver_lxc=disabled,lxc,"
+PACKAGECONFIG[test] = "-Ddriver_test=enabled,-Ddriver_test=disabled,,"
+PACKAGECONFIG[remote] = "-Ddriver_remote=enabled,-Ddriver_remote=disabled,,"
+PACKAGECONFIG[libvirtd] = "-Ddriver_libvirtd=enabled,-Ddriver_libvirtd=disabled,,"
+PACKAGECONFIG[netcf] = "-Dnetcf=enabled,-Dnetcf=disabled,netcf,netcf"
+PACKAGECONFIG[dtrace] = "-Ddtrace=enabled,-Ddtrace=disabled,,"
+PACKAGECONFIG[udev] = "-Dudev=enabled -Dpciaccess=enabled,-Dudev=disabled,udev libpciaccess,"
+PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux,"
PACKAGECONFIG[python] = ",,python3,"
-PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,cyrus-sasl"
-PACKAGECONFIG[iproute2] = "ac_cv_path_IP_PATH=/sbin/ip,ac_cv_path_IP_PATH=,iproute2,iproute2"
-PACKAGECONFIG[numactl] = "--with-numactl,--without-numactl,numactl,"
-PACKAGECONFIG[fuse] = "--with-fuse,--without-fuse,fuse,"
-PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit,"
-PACKAGECONFIG[libcap-ng] = "--with-capng,--without-capng,libcap-ng,"
-PACKAGECONFIG[wireshark] = "--with-wireshark-dissector,--without-wireshark-dissector,wireshark libwsutil,"
-PACKAGECONFIG[apparmor-profiles] = "--with-apparmor-profiles, --without-apparmor-profiles,"
-PACKAGECONFIG[firewalld] = "--with-firewalld, --without-firewalld,"
-PACKAGECONFIG[libpcap] = "--with-libpcap, --without-libpcap,libpcap,libpcap"
-PACKAGECONFIG[numad] = "--with-numad, --without-numad,"
+PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl,cyrus-sasl"
+PACKAGECONFIG[numactl] = "-Dnumactl=enabled,-Dnumactl=disabled,numactl,"
+PACKAGECONFIG[fuse] = "-Dfuse=enabled,-Dfuse=disabled,fuse,"
+PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit,"
+PACKAGECONFIG[libcap-ng] = "-Dcapng=enabled,-Dcapng=disabled,libcap-ng,"
+PACKAGECONFIG[wireshark] = "-Dwireshark_dissector=enabled,-Dwireshark_dissector=disabled,wireshark libwsutil,"
+PACKAGECONFIG[apparmor_profiles] = "-Dapparmor_profiles=true, -Dapparmor_profiles=false,"
+PACKAGECONFIG[firewalld] = "-Dfirewalld=enabled, -Dfirewalld=disabled,"
+PACKAGECONFIG[libpcap] = "-Dlibpcap=enabled, -Dlibpcap=disabled,libpcap,libpcap"
+PACKAGECONFIG[numad] = "-Dnumad=enabled, -Dnumad=disabled,"

# Enable the Python tool support
require libvirt-python.inc
@@ -255,7 +198,7 @@ do_compile() {

cd ${B}
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
- oe_runmake all
+ ninja all
}

do_install_prepend() {
@@ -278,6 +221,8 @@ do_install_append() {
fi

if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ mkdir -p ${D}/lib
+ mv ${D}/usr/lib/systemd ${D}/lib
# This variable is used by libvirtd.service to start libvirtd in the right mode
sed -i '/#LIBVIRTD_ARGS="--listen"/a LIBVIRTD_ARGS="--listen --daemon"' ${D}/${sysconfdir}/sysconfig/libvirtd

@@ -360,7 +305,7 @@ do_install_append() {
# connection via 127.0.0.1 is available out of box.
install -d ${D}/etc/pki/CA
install -d ${D}/etc/pki/libvirt/private
- install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
+ install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
install -m 0644 ${WORKDIR}/cakey.pem ${D}/${sysconfdir}/pki/libvirt/private/cakey.pem
install -m 0644 ${WORKDIR}/cacert.pem ${D}/${sysconfdir}/pki/CA/cacert.pem
install -m 0644 ${WORKDIR}/serverkey.pem ${D}/${sysconfdir}/pki/libvirt/private/serverkey.pem
@@ -376,10 +321,10 @@ do_install_append() {
chmod 4755 ${D}${bindir}/virt-login-shell
}

-EXTRA_OECONF += " \
- --with-init-script=systemd \
- --with-test-suite \
- --with-runstatedir=/run \
+EXTRA_OEMESON += " \
+ -Dinit_script=systemd \
+ -Drunstatedir=/run \
+ -Dtests=enabled \
"

# gcc9 end up mis-compiling qemuxml2argvtest.o with Og which then
@@ -392,11 +337,11 @@ EXTRA_OEMAKE = "BUILD_DIR=${B} DEST_DIR=${D}${PTEST_PATH} PTEST_DIR=${PTEST_PATH
PRIVATE_LIBS_${PN}-ptest_append = "libvirt-admin.so.0"

do_compile_ptest() {
- oe_runmake -C tests buildtest-TESTS
+ ninja -C tests buildtest-TESTS
}

do_install_ptest() {
- oe_runmake -C tests install-ptest
+ ninja -C tests install-ptest

find ${S}/tests -maxdepth 1 -type d -exec cp -r {} ${D}${PTEST_PATH}/tests/ \;

--
2.27.0




--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Re: [PATCH] libvirt: uprev v6.3 -> v7.2

Bruce Ashfield
 

On Fri, Apr 9, 2021 at 3:07 PM Bruce Ashfield <bruce.ashfield@...> wrote:

On Wed, Apr 7, 2021 at 5:23 AM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/7/21 8:35 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

In message: [meta-virtualization][PATCH] libvirt: uprev v6.3 -> v7.2
on 02/04/2021 Xu, Yanfei wrote:

From: Yanfei Xu <yanfei.xu@...>

This upgrade spans 9 small release. The detailed realese logs could
refer to: https://gitlab.com/libvirt/libvirt/-/blob/master/NEWS.rst

Libvirt's buildsystem has changed to meson, So this upgrade drop some
obsolete patches applied to makefile.

Due to libvirt's meson currently doesn't support to explicit the runtime
binaries path. I made a patch which is
0001-meson-add-options-to-explicit-binaries-path.patch for solving the
problem.
We've tranditionally had runtime issues each time libvirt was
uprev'd.
Yes. I saw there were some ancient patches...


Can you summarize the testing that you did after the upgrade ?
OK. I did the testing with our libvirt testcase and ovs testcase.
The summary is as follow:

libvirt_test (keyword: ) test results:
*1 Run libvirt_test testing(do_test1) PASS
*2 Check result (virsh_local_capabilities) PASS
*3 Check result (virsh_local_domcapabilities) PASS
*4 Check result (virsh_local_freecell) PASS
*5 Check result (virsh_local_help) PASS
*6 Check result (virsh_local_hostname) PASS
*7 Check result (virsh_local_iface-begin) PASS
*8 Check result (virsh_local_iface-commit) PASS
*9 Check result (virsh_local_iface-list) PASS
*10 Check result (virsh_local_list) PASS
*11 Check result (virsh_local_maxvcpus) PASS
*12 Check result (virsh_local_net-list) PASS
*13 Check result (virsh_local_nodecpumap) PASS
*14 Check result (virsh_local_nodecpustats) PASS
*15 Check result (virsh_local_nodedev-list) PASS
*16 Check result (virsh_local_nodeinfo) PASS
*17 Check result (virsh_local_node-memory-tune) PASS
*18 Check result (virsh_local_nodememstats) PASS
*19 Check result (virsh_local_nwfilter-binding-list) PASS
*20 Check result (virsh_local_nwfilter-list) PASS
*21 Check result (virsh_local_pool-capabilities) PASS
*22 Check result (virsh_local_pool-list) PASS
*23 Check result (virsh_local_pwd) PASS
*24 Check result (virsh_local_secret-list) PASS
*25 Check result (virsh_local_sysinfo) PASS
*26 Check result (virsh_local_uri) PASS
*27 Check result (virsh_local_version) PASS

openvswitch_vm2vm (keyword: qemux86) test results:
*1 openvswitch_vm2vm testing(do_test1) PASS
*2 Check result (ovs_vm2vm_boot_guest1) PASS
*3 Check result (ovs_vm2vm_boot_guest2) PASS
*4 Check result (ovs_vm2vm_netperf_test) PASS
*5 Check result (ovs_vm2vm_destroy_guest1) PASS
*6 Check result (ovs_vm2vm_destroy_guest2) PASS
*7 check testcase call trace(do_check_call_trace) PASS
Thanks, this helps.

The patch came through corrupted, and I fixed it up locally and then
added your test summary to the commit.

But it failed to build in my configuration:

| Library xentoollog found: YES
| Header <libxl.h> has symbol "LIBXL_DOMAIN_TYPE_PVH" : YES
| Checking if "lxc support" compiles: YES
|
| ../libvirt-7.2.0/meson.build:1725:61: ERROR: Program or command
'getent' not found or not executable
|
I realize that HOSTTOOLS_NONFATAL += "getent" is set, but it doesn't
help if meson is failing config.

Bruce


I'm building tip of tree for everything, qemux86-64

Bruce



Thanks,
Yanfei


Bruce


Signed-off-by: Yanfei Xu <yanfei.xu@...>
---
recipes-extended/libvirt/libvirt-python.inc | 4 +-
...drop-unnecessary-libgnu.la-reference.patch | 31 ----
...dd-options-to-explicit-binaries-path.patch | 86 ++++++++++
.../libvirt/0001-to-fix-build-error.patch | 47 -----
...-search-for-rpc-rpc.h-in-the-sysroot.patch | 34 ----
.../libvirt/install-missing-file.patch | 50 ------
...read-safety-in-lxc-callback-handling.patch | 63 -------
...virt-use-pkg-config-to-locate-libcap.patch | 43 -----
.../libvirt/qemu-fix-crash-in-qemuOpen.patch | 39 -----
.../libvirt/libvirt/runptest.patch | 116 -------------
...t-net-rpc-to-virt-host-validate-when.patch | 91 ----------
.../{libvirt_6.3.0.bb => libvirt_7.2.0.bb} | 161 ++++++------------
12 files changed, 141 insertions(+), 624 deletions(-)
delete mode 100644 recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
create mode 100644 recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
delete mode 100644 recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
delete mode 100644 recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
delete mode 100644 recipes-extended/libvirt/libvirt/install-missing-file.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
delete mode 100644 recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
delete mode 100644 recipes-extended/libvirt/libvirt/runptest.patch
delete mode 100644 recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
rename recipes-extended/libvirt/{libvirt_6.3.0.bb => libvirt_7.2.0.bb} (69%)

diff --git a/recipes-extended/libvirt/libvirt-python.inc b/recipes-extended/libvirt/libvirt-python.inc
index bcd76572..0c661af8 100644
--- a/recipes-extended/libvirt/libvirt-python.inc
+++ b/recipes-extended/libvirt/libvirt-python.inc
@@ -17,8 +17,8 @@ FILES_${PN}-python = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"

SRC_URI += "http://libvirt.org/sources/python/libvirt-python-${PV}.tar.gz;name=libvirt_python"

-SRC_URI[libvirt_python.md5sum] = "4cf898350ee9a47f94986d402c153bdb"
-SRC_URI[libvirt_python.sha256sum] = "c772421ecc144f098f4ab15db700c62db9b9e6e76b876217edcfd62e9ce02750"
+SRC_URI[libvirt_python.md5sum] = "19bf22414a43d358581b9259b52047a7"
+SRC_URI[libvirt_python.sha256sum] = "c0c3bac54c55622e17927b09cd9843869600d71842fb072c99491fe2608dcee7"

export LIBVIRT_API_PATH = "${S}/docs/libvirt-api.xml"
export LIBVIRT_CFLAGS = "-I${S}/include"
diff --git a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch b/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
deleted file mode 100644
index f02a5d64..00000000
--- a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 30a056069cb35804434fb036e51ae97f33c02025 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Sat, 7 Mar 2020 21:36:27 -0500
-Subject: [PATCH] build: drop unnecessary libgnu.la reference
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-
----
- tools/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 2a0a989..93fe283 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -168,7 +168,6 @@ virt_host_validate_LDADD = \
-
- if WITH_GNUTLS
- virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
-@@ -270,7 +269,6 @@ BUILT_SOURCES =
-
- if WITH_GNUTLS
- virsh_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
diff --git a/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
new file mode 100644
index 00000000..4c545d4a
--- /dev/null
+++ b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
@@ -0,0 +1,86 @@
+From 2e061ccf093063267277893cd5cacc9e7188c629 Mon Sep 17 00:00:00 2001
+From: Yanfei Xu <yanfei.xu@...>
+Date: Thu, 25 Mar 2021 16:24:04 +0800
+Subject: [PATCH] meson: add options to explicit binaries path
+
+In cross compile evironment, path of binaries is possiblely different
+between target and host. Let's add options to explicit binaries path
+to solve this problem.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yanfei Xu <yanfei.xu@...>
+---
+ meson.build | 18 ++++++++++++------
+ meson_options.txt | 23 +++++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 369548f127..6c93be8e4b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -943,18 +943,24 @@ optional_programs = [
+ 'udevadm',
+ ]
+
++# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
++# /usr/sbin, /sbin, and fall back to the default from middle column.
+ foreach name : optional_programs
+- prog = find_program(name, required: false, dirs: libvirt_sbin_path)
+ varname = name.underscorify()
+- if prog.found()
+- prog_path = prog.path()
++ prog_path = get_option(name + '-path')
++ if prog_path != ''
++ message('Using @1@ for @0@'.format(name, prog_path))
+ else
+- prog_path = name
++ prog = find_program(name, required: false, dirs: libvirt_sbin_path)
++ if prog.found()
++ prog_path = prog.path()
++ else
++ prog_path = name
++ endif
++ set_variable('@0@_prog'.format(varname), prog)
+ endif
+-
+ conf.set_quoted(varname.to_upper(), prog_path)
+ conf.set_quoted('@0@_PATH'.format(varname.to_upper()), prog_path)
+- set_variable('@0@_prog'.format(varname), prog)
+ endforeach
+
+
+diff --git a/meson_options.txt b/meson_options.txt
+index e5d79c2b6b..f06f46c7bb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -102,3 +102,26 @@ option('numad', type: 'feature', value: 'auto', description: 'use numad to manag
+ option('pm_utils', type: 'feature', value: 'auto', description: 'use pm-utils for power management')
+ option('sysctl_config', type: 'feature', value: 'auto', description: 'Whether to install sysctl configs')
+ option('tls_priority', type: 'string', value: 'NORMAL', description: 'set the default TLS session priority string')
++
++
++option('addr2line-path', type : 'string', description : 'path to addr2line')
++option('augparse-path', type : 'string', description : 'path to augparse')
++option('dmidecode-path', type : 'string', description : 'path to dmidecode')
++option('dnsmasq-path', type : 'string', description : 'path to dnsmasq')
++option('ebtables-path', type : 'string', description : 'path to ebtables')
++option('flake8-path', type : 'string', description : 'path to flake8')
++option('ip-path', type : 'string', description : 'path to ip')
++option('ip6tables-path', type : 'string', description : 'path to ip6tables')
++option('iptables-path', type : 'string', description : 'path to iptables')
++option('iscsiadm-path', type : 'string', description : 'path to iscsiadm')
++option('mdevctl-path', type : 'string', description : 'path to mdevctl')
++option('mm-ctl-path', type : 'string', description : 'path to mm-ctl')
++option('modprobe-path', type : 'string', description : 'path to modprobe')
++option('ovs-vsctl-path', type : 'string', description : 'path to ovs-vsctl')
++option('pdwtags-path', type : 'string', description : 'path to pdwtags')
++option('radvd-path', type : 'string', description : 'path to radvd')
++option('rmmod-path', type : 'string', description : 'path to rmmod')
++option('scrub-path', type : 'string', description : 'path to scrub')
++option('tc-path', type : 'string', description : 'path to tc')
++option('udevadm-path', type : 'string', description : 'path to udevadm')
++
+--
+2.27.0
+
diff --git a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch b/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
deleted file mode 100644
index b0148e5c..00000000
--- a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 3566bcacaa6408fb8f655d1749a20b2f30e0c765 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@...>
-Date: Fri, 31 Jul 2015 03:17:07 +0900
-Subject: [PATCH] to fix build error
-
-The error likes as following
-
-| Generating internals/command.html.tmp
-| /bin/sh: line 3: internals/command.html.tmp: No such file or directory
-| rm: Generating internals/locking.html.tmp
-| cannot remove `internals/command.html.tmp': No such file or directory
-| make[3]: *** [internals/command.html.tmp] Error 1
-| make[3]: *** Waiting for unfinished jobs....
-
-Signed-off-by: Lei Maohui <leimaohui@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- docs/Makefile.am | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index ce3d296..2c8180f 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -366,7 +366,7 @@ EXTRA_DIST= \
- aclperms.htmlinc \
- $(schema_DATA)
-
--acl_generated = aclperms.htmlinc
-+acl.html:: $(srcdir)/aclperms.htmlinc
-
- aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \
- $(top_srcdir)/scripts/genaclperms.py Makefile.am
-@@ -432,8 +432,7 @@ manpages/%.html.in: manpages/%.rst
- $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
- $(RST2HTML) --strict $< > $@ || { rm $@ && exit 1; }
-
--%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
-- $(acl_generated)
-+%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl
- $(AM_V_GEN)name=`echo $@ | sed -e 's/.tmp//'`; \
- genhtmlin=`echo $@ | sed -e 's/.tmp/.in/'`; \
- rst=`echo $@ | sed -e 's/.html.tmp/.rst/'`; \
diff --git a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch b/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
deleted file mode 100644
index 395d5610..00000000
--- a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 79f5975db01af0599860ccca7ef44b0e27105a04 Mon Sep 17 00:00:00 2001
-From: Mark Asselstine <mark.asselstine@...>
-Date: Thu, 10 May 2018 12:05:04 -0400
-Subject: [PATCH] configure.ac: search for rpc/rpc.h in the sysroot
-
-We want to avoid host contamination and use the sysroot as the base
-directory for our search so add the '=' the the '-I' when searching
-for libtirpc's rpc.h header.
-
-Upstream-Status: Inappropriate [old release]
-
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-xdr.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/m4/virt-xdr.m4 b/m4/virt-xdr.m4
-index 8375415..12b51f7 100644
---- a/m4/virt-xdr.m4
-+++ b/m4/virt-xdr.m4
-@@ -30,10 +30,10 @@ AC_DEFUN([LIBVIRT_CHECK_XDR], [
- ])
- with_xdr="yes"
-
-- dnl Recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
-+ dnl Recent glibc requires -I=/usr/include/tirpc for <rpc/rpc.h>
- old_CFLAGS=$CFLAGS
- AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
-- for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
-+ for add_CFLAGS in '' '-I=/usr/include/tirpc' 'missing'; do
- if test x"$add_CFLAGS" = xmissing; then
- lv_cv_xdr_cflags=missing; break
- fi
diff --git a/recipes-extended/libvirt/libvirt/install-missing-file.patch b/recipes-extended/libvirt/libvirt/install-missing-file.patch
deleted file mode 100644
index 6aa36df8..00000000
--- a/recipes-extended/libvirt/libvirt/install-missing-file.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From aa75f5136066d239d48a21373b3d96ee12378e8d Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 17:24:17 +0800
-Subject: [PATCH] Install missing conf file
-
-openvzutilstest.conf file is needed by openvzutilstest test.
-
-Upstream-Status: Inapproriate
-
-Signed-off-by: Catalin Enache <catalin.enache@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 4a808dd..0c3e799 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -173,6 +173,7 @@ EXTRA_DIST = \
- $(NULL)
-
- test_helpers = commandhelper ssh
-+test_misc =
- test_programs = virshtest sockettest \
- virhostcputest virbuftest \
- commandtest seclabeltest \
-@@ -311,6 +312,7 @@ endif WITH_LXC
-
- if WITH_OPENVZ
- test_programs += openvzutilstest
-+test_misc += openvzutilstest.conf
- endif WITH_OPENVZ
-
- if WITH_ESX
-@@ -1551,7 +1553,7 @@ endif ! WITH_LINUX
-
- buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-
--PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+PTESTS = $(TESTS) $(test_helpers) $(test_misc) test-lib.sh virschematest
-
- install-ptest:
- list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
diff --git a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch b/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
deleted file mode 100644
index 558d5ef6..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From ad5d9cee87357f9f38f62583119606ef95ba10df Mon Sep 17 00:00:00 2001
-From: Bogdan Purcareata <bogdan.purcareata@...>
-Date: Fri, 24 May 2013 16:46:00 +0300
-Subject: [PATCH] Fix thread safety in LXC callback handling
-
-Signed-off-by: Bogdan Purcareata <bogdan.purcareata@...>
----
- src/lxc/lxc_process.c | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
-index aaa81a7..0eadc67 100644
---- a/src/lxc/lxc_process.c
-+++ b/src/lxc/lxc_process.c
-@@ -609,8 +609,13 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- virLXCProtocolExitStatus status,
- virDomainObjPtr vm)
- {
-+ virLXCDriverPtr driver = lxc_driver;
- virLXCDomainObjPrivatePtr priv = vm->privateData;
-
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
- switch (status) {
- case VIR_LXC_PROTOCOL_EXIT_STATUS_SHUTDOWN:
- priv->stopReason = VIR_DOMAIN_EVENT_STOPPED_SHUTDOWN;
-@@ -628,6 +633,8 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- }
- VIR_DEBUG("Domain shutoff reason %d (from status %d)",
- priv->stopReason, status);
-+
-+ virObjectUnlock(vm);
- }
-
- /* XXX a little evil */
-@@ -636,12 +643,21 @@ static void virLXCProcessMonitorInitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- pid_t initpid,
- virDomainObjPtr vm)
- {
-- virLXCDomainObjPrivatePtr priv = vm->privateData;
-+ virLXCDriverPtr driver = lxc_driver;
-+ virLXCDomainObjPrivatePtr priv;
-+
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
-+ priv = vm->privateData;
- priv->initpid = initpid;
- virDomainAuditInit(vm, initpid);
-
- if (virDomainSaveStatus(lxc_driver->caps, lxc_driver->stateDir, vm) < 0)
- VIR_WARN("Cannot update XML with PID for LXC %s", vm->def->name);
-+
-+ virObjectUnlock(vm);
- }
-
- static virLXCMonitorCallbacks monitorCallbacks = {
---
-1.7.11.7
-
diff --git a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch b/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
deleted file mode 100644
index 87b55915..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 94bd514e1b6e602a48285db94e65050f8f0c2585 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Wed, 8 Apr 2015 13:03:03 -0400
-Subject: [PATCH] libvirt: use pkg-config to locate libcap
-
-libvirt wants to use pcap-config to locate the exisence and location
-of libpcap. oe-core stubs this script and replaces it with pkg-config,
-which can lead to the host pcap-config triggering and either breaking
-the build or introducing host contamination.
-
-To fix this issue, we patch configure to use 'pkg-config libcap' to
-locate the correct libraries.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[MA: Update to apply agains v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-libpcap.m4 | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/m4/virt-libpcap.m4 b/m4/virt-libpcap.m4
-index 605c2fd..e0ab018 100644
---- a/m4/virt-libpcap.m4
-+++ b/m4/virt-libpcap.m4
-@@ -23,14 +23,14 @@ AC_DEFUN([LIBVIRT_ARG_LIBPCAP], [
-
- AC_DEFUN([LIBVIRT_CHECK_LIBPCAP], [
- LIBPCAP_REQUIRED="1.5.0"
-- LIBPCAP_CONFIG="pcap-config"
-+ LIBPCAP_CONFIG="pkg-config libpcap"
- LIBPCAP_CFLAGS=""
- LIBPCAP_LIBS=""
-
- if test "x$with_libpcap" != "xno"; then
- case $with_libpcap in
-- ''|yes|check) LIBPCAP_CONFIG="pcap-config" ;;
-- *) LIBPCAP_CONFIG="$with_libpcap/bin/pcap-config" ;;
-+ ''|yes|check) LIBPCAP_CONFIG="pkg-config libpcap" ;;
-+ *) LIBPCAP_CONFIG="$with_libpcap/bin/pkg-config libpcap" ;;
- esac
- AS_IF([test "x$LIBPCAP_CONFIG" != "x"], [
- AC_MSG_CHECKING(libpcap $LIBPCAP_CONFIG >= $LIBPCAP_REQUIRED )
diff --git a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch b/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
deleted file mode 100644
index 3cf9e839..00000000
--- a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 74bff2509080912ea8abf1de8fd95fa2412b659a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@...>
-Date: Thu, 11 Apr 2013 11:37:25 +0200
-Subject: [PATCH] qemu: fix crash in qemuOpen
-
-commit 74bff2509080912ea8abf1de8fd95fa2412b659a from upsteam
-git://libvirt.org/libvirt.git
-
-If the path part of connection URI is not present, cfg is used
-unitialized.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=950855
----
- src/qemu/qemu_driver.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
-index 2c0d7d1..0d41e39 100644
---- a/src/qemu/qemu_driver.c
-+++ b/src/qemu/qemu_driver.c
-@@ -1026,6 +1026,7 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-+ cfg = virQEMUDriverGetConfig(qemu_driver);
- if (conn->uri->path == NULL) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("no QEMU URI path given, try %s"),
-@@ -1033,7 +1034,6 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-- cfg = virQEMUDriverGetConfig(qemu_driver);
- if (cfg->privileged) {
- if (STRNEQ(conn->uri->path, "/system") &&
- STRNEQ(conn->uri->path, "/session")) {
---
-1.7.1
-
diff --git a/recipes-extended/libvirt/libvirt/runptest.patch b/recipes-extended/libvirt/libvirt/runptest.patch
deleted file mode 100644
index f6bc7736..00000000
--- a/recipes-extended/libvirt/libvirt/runptest.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From d210838a4433dd254c1a11b08b804ebe9ff5f378 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 10:20:47 +0800
-Subject: [PATCH] Add 'install-ptest' rule
-
-Change TESTS_ENVIRONMENT to allow running outside build dir.
-
-Upstream-status: Pending
-Signed-off-by: Mihaela Sendrea <mihaela.sendrea@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Allow separate source and build dirs]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ZH: add missing test_helper files]
-Signed-off-by: He Zhe <zhe.he@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 68 +++++++++++++++++++++++++++++++++++++++++------
- 1 file changed, 60 insertions(+), 8 deletions(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index ada5b8f..4a808dd 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -28,11 +28,13 @@ AM_CPPFLAGS = \
-
- WARN_CFLAGS += $(RELAXED_FRAME_LIMIT_CFLAGS)
-
-+PTEST_DIR ?= $(libdir)/libvirt/ptest
-+
- AM_CFLAGS = \
-- -Dabs_builddir="\"$(abs_builddir)\"" \
-- -Dabs_top_builddir="\"$(abs_top_builddir)\"" \
-- -Dabs_srcdir="\"$(abs_srcdir)\"" \
-- -Dabs_top_srcdir="\"$(abs_top_srcdir)\"" \
-+ -Dabs_builddir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_builddir="\"$(PTEST_DIR)\"" \
-+ -Dabs_srcdir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_srcdir="\"$(PTEST_DIR)\"" \
- $(LIBXML_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(LIBNL_CFLAGS) \
-@@ -474,10 +476,10 @@ TESTS = $(test_programs) \
-
- VIR_TEST_EXPENSIVE ?= $(VIR_TEST_EXPENSIVE_DEFAULT)
- TESTS_ENVIRONMENT = \
-- abs_top_builddir="$(abs_top_builddir)" \
-- abs_top_srcdir="$(abs_top_srcdir)" \
-- abs_builddir="$(abs_builddir)" \
-- abs_srcdir="$(abs_srcdir)" \
-+ abs_top_builddir="$(PTEST_DIR)" \
-+ abs_top_srcdir="$(PTEST_DIR)" \
-+ abs_builddir="$(PTEST_DIR)/tests" \
-+ abs_srcdir="$(PTEST_DIR)/tests" \
- LIBVIRT_AUTOSTART=0 \
- LC_ALL=C \
- VIR_TEST_EXPENSIVE=$(VIR_TEST_EXPENSIVE) \
-@@ -1547,4 +1549,54 @@ else ! WITH_LINUX
- EXTRA_DIST += virscsitest.c
- endif ! WITH_LINUX
-
-+buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-+
-+PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+
-+install-ptest:
-+ list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
-+ install -d $(DEST_DIR)/tools
-+ @(if [ -d ../tools/.libs ] ; then cd ../tools/.libs; fi; \
-+ install * $(DEST_DIR)/tools)
-+ install -d $(DEST_DIR)/src/network
-+ cp $(top_srcdir)/src/network/*.xml $(DEST_DIR)/src/network
-+ install -d $(DEST_DIR)/src/cpu_map
-+ cp $(top_srcdir)/src/cpu_map/*.xml $(DEST_DIR)/src/cpu_map
-+ install ../src/libvirt_iohelper $(DEST_DIR)/src
-+ install -D ../src/libvirtd $(DEST_DIR)/src/libvirtd
-+ install -d $(DEST_DIR)/src/remote
-+ install -D $(top_srcdir)/../build/src/remote/libvirtd.conf $(DEST_DIR)/src/remote/libvirtd.conf
-+ install -d $(DEST_DIR)/src/remote/.libs
-+ @(if [ -d ../src/remote/.libs ] ; then cd ../src/remote/.libs; fi; \
-+ install * $(DEST_DIR)/src/remote/.libs)
-+ install -d $(DEST_DIR)/src/.libs
-+ @(if [ -d ../src/.libs ] ; then cd ../src/.libs; fi; \
-+ install * $(DEST_DIR)/src/.libs)
-+ install -d $(DEST_DIR)/docs/schemas
-+ cp $(top_srcdir)/docs/schemas/*.rng $(DEST_DIR)/docs/schemas
-+ cp -r $(top_srcdir)/build-aux $(DEST_DIR)
-+ install -d $(DEST_DIR)/examples/xml
-+ cp -r $(top_srcdir)/examples/xml/test $(DEST_DIR)/examples/xml
-+ install -d $(DEST_DIR)/tests/.libs
-+ find . -type d -name "*xml2xml*" -exec cp -r {} $(DEST_DIR)/tests \;
-+ find . -type d -name "*data" -exec cp -r {} $(DEST_DIR)/tests \;
-+ @(for file in $(PTESTS); do \
-+ if [ -f .libs/$$file ]; then \
-+ install .libs/$$file $(DEST_DIR)/tests; \
-+ elif [ -f $(srcdir)/$$file ]; then \
-+ install $(srcdir)/$$file $(DEST_DIR)/tests; \
-+ else \
-+ install $(builddir)/$$file $(DEST_DIR)/tests; \
-+ fi; \
-+ done;)
-+ @(if [ -d .libs ]; then install .libs/*.so $(DEST_DIR)/tests/.libs; fi;)
-+ cp ../config.h $(DEST_DIR)
-+ cp Makefile $(DEST_DIR)/tests
-+ sed -i -e 's/^Makefile:/_Makefile:/' $(DEST_DIR)/tests/Makefile
-+ cp ../Makefile $(DEST_DIR)
-+ sed -i -e 's|^Makefile:|_Makefile:|' $(DEST_DIR)/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/tests/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/Makefile
-+ sed -i -e 's|^\(.*\.log:\) \(.*EXEEXT.*\)|\1|g' $(DEST_DIR)/tests/Makefile
-+
- CLEANFILES = *.cov *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda
diff --git a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch b/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
deleted file mode 100644
index bb500fde..00000000
--- a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 7dc21edd851b260485b432c096f8e90f6fa07778 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Tue, 7 May 2019 15:26:32 +0800
-Subject: [PATCH] tools: add libvirt-net-rpc to virt-host-validate when TLS is
- enabled
-
-When gnu-tls is enabled for libvirt references to virNetTLSInit are
-generated in libvirt. Any binaries linking against libvirt, must also
-link against libvirt-net-rpc which provides the implementation.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ddu: rebase to v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- examples/Makefile.am | 20 ++++++++++++++++++++
- tools/Makefile.am | 12 ++++++++++++
- 2 files changed, 32 insertions(+)
-
-diff --git a/examples/Makefile.am b/examples/Makefile.am
-index ad635bd..a94f41d 100644
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -74,6 +74,10 @@ LDADD = \
- $(top_builddir)/src/libvirt-admin.la \
- $(NULL)
-
-+if WITH_GNUTLS
-+LDADD += $(top_builddir)/src/libvirt-net-rpc.la
-+endif
-+
- noinst_PROGRAMS = \
- c/admin/client_close \
- c/admin/client_info \
-@@ -111,6 +115,22 @@ c_misc_openauth_SOURCES = c/misc/openauth.c
- examplesdir = $(docdir)/examples
-
- adminexamplesdir = $(examplesdir)/c/admin
-+
-+if WITH_GNUTLS
-+dominfo_info1_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+domsuspend_suspend_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+hellolibvirt_hellolibvirt_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+openauth_openauth_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+endif
-+
- adminexamples_DATA = $(ADMIN_EXAMPLES)
-
- domainexamplesdir = $(examplesdir)/c/domain
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 53df930..2a0a989 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -166,6 +166,12 @@ virt_host_validate_LDADD = \
- $(GLIB_LIBS) \
- $(NULL)
-
-+if WITH_GNUTLS
-+virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- virt_host_validate_CFLAGS = \
- $(AM_CFLAGS) \
- $(NULL)
-@@ -262,6 +268,12 @@ virt_admin_CFLAGS = \
- $(READLINE_CFLAGS)
- BUILT_SOURCES =
-
-+if WITH_GNUTLS
-+virsh_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- if WITH_WIN_ICON
- virsh_LDADD += virsh_win_icon.$(OBJEXT)
-
diff --git a/recipes-extended/libvirt/libvirt_6.3.0.bb b/recipes-extended/libvirt/libvirt_7.2.0.bb
similarity index 69%
rename from recipes-extended/libvirt/libvirt_6.3.0.bb
rename to recipes-extended/libvirt/libvirt_7.2.0.bb
index 41abb06f..790071d5 100644
--- a/recipes-extended/libvirt/libvirt_6.3.0.bb
+++ b/recipes-extended/libvirt/libvirt_7.2.0.bb
@@ -18,96 +18,42 @@ RDEPENDS_${PN} = "gettext-runtime"

RDEPENDS_${PN}-ptest += "make gawk perl bash"

-RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd"
+RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd ebtables"
RDEPENDS_libvirt-libvirtd_append_x86-64 = " dmidecode"
RDEPENDS_libvirt-libvirtd_append_x86 = " dmidecode"

#connman blocks the 53 port and libvirtd can't start its DNS service
RCONFLICTS_${PN}_libvirtd = "connman"

+HOSTTOOLS_NONFATAL += "getent"
+
SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.xz;name=libvirt \
- file://tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch \
file://libvirtd.sh \
file://libvirtd.conf \
file://dnsmasq.conf \
- file://runptest.patch \
file://run-ptest \
- file://libvirt-use-pkg-config-to-locate-libcap.patch \
- file://0001-to-fix-build-error.patch \
- file://install-missing-file.patch \
file://0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch \
- file://configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch \
- file://0001-build-drop-unnecessary-libgnu.la-reference.patch \
file://hook_support.py \
file://gnutls-helper.py \
+ file://0001-meson-add-options-to-explicit-binaries-path.patch \
"

-SRC_URI[libvirt.md5sum] = "1bd4435f77924f5ec9928b538daf4a02"
-SRC_URI[libvirt.sha256sum] = "74069438d34082336e99a88146349e21130552b96efc3b7c562f6878127996f5"
+SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3"
+SRC_URI[libvirt.sha256sum] = "01f459d0c7ba5009622a628dba1a026200e8f4a299fea783b936a71d7e0ed1d0"

-inherit autotools gettext update-rc.d pkgconfig ptest systemd useradd perlnative
+inherit meson gettext update-rc.d pkgconfig ptest systemd useradd perlnative
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "-r qemu; -r kvm"
USERADD_PARAM_${PN} = "-r -g qemu -G kvm qemu"

-# Override the default set in autotools.bbclass so that we will use relative pathnames
-# to our local m4 files. This prevents an "Argument list too long" error during configuration
-# if our project is in a directory with an absolute pathname of more than about 125 characters.
-#
-acpaths = "-I ./m4"
-
-CACHED_CONFIGUREVARS += "\
-ac_cv_path_XMLCATLOG=/usr/bin/xmlcatalog \
-ac_cv_path_AUGPARSE=/usr/bin/augparse \
-ac_cv_path_DMIDECODE=/usr/sbin/dmidecode \
-ac_cv_path_DNSMASQ=/usr/bin/dnsmasq \
-ac_cv_path_BRCTL=/usr/sbin/brctl \
-ac_cv_path_TC=/sbin/tc \
-ac_cv_path_UDEVADM=/sbin/udevadm \
-ac_cv_path_MODPROBE=/sbin/modprobe \
-ac_cv_path_IP_PATH=/bin/ip \
-ac_cv_path_IPTABLES_PATH=/usr/sbin/iptables \
-ac_cv_path_IP6TABLES_PATH=/usr/sbin/ip6tables \
-ac_cv_path_MOUNT=/bin/mount \
-ac_cv_path_UMOUNT=/bin/umount \
-ac_cv_path_MKFS=/usr/sbin/mkfs \
-ac_cv_path_SHOWMOUNT=/usr/sbin/showmount \
-ac_cv_path_PVCREATE=/usr/sbin/pvcreate \
-ac_cv_path_VGCREATE=/usr/sbin/vgcreate \
-ac_cv_path_LVCREATE=/usr/sbin/lvcreate \
-ac_cv_path_PVREMOVE=/usr/sbin/pvremove \
-ac_cv_path_VGREMOVE=/usr/sbin/vgremove \
-ac_cv_path_LVREMOVE=/usr/sbin/lvremove \
-ac_cv_path_LVCHANGE=/usr/sbin/lvchange \
-ac_cv_path_VGCHANGE=/usr/sbin/vgchange \
-ac_cv_path_VGSCAN=/usr/sbin/vgscan \
-ac_cv_path_PVS=/usr/sbin/pvs \
-ac_cv_path_VGS=/usr/sbin/vgs \
-ac_cv_path_LVS=/usr/sbin/lvs \
-ac_cv_path_PARTED=/usr/sbin/parted \
-ac_cv_path_DMSETUP=/usr/sbin/dmsetup"
-
-# Ensure that libvirt uses polkit rather than policykit, whether the host has
-# pkcheck installed or not, and ensure the path is correct per our config.
-CACHED_CONFIGUREVARS += "ac_cv_path_PKCHECK_PATH=${bindir}/pkcheck"
-
-# Some other possible paths we are not yet setting
-#ac_cv_path_RPCGEN=
-#ac_cv_path_XSLTPROC=
-#ac_cv_path_RADVD=
-#ac_cv_path_UDEVSETTLE=
-#ac_cv_path_EBTABLES_PATH=
-#ac_cv_path_PKG_CONFIG=
-#ac_cv_path_ac_pt_PKG_CONFIG
-#ac_cv_path_POLKIT_AUTH=
-#ac_cv_path_DTRACE=
-#ac_cv_path_ISCSIADM=
-#ac_cv_path_MSGFMT=
-#ac_cv_path_GMSGFMT=
-#ac_cv_path_XGETTEXT=
-#ac_cv_path_MSGMERGE=
-#ac_cv_path_SCRUB=
-#ac_cv_path_PYTHON=
+
+EXTRA_OEMESON += " \
+ -Dip6tables-path=/usr/sbin/ip6tables \
+ -Ddmidecode-path=/usr/sbin/dmidecode \
+ -Ddnsmasq-path=/usr/bin/dnsmasq \
+ -Diptables-path=/usr/sbin/iptables \
+ -Debtables-path=/sbin/ebtables \
+ "

ALLOW_EMPTY_${PN} = "1"

@@ -191,7 +137,7 @@ PRIVATE_LIBS_${PN}-ptest = " \
# full config
PACKAGECONFIG ??= "gnutls qemu yajl openvz vmware vbox esx iproute2 lxc test \
remote macvtap libvirtd netcf udev python ebtables \
- fuse iproute2 firewalld libpcap \
+ fuse firewalld libpcap \
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'libxl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'polkit', '', d)} \
@@ -208,37 +154,34 @@ PACKAGECONFIG_remove_armeb = "numactl"
# enable,disable,depends,rdepends
#
PACKAGECONFIG[gnutls] = ",,,gnutls-bin"
-PACKAGECONFIG[qemu] = "--with-qemu --with-qemu-user=qemu --with-qemu-group=qemu,--without-qemu,qemu,"
-PACKAGECONFIG[yajl] = "--with-yajl,--without-yajl,yajl,yajl"
-PACKAGECONFIG[libxl] = "--with-libxl=${STAGING_DIR_TARGET}/lib,--without-libxl,xen,"
-PACKAGECONFIG[openvz] = "--with-openvz,--without-openvz,,"
-PACKAGECONFIG[vmware] = "--with-vmware,--without-vmware,,"
-PACKAGECONFIG[vbox] = "--with-vbox,--without-vbox,,"
-PACKAGECONFIG[esx] = "--with-esx,--without-esx,,"
-PACKAGECONFIG[hyperv] = "--with-hyperv,--without-hyperv,,"
-PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit,polkit"
-PACKAGECONFIG[lxc] = "--with-lxc,--without-lxc, lxc,"
-PACKAGECONFIG[test] = "--with-test=yes,--with-test=no,,"
-PACKAGECONFIG[remote] = "--with-remote,--without-remote,,"
-PACKAGECONFIG[macvtap] = "--with-macvtap=yes,--with-macvtap=no,libnl,libnl"
-PACKAGECONFIG[libvirtd] = "--with-libvirtd,--without-libvirtd,,"
-PACKAGECONFIG[netcf] = "--with-netcf,--without-netcf,netcf,netcf"
-PACKAGECONFIG[dtrace] = "--with-dtrace,--without-dtrace,,"
-PACKAGECONFIG[udev] = "--with-udev --with-pciaccess,--without-udev,udev libpciaccess,"
-PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
-PACKAGECONFIG[ebtables] = "ac_cv_path_EBTABLES_PATH=/sbin/ebtables,ac_cv_path_EBTABLES_PATH=,ebtables,ebtables"
+PACKAGECONFIG[qemu] = "-Ddriver_qemu=enabled -Dqemu_user=qemu -Dqemu_group=qemu,-Dqemu=disabled,qemu,"
+PACKAGECONFIG[yajl] = "-Dyajl=enabled,-Dyajl=disabled,yajl,yajl"
+PACKAGECONFIG[libxl] = "-Dlibxl=${STAGING_DIR_TARGET}/lib,,xen,"
+PACKAGECONFIG[openvz] = "-Ddriver_openvz=enabled,-Ddriver_openvz=disabled,,"
+PACKAGECONFIG[vmware] = "-Ddriver_vmware=enabled,-Ddriver_vmware=disabled,,"
+PACKAGECONFIG[vbox] = "-Ddriver_vbox=enabled,-Ddriver_vbox=disabled,,"
+PACKAGECONFIG[esx] = "-Ddriver_esx=enabled,-Ddriver_esx=disabled,,"
+PACKAGECONFIG[hyperv] = "-Ddriver_hyperv=enabled,-Ddriver_hyperv=disabled,,"
+PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit,polkit"
+PACKAGECONFIG[lxc] = "-Ddriver_lxc=enabled,-Ddriver_lxc=disabled,lxc,"
+PACKAGECONFIG[test] = "-Ddriver_test=enabled,-Ddriver_test=disabled,,"
+PACKAGECONFIG[remote] = "-Ddriver_remote=enabled,-Ddriver_remote=disabled,,"
+PACKAGECONFIG[libvirtd] = "-Ddriver_libvirtd=enabled,-Ddriver_libvirtd=disabled,,"
+PACKAGECONFIG[netcf] = "-Dnetcf=enabled,-Dnetcf=disabled,netcf,netcf"
+PACKAGECONFIG[dtrace] = "-Ddtrace=enabled,-Ddtrace=disabled,,"
+PACKAGECONFIG[udev] = "-Dudev=enabled -Dpciaccess=enabled,-Dudev=disabled,udev libpciaccess,"
+PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux,"
PACKAGECONFIG[python] = ",,python3,"
-PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,cyrus-sasl"
-PACKAGECONFIG[iproute2] = "ac_cv_path_IP_PATH=/sbin/ip,ac_cv_path_IP_PATH=,iproute2,iproute2"
-PACKAGECONFIG[numactl] = "--with-numactl,--without-numactl,numactl,"
-PACKAGECONFIG[fuse] = "--with-fuse,--without-fuse,fuse,"
-PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit,"
-PACKAGECONFIG[libcap-ng] = "--with-capng,--without-capng,libcap-ng,"
-PACKAGECONFIG[wireshark] = "--with-wireshark-dissector,--without-wireshark-dissector,wireshark libwsutil,"
-PACKAGECONFIG[apparmor-profiles] = "--with-apparmor-profiles, --without-apparmor-profiles,"
-PACKAGECONFIG[firewalld] = "--with-firewalld, --without-firewalld,"
-PACKAGECONFIG[libpcap] = "--with-libpcap, --without-libpcap,libpcap,libpcap"
-PACKAGECONFIG[numad] = "--with-numad, --without-numad,"
+PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl,cyrus-sasl"
+PACKAGECONFIG[numactl] = "-Dnumactl=enabled,-Dnumactl=disabled,numactl,"
+PACKAGECONFIG[fuse] = "-Dfuse=enabled,-Dfuse=disabled,fuse,"
+PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit,"
+PACKAGECONFIG[libcap-ng] = "-Dcapng=enabled,-Dcapng=disabled,libcap-ng,"
+PACKAGECONFIG[wireshark] = "-Dwireshark_dissector=enabled,-Dwireshark_dissector=disabled,wireshark libwsutil,"
+PACKAGECONFIG[apparmor_profiles] = "-Dapparmor_profiles=true, -Dapparmor_profiles=false,"
+PACKAGECONFIG[firewalld] = "-Dfirewalld=enabled, -Dfirewalld=disabled,"
+PACKAGECONFIG[libpcap] = "-Dlibpcap=enabled, -Dlibpcap=disabled,libpcap,libpcap"
+PACKAGECONFIG[numad] = "-Dnumad=enabled, -Dnumad=disabled,"

# Enable the Python tool support
require libvirt-python.inc
@@ -255,7 +198,7 @@ do_compile() {

cd ${B}
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
- oe_runmake all
+ ninja all
}

do_install_prepend() {
@@ -278,6 +221,8 @@ do_install_append() {
fi

if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ mkdir -p ${D}/lib
+ mv ${D}/usr/lib/systemd ${D}/lib
# This variable is used by libvirtd.service to start libvirtd in the right mode
sed -i '/#LIBVIRTD_ARGS="--listen"/a LIBVIRTD_ARGS="--listen --daemon"' ${D}/${sysconfdir}/sysconfig/libvirtd

@@ -360,7 +305,7 @@ do_install_append() {
# connection via 127.0.0.1 is available out of box.
install -d ${D}/etc/pki/CA
install -d ${D}/etc/pki/libvirt/private
- install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
+ install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
install -m 0644 ${WORKDIR}/cakey.pem ${D}/${sysconfdir}/pki/libvirt/private/cakey.pem
install -m 0644 ${WORKDIR}/cacert.pem ${D}/${sysconfdir}/pki/CA/cacert.pem
install -m 0644 ${WORKDIR}/serverkey.pem ${D}/${sysconfdir}/pki/libvirt/private/serverkey.pem
@@ -376,10 +321,10 @@ do_install_append() {
chmod 4755 ${D}${bindir}/virt-login-shell
}

-EXTRA_OECONF += " \
- --with-init-script=systemd \
- --with-test-suite \
- --with-runstatedir=/run \
+EXTRA_OEMESON += " \
+ -Dinit_script=systemd \
+ -Drunstatedir=/run \
+ -Dtests=enabled \
"

# gcc9 end up mis-compiling qemuxml2argvtest.o with Og which then
@@ -392,11 +337,11 @@ EXTRA_OEMAKE = "BUILD_DIR=${B} DEST_DIR=${D}${PTEST_PATH} PTEST_DIR=${PTEST_PATH
PRIVATE_LIBS_${PN}-ptest_append = "libvirt-admin.so.0"

do_compile_ptest() {
- oe_runmake -C tests buildtest-TESTS
+ ninja -C tests buildtest-TESTS
}

do_install_ptest() {
- oe_runmake -C tests install-ptest
+ ninja -C tests install-ptest

find ${S}/tests -maxdepth 1 -type d -exec cp -r {} ${D}${PTEST_PATH}/tests/ \;

--
2.27.0




--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


Re: [PATCH] libvirt: uprev v6.3 -> v7.2

Bruce Ashfield
 

On Wed, Apr 7, 2021 at 5:23 AM Xu, Yanfei <yanfei.xu@...> wrote:



On 4/7/21 8:35 AM, Bruce Ashfield wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]

In message: [meta-virtualization][PATCH] libvirt: uprev v6.3 -> v7.2
on 02/04/2021 Xu, Yanfei wrote:

From: Yanfei Xu <yanfei.xu@...>

This upgrade spans 9 small release. The detailed realese logs could
refer to: https://gitlab.com/libvirt/libvirt/-/blob/master/NEWS.rst

Libvirt's buildsystem has changed to meson, So this upgrade drop some
obsolete patches applied to makefile.

Due to libvirt's meson currently doesn't support to explicit the runtime
binaries path. I made a patch which is
0001-meson-add-options-to-explicit-binaries-path.patch for solving the
problem.
We've tranditionally had runtime issues each time libvirt was
uprev'd.
Yes. I saw there were some ancient patches...


Can you summarize the testing that you did after the upgrade ?
OK. I did the testing with our libvirt testcase and ovs testcase.
The summary is as follow:

libvirt_test (keyword: ) test results:
*1 Run libvirt_test testing(do_test1) PASS
*2 Check result (virsh_local_capabilities) PASS
*3 Check result (virsh_local_domcapabilities) PASS
*4 Check result (virsh_local_freecell) PASS
*5 Check result (virsh_local_help) PASS
*6 Check result (virsh_local_hostname) PASS
*7 Check result (virsh_local_iface-begin) PASS
*8 Check result (virsh_local_iface-commit) PASS
*9 Check result (virsh_local_iface-list) PASS
*10 Check result (virsh_local_list) PASS
*11 Check result (virsh_local_maxvcpus) PASS
*12 Check result (virsh_local_net-list) PASS
*13 Check result (virsh_local_nodecpumap) PASS
*14 Check result (virsh_local_nodecpustats) PASS
*15 Check result (virsh_local_nodedev-list) PASS
*16 Check result (virsh_local_nodeinfo) PASS
*17 Check result (virsh_local_node-memory-tune) PASS
*18 Check result (virsh_local_nodememstats) PASS
*19 Check result (virsh_local_nwfilter-binding-list) PASS
*20 Check result (virsh_local_nwfilter-list) PASS
*21 Check result (virsh_local_pool-capabilities) PASS
*22 Check result (virsh_local_pool-list) PASS
*23 Check result (virsh_local_pwd) PASS
*24 Check result (virsh_local_secret-list) PASS
*25 Check result (virsh_local_sysinfo) PASS
*26 Check result (virsh_local_uri) PASS
*27 Check result (virsh_local_version) PASS

openvswitch_vm2vm (keyword: qemux86) test results:
*1 openvswitch_vm2vm testing(do_test1) PASS
*2 Check result (ovs_vm2vm_boot_guest1) PASS
*3 Check result (ovs_vm2vm_boot_guest2) PASS
*4 Check result (ovs_vm2vm_netperf_test) PASS
*5 Check result (ovs_vm2vm_destroy_guest1) PASS
*6 Check result (ovs_vm2vm_destroy_guest2) PASS
*7 check testcase call trace(do_check_call_trace) PASS
Thanks, this helps.

The patch came through corrupted, and I fixed it up locally and then
added your test summary to the commit.

But it failed to build in my configuration:

| Library xentoollog found: YES
| Header <libxl.h> has symbol "LIBXL_DOMAIN_TYPE_PVH" : YES
| Checking if "lxc support" compiles: YES
|
| ../libvirt-7.2.0/meson.build:1725:61: ERROR: Program or command
'getent' not found or not executable
|

I'm building tip of tree for everything, qemux86-64

Bruce



Thanks,
Yanfei


Bruce


Signed-off-by: Yanfei Xu <yanfei.xu@...>
---
recipes-extended/libvirt/libvirt-python.inc | 4 +-
...drop-unnecessary-libgnu.la-reference.patch | 31 ----
...dd-options-to-explicit-binaries-path.patch | 86 ++++++++++
.../libvirt/0001-to-fix-build-error.patch | 47 -----
...-search-for-rpc-rpc.h-in-the-sysroot.patch | 34 ----
.../libvirt/install-missing-file.patch | 50 ------
...read-safety-in-lxc-callback-handling.patch | 63 -------
...virt-use-pkg-config-to-locate-libcap.patch | 43 -----
.../libvirt/qemu-fix-crash-in-qemuOpen.patch | 39 -----
.../libvirt/libvirt/runptest.patch | 116 -------------
...t-net-rpc-to-virt-host-validate-when.patch | 91 ----------
.../{libvirt_6.3.0.bb => libvirt_7.2.0.bb} | 161 ++++++------------
12 files changed, 141 insertions(+), 624 deletions(-)
delete mode 100644 recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
create mode 100644 recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
delete mode 100644 recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
delete mode 100644 recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
delete mode 100644 recipes-extended/libvirt/libvirt/install-missing-file.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
delete mode 100644 recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
delete mode 100644 recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
delete mode 100644 recipes-extended/libvirt/libvirt/runptest.patch
delete mode 100644 recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
rename recipes-extended/libvirt/{libvirt_6.3.0.bb => libvirt_7.2.0.bb} (69%)

diff --git a/recipes-extended/libvirt/libvirt-python.inc b/recipes-extended/libvirt/libvirt-python.inc
index bcd76572..0c661af8 100644
--- a/recipes-extended/libvirt/libvirt-python.inc
+++ b/recipes-extended/libvirt/libvirt-python.inc
@@ -17,8 +17,8 @@ FILES_${PN}-python = "${bindir}/* ${libdir}/* ${libdir}/${PYTHON_DIR}/*"

SRC_URI += "http://libvirt.org/sources/python/libvirt-python-${PV}.tar.gz;name=libvirt_python"

-SRC_URI[libvirt_python.md5sum] = "4cf898350ee9a47f94986d402c153bdb"
-SRC_URI[libvirt_python.sha256sum] = "c772421ecc144f098f4ab15db700c62db9b9e6e76b876217edcfd62e9ce02750"
+SRC_URI[libvirt_python.md5sum] = "19bf22414a43d358581b9259b52047a7"
+SRC_URI[libvirt_python.sha256sum] = "c0c3bac54c55622e17927b09cd9843869600d71842fb072c99491fe2608dcee7"

export LIBVIRT_API_PATH = "${S}/docs/libvirt-api.xml"
export LIBVIRT_CFLAGS = "-I${S}/include"
diff --git a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch b/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
deleted file mode 100644
index f02a5d64..00000000
--- a/recipes-extended/libvirt/libvirt/0001-build-drop-unnecessary-libgnu.la-reference.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 30a056069cb35804434fb036e51ae97f33c02025 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Sat, 7 Mar 2020 21:36:27 -0500
-Subject: [PATCH] build: drop unnecessary libgnu.la reference
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-
----
- tools/Makefile.am | 2 --
- 1 file changed, 2 deletions(-)
-
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 2a0a989..93fe283 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -168,7 +168,6 @@ virt_host_validate_LDADD = \
-
- if WITH_GNUTLS
- virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
-@@ -270,7 +269,6 @@ BUILT_SOURCES =
-
- if WITH_GNUTLS
- virsh_LDADD += ../src/libvirt-net-rpc.la \
-- ../gnulib/lib/libgnu.la \
- $(NULL)
- endif
-
diff --git a/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
new file mode 100644
index 00000000..4c545d4a
--- /dev/null
+++ b/recipes-extended/libvirt/libvirt/0001-meson-add-options-to-explicit-binaries-path.patch
@@ -0,0 +1,86 @@
+From 2e061ccf093063267277893cd5cacc9e7188c629 Mon Sep 17 00:00:00 2001
+From: Yanfei Xu <yanfei.xu@...>
+Date: Thu, 25 Mar 2021 16:24:04 +0800
+Subject: [PATCH] meson: add options to explicit binaries path
+
+In cross compile evironment, path of binaries is possiblely different
+between target and host. Let's add options to explicit binaries path
+to solve this problem.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yanfei Xu <yanfei.xu@...>
+---
+ meson.build | 18 ++++++++++++------
+ meson_options.txt | 23 +++++++++++++++++++++++
+ 2 files changed, 35 insertions(+), 6 deletions(-)
+
+diff --git a/meson.build b/meson.build
+index 369548f127..6c93be8e4b 100644
+--- a/meson.build
++++ b/meson.build
+@@ -943,18 +943,24 @@ optional_programs = [
+ 'udevadm',
+ ]
+
++# if -Dxxx-path option is found, use that. Otherwise, check in $PATH,
++# /usr/sbin, /sbin, and fall back to the default from middle column.
+ foreach name : optional_programs
+- prog = find_program(name, required: false, dirs: libvirt_sbin_path)
+ varname = name.underscorify()
+- if prog.found()
+- prog_path = prog.path()
++ prog_path = get_option(name + '-path')
++ if prog_path != ''
++ message('Using @1@ for @0@'.format(name, prog_path))
+ else
+- prog_path = name
++ prog = find_program(name, required: false, dirs: libvirt_sbin_path)
++ if prog.found()
++ prog_path = prog.path()
++ else
++ prog_path = name
++ endif
++ set_variable('@0@_prog'.format(varname), prog)
+ endif
+-
+ conf.set_quoted(varname.to_upper(), prog_path)
+ conf.set_quoted('@0@_PATH'.format(varname.to_upper()), prog_path)
+- set_variable('@0@_prog'.format(varname), prog)
+ endforeach
+
+
+diff --git a/meson_options.txt b/meson_options.txt
+index e5d79c2b6b..f06f46c7bb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -102,3 +102,26 @@ option('numad', type: 'feature', value: 'auto', description: 'use numad to manag
+ option('pm_utils', type: 'feature', value: 'auto', description: 'use pm-utils for power management')
+ option('sysctl_config', type: 'feature', value: 'auto', description: 'Whether to install sysctl configs')
+ option('tls_priority', type: 'string', value: 'NORMAL', description: 'set the default TLS session priority string')
++
++
++option('addr2line-path', type : 'string', description : 'path to addr2line')
++option('augparse-path', type : 'string', description : 'path to augparse')
++option('dmidecode-path', type : 'string', description : 'path to dmidecode')
++option('dnsmasq-path', type : 'string', description : 'path to dnsmasq')
++option('ebtables-path', type : 'string', description : 'path to ebtables')
++option('flake8-path', type : 'string', description : 'path to flake8')
++option('ip-path', type : 'string', description : 'path to ip')
++option('ip6tables-path', type : 'string', description : 'path to ip6tables')
++option('iptables-path', type : 'string', description : 'path to iptables')
++option('iscsiadm-path', type : 'string', description : 'path to iscsiadm')
++option('mdevctl-path', type : 'string', description : 'path to mdevctl')
++option('mm-ctl-path', type : 'string', description : 'path to mm-ctl')
++option('modprobe-path', type : 'string', description : 'path to modprobe')
++option('ovs-vsctl-path', type : 'string', description : 'path to ovs-vsctl')
++option('pdwtags-path', type : 'string', description : 'path to pdwtags')
++option('radvd-path', type : 'string', description : 'path to radvd')
++option('rmmod-path', type : 'string', description : 'path to rmmod')
++option('scrub-path', type : 'string', description : 'path to scrub')
++option('tc-path', type : 'string', description : 'path to tc')
++option('udevadm-path', type : 'string', description : 'path to udevadm')
++
+--
+2.27.0
+
diff --git a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch b/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
deleted file mode 100644
index b0148e5c..00000000
--- a/recipes-extended/libvirt/libvirt/0001-to-fix-build-error.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From 3566bcacaa6408fb8f655d1749a20b2f30e0c765 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@...>
-Date: Fri, 31 Jul 2015 03:17:07 +0900
-Subject: [PATCH] to fix build error
-
-The error likes as following
-
-| Generating internals/command.html.tmp
-| /bin/sh: line 3: internals/command.html.tmp: No such file or directory
-| rm: Generating internals/locking.html.tmp
-| cannot remove `internals/command.html.tmp': No such file or directory
-| make[3]: *** [internals/command.html.tmp] Error 1
-| make[3]: *** Waiting for unfinished jobs....
-
-Signed-off-by: Lei Maohui <leimaohui@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- docs/Makefile.am | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index ce3d296..2c8180f 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -366,7 +366,7 @@ EXTRA_DIST= \
- aclperms.htmlinc \
- $(schema_DATA)
-
--acl_generated = aclperms.htmlinc
-+acl.html:: $(srcdir)/aclperms.htmlinc
-
- aclperms.htmlinc: $(top_srcdir)/src/access/viraccessperm.h \
- $(top_srcdir)/scripts/genaclperms.py Makefile.am
-@@ -432,8 +432,7 @@ manpages/%.html.in: manpages/%.rst
- $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
- $(RST2HTML) --strict $< > $@ || { rm $@ && exit 1; }
-
--%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl \
-- $(acl_generated)
-+%.html.tmp: %.html.in site.xsl subsite.xsl page.xsl
- $(AM_V_GEN)name=`echo $@ | sed -e 's/.tmp//'`; \
- genhtmlin=`echo $@ | sed -e 's/.tmp/.in/'`; \
- rst=`echo $@ | sed -e 's/.html.tmp/.rst/'`; \
diff --git a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch b/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
deleted file mode 100644
index 395d5610..00000000
--- a/recipes-extended/libvirt/libvirt/configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 79f5975db01af0599860ccca7ef44b0e27105a04 Mon Sep 17 00:00:00 2001
-From: Mark Asselstine <mark.asselstine@...>
-Date: Thu, 10 May 2018 12:05:04 -0400
-Subject: [PATCH] configure.ac: search for rpc/rpc.h in the sysroot
-
-We want to avoid host contamination and use the sysroot as the base
-directory for our search so add the '=' the the '-I' when searching
-for libtirpc's rpc.h header.
-
-Upstream-Status: Inappropriate [old release]
-
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-xdr.m4 | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/m4/virt-xdr.m4 b/m4/virt-xdr.m4
-index 8375415..12b51f7 100644
---- a/m4/virt-xdr.m4
-+++ b/m4/virt-xdr.m4
-@@ -30,10 +30,10 @@ AC_DEFUN([LIBVIRT_CHECK_XDR], [
- ])
- with_xdr="yes"
-
-- dnl Recent glibc requires -I/usr/include/tirpc for <rpc/rpc.h>
-+ dnl Recent glibc requires -I=/usr/include/tirpc for <rpc/rpc.h>
- old_CFLAGS=$CFLAGS
- AC_CACHE_CHECK([where to find <rpc/rpc.h>], [lv_cv_xdr_cflags], [
-- for add_CFLAGS in '' '-I/usr/include/tirpc' 'missing'; do
-+ for add_CFLAGS in '' '-I=/usr/include/tirpc' 'missing'; do
- if test x"$add_CFLAGS" = xmissing; then
- lv_cv_xdr_cflags=missing; break
- fi
diff --git a/recipes-extended/libvirt/libvirt/install-missing-file.patch b/recipes-extended/libvirt/libvirt/install-missing-file.patch
deleted file mode 100644
index 6aa36df8..00000000
--- a/recipes-extended/libvirt/libvirt/install-missing-file.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From aa75f5136066d239d48a21373b3d96ee12378e8d Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 17:24:17 +0800
-Subject: [PATCH] Install missing conf file
-
-openvzutilstest.conf file is needed by openvzutilstest test.
-
-Upstream-Status: Inapproriate
-
-Signed-off-by: Catalin Enache <catalin.enache@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index 4a808dd..0c3e799 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -173,6 +173,7 @@ EXTRA_DIST = \
- $(NULL)
-
- test_helpers = commandhelper ssh
-+test_misc =
- test_programs = virshtest sockettest \
- virhostcputest virbuftest \
- commandtest seclabeltest \
-@@ -311,6 +312,7 @@ endif WITH_LXC
-
- if WITH_OPENVZ
- test_programs += openvzutilstest
-+test_misc += openvzutilstest.conf
- endif WITH_OPENVZ
-
- if WITH_ESX
-@@ -1551,7 +1553,7 @@ endif ! WITH_LINUX
-
- buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-
--PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+PTESTS = $(TESTS) $(test_helpers) $(test_misc) test-lib.sh virschematest
-
- install-ptest:
- list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
diff --git a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch b/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
deleted file mode 100644
index 558d5ef6..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-1.0.3-fix-thread-safety-in-lxc-callback-handling.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From ad5d9cee87357f9f38f62583119606ef95ba10df Mon Sep 17 00:00:00 2001
-From: Bogdan Purcareata <bogdan.purcareata@...>
-Date: Fri, 24 May 2013 16:46:00 +0300
-Subject: [PATCH] Fix thread safety in LXC callback handling
-
-Signed-off-by: Bogdan Purcareata <bogdan.purcareata@...>
----
- src/lxc/lxc_process.c | 18 +++++++++++++++++-
- 1 file changed, 17 insertions(+), 1 deletion(-)
-
-diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c
-index aaa81a7..0eadc67 100644
---- a/src/lxc/lxc_process.c
-+++ b/src/lxc/lxc_process.c
-@@ -609,8 +609,13 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- virLXCProtocolExitStatus status,
- virDomainObjPtr vm)
- {
-+ virLXCDriverPtr driver = lxc_driver;
- virLXCDomainObjPrivatePtr priv = vm->privateData;
-
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
- switch (status) {
- case VIR_LXC_PROTOCOL_EXIT_STATUS_SHUTDOWN:
- priv->stopReason = VIR_DOMAIN_EVENT_STOPPED_SHUTDOWN;
-@@ -628,6 +633,8 @@ static void virLXCProcessMonitorExitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- }
- VIR_DEBUG("Domain shutoff reason %d (from status %d)",
- priv->stopReason, status);
-+
-+ virObjectUnlock(vm);
- }
-
- /* XXX a little evil */
-@@ -636,12 +643,21 @@ static void virLXCProcessMonitorInitNotify(virLXCMonitorPtr mon ATTRIBUTE_UNUSED
- pid_t initpid,
- virDomainObjPtr vm)
- {
-- virLXCDomainObjPrivatePtr priv = vm->privateData;
-+ virLXCDriverPtr driver = lxc_driver;
-+ virLXCDomainObjPrivatePtr priv;
-+
-+ lxcDriverLock(driver);
-+ virObjectLock(vm);
-+ lxcDriverUnlock(driver);
-+
-+ priv = vm->privateData;
- priv->initpid = initpid;
- virDomainAuditInit(vm, initpid);
-
- if (virDomainSaveStatus(lxc_driver->caps, lxc_driver->stateDir, vm) < 0)
- VIR_WARN("Cannot update XML with PID for LXC %s", vm->def->name);
-+
-+ virObjectUnlock(vm);
- }
-
- static virLXCMonitorCallbacks monitorCallbacks = {
---
-1.7.11.7
-
diff --git a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch b/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
deleted file mode 100644
index 87b55915..00000000
--- a/recipes-extended/libvirt/libvirt/libvirt-use-pkg-config-to-locate-libcap.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 94bd514e1b6e602a48285db94e65050f8f0c2585 Mon Sep 17 00:00:00 2001
-From: Bruce Ashfield <bruce.ashfield@...>
-Date: Wed, 8 Apr 2015 13:03:03 -0400
-Subject: [PATCH] libvirt: use pkg-config to locate libcap
-
-libvirt wants to use pcap-config to locate the exisence and location
-of libpcap. oe-core stubs this script and replaces it with pkg-config,
-which can lead to the host pcap-config triggering and either breaking
-the build or introducing host contamination.
-
-To fix this issue, we patch configure to use 'pkg-config libcap' to
-locate the correct libraries.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[MA: Update to apply agains v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-
----
- m4/virt-libpcap.m4 | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/m4/virt-libpcap.m4 b/m4/virt-libpcap.m4
-index 605c2fd..e0ab018 100644
---- a/m4/virt-libpcap.m4
-+++ b/m4/virt-libpcap.m4
-@@ -23,14 +23,14 @@ AC_DEFUN([LIBVIRT_ARG_LIBPCAP], [
-
- AC_DEFUN([LIBVIRT_CHECK_LIBPCAP], [
- LIBPCAP_REQUIRED="1.5.0"
-- LIBPCAP_CONFIG="pcap-config"
-+ LIBPCAP_CONFIG="pkg-config libpcap"
- LIBPCAP_CFLAGS=""
- LIBPCAP_LIBS=""
-
- if test "x$with_libpcap" != "xno"; then
- case $with_libpcap in
-- ''|yes|check) LIBPCAP_CONFIG="pcap-config" ;;
-- *) LIBPCAP_CONFIG="$with_libpcap/bin/pcap-config" ;;
-+ ''|yes|check) LIBPCAP_CONFIG="pkg-config libpcap" ;;
-+ *) LIBPCAP_CONFIG="$with_libpcap/bin/pkg-config libpcap" ;;
- esac
- AS_IF([test "x$LIBPCAP_CONFIG" != "x"], [
- AC_MSG_CHECKING(libpcap $LIBPCAP_CONFIG >= $LIBPCAP_REQUIRED )
diff --git a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch b/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
deleted file mode 100644
index 3cf9e839..00000000
--- a/recipes-extended/libvirt/libvirt/qemu-fix-crash-in-qemuOpen.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 74bff2509080912ea8abf1de8fd95fa2412b659a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=A1n=20Tomko?= <jtomko@...>
-Date: Thu, 11 Apr 2013 11:37:25 +0200
-Subject: [PATCH] qemu: fix crash in qemuOpen
-
-commit 74bff2509080912ea8abf1de8fd95fa2412b659a from upsteam
-git://libvirt.org/libvirt.git
-
-If the path part of connection URI is not present, cfg is used
-unitialized.
-
-https://bugzilla.redhat.com/show_bug.cgi?id=950855
----
- src/qemu/qemu_driver.c | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
-index 2c0d7d1..0d41e39 100644
---- a/src/qemu/qemu_driver.c
-+++ b/src/qemu/qemu_driver.c
-@@ -1026,6 +1026,7 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-+ cfg = virQEMUDriverGetConfig(qemu_driver);
- if (conn->uri->path == NULL) {
- virReportError(VIR_ERR_INTERNAL_ERROR,
- _("no QEMU URI path given, try %s"),
-@@ -1033,7 +1034,6 @@ static virDrvOpenStatus qemuOpen(virConnectPtr conn,
- goto cleanup;
- }
-
-- cfg = virQEMUDriverGetConfig(qemu_driver);
- if (cfg->privileged) {
- if (STRNEQ(conn->uri->path, "/system") &&
- STRNEQ(conn->uri->path, "/session")) {
---
-1.7.1
-
diff --git a/recipes-extended/libvirt/libvirt/runptest.patch b/recipes-extended/libvirt/libvirt/runptest.patch
deleted file mode 100644
index f6bc7736..00000000
--- a/recipes-extended/libvirt/libvirt/runptest.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-From d210838a4433dd254c1a11b08b804ebe9ff5f378 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Wed, 8 May 2019 10:20:47 +0800
-Subject: [PATCH] Add 'install-ptest' rule
-
-Change TESTS_ENVIRONMENT to allow running outside build dir.
-
-Upstream-status: Pending
-Signed-off-by: Mihaela Sendrea <mihaela.sendrea@...>
-[KK: Update context for 1.3.5.]
-Signed-off-by: Kai Kang <kai.kang@...>
-[MA: Allow separate source and build dirs]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ZH: add missing test_helper files]
-Signed-off-by: He Zhe <zhe.he@...>
-[MA: Update context for v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[DDU: Update context for v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- tests/Makefile.am | 68 +++++++++++++++++++++++++++++++++++++++++------
- 1 file changed, 60 insertions(+), 8 deletions(-)
-
-diff --git a/tests/Makefile.am b/tests/Makefile.am
-index ada5b8f..4a808dd 100644
---- a/tests/Makefile.am
-+++ b/tests/Makefile.am
-@@ -28,11 +28,13 @@ AM_CPPFLAGS = \
-
- WARN_CFLAGS += $(RELAXED_FRAME_LIMIT_CFLAGS)
-
-+PTEST_DIR ?= $(libdir)/libvirt/ptest
-+
- AM_CFLAGS = \
-- -Dabs_builddir="\"$(abs_builddir)\"" \
-- -Dabs_top_builddir="\"$(abs_top_builddir)\"" \
-- -Dabs_srcdir="\"$(abs_srcdir)\"" \
-- -Dabs_top_srcdir="\"$(abs_top_srcdir)\"" \
-+ -Dabs_builddir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_builddir="\"$(PTEST_DIR)\"" \
-+ -Dabs_srcdir="\"$(PTEST_DIR)/tests\"" \
-+ -Dabs_top_srcdir="\"$(PTEST_DIR)\"" \
- $(LIBXML_CFLAGS) \
- $(GLIB_CFLAGS) \
- $(LIBNL_CFLAGS) \
-@@ -474,10 +476,10 @@ TESTS = $(test_programs) \
-
- VIR_TEST_EXPENSIVE ?= $(VIR_TEST_EXPENSIVE_DEFAULT)
- TESTS_ENVIRONMENT = \
-- abs_top_builddir="$(abs_top_builddir)" \
-- abs_top_srcdir="$(abs_top_srcdir)" \
-- abs_builddir="$(abs_builddir)" \
-- abs_srcdir="$(abs_srcdir)" \
-+ abs_top_builddir="$(PTEST_DIR)" \
-+ abs_top_srcdir="$(PTEST_DIR)" \
-+ abs_builddir="$(PTEST_DIR)/tests" \
-+ abs_srcdir="$(PTEST_DIR)/tests" \
- LIBVIRT_AUTOSTART=0 \
- LC_ALL=C \
- VIR_TEST_EXPENSIVE=$(VIR_TEST_EXPENSIVE) \
-@@ -1547,4 +1549,54 @@ else ! WITH_LINUX
- EXTRA_DIST += virscsitest.c
- endif ! WITH_LINUX
-
-+buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
-+
-+PTESTS = $(TESTS) $(test_helpers) test-lib.sh virschematest
-+
-+install-ptest:
-+ list='$(TESTS) $(test_helpers) test-lib.sh virschematest'
-+ install -d $(DEST_DIR)/tools
-+ @(if [ -d ../tools/.libs ] ; then cd ../tools/.libs; fi; \
-+ install * $(DEST_DIR)/tools)
-+ install -d $(DEST_DIR)/src/network
-+ cp $(top_srcdir)/src/network/*.xml $(DEST_DIR)/src/network
-+ install -d $(DEST_DIR)/src/cpu_map
-+ cp $(top_srcdir)/src/cpu_map/*.xml $(DEST_DIR)/src/cpu_map
-+ install ../src/libvirt_iohelper $(DEST_DIR)/src
-+ install -D ../src/libvirtd $(DEST_DIR)/src/libvirtd
-+ install -d $(DEST_DIR)/src/remote
-+ install -D $(top_srcdir)/../build/src/remote/libvirtd.conf $(DEST_DIR)/src/remote/libvirtd.conf
-+ install -d $(DEST_DIR)/src/remote/.libs
-+ @(if [ -d ../src/remote/.libs ] ; then cd ../src/remote/.libs; fi; \
-+ install * $(DEST_DIR)/src/remote/.libs)
-+ install -d $(DEST_DIR)/src/.libs
-+ @(if [ -d ../src/.libs ] ; then cd ../src/.libs; fi; \
-+ install * $(DEST_DIR)/src/.libs)
-+ install -d $(DEST_DIR)/docs/schemas
-+ cp $(top_srcdir)/docs/schemas/*.rng $(DEST_DIR)/docs/schemas
-+ cp -r $(top_srcdir)/build-aux $(DEST_DIR)
-+ install -d $(DEST_DIR)/examples/xml
-+ cp -r $(top_srcdir)/examples/xml/test $(DEST_DIR)/examples/xml
-+ install -d $(DEST_DIR)/tests/.libs
-+ find . -type d -name "*xml2xml*" -exec cp -r {} $(DEST_DIR)/tests \;
-+ find . -type d -name "*data" -exec cp -r {} $(DEST_DIR)/tests \;
-+ @(for file in $(PTESTS); do \
-+ if [ -f .libs/$$file ]; then \
-+ install .libs/$$file $(DEST_DIR)/tests; \
-+ elif [ -f $(srcdir)/$$file ]; then \
-+ install $(srcdir)/$$file $(DEST_DIR)/tests; \
-+ else \
-+ install $(builddir)/$$file $(DEST_DIR)/tests; \
-+ fi; \
-+ done;)
-+ @(if [ -d .libs ]; then install .libs/*.so $(DEST_DIR)/tests/.libs; fi;)
-+ cp ../config.h $(DEST_DIR)
-+ cp Makefile $(DEST_DIR)/tests
-+ sed -i -e 's/^Makefile:/_Makefile:/' $(DEST_DIR)/tests/Makefile
-+ cp ../Makefile $(DEST_DIR)
-+ sed -i -e 's|^Makefile:|_Makefile:|' $(DEST_DIR)/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/tests/Makefile
-+ sed -i -e 's|$(BUILD_DIR)|$(PTEST_DIR)|g' $(DEST_DIR)/Makefile
-+ sed -i -e 's|^\(.*\.log:\) \(.*EXEEXT.*\)|\1|g' $(DEST_DIR)/tests/Makefile
-+
- CLEANFILES = *.cov *.gcov .libs/*.gcda .libs/*.gcno *.gcno *.gcda
diff --git a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch b/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
deleted file mode 100644
index bb500fde..00000000
--- a/recipes-extended/libvirt/libvirt/tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 7dc21edd851b260485b432c096f8e90f6fa07778 Mon Sep 17 00:00:00 2001
-From: Dengke Du <dengke.du@...>
-Date: Tue, 7 May 2019 15:26:32 +0800
-Subject: [PATCH] tools: add libvirt-net-rpc to virt-host-validate when TLS is
- enabled
-
-When gnu-tls is enabled for libvirt references to virNetTLSInit are
-generated in libvirt. Any binaries linking against libvirt, must also
-link against libvirt-net-rpc which provides the implementation.
-
-Signed-off-by: Bruce Ashfield <bruce.ashfield@...>
-[ywei: rebased to libvirt-1.3.2]
-Signed-off-by: Yunguo Wei <yunguo.wei@...>
-[MA: rebase to v4.3.0]
-Signed-off-by: Mark Asselstine <mark.asselstine@...>
-[ddu: rebase to v5.3.0]
-Signed-off-by: Dengke Du <dengke.du@...>
-
----
- examples/Makefile.am | 20 ++++++++++++++++++++
- tools/Makefile.am | 12 ++++++++++++
- 2 files changed, 32 insertions(+)
-
-diff --git a/examples/Makefile.am b/examples/Makefile.am
-index ad635bd..a94f41d 100644
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -74,6 +74,10 @@ LDADD = \
- $(top_builddir)/src/libvirt-admin.la \
- $(NULL)
-
-+if WITH_GNUTLS
-+LDADD += $(top_builddir)/src/libvirt-net-rpc.la
-+endif
-+
- noinst_PROGRAMS = \
- c/admin/client_close \
- c/admin/client_info \
-@@ -111,6 +115,22 @@ c_misc_openauth_SOURCES = c/misc/openauth.c
- examplesdir = $(docdir)/examples
-
- adminexamplesdir = $(examplesdir)/c/admin
-+
-+if WITH_GNUTLS
-+dominfo_info1_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+domsuspend_suspend_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+hellolibvirt_hellolibvirt_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+openauth_openauth_LDADD = $(top_builddir)/src/libvirt-net-rpc.la \
-+ $(LDADD) \
-+ $(NULL)
-+endif
-+
- adminexamples_DATA = $(ADMIN_EXAMPLES)
-
- domainexamplesdir = $(examplesdir)/c/domain
-diff --git a/tools/Makefile.am b/tools/Makefile.am
-index 53df930..2a0a989 100644
---- a/tools/Makefile.am
-+++ b/tools/Makefile.am
-@@ -166,6 +166,12 @@ virt_host_validate_LDADD = \
- $(GLIB_LIBS) \
- $(NULL)
-
-+if WITH_GNUTLS
-+virt_host_validate_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- virt_host_validate_CFLAGS = \
- $(AM_CFLAGS) \
- $(NULL)
-@@ -262,6 +268,12 @@ virt_admin_CFLAGS = \
- $(READLINE_CFLAGS)
- BUILT_SOURCES =
-
-+if WITH_GNUTLS
-+virsh_LDADD += ../src/libvirt-net-rpc.la \
-+ ../gnulib/lib/libgnu.la \
-+ $(NULL)
-+endif
-+
- if WITH_WIN_ICON
- virsh_LDADD += virsh_win_icon.$(OBJEXT)
-
diff --git a/recipes-extended/libvirt/libvirt_6.3.0.bb b/recipes-extended/libvirt/libvirt_7.2.0.bb
similarity index 69%
rename from recipes-extended/libvirt/libvirt_6.3.0.bb
rename to recipes-extended/libvirt/libvirt_7.2.0.bb
index 41abb06f..790071d5 100644
--- a/recipes-extended/libvirt/libvirt_6.3.0.bb
+++ b/recipes-extended/libvirt/libvirt_7.2.0.bb
@@ -18,96 +18,42 @@ RDEPENDS_${PN} = "gettext-runtime"

RDEPENDS_${PN}-ptest += "make gawk perl bash"

-RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd"
+RDEPENDS_libvirt-libvirtd += "bridge-utils iptables pm-utils dnsmasq netcat-openbsd ebtables"
RDEPENDS_libvirt-libvirtd_append_x86-64 = " dmidecode"
RDEPENDS_libvirt-libvirtd_append_x86 = " dmidecode"

#connman blocks the 53 port and libvirtd can't start its DNS service
RCONFLICTS_${PN}_libvirtd = "connman"

+HOSTTOOLS_NONFATAL += "getent"
+
SRC_URI = "http://libvirt.org/sources/libvirt-${PV}.tar.xz;name=libvirt \
- file://tools-add-libvirt-net-rpc-to-virt-host-validate-when.patch \
file://libvirtd.sh \
file://libvirtd.conf \
file://dnsmasq.conf \
- file://runptest.patch \
file://run-ptest \
- file://libvirt-use-pkg-config-to-locate-libcap.patch \
- file://0001-to-fix-build-error.patch \
- file://install-missing-file.patch \
file://0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch \
- file://configure.ac-search-for-rpc-rpc.h-in-the-sysroot.patch \
- file://0001-build-drop-unnecessary-libgnu.la-reference.patch \
file://hook_support.py \
file://gnutls-helper.py \
+ file://0001-meson-add-options-to-explicit-binaries-path.patch \
"

-SRC_URI[libvirt.md5sum] = "1bd4435f77924f5ec9928b538daf4a02"
-SRC_URI[libvirt.sha256sum] = "74069438d34082336e99a88146349e21130552b96efc3b7c562f6878127996f5"
+SRC_URI[libvirt.md5sum] = "92044b629216e44adce63224970a54a3"
+SRC_URI[libvirt.sha256sum] = "01f459d0c7ba5009622a628dba1a026200e8f4a299fea783b936a71d7e0ed1d0"

-inherit autotools gettext update-rc.d pkgconfig ptest systemd useradd perlnative
+inherit meson gettext update-rc.d pkgconfig ptest systemd useradd perlnative
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "-r qemu; -r kvm"
USERADD_PARAM_${PN} = "-r -g qemu -G kvm qemu"

-# Override the default set in autotools.bbclass so that we will use relative pathnames
-# to our local m4 files. This prevents an "Argument list too long" error during configuration
-# if our project is in a directory with an absolute pathname of more than about 125 characters.
-#
-acpaths = "-I ./m4"
-
-CACHED_CONFIGUREVARS += "\
-ac_cv_path_XMLCATLOG=/usr/bin/xmlcatalog \
-ac_cv_path_AUGPARSE=/usr/bin/augparse \
-ac_cv_path_DMIDECODE=/usr/sbin/dmidecode \
-ac_cv_path_DNSMASQ=/usr/bin/dnsmasq \
-ac_cv_path_BRCTL=/usr/sbin/brctl \
-ac_cv_path_TC=/sbin/tc \
-ac_cv_path_UDEVADM=/sbin/udevadm \
-ac_cv_path_MODPROBE=/sbin/modprobe \
-ac_cv_path_IP_PATH=/bin/ip \
-ac_cv_path_IPTABLES_PATH=/usr/sbin/iptables \
-ac_cv_path_IP6TABLES_PATH=/usr/sbin/ip6tables \
-ac_cv_path_MOUNT=/bin/mount \
-ac_cv_path_UMOUNT=/bin/umount \
-ac_cv_path_MKFS=/usr/sbin/mkfs \
-ac_cv_path_SHOWMOUNT=/usr/sbin/showmount \
-ac_cv_path_PVCREATE=/usr/sbin/pvcreate \
-ac_cv_path_VGCREATE=/usr/sbin/vgcreate \
-ac_cv_path_LVCREATE=/usr/sbin/lvcreate \
-ac_cv_path_PVREMOVE=/usr/sbin/pvremove \
-ac_cv_path_VGREMOVE=/usr/sbin/vgremove \
-ac_cv_path_LVREMOVE=/usr/sbin/lvremove \
-ac_cv_path_LVCHANGE=/usr/sbin/lvchange \
-ac_cv_path_VGCHANGE=/usr/sbin/vgchange \
-ac_cv_path_VGSCAN=/usr/sbin/vgscan \
-ac_cv_path_PVS=/usr/sbin/pvs \
-ac_cv_path_VGS=/usr/sbin/vgs \
-ac_cv_path_LVS=/usr/sbin/lvs \
-ac_cv_path_PARTED=/usr/sbin/parted \
-ac_cv_path_DMSETUP=/usr/sbin/dmsetup"
-
-# Ensure that libvirt uses polkit rather than policykit, whether the host has
-# pkcheck installed or not, and ensure the path is correct per our config.
-CACHED_CONFIGUREVARS += "ac_cv_path_PKCHECK_PATH=${bindir}/pkcheck"
-
-# Some other possible paths we are not yet setting
-#ac_cv_path_RPCGEN=
-#ac_cv_path_XSLTPROC=
-#ac_cv_path_RADVD=
-#ac_cv_path_UDEVSETTLE=
-#ac_cv_path_EBTABLES_PATH=
-#ac_cv_path_PKG_CONFIG=
-#ac_cv_path_ac_pt_PKG_CONFIG
-#ac_cv_path_POLKIT_AUTH=
-#ac_cv_path_DTRACE=
-#ac_cv_path_ISCSIADM=
-#ac_cv_path_MSGFMT=
-#ac_cv_path_GMSGFMT=
-#ac_cv_path_XGETTEXT=
-#ac_cv_path_MSGMERGE=
-#ac_cv_path_SCRUB=
-#ac_cv_path_PYTHON=
+
+EXTRA_OEMESON += " \
+ -Dip6tables-path=/usr/sbin/ip6tables \
+ -Ddmidecode-path=/usr/sbin/dmidecode \
+ -Ddnsmasq-path=/usr/bin/dnsmasq \
+ -Diptables-path=/usr/sbin/iptables \
+ -Debtables-path=/sbin/ebtables \
+ "

ALLOW_EMPTY_${PN} = "1"

@@ -191,7 +137,7 @@ PRIVATE_LIBS_${PN}-ptest = " \
# full config
PACKAGECONFIG ??= "gnutls qemu yajl openvz vmware vbox esx iproute2 lxc test \
remote macvtap libvirtd netcf udev python ebtables \
- fuse iproute2 firewalld libpcap \
+ fuse firewalld libpcap \
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'libxl', '', d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'polkit', '', d)} \
@@ -208,37 +154,34 @@ PACKAGECONFIG_remove_armeb = "numactl"
# enable,disable,depends,rdepends
#
PACKAGECONFIG[gnutls] = ",,,gnutls-bin"
-PACKAGECONFIG[qemu] = "--with-qemu --with-qemu-user=qemu --with-qemu-group=qemu,--without-qemu,qemu,"
-PACKAGECONFIG[yajl] = "--with-yajl,--without-yajl,yajl,yajl"
-PACKAGECONFIG[libxl] = "--with-libxl=${STAGING_DIR_TARGET}/lib,--without-libxl,xen,"
-PACKAGECONFIG[openvz] = "--with-openvz,--without-openvz,,"
-PACKAGECONFIG[vmware] = "--with-vmware,--without-vmware,,"
-PACKAGECONFIG[vbox] = "--with-vbox,--without-vbox,,"
-PACKAGECONFIG[esx] = "--with-esx,--without-esx,,"
-PACKAGECONFIG[hyperv] = "--with-hyperv,--without-hyperv,,"
-PACKAGECONFIG[polkit] = "--with-polkit,--without-polkit,polkit,polkit"
-PACKAGECONFIG[lxc] = "--with-lxc,--without-lxc, lxc,"
-PACKAGECONFIG[test] = "--with-test=yes,--with-test=no,,"
-PACKAGECONFIG[remote] = "--with-remote,--without-remote,,"
-PACKAGECONFIG[macvtap] = "--with-macvtap=yes,--with-macvtap=no,libnl,libnl"
-PACKAGECONFIG[libvirtd] = "--with-libvirtd,--without-libvirtd,,"
-PACKAGECONFIG[netcf] = "--with-netcf,--without-netcf,netcf,netcf"
-PACKAGECONFIG[dtrace] = "--with-dtrace,--without-dtrace,,"
-PACKAGECONFIG[udev] = "--with-udev --with-pciaccess,--without-udev,udev libpciaccess,"
-PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux,"
-PACKAGECONFIG[ebtables] = "ac_cv_path_EBTABLES_PATH=/sbin/ebtables,ac_cv_path_EBTABLES_PATH=,ebtables,ebtables"
+PACKAGECONFIG[qemu] = "-Ddriver_qemu=enabled -Dqemu_user=qemu -Dqemu_group=qemu,-Dqemu=disabled,qemu,"
+PACKAGECONFIG[yajl] = "-Dyajl=enabled,-Dyajl=disabled,yajl,yajl"
+PACKAGECONFIG[libxl] = "-Dlibxl=${STAGING_DIR_TARGET}/lib,,xen,"
+PACKAGECONFIG[openvz] = "-Ddriver_openvz=enabled,-Ddriver_openvz=disabled,,"
+PACKAGECONFIG[vmware] = "-Ddriver_vmware=enabled,-Ddriver_vmware=disabled,,"
+PACKAGECONFIG[vbox] = "-Ddriver_vbox=enabled,-Ddriver_vbox=disabled,,"
+PACKAGECONFIG[esx] = "-Ddriver_esx=enabled,-Ddriver_esx=disabled,,"
+PACKAGECONFIG[hyperv] = "-Ddriver_hyperv=enabled,-Ddriver_hyperv=disabled,,"
+PACKAGECONFIG[polkit] = "-Dpolkit=enabled,-Dpolkit=disabled,polkit,polkit"
+PACKAGECONFIG[lxc] = "-Ddriver_lxc=enabled,-Ddriver_lxc=disabled,lxc,"
+PACKAGECONFIG[test] = "-Ddriver_test=enabled,-Ddriver_test=disabled,,"
+PACKAGECONFIG[remote] = "-Ddriver_remote=enabled,-Ddriver_remote=disabled,,"
+PACKAGECONFIG[libvirtd] = "-Ddriver_libvirtd=enabled,-Ddriver_libvirtd=disabled,,"
+PACKAGECONFIG[netcf] = "-Dnetcf=enabled,-Dnetcf=disabled,netcf,netcf"
+PACKAGECONFIG[dtrace] = "-Ddtrace=enabled,-Ddtrace=disabled,,"
+PACKAGECONFIG[udev] = "-Dudev=enabled -Dpciaccess=enabled,-Dudev=disabled,udev libpciaccess,"
+PACKAGECONFIG[selinux] = "-Dselinux=enabled,-Dselinux=disabled,libselinux,"
PACKAGECONFIG[python] = ",,python3,"
-PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl,cyrus-sasl"
-PACKAGECONFIG[iproute2] = "ac_cv_path_IP_PATH=/sbin/ip,ac_cv_path_IP_PATH=,iproute2,iproute2"
-PACKAGECONFIG[numactl] = "--with-numactl,--without-numactl,numactl,"
-PACKAGECONFIG[fuse] = "--with-fuse,--without-fuse,fuse,"
-PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit,"
-PACKAGECONFIG[libcap-ng] = "--with-capng,--without-capng,libcap-ng,"
-PACKAGECONFIG[wireshark] = "--with-wireshark-dissector,--without-wireshark-dissector,wireshark libwsutil,"
-PACKAGECONFIG[apparmor-profiles] = "--with-apparmor-profiles, --without-apparmor-profiles,"
-PACKAGECONFIG[firewalld] = "--with-firewalld, --without-firewalld,"
-PACKAGECONFIG[libpcap] = "--with-libpcap, --without-libpcap,libpcap,libpcap"
-PACKAGECONFIG[numad] = "--with-numad, --without-numad,"
+PACKAGECONFIG[sasl] = "-Dsasl=enabled,-Dsasl=disabled,cyrus-sasl,cyrus-sasl"
+PACKAGECONFIG[numactl] = "-Dnumactl=enabled,-Dnumactl=disabled,numactl,"
+PACKAGECONFIG[fuse] = "-Dfuse=enabled,-Dfuse=disabled,fuse,"
+PACKAGECONFIG[audit] = "-Daudit=enabled,-Daudit=disabled,audit,"
+PACKAGECONFIG[libcap-ng] = "-Dcapng=enabled,-Dcapng=disabled,libcap-ng,"
+PACKAGECONFIG[wireshark] = "-Dwireshark_dissector=enabled,-Dwireshark_dissector=disabled,wireshark libwsutil,"
+PACKAGECONFIG[apparmor_profiles] = "-Dapparmor_profiles=true, -Dapparmor_profiles=false,"
+PACKAGECONFIG[firewalld] = "-Dfirewalld=enabled, -Dfirewalld=disabled,"
+PACKAGECONFIG[libpcap] = "-Dlibpcap=enabled, -Dlibpcap=disabled,libpcap,libpcap"
+PACKAGECONFIG[numad] = "-Dnumad=enabled, -Dnumad=disabled,"

# Enable the Python tool support
require libvirt-python.inc
@@ -255,7 +198,7 @@ do_compile() {

cd ${B}
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:${B}/src:"
- oe_runmake all
+ ninja all
}

do_install_prepend() {
@@ -278,6 +221,8 @@ do_install_append() {
fi

if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ mkdir -p ${D}/lib
+ mv ${D}/usr/lib/systemd ${D}/lib
# This variable is used by libvirtd.service to start libvirtd in the right mode
sed -i '/#LIBVIRTD_ARGS="--listen"/a LIBVIRTD_ARGS="--listen --daemon"' ${D}/${sysconfdir}/sysconfig/libvirtd

@@ -360,7 +305,7 @@ do_install_append() {
# connection via 127.0.0.1 is available out of box.
install -d ${D}/etc/pki/CA
install -d ${D}/etc/pki/libvirt/private
- install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
+ install -m 0755 ${WORKDIR}/gnutls-helper.py ${D}/${bindir}
install -m 0644 ${WORKDIR}/cakey.pem ${D}/${sysconfdir}/pki/libvirt/private/cakey.pem
install -m 0644 ${WORKDIR}/cacert.pem ${D}/${sysconfdir}/pki/CA/cacert.pem
install -m 0644 ${WORKDIR}/serverkey.pem ${D}/${sysconfdir}/pki/libvirt/private/serverkey.pem
@@ -376,10 +321,10 @@ do_install_append() {
chmod 4755 ${D}${bindir}/virt-login-shell
}

-EXTRA_OECONF += " \
- --with-init-script=systemd \
- --with-test-suite \
- --with-runstatedir=/run \
+EXTRA_OEMESON += " \
+ -Dinit_script=systemd \
+ -Drunstatedir=/run \
+ -Dtests=enabled \
"

# gcc9 end up mis-compiling qemuxml2argvtest.o with Og which then
@@ -392,11 +337,11 @@ EXTRA_OEMAKE = "BUILD_DIR=${B} DEST_DIR=${D}${PTEST_PATH} PTEST_DIR=${PTEST_PATH
PRIVATE_LIBS_${PN}-ptest_append = "libvirt-admin.so.0"

do_compile_ptest() {
- oe_runmake -C tests buildtest-TESTS
+ ninja -C tests buildtest-TESTS
}

do_install_ptest() {
- oe_runmake -C tests install-ptest
+ ninja -C tests install-ptest

find ${S}/tests -maxdepth 1 -type d -exec cp -r {} ${D}${PTEST_PATH}/tests/ \;

--
2.27.0




--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II


[PATCH 5/5] python3-newrelic: Upgrade 6.0.1.155 -> 6.2.0.156

Leon Anavi
 

Upgrade to release 6.2.0.156:

- Improved CPU metric sampling
- Improved memory metric sampling
- Increased custom attribute limit from 64 to 128
- Fixed a TypeError with Uvicorn and unix sockets
- Fixed a crash when using a FIPS compliant system with Cross
Agent Tracing enabled

Signed-off-by: Leon Anavi <leon.anavi@...>
---
...on3-newrelic_6.0.1.155.bb => python3-newrelic_6.2.0.156.bb} | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
rename recipes-devtools/python/{python3-newrelic_6.0.1.155.bb => python3-newrelic_6.2.0.156.bb} (83%)

diff --git a/recipes-devtools/python/python3-newrelic_6.0.1.155.bb b/recipes-devtools/python/python3-newrelic_6.2.0.156.bb
similarity index 83%
rename from recipes-devtools/python/python3-newrelic_6.0.1.155.bb
rename to recipes-devtools/python/python3-newrelic_6.2.0.156.bb
index f79c99c..d3bbd9e 100644
--- a/recipes-devtools/python/python3-newrelic_6.0.1.155.bb
+++ b/recipes-devtools/python/python3-newrelic_6.2.0.156.bb
@@ -8,8 +8,7 @@ SECTION = "devel/python"
LICENSE = "BSD-3-Clause & MIT & Python-2.0 & BSD-2-Clause & NewRelic"
LIC_FILES_CHKSUM = "file://LICENSE;md5=2b42edef8fa55315f34f2370b4715ca9"

-SRC_URI[md5sum] = "0acf701c37ceb590e2a12d358ced16d7"
-SRC_URI[sha256sum] = "e96689fc75eb2b1591903ad9e74225f5e1da734afcd3151d318c53f6635b5dda"
+SRC_URI[sha256sum] = "3dec4647de67609570c4e305f2b6432a00e0a0940a7ac69660ee92268b49d6e7"

inherit pypi setuptools3

--
2.17.1


[PATCH 4/5] python3-boto3: Upgrade 1.14.7 -> 1.17.48

Leon Anavi
 

Upgrade to release 1.17.48:

- api-change:lookoutequipment: [botocore] This release introduces
support for Amazon Lookout for Equipment.
- api-change:kinesis-video-archived-media: [botocore]
Documentation updates for archived.kinesisvideo
- api-change:robomaker: [botocore] This release allows RoboMaker
customers to specify custom tools to run with their simulation
job
- api-change:appstream: [botocore] This release provides support
for image updates
- api-change:ram: [botocore] Documentation updates for AWS RAM
resource sharing
- api-change:customer-profiles: [botocore] Documentation updates
for Put-Integration API
- api-change:autoscaling: [botocore] Amazon EC2 Auto Scaling
announces Warm Pools that help applications to scale out faster
by pre-initializing EC2 instances and save money by requiring
fewer continuously running instances

Signed-off-by: Leon Anavi <leon.anavi@...>
---
.../{python3-boto3_1.14.7.bb => python3-boto3_1.17.48.bb} | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
rename recipes-devtools/python/{python3-boto3_1.14.7.bb => python3-boto3_1.17.48.bb} (75%)

diff --git a/recipes-devtools/python/python3-boto3_1.14.7.bb b/recipes-devtools/python/python3-boto3_1.17.48.bb
similarity index 75%
rename from recipes-devtools/python/python3-boto3_1.14.7.bb
rename to recipes-devtools/python/python3-boto3_1.17.48.bb
index f9e979e..fd2e479 100644
--- a/recipes-devtools/python/python3-boto3_1.14.7.bb
+++ b/recipes-devtools/python/python3-boto3_1.17.48.bb
@@ -9,7 +9,6 @@ SECTION = "devel/python"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=2ee41112a44fe7014dce33e26468ba93"

-SRC_URI[md5sum] = "fb8b77d4ac10a971570419dd3613196e"
-SRC_URI[sha256sum] = "4856c8cb4150b900cc7dccbdf16f542fb8c12e97b17639979e58760847f7cf35"
+SRC_URI[sha256sum] = "e86c15049dc07cb67e8b466795f004f1f23c1acf078d47283cd5e4a692a5aa37"

inherit pypi setuptools3
--
2.17.1


[PATCH 2/5] python3-dotenv: Upgrade 0.13.0 -> 0.17.0

Leon Anavi
 

Upgrade to release 0.17.0:

- Make dotenv get <key> only show the value, not key=value
- Add --override/--no-override option to dotenv run

Signed-off-by: Leon Anavi <leon.anavi@...>
---
.../{python3-dotenv_0.13.0.bb => python3-dotenv_0.17.0.bb} | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
rename recipes-devtools/python/{python3-dotenv_0.13.0.bb => python3-dotenv_0.17.0.bb} (70%)

diff --git a/recipes-devtools/python/python3-dotenv_0.13.0.bb b/recipes-devtools/python/python3-dotenv_0.17.0.bb
similarity index 70%
rename from recipes-devtools/python/python3-dotenv_0.13.0.bb
rename to recipes-devtools/python/python3-dotenv_0.17.0.bb
index e7644cb..1fd13b7 100644
--- a/recipes-devtools/python/python3-dotenv_0.13.0.bb
+++ b/recipes-devtools/python/python3-dotenv_0.17.0.bb
@@ -7,7 +7,6 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=55ee2c3471d386636a719c8ccac40b31"

PYPI_PACKAGE = "python-dotenv"

-SRC_URI[md5sum] = "3dfde58c6a5fbd41292c4039a68f70f4"
-SRC_URI[sha256sum] = "3b9909bc96b0edc6b01586e1eed05e71174ef4e04c71da5786370cebea53ad74"
+SRC_URI[sha256sum] = "471b782da0af10da1a80341e8438fca5fadeba2881c54360d5fd8d03d03a4f4a"

inherit pypi setuptools3
--
2.17.1


[PATCH 3/5] python3-webob: Upgrade 1.8.5 -> 1.8.7

Leon Anavi
 

Upgrade to release 1.8.7:

- Decoding deflate-encoded responses now supports data which is
packed in a zlib container as it is supposed to be. The old,
non-standard behaviour is still supported.

Signed-off-by: Leon Anavi <leon.anavi@...>
---
.../python/{python3-webob_1.8.5.bb => python3-webob_1.8.7.bb} | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
rename recipes-devtools/python/{python3-webob_1.8.5.bb => python3-webob_1.8.7.bb} (67%)

diff --git a/recipes-devtools/python/python3-webob_1.8.5.bb b/recipes-devtools/python/python3-webob_1.8.7.bb
similarity index 67%
rename from recipes-devtools/python/python3-webob_1.8.5.bb
rename to recipes-devtools/python/python3-webob_1.8.7.bb
index 74a36e3..a51f8dd 100644
--- a/recipes-devtools/python/python3-webob_1.8.5.bb
+++ b/recipes-devtools/python/python3-webob_1.8.7.bb
@@ -6,8 +6,7 @@ LIC_FILES_CHKSUM = "file://docs/license.txt;md5=8ed3584bcc78c16da363747ccabc5af5

PYPI_PACKAGE = "WebOb"

-SRC_URI[md5sum] = "1761f416e8cf53f6fb674149cc223bd1"
-SRC_URI[sha256sum] = "05aaab7975e0ee8af2026325d656e5ce14a71f1883c52276181821d6d5bf7086"
+SRC_URI[sha256sum] = "b64ef5141be559cfade448f044fa45c2260351edcb6a8ef6b7e00c7dcef0c323"

inherit setuptools3 pypi

--
2.17.1


[PATCH 1/5] python3-paramiko: Upgrade 2.7.0 -> 2.7.2

Leon Anavi
 

Upgrade to release 2.7.2:

- Update our CI to catch issues with sdist generation,
installation and testing.
- Add missing test suite fixtures directory to MANIFEST.in,
reinstating the ability to run Paramiko's tests from an sdist
tarball.
- Remove leading whitespace from OpenSSH RSA test suite static
key fixture, to conform better to spec.
- Fix incorrect string formatting causing unhelpful error message
annotation when using Kerberos/GSSAPI.
- Fix incorrectly swapped order of p and q numbers when loading
OpenSSH-format RSA private keys. At minimum this should address
a slowdown when using such keys, and it also means Paramiko
works with Cryptography 3.1 and above (which complains
strenuously when this problem appears).

Signed-off-by: Leon Anavi <leon.anavi@...>
---
.../{python3-paramiko_2.7.0.bb => python3-paramiko_2.7.2.bb} | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
rename recipes-devtools/python/{python3-paramiko_2.7.0.bb => python3-paramiko_2.7.2.bb} (70%)

diff --git a/recipes-devtools/python/python3-paramiko_2.7.0.bb b/recipes-devtools/python/python3-paramiko_2.7.2.bb
similarity index 70%
rename from recipes-devtools/python/python3-paramiko_2.7.0.bb
rename to recipes-devtools/python/python3-paramiko_2.7.2.bb
index d03702c..3d05efb 100644
--- a/recipes-devtools/python/python3-paramiko_2.7.0.bb
+++ b/recipes-devtools/python/python3-paramiko_2.7.2.bb
@@ -5,8 +5,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=fd0120fc2e9f841c73ac707a30389af5"

inherit pypi setuptools3

-SRC_URI[md5sum] = "b130f3e1c3442d21c1a0c9ae17776f4e"
-SRC_URI[sha256sum] = "fba9c46340e3d690ad5a9d0dbf06677cd91425de3afa7e9c0c187298ee4ddd0d"
+SRC_URI[sha256sum] = "7f36f4ba2c0d81d219f4595e35f70d56cc94f9ac40a6acdf51d6ca210ce65035"

RDEPENDS_${PN} += " \
python3-bcrypt \
--
2.17.1

1141 - 1160 of 7487