Hi Scott,
Le 26/10/2011 18:52, Scott Garman a écrit :
Grepping through our classes, it looks like I can detect the nativesdk within
useradd.bbclass by checking for bb.data.inherits_class('nativesdk', d).
I've filed a bug for this and will develop a patch to ensure useradd is
becomes a no-op for nativesdk builds:
http://bugzilla.pokylinux.org/show_bug.cgi?id=1702
here is a patch tentative which allowed me to compile meta-toolchain-qte.
Is that the right way to solve the problem (in which case I'll submit the
patch with comment & sob)?
Thanks
Eric
diff --git a/meta/classes/useradd.bbclass b/meta/classes/useradd.bbclass
index fb70b3e..cbcc9e9 100644
--- a/meta/classes/useradd.bbclass
+++ b/meta/classes/useradd.bbclass
@@ -3,9 +3,16 @@ USERADDPN ?= "${PN}"
# base-passwd-cross provides the default passwd and group files in the
# target sysroot, and shadow -native and -sysroot provide the utilities
# and support files needed to add and modify user and group accounts
-DEPENDS_append = " base-passwd shadow-native shadow-sysroot"
RDEPENDS_${USERADDPN}_append = " base-passwd shadow"
+def useradd_dep_append(d):
+ deps = ' '
+ if not bb.data.inherits_class('nativesdk', d):
+ deps = ' shadow-native shadow-sysroot base-passwd'
+ return deps
+
+DEPENDS_append = "${@useradd_dep_append(d)}"
+
# This preinstall function will be run in two contexts: once for the
# native sysroot (as invoked by the useradd_sysroot() wrapper), and
# also as the preinst script in the target package.
@@ -96,8 +103,17 @@ useradd_sysroot_sstate () {
fi
}
-do_install[prefuncs] += "useradd_sysroot"
-SSTATEPOSTINSTFUNCS += "useradd_sysroot_sstate"
+
+python () {
+ if not bb.data.inherits_class('nativesdk', d):
+ funcs = bb.data.getVarFlag('do_install', 'prefuncs', d) or ""
+ funcs += 'useradd_sysroot'
+ bb.data.setVarFlag('do_install', 'prefuncs', funcs, d)
+ d.setVar('SSTATEPOSTINSTFUNCS',
(bb.data.getVar('SSTATEPOSTINSTFUNCS', d, True) or
"").join("useradd_sysroot_sstate"))
+}
+
# Recipe parse-time sanity checks
def update_useradd_after_parse(d):
diff --git a/meta/recipes-core/dbus/dbus.inc b/meta/recipes-core/dbus/dbus.inc
index caa781c..99b2fc7 100644
--- a/meta/recipes-core/dbus/dbus.inc
+++ b/meta/recipes-core/dbus/dbus.inc
@@ -105,4 +105,8 @@ do_install_virtclass-native() {
# dbus-glib-native and dbus-glib need this xml file
./bus/dbus-daemon --introspect >
${STAGING_DATADIR_NATIVE}/dbus/dbus-bus-introspect.xml
}
+
+do_install_virtclass-nativesdk() {
+ autotools_do_install
+}
BBCLASSEXTEND = "native nativesdk"
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core