summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2013-03-06 15:11:54 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-03-26 22:42:37 +0000
commitcf43320c343437659aee94acd005bf7712f273cd (patch)
tree7dffc89dff15d1dd6a9c1de73a0977612e232be0
parentb58a176936740e8e291f1e82229a8ca044bdb044 (diff)
downloadopenembedded-core-cf43320c343437659aee94acd005bf7712f273cd.tar.gz
openembedded-core-cf43320c343437659aee94acd005bf7712f273cd.tar.bz2
openembedded-core-cf43320c343437659aee94acd005bf7712f273cd.zip
update-rc.d/systemd: change communication variable name
Rename SYSTEMD_BBCLASS_ENABLED to INHIBIT_UPDATERCD_BBCLASS to reflect the action, for clarity. Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/classes/systemd.bbclass11
-rw-r--r--meta/classes/update-rc.d.bbclass8
2 files changed, 10 insertions, 9 deletions
diff --git a/meta/classes/systemd.bbclass b/meta/classes/systemd.bbclass
index cca2152927..42fa554c12 100644
--- a/meta/classes/systemd.bbclass
+++ b/meta/classes/systemd.bbclass
@@ -10,11 +10,14 @@ SYSTEMD_AUTO_ENABLE ??= "enable"
# even if the systemd DISTRO_FEATURE isn't enabled. As such don't make any
# changes directly but check the DISTRO_FEATURES first.
python __anonymous() {
- if "systemd" in d.getVar("DISTRO_FEATURES", True).split():
+ features = d.getVar("DISTRO_FEATURES", True).split()
+ # If the distro features have systemd but not sysvinit, inhibit update-rcd
+ # from doing any work so that pure-systemd images don't have redundant init
+ # files.
+ if "systemd" in features:
d.appendVar("DEPENDS", " systemd-systemctl-native")
- # Set a variable so that update-rcd.bbclass knows we're active and can
- # disable itself.
- d.setVar("SYSTEMD_BBCLASS_ENABLED", "1")
+ if "sysvinit" not in features:
+ d.setVar("INHIBIT_UPDATERCD_BBCLASS", "1")
}
systemd_postinst() {
diff --git a/meta/classes/update-rc.d.bbclass b/meta/classes/update-rc.d.bbclass
index 0997702ee9..9f1e28a59d 100644
--- a/meta/classes/update-rc.d.bbclass
+++ b/meta/classes/update-rc.d.bbclass
@@ -80,12 +80,10 @@ python populate_packages_updatercd () {
postrm += d.getVar('updatercd_postrm', True)
d.setVar('pkg_postrm_%s' % pkg, postrm)
- # Run if the sysvinit feature is present, or if the systemd feature is present
- # but the systemd class hasn't been inherited. We want to run in the latter case
- # as systemd has sysvinit compatibility, but we don't want to always so that
- # pure systemd images don't have redundent sysvinit files.
+ # Check that this class isn't being inhibited (generally, by
+ # systemd.bbclass) before doing any work.
if "sysvinit" in d.getVar("DISTRO_FEATURES").split() or \
- ("systemd" in d.getVar("DISTRO_FEATURES").split() and not d.getVar("SYSTEMD_BBCLASS_ENABLED", True)):
+ not d.getVar("INHIBIT_UPDATERCD_BBCLASS", True):
pkgs = d.getVar('INITSCRIPT_PACKAGES', True)
if pkgs == None:
pkgs = d.getVar('UPDATERCPN', True)