aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-extended/xen/xen-tools.inc
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-extended/xen/xen-tools.inc')
-rw-r--r--recipes-extended/xen/xen-tools.inc56
1 files changed, 33 insertions, 23 deletions
diff --git a/recipes-extended/xen/xen-tools.inc b/recipes-extended/xen/xen-tools.inc
index 6e25046e..5f010a5d 100644
--- a/recipes-extended/xen/xen-tools.inc
+++ b/recipes-extended/xen/xen-tools.inc
@@ -24,20 +24,16 @@ RDEPENDS:${PN} = "\
${PN}-xencommons \
${PN}-xendomains \
${PN}-xenstore \
- virtual/xenstored \
+ virtual-xenstored \
${PN}-xl \
"
RDEPENDS:${PN}-dev = ""
-# Qemu is necessary on ARM platforms, and to support HVM guests on x86
-QEMU = "${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'qemu', '', d)}"
-QEMU:arm = "qemu"
-QEMU:aarch64 = "qemu"
-
RRECOMMENDS:${PN} = " \
- ${QEMU} \
- ${@bb.utils.contains('PACKAGECONFIG', 'hvm', 'seabios', '', d)} \
+ qemu \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'vmsep', 'qemu-x86_64 qemu-i386', '', d)} \
+ ${@bb.utils.contains('XEN_TARGET_ARCH', 'x86_64', 'seabios ipxe vgabios', '', d)} \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_RRECOMMENDS}', d)} \
${PN}-flask \
${PN}-hvmloader \
@@ -105,7 +101,7 @@ RDEPENDS:${PN}-xencommons = "\
util-linux-prlimit \
${PN}-console \
${PN}-xenstore \
- virtual/xenstored \
+ virtual-xenstored \
${PN}-xl \
${PN}-scripts-common \
"
@@ -115,7 +111,7 @@ RDEPENDS:${PN}-xendomains = "\
${PN}-console \
${PN}-scripts-block \
${PN}-scripts-common \
- virtual/xenstored \
+ virtual-xenstored \
"
RDEPENDS:${PN}-xenhypfs = " \
@@ -220,13 +216,13 @@ PACKAGES = " \
"
PROVIDES =+ " \
- virtual/xenstored \
+ virtual-xenstored \
${@bb.utils.contains('PACKAGECONFIG', 'externalblktap', '', '${BLKTAP_PROVIDES}', d)} \
"
# There are multiple implementations of the XenStore daemon, so we use a
# virtual package to allow for substitution.
-RPROVIDES:${PN}-xenstored = "virtual/xenstored"
+RPROVIDES:${PN}-xenstored = "virtual-xenstored"
FILES:${PN}-dbg += "\
${libdir}/xen/bin/.debug \
@@ -621,6 +617,7 @@ FILES:${PN}-xl = "\
${libdir}/xen/bin/libxl-save-helper \
${sbindir}/xl \
${libdir}/xen/bin/xen-init-dom0 \
+ ${libdir}/xen/bin/init-dom0less \
"
FILES:${PN}-xl-examples = "\
@@ -655,14 +652,15 @@ FILES:${PN}-xm = "\
FILES:${PN}-xencommons += "\
${nonarch_libdir}/modules-load.d/xen.conf \
${sysconfdir}/default/xencommons \
- ${sysconfdir}/init.d/xencommons \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', '${sysconfdir}/init.d/xencommons', d)} \
${sysconfdir}/xen/scripts/launch-xenstore \
${systemd_unitdir}/system/proc-xen.mount \
- ${systemd_unitdir}/system/xen-qemu-dom0-disk-backend.service \
- ${systemd_unitdir}/system/xenconsoled.service \
- ${systemd_unitdir}/system/xen-init-dom0.service \
- ${systemd_unitdir}/system/xenstored.service \
- ${systemd_unitdir}/system/var-lib-xenstored.mount \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_unitdir}/system/xen-qemu-dom0-disk-backend.service', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_unitdir}/system/xenconsoled.service', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_unitdir}/system/xen-init-dom0.service', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_unitdir}/system/xenstored.service', '', d)} \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_unitdir}/system/var-lib-xenstored.mount', '', d)} \
+ ${localstatedir} \
"
FILES:${PN}-xend += " \
@@ -693,6 +691,7 @@ FILES:${PN}-test += "\
${libdir}/xen/bin/test-resource \
${libdir}/xen/bin/test-cpu-policy \
${libdir}/xen/bin/test-tsx \
+ ${libdir}/xen/bin/test-paging-mempool \
"
# test-xenstore and test-resource currently only exist in 4.16
@@ -716,7 +715,8 @@ ALLOW_EMPTY:${PN}-xen-vmtrace = "1"
INSANE_SKIP:${PN} = "already-stripped"
# configure init.d scripts
-INITSCRIPT_PACKAGES = "${PN}-xend ${PN}-xencommons ${PN}-xen-watchdog ${PN}-xendomains ${PN}-devd"
+INITSCRIPT_PACKAGES = "${PN}-xend ${PN}-xen-watchdog ${PN}-xendomains ${PN}-devd"
+INITSCRIPT_PACKAGES += "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', '${PN}-xencommons', d)}"
INITSCRIPT_NAME:${PN}-xencommons = "xencommons"
INITSCRIPT_PARAMS:${PN}-xencommons = "defaults 80"
INITSCRIPT_NAME:${PN}-xen-watchdog = "xen-watchdog"
@@ -734,7 +734,6 @@ SYSTEMD_SERVICE:${PN}-devd = "xendriverdomain.service"
SYSTEMD_SERVICE:${PN}-xen-watchdog = "xen-watchdog.service"
SYSTEMD_SERVICE:${PN}-xencommons = " \
proc-xen.mount \
- var-lib-xenstored.mount \
xen-qemu-dom0-disk-backend.service \
xenconsoled.service \
xen-init-dom0.service \
@@ -807,13 +806,24 @@ do_install() {
done
fi
- # fixup default path to qemu-system-i386
- sed -i 's#\(test -z "$QEMU_XEN" && QEMU_XEN=\).*$#\1"/usr/bin/qemu-system-i386"#' ${D}/etc/init.d/xencommons
-
if [ -e ${D}${systemd_unitdir}/system/xen-qemu-dom0-disk-backend.service ]; then
sed -i 's#ExecStart=.*qemu-system-i386\(.*\)$#ExecStart=/usr/bin/qemu-system-i386\1#' \
${D}${systemd_unitdir}/system/xen-qemu-dom0-disk-backend.service
fi
+
+ if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
+ rm -f ${D}/${sysconfdir}/init.d/xencommons
+ else
+ # fixup default path to qemu-system-i386
+ sed -i 's#\(test -z "$QEMU_XEN" && QEMU_XEN=\).*$#\1"/usr/bin/qemu-system-i386"#' ${D}/etc/init.d/xencommons
+
+ # remove the uncondiontally installed systemd service files
+ rm -f ${D}/${systemd_unitdir}/system/xen-qemu-dom0-disk-backend.service
+ rm -f ${D}/${systemd_unitdir}/system/xenconsoled.service
+ rm -f ${D}/${systemd_unitdir}/system/xen-init-dom0.service
+ rm -f ${D}/${systemd_unitdir}/system/xenstored.service
+ rm -f ${D}/${systemd_unitdir}/system/var-lib-xenstored.mount
+ fi
}
pkg_postinst:${PN}-volatiles() {