aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/module.bbclass
diff options
context:
space:
mode:
authorDarren Hart <dvhart@linux.intel.com>2011-03-01 14:17:55 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-03-04 22:26:36 +0000
commit5c0df11a69cbc1d875a0905c9613d5f300b1f086 (patch)
tree5694b764c2eaee23cc3d6d7f31209284adeeab19 /meta/classes/module.bbclass
parent60ce101ce30ef2c39de5f74ec3c14041f41c4602 (diff)
downloadopenembedded-core-contrib-5c0df11a69cbc1d875a0905c9613d5f300b1f086.tar.gz
module: build hostprogs for each module
This fixes [BUGID #241] The kernel hostprogs are built for the host architecture. They should not be deployed to the target, and they should not be included in an sstate package which might get reused on a host of a different architecture. As we don't build many out-of-tree modules, this patch takes the approach of building the hostprogs as part of the module compile process with a do_compile_prepend() routine in module.bbclass. We don't have to clean the hostprogs as modules depend on the kernel being populate_staging, so its done with the staging directory by the time we run. (From OE-Core rev: e807fc977770cb64a217768672c18437ea8f3057) Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Gary Thomas <gary@mlbassoc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/module.bbclass')
-rw-r--r--meta/classes/module.bbclass12
1 files changed, 11 insertions, 1 deletions
diff --git a/meta/classes/module.bbclass b/meta/classes/module.bbclass
index d16d462080..bbceaf7219 100644
--- a/meta/classes/module.bbclass
+++ b/meta/classes/module.bbclass
@@ -3,6 +3,13 @@ DEPENDS += "virtual/kernel"
inherit module-base
+# Ensure the hostprogs are available for module compilation
+module_do_compile_prepend() {
+ unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
+ oe_runmake CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \
+ -C ${STAGING_KERNEL_DIR} scripts
+}
+
module_do_compile() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \
@@ -15,7 +22,10 @@ module_do_compile() {
module_do_install() {
unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS
- oe_runmake DEPMOD=echo INSTALL_MOD_PATH="${D}" CC="${KERNEL_CC}" LD="${KERNEL_LD}" modules_install
+ oe_runmake DEPMOD=echo INSTALL_MOD_PATH="${D}" \
+ KERNEL_SRC=${STAGING_KERNEL_DIR} \
+ CC="${KERNEL_CC}" LD="${KERNEL_LD}" \
+ modules_install
}
pkg_postinst_append () {