useradd.bbclass: Add explict setscene dependencies to ensure correct ordering of setscene tasks

Submitted by Richard Purdie on Jan. 26, 2012, 8:11 p.m. | Patch ID: 20201


Message ID 1327608701.19643.398.camel@ted
State Accepted
Commit ffc7bbcf0011de3f1f6e8d95f1de0b8f7164fa51
Headers show

Commit Message

Richard Purdie Jan. 26, 2012, 8:11 p.m.
This is the final piece of fixing the races in the useradd class by
ensuring base-passwd, shadow-native and shadow-sysroot are installed
before sstate packages which use useradd.

[YOCTO #1721]

Signed-off-by: Richard Purdie <>

NB: This patch depends on a change in bitbake to work but is harmless
without that change, just won't fix the race.

Patch hide | download patch | download mbox

diff --git a/meta/classes/useradd.bbclass b/meta/classes/useradd.bbclass
index 6ee575e..9677fe2 100644
--- a/meta/classes/useradd.bbclass
+++ b/meta/classes/useradd.bbclass
@@ -111,6 +111,8 @@  SYSROOTPOSTFUNC = "useradd_sysroot_sstate"
 SYSROOTPOSTFUNC_virtclass-native = ""
 SYSROOTPOSTFUNC_virtclass-nativesdk = ""
+do_package_setscene[depends] = "base-passwd:do_populate_sysroot_setscene shadow-native:do_populate_sysroot_setscene shadow-sysroot:do_populate_sysroot_setscene"
 # Recipe parse-time sanity checks
 def update_useradd_after_parse(d):
 	useradd_packages = d.getVar('USERADD_PACKAGES', True)