From: Ross Burton Date: Wed, 10 Apr 2013 10:21:33 +0000 (+0100) Subject: update-rc.d: correctly look up the initscript params with overrides X-Git-Tag: rev_ivi_2015_02_04~12962 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d5a9a9368cd56cfae733b1af08f547cc1cfdb9ef;p=scm%2Fbb%2Ftizen-distro.git 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 ] (From OE-Core rev: b016bc9aaabc90fe4dc98af8c5e73dfcb4526ef4) Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- diff --git a/meta/classes/update-rc.d.bbclass b/meta/classes/update-rc.d.bbclass index 0c2b94a..d8cc342 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