summaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
authorRod Whitby <rod@whitby.id.au>2006-05-22 01:48:53 +0000
committerOpenEmbedded Project <openembedded-devel@lists.openembedded.org>2006-05-22 01:48:53 +0000
commitfe19b81b064bb612a85b11ac1b3ee8b40a7a72be (patch)
tree3a4d0e8a051d7c05529a917730f9efa1c7394ede /classes
parent405b9c56fd921db33cc33b723145eb0453bf89a8 (diff)
parenta6e39080788cf30c6d71977fae4ca2bf1e7bde8c (diff)
merge of 45908085bdceb2276493e588d8d89daba46b6d5c
and ec1cfabe499e84bf5627a49cc40bae42b557c638
Diffstat (limited to 'classes')
-rw-r--r--classes/kernel.bbclass11
-rw-r--r--classes/multimachine.bbclass22
2 files changed, 33 insertions, 0 deletions
diff --git a/classes/kernel.bbclass b/classes/kernel.bbclass
index ab8c03014f..ad51c4e035 100644
--- a/classes/kernel.bbclass
+++ b/classes/kernel.bbclass
@@ -192,6 +192,17 @@ PKG_kernel-image = "kernel-image-${KERNEL_VERSION}"
ALLOW_EMPTY_kernel = "1"
ALLOW_EMPTY_kernel-image = "1"
+pkg_postinst_kernel-image () {
+if [ ! -e "$D/lib/modules/${KERNEL_RELEASE}" ]; then
+ mkdir -p $D/lib/modules/${KERNEL_RELEASE}
+fi
+if [ -n "$D" ]; then
+ ${HOST_PREFIX}depmod-${KERNEL_MAJOR_VERSION} -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_RELEASE} ${KERNEL_VERSION}
+else
+ depmod -A
+fi
+}
+
pkg_postinst_modules () {
if [ -n "$D" ]; then
${HOST_PREFIX}depmod-${KERNEL_MAJOR_VERSION} -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_RELEASE} ${KERNEL_VERSION}
diff --git a/classes/multimachine.bbclass b/classes/multimachine.bbclass
new file mode 100644
index 0000000000..2248f326cc
--- /dev/null
+++ b/classes/multimachine.bbclass
@@ -0,0 +1,22 @@
+STAMP = "${TMPDIR}/stamps/${MULTIMACH_ARCH}-${HOST_OS}/${PF}"
+WORKDIR = "${TMPDIR}/work/${MULTIMACH_ARCH}-${HOST_OS}/${PF}"
+STAGING_KERNEL_DIR = "${STAGING_DIR}/${MULTIMACH_ARCH}-${HOST_OS}/kernel"
+
+# Find any machine specific sub packages and if present, mark the
+# whole package as machine specific for multimachine purposes.
+python __anonymous () {
+ packages = bb.data.getVar('PACKAGES', d, 1).split()
+ macharch = bb.data.getVar('MACHINE_ARCH', d, 1)
+ multiarch = bb.data.getVar('PACKAGE_ARCH', d, 1)
+
+ for pkg in packages:
+ pkgarch = bb.data.getVar("PACKAGE_ARCH_%s" % pkg, d, 1)
+
+ # We could look for != PACKAGE_ARCH here but how to choose
+ # if multiple differences are present?
+ # Look through IPKG_ARCHS for the priority order?
+ if pkgarch and pkgarch == macharch:
+ multiarch = macharch
+
+ bb.data.setVar('MULTIMACH_ARCH', multiarch, d)
+}