2024-09-09 08:52:07 +00:00
|
|
|
inherit kernel-arch
|
|
|
|
|
|
|
|
export OS = "${TARGET_OS}"
|
|
|
|
export CROSS_COMPILE = "${TARGET_PREFIX}"
|
|
|
|
|
2024-09-09 08:57:42 +00:00
|
|
|
# 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}"
|
2024-09-09 08:52:07 +00:00
|
|
|
|
2024-09-09 08:57:42 +00:00
|
|
|
export KERNEL_VERSION = "${@base_read_file('${STAGING_KERNEL_BUILDDIR}/kernel-abiversion')}"
|
|
|
|
KERNEL_OBJECT_SUFFIX = ".ko"
|
2024-09-09 08:52:07 +00:00
|
|
|
|
|
|
|
# kernel modules are generally machine specific
|
|
|
|
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
2024-09-09 08:57:42 +00:00
|
|
|
|
|
|
|
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} O=${STAGING_KERNEL_BUILDDIR} scripts
|
|
|
|
}
|