packagegroup: Add init-manager sanity check
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 17 Apr 2013 13:14:50 +0000 (13:14 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 17 Apr 2013 23:37:57 +0000 (00:37 +0100)
Currently, you can set VIRTUAL-RUNTIME_init_manager to an init system that
isn't in DISTRO_FEATURES. This leads to head scratching over unbootable images.

This adds a sanity check which ensures more valid systems are built.

(From OE-Core rev: c72ec4b52827f75351790eab483d258b2e87611a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/packagegroup.bbclass

index 201309c..9bc9cc2 100644 (file)
@@ -38,3 +38,10 @@ do_configure[noexec] = "1"
 do_compile[noexec] = "1"
 do_install[noexec] = "1"
 do_populate_sysroot[noexec] = "1"
+
+python () {
+    initman = d.getVar("VIRTUAL-RUNTIME_init_manager", True)
+    if initman and initman in ['sysvinit', 'systemd'] and not base_contains('DISTRO_FEATURES', initman, True, False, d):
+        bb.fatal("Please ensure that your setting of VIRTUAL-RUNTIME_init_manager (%s) matches the entries enabled in DISTRO_FEATURES" % initman)
+}
+