summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/module.bbclass16
1 files changed, 12 insertions, 4 deletions
diff --git a/meta/classes/module.bbclass b/meta/classes/module.bbclass
index 95d42da9e7..58470474cc 100644
--- a/meta/classes/module.bbclass
+++ b/meta/classes/module.bbclass
@@ -7,6 +7,7 @@ do_make_scripts[depends] += "virtual/kernel:do_shared_workdir"
7EXTRA_OEMAKE += "KERNEL_SRC=${STAGING_KERNEL_DIR}" 7EXTRA_OEMAKE += "KERNEL_SRC=${STAGING_KERNEL_DIR}"
8 8
9MODULES_INSTALL_TARGET ?= "modules_install" 9MODULES_INSTALL_TARGET ?= "modules_install"
10MODULES_MODULE_SYMVERS_LOCATION ?= ""
10 11
11python __anonymous () { 12python __anonymous () {
12 depends = d.getVar('DEPENDS') 13 depends = d.getVar('DEPENDS')
@@ -35,10 +36,17 @@ module_do_install() {
35 O=${STAGING_KERNEL_BUILDDIR} \ 36 O=${STAGING_KERNEL_BUILDDIR} \
36 ${MODULES_INSTALL_TARGET} 37 ${MODULES_INSTALL_TARGET}
37 38
38 install -d -m0755 ${D}${includedir}/${BPN} 39 if [ ! -e "${B}/${MODULES_MODULE_SYMVERS_LOCATION}/Module.symvers" ] ; then
39 cp -a --no-preserve=ownership ${B}/Module.symvers ${D}${includedir}/${BPN} 40 bbwarn "Module.symvers not found in ${B}/${MODULES_MODULE_SYMVERS_LOCATION}"
40 # it doesn't actually seem to matter which path is specified here 41 bbwarn "Please consider setting MODULES_MODULE_SYMVERS_LOCATION to a"
41 sed -e 's:${B}/::g' -i ${D}${includedir}/${BPN}/Module.symvers 42 bbwarn "directory below B to get correct inter-module dependencies"
43 else
44 install -Dm0644 "${B}/${MODULES_MODULE_SYMVERS_LOCATION}"/Module.symvers ${D}${includedir}/${BPN}/Module.symvers
45 # Module.symvers contains absolute path to the build directory.
46 # While it doesn't actually seem to matter which path is specified,
47 # clear them out to avoid confusion
48 sed -e 's:${B}/::g' -i ${D}${includedir}/${BPN}/Module.symvers
49 fi
42} 50}
43 51
44EXPORT_FUNCTIONS do_compile do_install 52EXPORT_FUNCTIONS do_compile do_install