Squashed 'import-layers/meta-virtualization/'.
5cacf86 containerd: Fix build on 386
120745a xen: add a README to provide info for users
1249508 xen: remove unused patch
b99f54e xen: update license checksum
36db755 xen: ensure we build release builds
358c14b xen: make it easy to override hypervisor config
beadd3a xen: add gnu-efi to DEPENDS
bec00eb docker: cosmetic - fix indentation
2307ad4 docker: use a switch to set GOARCH based on TARGET_ARCH value
629b6bb docker: update description
23eb02c docker: update to docker 1.12.5 release
20c1905 xen-image-minimal: if DISTRO_FEATURES is missing xen error
7946a48 README: make it easier to copy and paste send command
923bf51 xen: bump to version 4.8.0
1f3d204 xen: switch to updated download URL
f364321 xen: add extra generated file to package
ada27ac kernel: add linux-yocto-4.8 bbappend
2d00a79 protobuf: ptest: Fix QA file-rdep warning
b2f3852 protobuf: Fix QA error for GNU_HASH
d55a579 go-cross: Fix failure if building go-cross first
c3d8676 go-native: Add work around for binutils >= 2.27
d866c43 containerd: use the target toolchain to build cgo components
58bc830 go-cross: Fix host contamination for x86_64 host to x86_64 target
5caa9ba lxc: add glibc-utils to rdepend
05d080d Revert "go-cross: Fix host contamination for x86_64 host to x86_64 target"
b25af25 libvirt: remove .o files for ptest
7ff08e5 go-cross: Fix host contamination for x86_64 host to x86_64 target
1bf8c77 multipath-tools: Drop recipe
b9b7ece criu: uprev to 2.5
c415f97 protobuf-c: uprev to 1.2.1 from 0.15
5e5e09a protobuf: uprev 3.0.0 from 2.6.1
222f8d4 kvmtool: add lightweight hypervisor native Linux KVM tool
a3766e4 go-distribution-digest: Fix do_package failure
548c88a libvirt: Add missing test helpers and remove windows 1252
c46b790 protobuf: fix source location
84a1671 custom-licenses: add NewRelic license
bc4459e cgroup-lite: update to version 1.11
db5ef80 docker: update license md5sum
951c83c docker: cgroup-lite is not required with systemd
3907b09 libvirt: update list of licenses
aeb1763 openvswitch: add missing python modules to execute ovs-test program
42af8a1 libvirt: fix CVE-2016-5008
bdcf476 libvirt: fix build error for arm
af2948e libvirt: upgrade 1.3.2 -> 1.3.5
357ca45 libvirt: fix python install in multilib case.
f7fd448 xen: uprev to 4.7.0
9179537 libvirt: add missing configuration file
1fd5a59 containers: uprev docker (1.12.0), runc (1.0.0-rc) and containerd (0.2.2)
7d41ad1 docker: fix GNU hash QA warning
59c338a iasl: Upgrade to 20160527 from 20120215
b657b65 lxc: fixes lxc segment fault issue on arm if it is compiled with GCC 5.2
cb16321 base-files: remove bbappend hacking on fstab
f53bca5 netns: New recipe
0ce0b5c runc: Use go-osarchmap to set GOARCH
6b656b8 runc: Backport fix for building against musl
7605443 docker-registry: Make version dependence compatible with opkg
06dccfa criu: fix build-deps qa warning
01aa8f1 docker: override GOROOT at build time
313b06b go-cross: allow tmp directory to already exist
da1e90e protobuf: Add RDEPENDS for ptest
dc7ab5b libvirt-python: backport a patch to fix crash in getAllDomainStats
16a31ef containerd: replace deprecated base_contains
0afa6e1 protobuf: add protobuf-2.5.0 into devtool
823c8cf criu: remove protobuf-2.6.1 and the related
3c3293e go-native: don't use host /var/tmp for temp build artifacts
77e846b docker: drop obselete dependencies
6f1ea8b lxc: workaround to ignore deprecated
fd94b3f openvswitch: Fix rootfs creation errors
7e2ad37 go-cross: don't use host /var/tmp for temporary build artifacts
a3617f2 globally replace 'base_contains' calls with 'bb.utils.contains'
1fd94d8 criu: Fix QA warning
6f17a76 docker: uprev to 1.11.1
fd1a6d1 runc: initial recipe
e919b64 containerd: initial recipe
79654fc go: add go-cross 1.6
5dedd39 lxc: update configuration to include all required options
REVERT: c4a1711 docker-registry: Make version dependence compatible with opkg
REVERT: b6b8885 docker: drop obselete dependencies
REVERT: 44440d7 go-cross: allow tmp directory to already exist
REVERT: 7f3cc50 go-native: don't use host /var/tmp for temp build artifacts
REVERT: 25ee1f1 go-cross: don't use host /var/tmp for temporary build artifacts
REVERT: a9a9fc0 go: add go-cross 1.6
Change-Id: Ic4431940d01a4c0ec113786583c6e09cec88fb03
git-subtree-dir: import-layers/meta-virtualization
git-subtree-split: 5cacf8632da2c20dc994c3b33608f0d3cea9df13
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
diff --git a/import-layers/meta-virtualization/recipes-extended/iasl/iasl/Make-CC-definition-conditional.patch b/import-layers/meta-virtualization/recipes-extended/iasl/iasl/Make-CC-definition-conditional.patch
new file mode 100644
index 0000000..f69a36c
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/iasl/iasl/Make-CC-definition-conditional.patch
@@ -0,0 +1,29 @@
+[PATCH] Make CC definition conditional
+
+Upstream-Status: pending
+
+By hardcoding CC's definition to gcc, make this packages unable to
+cross-compile. the -e options of make can not override the CC since
+it is not defined in Makefile, but in Makefile.config
+
+Signed-off-by: Roy.Li <rongqing.li@windriver.com>
+---
+ generate/unix/Makefile.config | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/generate/unix/Makefile.config b/generate/unix/Makefile.config
+index 8d41399..72d597d 100644
+--- a/generate/unix/Makefile.config
++++ b/generate/unix/Makefile.config
+@@ -35,7 +35,7 @@
+ .SUFFIXES :
+ PROGS = acpibin acpidump acpiexamples acpiexec acpihelp acpinames acpisrc acpixtract iasl
+ HOST ?= _CYGWIN
+-CC = gcc
++CC ?= gcc
+
+ #
+ # Common defines
+--
+1.9.1
+
diff --git a/import-layers/meta-virtualization/recipes-extended/iasl/iasl/iasl.1 b/import-layers/meta-virtualization/recipes-extended/iasl/iasl/iasl.1
new file mode 100644
index 0000000..000a3b8
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/iasl/iasl/iasl.1
@@ -0,0 +1,135 @@
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH IASL 1 "October 14, 2005"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+iasl \- ACPI Source Language compiler/decompiler
+.SH SYNOPSIS
+.B iasl
+.RI [ options ]
+.RI [ "input file" ]
+.SH DESCRIPTION
+This manual page documents briefly the
+.B iasl
+command. The option list is taken from the iasl interactive help.
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+.B iasl
+is an ASL compiler and decompiler.
+
+.SH OPTIONS
+
+.PP
+.SS General Output
+.TP
+.B \-p <prefix>
+Specify filename prefix for all output files (including .aml)
+.TP
+.B \-vi
+Less verbose errors and warnings for use with IDEs
+.TP
+.B \-vo
+Enable optimization comments
+.TP
+.B \-vr
+Disable remarks
+.TP
+.B \-vs
+Disable signon
+
+.PP
+.SS AML Output Files
+.TP
+.B \-s<a|c>
+Create AML in assembler or C source file (*.asm or *.c)
+.TP
+.B \-i<a|c>
+Create assembler or C include file (*.inc or *.h)
+.TP
+.B \-t<a|c>
+Create AML in assembler or C hex table (*.hex)
+
+.PP
+.SS AML Code Generation
+.TP
+.B \-oa
+Disable all optimizations (compatibility mode)
+.TP
+.B \-of
+Disable constant folding
+.TP
+.B \-oi
+Disable integer optimization to Zero/One/Ones
+.TP
+.B \-on
+Disable named reference string optimization
+.TP
+.B \-r<Revision>
+Override table header Revision (1-255)
+
+.PP
+.SS Listings
+.TP
+.B \-l
+Create mixed listing file (ASL source and AML) (*.lst)
+.TP
+.B \-ln
+Create namespace file (*.nsp)
+.TP
+.B \-ls
+Create combined source file (expanded includes) (*.src)
+
+.PP
+.SS AML Disassembler
+.TP
+.B \-d [file]
+Disassemble AML to ASL source code file (*.dsl)
+.TP
+.B \-dc [file]
+Disassemble AML and immediately compile it
+.br
+(Obtain DSDT from current system if no input file)
+.TP
+.B \-e
+Generate External() statements for unresolved symbols
+.TP
+.B \-g
+Get ACPI tables and write to files (*.dat)
+
+.PP
+.SS Miscellaneous
+.TP
+.B \-a
+Verify source file is entirely ASCII text (0x00-0x7F)
+
+.PP
+.SS Help
+.TP
+.B \-h
+Additional help and compiler debug options
+.TP
+.B \-hc
+Display operators allowed in constant expressions
+.TP
+.B \-hr
+Display ACPI reserved method names
+
+.SH AUTHOR
+iasl was written by Robert Moore <robert.moore@intel.com>.
+.PP
+This manual page was written by Mattia Dongili <malattia@debian.org>,
+for the Debian project (but may be used by others).
diff --git a/import-layers/meta-virtualization/recipes-extended/iasl/iasl_20120215.bb b/import-layers/meta-virtualization/recipes-extended/iasl/iasl_20120215.bb
deleted file mode 100644
index 5ce0930..0000000
--- a/import-layers/meta-virtualization/recipes-extended/iasl/iasl_20120215.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-DESCRIPTION = "This is a cross development C compiler, assembler and linker environment for the production of 8086 executables (Optionally MSDOS COM)"
-HOMEPAGE = "http://www.acpica.org/"
-LICENSE = "Intel-ACPI"
-LIC_FILES_CHKSUM = "file://asldefine.h;endline=115;md5=d4d7cf809b8b5e03131327b3f718e8f0"
-SECTION = "console/tools"
-PR="r1"
-
-DEPENDS="flex bison"
-
-SRC_URI="https://acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz"
-
-SRC_URI[md5sum] = "324c89e5bb9002e2711e0494290ceacc"
-SRC_URI[sha256sum] = "b2b497415f29ddbefe7be8b9429b62c1f1f6e1ec11456928e4e7da86578e5b8d"
-
-S="${WORKDIR}/acpica-unix-${PV}/source/compiler"
-
-NATIVE_INSTALL_WORKS = "1"
-BBCLASSEXTEND = "native"
-
-do_compile() {
- CFLAGS="-Wno-error=redundant-decls" $MAKE
-}
-
-do_install() {
- mkdir -p ${D}${prefix}/bin
- cp ${S}/iasl ${D}${prefix}/bin
-}
-
-
diff --git a/import-layers/meta-virtualization/recipes-extended/iasl/iasl_20160527.bb b/import-layers/meta-virtualization/recipes-extended/iasl/iasl_20160527.bb
new file mode 100644
index 0000000..62e83c4
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/iasl/iasl_20160527.bb
@@ -0,0 +1,36 @@
+SUMMARY = "Intel ASL compiler/decompiler"
+DESCRIPTION = "This is a cross development C compiler, assembler and linker environment for the production of 8086 executables (Optionally MSDOS COM)"
+HOMEPAGE = "http://www.acpica.org/"
+LICENSE = "Intel-ACPI"
+LIC_FILES_CHKSUM = "file://source/compiler/aslcompiler.h;beginline=7;endline=114;md5=09f82edcd148ab4c8aa554bc3e9d0676"
+SECTION = "console/tools"
+
+DEPENDS = "bison-native flex-native"
+
+SRC_URI = "https://www.acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz \
+ file://iasl.1 \
+ file://Make-CC-definition-conditional.patch \
+"
+
+SRC_URI[md5sum] = "be677fc358de9dadc036e1ea678a101b"
+SRC_URI[sha256sum] = "6b681732624de1eb58b2bcf1c7ef0744ba14ed35fcaa534d4421574782fbb848"
+
+S = "${WORKDIR}/acpica-unix-${PV}/"
+
+BBCLASSEXTEND = "native"
+CFLAGS += "-D_LINUX -DACPI_ASL_COMPILER -I../include -I../compiler"
+
+COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"
+
+# By setting NOOPT we suppress forcing -O2 and setting _FORTIFY_SOURCE=2. Let the
+# optimization and security cflags set them.
+#
+do_compile() {
+ oe_runmake iasl NOOPT=TRUE NOFORTIFY=TRUE
+}
+
+do_install() {
+ install -d ${D}${bindir} ${D}${mandir}/man1
+ install -m 0755 ${S}/generate/unix/bin/iasl ${D}${bindir}
+ install -m 0644 ${WORKDIR}/iasl.1 ${D}${mandir}/man1
+}
diff --git a/import-layers/meta-virtualization/recipes-extended/images/xen-guest-image-minimal.bb b/import-layers/meta-virtualization/recipes-extended/images/xen-guest-image-minimal.bb
index f13940c..ab7e92c 100644
--- a/import-layers/meta-virtualization/recipes-extended/images/xen-guest-image-minimal.bb
+++ b/import-layers/meta-virtualization/recipes-extended/images/xen-guest-image-minimal.bb
@@ -7,8 +7,8 @@
${@bb.utils.contains('MACHINE_FEATURES', 'acpi', 'kernel-module-xen-acpi-processor', '', d)} \
"
-IMAGE_INSTALL += "${@base_contains('DISTRO_FEATURES', 'x11', ' xf86-video-fbdev', '', d)}"
-IMAGE_INSTALL += "${@base_contains('DISTRO_FEATURES', 'x11', ' xf86-video-vesa', '', d)}"
+IMAGE_INSTALL += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' xf86-video-fbdev', '', d)}"
+IMAGE_INSTALL += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', ' xf86-video-vesa', '', d)}"
LICENSE = "MIT"
diff --git a/import-layers/meta-virtualization/recipes-extended/images/xen-image-minimal.bb b/import-layers/meta-virtualization/recipes-extended/images/xen-image-minimal.bb
index 26b6d06..b8c2002 100644
--- a/import-layers/meta-virtualization/recipes-extended/images/xen-image-minimal.bb
+++ b/import-layers/meta-virtualization/recipes-extended/images/xen-image-minimal.bb
@@ -20,6 +20,14 @@
inherit core-image
+do_check_xen_state() {
+ if [ "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' yes', 'no', d)}" = "no" ]; then
+ die "DISTRO_FEATURES does not contain 'xen'"
+ fi
+}
+
+addtask check_xen_state before do_rootfs
+
syslinux_iso_populate_append() {
install -m 0444 ${STAGING_DATADIR}/syslinux/libcom32.c32 ${ISODIR}${ISOLINUXDIR}
install -m 0444 ${STAGING_DATADIR}/syslinux/mboot.c32 ${ISODIR}${ISOLINUXDIR}
diff --git a/import-layers/meta-virtualization/recipes-extended/kvmtool/files/external-crosscompiler.patch b/import-layers/meta-virtualization/recipes-extended/kvmtool/files/external-crosscompiler.patch
new file mode 100644
index 0000000..75cef3b
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/kvmtool/files/external-crosscompiler.patch
@@ -0,0 +1,31 @@
+Upstream-Status: Inappropriate [embedded specific]
+
+This allows OpenEmbedded to pass in cross compiler configuration using
+the default envirnment variables. It is required so that kvmtool can
+be linked against the cross-compiled libfdt library.
+
+diff --git a/Makefile b/Makefile
+index 1f0196f..8bfb068 100644
+--- a/Makefile
++++ b/Makefile
+@@ -14,11 +14,6 @@ export E Q
+ include config/utilities.mak
+ include config/feature-tests.mak
+
+-CC := $(CROSS_COMPILE)gcc
+-CFLAGS :=
+-LD := $(CROSS_COMPILE)ld
+-LDFLAGS :=
+-
+ FIND := find
+ CSCOPE := cscope
+ TAGS := ctags
+@@ -297,7 +292,7 @@ $(warning No static libc found. Skipping guest init)
+ endif
+
+ ifeq (y,$(ARCH_WANT_LIBFDT))
+- ifneq ($(call try-build,$(SOURCE_LIBFDT),$(CFLAGS),-lfdt),y)
++ ifneq ($(call try-build,$(SOURCE_LIBFDT),$(CPPFLAGS) $(CFLAGS),-lfdt),y)
+ $(error No libfdt found. Please install libfdt-dev package)
+ else
+ CFLAGS_DYNOPT += -DCONFIG_HAS_LIBFDT
diff --git a/import-layers/meta-virtualization/recipes-extended/kvmtool/kvmtool.bb b/import-layers/meta-virtualization/recipes-extended/kvmtool/kvmtool.bb
new file mode 100644
index 0000000..3f299dd
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/kvmtool/kvmtool.bb
@@ -0,0 +1,23 @@
+SUMMARY = "Native Linux KVM tool"
+DESCRIPTION = "kvmtool is a lightweight tool for hosting KVM guests."
+
+LICENSE = "GPLv2"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fcb02dc552a041dee27e4b85c7396067"
+
+DEPENDS = "dtc libaio zlib"
+
+SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool.git \
+ file://external-crosscompiler.patch \
+ "
+
+SRCREV = "0093df80d754e1a05b016e5a4ccd4b51a00c562c"
+PV = "3.18.0+git${SRCREV}"
+
+S = "${WORKDIR}/git"
+
+EXTRA_OEMAKE='ARCH="${TARGET_ARCH}" V=1'
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 0755 ${S}/lkvm ${D}${bindir}/
+}
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-1.3.5/0001-qemu-Let-empty-default-VNC-password-work-as-document.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-1.3.5/0001-qemu-Let-empty-default-VNC-password-work-as-document.patch
new file mode 100644
index 0000000..1d13dd3
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-1.3.5/0001-qemu-Let-empty-default-VNC-password-work-as-document.patch
@@ -0,0 +1,81 @@
+Upstream-Status: Backport
+
+Backport patch to fix CVE-2016-5008 from:
+
+https://libvirt.org/git/?p=libvirt.git;a=commit;h=f32441c69bf450d6ac593c3acd621c37e120cdaf
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+From f32441c69bf450d6ac593c3acd621c37e120cdaf Mon Sep 17 00:00:00 2001
+From: Jiri Denemark <jdenemar@redhat.com>
+Date: Tue, 28 Jun 2016 14:39:58 +0200
+Subject: [PATCH] qemu: Let empty default VNC password work as documented
+
+CVE-2016-5008
+
+Setting an empty graphics password is documented as a way to disable
+VNC/SPICE access, but QEMU does not always behaves like that. VNC would
+happily accept the empty password. Let's enforce the behavior by setting
+password expiration to "now".
+
+https://bugzilla.redhat.com/show_bug.cgi?id=1180092
+
+Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
+(cherry picked from commit bb848feec0f3f10e92dd8e5231ae7aa89b5598f3)
+---
+ src/qemu/qemu_hotplug.c | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c
+index 5f12d77..fda28b0 100644
+--- a/src/qemu/qemu_hotplug.c
++++ b/src/qemu/qemu_hotplug.c
+@@ -3547,6 +3547,7 @@ qemuDomainChangeGraphicsPasswords(virQEMUDriverPtr driver,
+ time_t now = time(NULL);
+ char expire_time [64];
+ const char *connected = NULL;
++ const char *password;
+ int ret = -1;
+ virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
+
+@@ -3554,16 +3555,14 @@ qemuDomainChangeGraphicsPasswords(virQEMUDriverPtr driver,
+ ret = 0;
+ goto cleanup;
+ }
++ password = auth->passwd ? auth->passwd : defaultPasswd;
+
+ if (auth->connected)
+ connected = virDomainGraphicsAuthConnectedTypeToString(auth->connected);
+
+ if (qemuDomainObjEnterMonitorAsync(driver, vm, asyncJob) < 0)
+ goto cleanup;
+- ret = qemuMonitorSetPassword(priv->mon,
+- type,
+- auth->passwd ? auth->passwd : defaultPasswd,
+- connected);
++ ret = qemuMonitorSetPassword(priv->mon, type, password, connected);
+
+ if (ret == -2) {
+ if (type != VIR_DOMAIN_GRAPHICS_TYPE_VNC) {
+@@ -3571,14 +3570,15 @@ qemuDomainChangeGraphicsPasswords(virQEMUDriverPtr driver,
+ _("Graphics password only supported for VNC"));
+ ret = -1;
+ } else {
+- ret = qemuMonitorSetVNCPassword(priv->mon,
+- auth->passwd ? auth->passwd : defaultPasswd);
++ ret = qemuMonitorSetVNCPassword(priv->mon, password);
+ }
+ }
+ if (ret != 0)
+ goto end_job;
+
+- if (auth->expires) {
++ if (password[0] == '\0') {
++ snprintf(expire_time, sizeof(expire_time), "now");
++ } else if (auth->expires) {
+ time_t lifetime = auth->validTo - now;
+ if (lifetime <= 0)
+ snprintf(expire_time, sizeof(expire_time), "now");
+--
+2.9.0
+
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-1.3.2/0001-to-fix-build-error.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-1.3.5/0001-to-fix-build-error.patch
similarity index 100%
rename from import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-1.3.2/0001-to-fix-build-error.patch
rename to import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-1.3.5/0001-to-fix-build-error.patch
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-python.inc b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-python.inc
index c1dafe9..bc2f1de 100644
--- a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-python.inc
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt-python.inc
@@ -18,8 +18,8 @@
SRC_URI += "http://libvirt.org/sources/python/libvirt-python-${PV}.tar.gz;name=libvirt_python"
SRC_URI += "file://libvirt_api_xml_path.patch;patchdir=../libvirt-python-${PV}"
-SRC_URI[libvirt_python.md5sum] = "ed018c714d7ddbe93221c796dff283ed"
-SRC_URI[libvirt_python.sha256sum] = "6d35ae9e7801573393b9c92471f39e6700d479f10b641df81d041b469f160bf8"
+SRC_URI[libvirt_python.md5sum] = "4dbd7ef9ee9c4dea5887b5b31eb04529"
+SRC_URI[libvirt_python.sha256sum] = "a0508a57637fd18a3584fb9d2322fb172f65708c9db16e0438a70eb0f36fa5c2"
export LIBVIRT_API_PATH = "${S}/docs/libvirt-api.xml"
export LIBVIRT_CFLAGS = "-I${S}/include"
@@ -41,14 +41,14 @@
do_compile_append() {
if [ "${LIBVIRT_PYTHON_ENABLE}" = "1" ]; then
- cd ${WORKDIR}/libvirt-python-${PV} && \
+ cd ${WORKDIR}/${BPN}-python-${PV} && \
${STAGING_BINDIR_NATIVE}/python-native/python setup.py build
fi
}
do_install_append() {
if [ "${LIBVIRT_PYTHON_ENABLE}" = "1" ]; then
- cd ${WORKDIR}/${PN}-python-${PV} && \
+ cd ${WORKDIR}/${BPN}-python-${PV} && \
${STAGING_BINDIR_NATIVE}/python-native/python setup.py install \
--install-lib=${D}/${PYTHON_SITEPACKAGES_DIR} ${LIBVIRT_INSTALL_ARGS}
fi
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-nsslinktest-also-build-virAtomic.h.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-nsslinktest-also-build-virAtomic.h.patch
new file mode 100644
index 0000000..6ab1c4e
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-nsslinktest-also-build-virAtomic.h.patch
@@ -0,0 +1,40 @@
+Upstream-Status: Submitted [http://www.redhat.com/archives/libvir-list/2016-August/msg00389.html]
+
+When build for architecture that don't use gcc atomic ops but pthread,
+it fails to build for arm:
+
+| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virClassNew':
+| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:153: undefined reference to `virAtomicLock'
+| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virObjectNew':
+| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:205: undefined reference to `virAtomicLock'
+| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virObjectUnref':
+| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:277: undefined reference to `virAtomicLock'
+| ../tools/nss/.libs/libnss_libvirt_impl.a(libvirt_nss_la-virobject.o): In function `virObjectRef':
+| /buildarea2/kkang/builds/qemuarm-Aug03/bitbake_build/tmp/work/armv5e-wrs-linux-gnueabi/libvirt/1.3.5-r0/build/src/../../libvirt-1.3.5/src/util/virobject.c:298: undefined reference to `virAtomicLock'
+| collect2: error: ld returned 1 exit status
+
+It is similar with:
+
+http://libvirt.org/git/?p=libvirt.git;a=commit;h=12dc729
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+ src/Makefile.am | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 12b66c2..6e55972 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -2989,6 +2989,8 @@ noinst_LTLIBRARIES += libvirt-nss.la
+ libvirt_nss_la_SOURCES = \
+ util/viralloc.c \
+ util/viralloc.h \
++ util/viratomic.c \
++ util/viratomic.h \
+ util/virbitmap.c \
+ util/virbitmap.h \
+ util/virbuffer.c \
+--
+2.9.0
+
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch
new file mode 100644
index 0000000..217bdbc
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch
@@ -0,0 +1,28 @@
+From ffc71da15c3da068f85d16617b6e0c0175fc0110 Mon Sep 17 00:00:00 2001
+From: He Zhe <zhe.he@windriver.com>
+Date: Tue, 23 Aug 2016 02:28:47 -0400
+Subject: [PATCH] ptest: Remove Windows-1252 check from esxutilstest
+
+Currently we use iconv from glibc-locale and it does not support
+Windows-1252 and we don't need support windows character encoding.
+
+Signed-off-by: He Zhe <zhe.he@windriver.com>
+---
+ tests/esxutilstest.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/tests/esxutilstest.c b/tests/esxutilstest.c
+index 44bdc84..3223de3 100644
+--- a/tests/esxutilstest.c
++++ b/tests/esxutilstest.c
+@@ -258,7 +258,6 @@ mymain(void)
+ DO_TEST(ParseDatastorePath);
+ DO_TEST(ConvertDateTimeToCalendarTime);
+ DO_TEST(EscapeDatastoreItem);
+- DO_TEST(ConvertWindows1252ToUTF8);
+
+ return result == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
+ }
+--
+2.8.1
+
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-ptest-add-missing-test_helper-files.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-ptest-add-missing-test_helper-files.patch
new file mode 100644
index 0000000..b4f1e27
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/0001-ptest-add-missing-test_helper-files.patch
@@ -0,0 +1,29 @@
+From e625a42caca492fe7d52b70bbbf83ae4d99cb15e Mon Sep 17 00:00:00 2001
+From: He Zhe <zhe.he@windriver.com>
+Date: Tue, 23 Aug 2016 02:16:20 -0400
+Subject: [PATCH] ptest: add missing test_helper files
+
+Signed-off-by: He Zhe <zhe.he@windriver.com>
+---
+ tests/Makefile.am | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 1c85656..2f8b9eb 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -1422,8 +1422,10 @@ install-ptest:
+ @(for file in $(PTESTS); do \
+ if [ -f .libs/$$file ]; then \
+ install .libs/$$file $(DEST_DIR)/tests; \
+- else \
++ 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;)
+--
+2.8.1
+
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/Revert-build-add-prefix-to-SYSTEMD_UNIT_DIR.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/Revert-build-add-prefix-to-SYSTEMD_UNIT_DIR.patch
index 16c3a16..02ddf68 100644
--- a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/Revert-build-add-prefix-to-SYSTEMD_UNIT_DIR.patch
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/Revert-build-add-prefix-to-SYSTEMD_UNIT_DIR.patch
@@ -1,3 +1,9 @@
+Upstream-Status: Inappropriate [configuration]
+
+Update context for version 1.3.5.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
From dd915e7f70e676aea93f750c75d16ce646e71e4b Mon Sep 17 00:00:00 2001
From: Mark Asselstine <mark.asselstine@windriver.com>
Date: Wed, 9 Sep 2015 11:52:44 -0400
@@ -24,20 +30,20 @@
index 2dbe81b..41ea2db 100644
--- a/daemon/Makefile.am
+++ b/daemon/Makefile.am
-@@ -445,7 +445,7 @@ endif ! LIBVIRT_INIT_SCRIPT_UPSTART
+@@ -449,7 +449,7 @@ endif ! LIBVIRT_INIT_SCRIPT_UPSTART
if LIBVIRT_INIT_SCRIPT_SYSTEMD
-SYSTEMD_UNIT_DIR = $(prefix)/lib/systemd/system
+SYSTEMD_UNIT_DIR = /lib/systemd/system
- BUILT_SOURCES += libvirtd.service libvirtd.socket
+ BUILT_SOURCES += libvirtd.service
- install-init-systemd: install-sysconfig libvirtd.service libvirtd.socket
+ install-init-systemd: install-sysconfig libvirtd.service
diff --git a/src/Makefile.am b/src/Makefile.am
index a316b4d..d271291 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
-@@ -2594,7 +2594,7 @@ EXTRA_DIST += \
+@@ -2633,7 +2633,7 @@ EXTRA_DIST += \
if WITH_LIBVIRTD
if LIBVIRT_INIT_SCRIPT_SYSTEMD
@@ -50,7 +56,7 @@
index b3227a7..0e58f73 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
-@@ -356,7 +356,7 @@ libvirt-guests.init: libvirt-guests.init.in libvirt-guests.sh
+@@ -380,7 +380,7 @@ libvirt-guests.init: libvirt-guests.init.in libvirt-guests.sh
EXTRA_DIST += libvirt-guests.service.in
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/install-missing-file.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/install-missing-file.patch
new file mode 100644
index 0000000..ecd4a87
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/install-missing-file.patch
@@ -0,0 +1,52 @@
+Upstream-Status: Inapproriate
+
+This patch is for ptest, so it is inapproriate to send to upstream.
+
+Update context for 1.3.5.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
+From 0780181a3285511f166487a54ebc231fc657edfe Mon Sep 17 00:00:00 2001
+From: Catalin Enache <catalin.enache@windriver.com>
+Date: Mon, 25 Jul 2016 16:38:51 +0300
+Subject: [PATCH] Install missing conf file
+
+openvzutilstest.conf file is needed by openvzutilstest test.
+
+Signed-off-by: Catalin Enache <catalin.enache@windriver.com>
+---
+ tests/Makefile.am | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 02e0dd8..187fbca 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -170,6 +170,7 @@ EXTRA_DIST = \
+ xml2vmxdata
+
+ test_helpers = commandhelper ssh virconftest
++test_misc =
+ test_programs = virshtest sockettest \
+ nodeinfotest virbuftest \
+ commandtest seclabeltest \
+@@ -259,6 +260,7 @@ endif WITH_LXC
+
+ if WITH_OPENVZ
+ test_programs += openvzutilstest
++test_misc += openvzutilstest.conf
+ endif WITH_OPENVZ
+
+ if WITH_ESX
+@@ -1293,7 +1295,7 @@ endif ! WITH_CIL
+
+ buildtest-TESTS: $(TESTS) $(test_libraries) $(test_helpers)
+
+-PTESTS = $(TESTS) $(test_helpers) test-lib.sh schematestutils.sh
++PTESTS = $(TESTS) $(test_helpers) $(test_misc) test-lib.sh schematestutils.sh
+
+ install-ptest:
+ list='$(TESTS) $(test_helpers) test-lib.sh schematestutils.sh'
+--
+2.7.4
+
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/runptest.patch b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/runptest.patch
index a33f569..b7609a8 100644
--- a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/runptest.patch
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt/runptest.patch
@@ -1,14 +1,18 @@
+Update context for 1.3.5.
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+---
Add 'install-ptest' rule.
Change TESTS_ENVIRONMENT to allow running outside build dir.
Signed-off-by: Mihaela Sendrea <mihaela.sendrea@enea.com>
Upstream-status: Pending
-
-Index: libvirt-1.2.4/tests/Makefile.am
-===================================================================
---- libvirt-1.2.4.orig/tests/Makefile.am
-+++ libvirt-1.2.4/tests/Makefile.am
-@@ -31,9 +31,11 @@
+---
+diff --git a/tests/Makefile.am b/tests/Makefile.am
+index 0c4ad3c..bb4e31a 100644
+--- a/tests/Makefile.am
++++ b/tests/Makefile.am
+@@ -33,11 +33,13 @@ INCLUDES = \
-I$(top_srcdir)/src/conf \
$(GETTEXT_CPPFLAGS)
@@ -16,13 +20,17 @@
+
AM_CFLAGS = \
- -Dabs_builddir="\"$(abs_builddir)\"" \
+- -Dabs_topbuilddir="\"$(abs_topbuilddir)\"" \
- -Dabs_srcdir="\"$(abs_srcdir)\"" \
+- -Dabs_topsrcdir="\"$(abs_topsrcdir)\"" \
+ -Dabs_builddir="\"$(PTEST_DIR)/tests\"" \
++ -Dabs_topbuilddir="\"$(PTEST_DIR)\"" \
+ -Dabs_srcdir="\"$(PTEST_DIR)/tests\"" \
++ -Dabs_topsrcdir="\"$(PTEST_DIR)\"" \
$(LIBXML_CFLAGS) \
- $(LIBNL_CFLAGS) \
+ $(LIBNL_CFLAGS) \
$(GNUTLS_CFLAGS) \
-@@ -48,7 +50,7 @@
+@@ -62,7 +64,7 @@ QEMULIB_LDFLAGS = \
if WITH_DRIVER_MODULES
INCLUDES += \
@@ -31,15 +39,12 @@
endif WITH_DRIVER_MODULES
PROBES_O =
-@@ -409,20 +411,19 @@
+@@ -483,17 +485,15 @@ TESTS = $(test_programs) \
# Also, BSD sh doesn't like 'a=b b=$$a', so we can't use an
# intermediate shell variable, but must do all the expansion in make
-lv_abs_top_builddir=$(shell cd '$(top_builddir)' && pwd)
- path_add = $(subst :,$(PATH_SEPARATOR),\
-- $(subst !,$(lv_abs_top_builddir)/,!daemon:!tools:!tests))
-+ $(subst !,$(PTEST_DIR)/,!daemon:!tools:!tests))
-
+-
VIR_TEST_EXPENSIVE ?= $(VIR_TEST_EXPENSIVE_DEFAULT)
TESTS_ENVIRONMENT = \
- abs_top_builddir=$(lv_abs_top_builddir) \
@@ -52,14 +57,13 @@
+ abs_builddir="$(PTEST_DIR)/tests" \
+ abs_srcdir="$(PTEST_DIR)/tests" \
+ CONFIG_HEADER="$(PTEST_DIR)/config.h" \
- PATH="$(path_add)$(PATH_SEPARATOR)$$PATH" \
SHELL="$(SHELL)" \
- LIBVIRT_DRIVER_DIR="$(lv_abs_top_builddir)/src/.libs" \
+ LIBVIRT_DRIVER_DIR="$(PTEST_DIR)/src/.libs" \
LIBVIRT_AUTOSTART=0 \
LC_ALL=C \
VIR_TEST_EXPENSIVE=$(VIR_TEST_EXPENSIVE) \
-@@ -1137,5 +1138,51 @@
+@@ -1388,5 +1388,51 @@ else ! WITH_CIL
EXTRA_DIST += objectlocking.ml
endif ! WITH_CIL
diff --git a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt_1.3.2.bb b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt_1.3.5.bb
similarity index 89%
rename from import-layers/meta-virtualization/recipes-extended/libvirt/libvirt_1.3.2.bb
rename to import-layers/meta-virtualization/recipes-extended/libvirt/libvirt_1.3.5.bb
index 42066c1..fad5632 100644
--- a/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt_1.3.2.bb
+++ b/import-layers/meta-virtualization/recipes-extended/libvirt/libvirt_1.3.5.bb
@@ -1,11 +1,10 @@
DESCRIPTION = "A toolkit to interact with the virtualization capabilities of recent versions of Linux."
HOMEPAGE = "http://libvirt.org"
-LICENSE = "LGPLv2.1+"
-LICENSE_${PN}-ptest = "GPLv2+ & LGPLv2.1"
+LICENSE = "LGPLv2.1+ & GPLv2+"
+LICENSE_${PN}-ptest = "GPLv2+ & LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LESSER;md5=4b54a1fd55a448865a0b32d41598759d"
SECTION = "console/tools"
-PR = "r1"
DEPENDS = "bridge-utils gnutls libxml2 lvm2 avahi parted curl libpcap util-linux e2fsprogs pm-utils \
iptables dnsmasq readline libtasn1 libxslt-native"
@@ -33,10 +32,15 @@
file://libvirt-use-pkg-config-to-locate-libcap.patch \
file://0001-to-fix-build-error.patch \
file://Revert-build-add-prefix-to-SYSTEMD_UNIT_DIR.patch \
+ file://install-missing-file.patch \
+ file://0001-nsslinktest-also-build-virAtomic.h.patch \
+ file://0001-qemu-Let-empty-default-VNC-password-work-as-document.patch \
+ file://0001-ptest-add-missing-test_helper-files.patch \
+ file://0001-ptest-Remove-Windows-1252-check-from-esxutilstest.patch \
"
-SRC_URI[libvirt.md5sum] = "b48b06bbc7efbe9973ed0f3f223d6da2"
-SRC_URI[libvirt.sha256sum] = "e3c6fc2683178660b371efb3ac7a1103a3f4b78efac7ffe560bc5917974ccf05"
+SRC_URI[libvirt.md5sum] = "f9dc1e63d559eca50ae0ee798a4c6c6d"
+SRC_URI[libvirt.sha256sum] = "93a23c44eb431da46c9458f95a66e29c9b98e37515d44b6be09e75b35ec94ac8"
inherit autotools gettext update-rc.d pkgconfig ptest systemd
@@ -107,7 +111,7 @@
/usr/lib/sysctl.d/60-libvirtd.conf \
${sbindir}/libvirtd \
${systemd_unitdir}/system/* \
- ${@base_contains('DISTRO_FEATURES', 'sysvinit', '', '${libexecdir}/libvirt-guests.sh', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', '', '${libexecdir}/libvirt-guests.sh', d)} \
"
FILES_${PN}-virsh = "${bindir}/virsh"
@@ -136,7 +140,6 @@
SYSTEMD_PACKAGES = "${PN}-libvirtd"
SYSTEMD_SERVICE_${PN}-libvirtd = " \
- libvirtd.socket \
libvirtd.service \
virtlockd.service \
libvirt-guests.service \
@@ -167,9 +170,9 @@
# full config
PACKAGECONFIG ??= "qemu yajl uml openvz vmware vbox esx iproute2 lxc test \
remote macvtap libvirtd netcf udev python ebtables \
- ${@base_contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
- ${@base_contains('DISTRO_FEATURES', 'xen', 'xen libxl xen-inotify', '', d)} \
- ${@base_contains('DISTRO_FEATURES', 'x11', 'polkit', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit libcap-ng', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'xen', 'xen libxl xen-inotify', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'polkit', '', d)} \
"
# enable,disable,depends,rdepends
@@ -248,7 +251,7 @@
>> ${D}${sysconfdir}/default/volatiles/99_libvirt
# Add hook support for libvirt
- mkdir -p ${D}/etc/libvirt/hooks
+ mkdir -p ${D}/etc/libvirt/hooks
# remove .la references to our working diretory
for i in `find ${D}${libdir} -type f -name *.la`; do
@@ -269,8 +272,10 @@
do_install_ptest() {
oe_runmake -C tests install-ptest
+ find ${S}/tests -maxdepth 1 -type d -exec cp -r {} ${D}${PTEST_PATH}/tests/ \;
+
# remove .la files for ptest, they aren't required and can trigger QA errors
- for i in `find ${D}${PTEST_PATH} -type f -name *.la`; do
+ for i in `find ${D}${PTEST_PATH} -type f \( -name *.la -o -name *.o \)`; do
rm -f $i
done
}
diff --git a/import-layers/meta-virtualization/recipes-extended/multipath-tools/multipath-tools_git.bb b/import-layers/meta-virtualization/recipes-extended/multipath-tools/multipath-tools_git.bb
deleted file mode 100644
index 9ba5cd6..0000000
--- a/import-layers/meta-virtualization/recipes-extended/multipath-tools/multipath-tools_git.bb
+++ /dev/null
@@ -1,46 +0,0 @@
-SUMMARY = "Tools to Manage Multipathed Devices with the device-mapper"
-DESCRIPTION = "This package provides the tools to manage multipathed devices by \
-instructing the device-mapper multipath module what to do"
-
-HOMEPAGE = "http://christophe.varoqui.free.fr/"
-DEPENDS = "readline libaio lvm2 udev"
-LICENSE = "GPLv2"
-
-LIC_FILES_CHKSUM = "file://COPYING;md5=7be2873b6270e45abacc503abbe2aa3d"
-S="${WORKDIR}/git"
-
-
-SRC_URI = "git://git.opensvc.com/multipath-tools/.git;protocol=http"
-
-SRCREV = "d3683ab18b386e9b3b54b59a122c689e9ebdf5cf"
-PV = "0.4.9+gitr${SRCPV}"
-
-inherit autotools-brokensep
-
-EXTRA_OEMAKE="LIB=${libdir} exec_prefix=${exec_prefix} libdir=${libdir}"
-
-PACKAGES =+ "libmpathpersist mpathpersist kpartx libmultipath multipath multipathd libmultipath-dev libmpathpersist-dev"
-
-
-RDEPENDS_${PN} += "libmpathpersist mpathpersist kpartx libmultipath multipath multipathd udev"
-
-do_install_append () {
- ln -sf libmpathpersist.so.0 ${D}${libdir}/libmpathpersist.so
- ln -sf libmultipath.so.0 ${D}${libdir}/libmultipath.so
-}
-
-ALLOW_EMPTY_${PN} = "1"
-FILES_${PN} = ""
-
-FILES_libmpathpersist = "${libdir}/libmpathpersist*.so.0"
-FILES_mpathpersist = "${sbindir}/mpathpersist"
-FILES_kpartx = "${sbindir}/kpartx ${base_libdir}/udev/"
-FILES_libmultipath = "${libdir}/libcheck*.so ${libdir}/libpri*.so ${libdir}/libmultipath*.so.0"
-FILES_multipath = "${sbindir}/multipath ${sysconfdir}"
-FILES_multipathd = "${sbindir}/multipathd ${base_libdir}"
-
-#put the symbol link lib in -dev
-FILES_libmultipath-dev = "${libdir}/libmultipath*.so"
-FILES_libmpathpersist-dev = "${libdir}/libmpathpersist*.so"
-
-
diff --git a/import-layers/meta-virtualization/recipes-extended/xen/README b/import-layers/meta-virtualization/recipes-extended/xen/README
new file mode 100644
index 0000000..3686530
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/xen/README
@@ -0,0 +1,24 @@
+Xen
+---
+
+For any issues with the xen recipes please make sure you CC cardoe@gentoo.org
+
+configuring the hypervisor
+--------------------------
+
+Since 4.7.0 Xen supports using Kconfig to configure the hypervisor. Similarly
+to how the recipe for busybox works, you can provide a .config as a defconfig
+to override the default configuration of the hypervisor. The easiest way
+for you to take advantage of this is to create a .config for Xen and then
+copy it to your Yocto layer as 'defconfig' inside of
+'recipes-extended/xen/files/' and then create a bbappend adding
+'file://defconfig' to your SRC_URI.
+
+security patches
+----------------
+
+The base recipe does not include security fixes that the Xen community releases
+as XSAs (http://xenbits.xen.org/xsa/). The easiest way to include those is to
+drop patches in 'recipes-extened/xen/files' and create a bbappend adding those
+patches to SRC_URI and they will be applied. Alternatively, you can override
+the SRC_URI to a git repo you provide that contains the patches.
diff --git a/import-layers/meta-virtualization/recipes-extended/xen/xen.inc b/import-layers/meta-virtualization/recipes-extended/xen/xen.inc
index de8c168..b5c5f03 100644
--- a/import-layers/meta-virtualization/recipes-extended/xen/xen.inc
+++ b/import-layers/meta-virtualization/recipes-extended/xen/xen.inc
@@ -3,7 +3,7 @@
LICENSE = "GPLv2"
SECTION = "console/tools"
-LIC_FILES_CHKSUM = "file://COPYING;md5=a6260c12cd5de27e80d89ae18e48d20a"
+LIC_FILES_CHKSUM = "file://COPYING;md5=bbb4b1bdc2c3b6743da3c39d03249095"
COMPATIBLE_HOST = '(x86_64.*).*-linux|aarch64.*-linux'
@@ -52,6 +52,7 @@
xz \
yajl \
zlib \
+ gnu-efi \
"
# inherit setuptools adds python to RDEPENDS, override it
@@ -151,6 +152,7 @@
${PN}-base \
${PN}-blktap \
${PN}-console \
+ ${PN}-cpuid \
${PN}-dbg \
${PN}-dev \
${PN}-devd \
@@ -196,6 +198,7 @@
${PN}-libxenvchan-dev \
${PN}-libxlutil \
${PN}-libxlutil-dev \
+ ${PN}-livepatch \
${PN}-misc \
${PN}-pygrub \
${PN}-python \
@@ -369,6 +372,10 @@
${sbindir}/xenconsoled \
"
+FILES_${PN}-cpuid = "\
+ ${bindir}/xen-cpuid \
+ "
+
FILES_${PN}-devd = "\
${sysconfdir}/init.d/xendriverdomain \
"
@@ -399,6 +406,10 @@
${sbindir}/kdd \
"
+FILES_${PN}-livepatch += " \
+ ${sbindir}/xen-livepatch \
+ "
+
FILES_${PN}-misc = "\
${bindir}/xencons \
${bindir}/xencov_split \
@@ -527,6 +538,7 @@
"
FILES_${PN}-scripts-network = " \
+ ${sysconfdir}/xen/scripts/colo-proxy-setup \
${sysconfdir}/xen/scripts/network-bridge \
${sysconfdir}/xen/scripts/network-nat \
${sysconfdir}/xen/scripts/network-route \
@@ -544,6 +556,7 @@
${sysconfdir}/xen/scripts/blktap \
${sysconfdir}/xen/scripts/block \
${sysconfdir}/xen/scripts/block-common.sh \
+ ${sysconfdir}/xen/scripts/block-dummy \
${sysconfdir}/xen/scripts/block-enbd \
${sysconfdir}/xen/scripts/block-iscsi \
${sysconfdir}/xen/scripts/block-nbd \
@@ -667,6 +680,7 @@
FILES_${PN}-xencommons += "\
${sysconfdir}/default/xencommons \
${sysconfdir}/init.d/xencommons \
+ ${sysconfdir}/xen/scripts/launch-xenstore \
${systemd_unitdir}/modules-load.d/xen.conf \
${systemd_unitdir}/system/proc-xen.mount \
${systemd_unitdir}/system/xen-qemu-dom0-disk-backend.service \
@@ -744,9 +758,11 @@
# this is used for the header (#!${bindir}/python) of the install python scripts
export PYTHONPATH="${bindir}/python"
+export ac_cv_path_PYTHONPATH="${bindir}/python"
-# seabios forcefully sets HOSTCC to CC - fixup to allow it to build native conf executable
+# xen and seabios require HOSTCC and HOSTCXX set to cross-compile
export HOSTCC="${BUILD_CC}"
+export HOSTCXX="${BUILD_CXX}"
# make xen requires CROSS_COMPILE set by hand as it does not abide by ./configure
export CROSS_COMPILE="${TARGET_PREFIX}"
@@ -825,6 +841,13 @@
addtask stubs after do_configure before do_compile
+# Allow all hypervisor settings in a defconfig
+EXTRA_OEMAKE += "XEN_CONFIG_EXPERT=y"
+# Build release versions always. Technically since we track release
+# tarballs this always happens but occasionally people pull in patches
+# from staging that reverts this
+EXTRA_OEMAKE += "debug=n"
+
do_configure() {
#./configure --enable-xsmpolicy does not set XSM_ENABLE must be done manually
@@ -832,11 +855,19 @@
echo "XSM_ENABLE := y" > ${S}/.config
fi
+ if [ -f "${WORKDIR}/defconfig" ]; then
+ cp "${WORKDIR}/defconfig" "${B}/xen/.config" || \
+ bbfatal "Unable to copy defconfig to .config"
+ fi
+
# do configure
oe_runconf
}
do_compile() {
+ # workaround for build bug when CFLAGS is exported
+ # https://www.mail-archive.com/xen-devel@lists.xen.org/msg67822.html
+ unset CFLAGS
oe_runmake
}
diff --git a/import-layers/meta-virtualization/recipes-extended/xen/xen_4.6.1.bb b/import-layers/meta-virtualization/recipes-extended/xen/xen_4.6.1.bb
deleted file mode 100644
index 0adf8ad..0000000
--- a/import-layers/meta-virtualization/recipes-extended/xen/xen_4.6.1.bb
+++ /dev/null
@@ -1,10 +0,0 @@
-require xen.inc
-
-SRC_URI = " \
- http://bits.xensource.com/oss-xen/release/${PV}/xen-${PV}.tar.gz \
- "
-
-SRC_URI[md5sum] = "df2d854c3c90ffeefaf71e7f868fb326"
-SRC_URI[sha256sum] = "44cc2fccba1e147ef4c8da0584ce0f24189c8743de0e3e9a9226da88ddb5f589"
-
-S = "${WORKDIR}/xen-${PV}"
diff --git a/import-layers/meta-virtualization/recipes-extended/xen/xen_4.8.0.bb b/import-layers/meta-virtualization/recipes-extended/xen/xen_4.8.0.bb
new file mode 100644
index 0000000..35c9137
--- /dev/null
+++ b/import-layers/meta-virtualization/recipes-extended/xen/xen_4.8.0.bb
@@ -0,0 +1,10 @@
+require xen.inc
+
+SRC_URI = " \
+ https://downloads.xenproject.org/release/xen/${PV}/xen-${PV}.tar.gz \
+ "
+
+SRC_URI[md5sum] = "d738f7c741110342621cb8a4d10b0191"
+SRC_URI[sha256sum] = "1e15c713ab7ba3bfda8b4a285ed973529364fd1100e6dd5a61f29583dc667b04"
+
+S = "${WORKDIR}/xen-${PV}"
diff --git a/import-layers/meta-virtualization/recipes-extended/xen/xen_git.bb b/import-layers/meta-virtualization/recipes-extended/xen/xen_git.bb
index a86a501..e10d669 100644
--- a/import-layers/meta-virtualization/recipes-extended/xen/xen_git.bb
+++ b/import-layers/meta-virtualization/recipes-extended/xen/xen_git.bb
@@ -1,15 +1,16 @@
require xen.inc
-SRCREV = "1fd615aa0108490ffc558d27627f509183cbfdaf"
+SRCREV ?= "9a6cc4f5c14b3d7542b7523f88a1b65464733d3a"
-XEN_REL="4.6"
+XEN_REL ?= "4.7"
+XEN_BRANCH ?= "staging-${XEN_REL}"
-PV = "${XEN_REL}.0+git${SRCPV}"
+PV = "${XEN_REL}+git${SRCPV}"
S = "${WORKDIR}/git"
SRC_URI = " \
- git://xenbits.xen.org/xen.git;branch=staging-${XEN_REL} \
+ git://xenbits.xen.org/xen.git;branch=${XEN_BRANCH} \
"
DEFAULT_PREFERENCE = "-1"