From: Denys Dmytriyenko <[email protected]> http://lists.openembedded.org/pipermail/openembedded-core/2018-August/154191.html http://lists.openembedded.org/pipermail/openembedded-core/2018-August/154189.html
Signed-off-by: Denys Dmytriyenko <[email protected]> --- meta-arago-distro/classes/module-base.bbclass | 30 +++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 meta-arago-distro/classes/module-base.bbclass diff --git a/meta-arago-distro/classes/module-base.bbclass b/meta-arago-distro/classes/module-base.bbclass new file mode 100644 index 0000000..c1fa3ad --- /dev/null +++ b/meta-arago-distro/classes/module-base.bbclass @@ -0,0 +1,30 @@ +inherit kernel-arch + +# This is instead of DEPENDS = "virtual/kernel" +do_configure[depends] += "virtual/kernel:do_compile_kernelmodules" + +export OS = "${TARGET_OS}" +export CROSS_COMPILE = "${TARGET_PREFIX}" + +# 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}" + +DEPENDS += "bc-native" + +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}" + +# Function to ensure the kernel scripts are created. Expected to +# be called before do_compile. See module.bbclass for an example. +do_make_scripts() { + unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS + make CC="${KERNEL_CC}" LD="${KERNEL_LD}" AR="${KERNEL_AR}" \ + HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="${BUILD_CPP}" \ + -C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts prepare +} -- 2.7.4 _______________________________________________ meta-arago mailing list [email protected] http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
