aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/update-rc.d.bbclass
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2013-04-10 11:21:33 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-04-10 12:53:28 +0100
commitb016bc9aaabc90fe4dc98af8c5e73dfcb4526ef4 (patch)
tree30d5109cde03e2b45522cf87f2b26f520dac7073 /meta/classes/update-rc.d.bbclass
parent7e17cba75c20ad820d30128d9b4b0132e7b924a8 (diff)
downloadopenembedded-core-contrib-b016bc9aaabc90fe4dc98af8c5e73dfcb4526ef4.tar.gz
update-rc.d: correctly look up the initscript params with overrides
The creation of a clone of d with extra OVERRIDES was removed in 72c1fd72d3b479c728e249eaa763116d352e945b but some of the lookups are essential so that variables such as ${INITSCRIPT_PARAMS} get overriden and resolved correctly on a per-package basis. [ YOCTO #3960 ] Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/update-rc.d.bbclass')
-rw-r--r--meta/classes/update-rc.d.bbclass12
1 files changed, 9 insertions, 3 deletions
diff --git a/meta/classes/update-rc.d.bbclass b/meta/classes/update-rc.d.bbclass
index 0c2b94a25b..d8cc34234e 100644
--- a/meta/classes/update-rc.d.bbclass
+++ b/meta/classes/update-rc.d.bbclass
@@ -62,22 +62,28 @@ python populate_packages_updatercd () {
execute on the target. Not doing so may cause update_rc.d postinst invoked
twice to cause unwanted warnings.
"""
+
+ localdata = bb.data.createCopy(d)
+ overrides = localdata.getVar("OVERRIDES", True)
+ localdata.setVar("OVERRIDES", "%s:%s" % (pkg, overrides))
+ bb.data.update_data(localdata)
+
postinst = d.getVar('pkg_postinst_%s' % pkg, True)
if not postinst:
postinst = '#!/bin/sh\n'
- postinst += d.getVar('updatercd_postinst', True)
+ postinst += localdata.getVar('updatercd_postinst', True)
d.setVar('pkg_postinst_%s' % pkg, postinst)
prerm = d.getVar('pkg_prerm_%s' % pkg, True)
if not prerm:
prerm = '#!/bin/sh\n'
- prerm += d.getVar('updatercd_prerm', True)
+ prerm += localdata.getVar('updatercd_prerm', True)
d.setVar('pkg_prerm_%s' % pkg, prerm)
postrm = d.getVar('pkg_postrm_%s' % pkg, True)
if not postrm:
postrm = '#!/bin/sh\n'
- postrm += d.getVar('updatercd_postrm', True)
+ postrm += localdata.getVar('updatercd_postrm', True)
d.setVar('pkg_postrm_%s' % pkg, postrm)
# Check that this class isn't being inhibited (generally, by