diff options
Diffstat (limited to 'meta/classes/module-base.bbclass')
| -rw-r--r-- | meta/classes/module-base.bbclass | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/meta/classes/module-base.bbclass b/meta/classes/module-base.bbclass index 9dbb4b424b..3eb2e9226e 100644 --- a/meta/classes/module-base.bbclass +++ b/meta/classes/module-base.bbclass @@ -1,23 +1,26 @@ -inherit module_strip - inherit kernel-arch export OS = "${TARGET_OS}" export CROSS_COMPILE = "${TARGET_PREFIX}" -export KERNEL_VERSION = "${@base_read_file('${STAGING_KERNEL_DIR}/kernel-abiversion')}" +# This points to the build artefacts from the main kernel build +# such as .config and System.map +# Confusingly it is not the module build output (which is ${B}) but +# we didn't pick the name. +export KBUILD_OUTPUT = "${STAGING_KERNEL_BUILDDIR}" + +export KERNEL_VERSION = "${@base_read_file('${STAGING_KERNEL_BUILDDIR}/kernel-abiversion')}" KERNEL_OBJECT_SUFFIX = ".ko" # kernel modules are generally machine specific PACKAGE_ARCH = "${MACHINE_ARCH}" -# -# Ensure the hostprogs are available for module compilation. Modules that -# inherit this recipe and override do_compile() should be sure to call -# do_make_scripts() or ensure the scripts are built independently. -# +do_configure[depends] += "virtual/kernel:do_shared_workdir" + +# Function to ensure the kernel scripts are created. Expected to +# be called before do_compile. See module.bbclass for an exmaple. do_make_scripts() { unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS make CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \ - -C ${STAGING_KERNEL_DIR} scripts + -C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts } |
