| 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}" |
| |
| 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}" \ |
| -C ${STAGING_KERNEL_DIR} O=${STAGING_KERNEL_BUILDDIR} scripts |
| } |