2024-03-07 09:04:05 +00:00
#!/bin/sh
set -e
REAL_SCRIPT = " $( realpath " ${ 0 } " ) "
cd " $( dirname " ${ REAL_SCRIPT } " ) /../.. "
2024-04-29 10:02:20 -07:00
KRATA_DIR = " $( realpath " ${ PWD } " ) "
2024-03-07 09:04:05 +00:00
2024-05-08 19:47:15 +00:00
# shellcheck source-path=SCRIPTDIR source=common.sh
. " ${ KRATA_DIR } /hack/kernel/common.sh "
2024-03-07 09:04:05 +00:00
2024-04-29 10:02:20 -07:00
make -C " ${ KERNEL_SRC } " ARCH = " ${ TARGET_ARCH_KERNEL } " -j" ${ KRATA_KERNEL_BUILD_JOBS } " " ${ CROSS_COMPILE_MAKE } " " ${ IMAGE_TARGET } " modules
rm -rf " ${ MODULES_INSTALL_PATH } "
rm -rf " ${ ADDONS_OUTPUT_PATH } "
rm -rf " ${ ADDONS_SQUASHFS_PATH } "
make -C " ${ KERNEL_SRC } " ARCH = " ${ TARGET_ARCH_KERNEL } " -j" ${ KRATA_KERNEL_BUILD_JOBS } " " ${ CROSS_COMPILE_MAKE } " INSTALL_MOD_PATH = " ${ MODULES_INSTALL_PATH } " modules_install
KERNEL_MODULES_VER = " $( ls " ${ MODULES_INSTALL_PATH } /lib/modules " ) "
mkdir -p " ${ ADDONS_OUTPUT_PATH } "
mv " ${ MODULES_INSTALL_PATH } /lib/modules/ ${ KERNEL_MODULES_VER } " " ${ MODULES_OUTPUT_PATH } "
rm -rf " ${ MODULES_INSTALL_PATH } "
[ -L " ${ MODULES_OUTPUT_PATH } /build " ] && unlink " ${ MODULES_OUTPUT_PATH } /build "
mksquashfs " ${ ADDONS_OUTPUT_PATH } " " ${ ADDONS_SQUASHFS_PATH } " -all-root
2024-03-21 21:31:10 +00:00
if [ " ${ TARGET_ARCH_STANDARD } " = "x86_64" ]
2024-03-07 09:04:05 +00:00
then
2024-03-21 21:31:10 +00:00
cp " ${ KERNEL_SRC } /arch/x86/boot/bzImage " " ${ OUTPUT_DIR } /kernel- ${ TARGET_ARCH_STANDARD } "
elif [ " ${ TARGET_ARCH_STANDARD } " = "aarch64" ]
2024-03-07 09:04:05 +00:00
then
2024-03-21 21:31:10 +00:00
cp " ${ KERNEL_SRC } /arch/arm64/boot/Image.gz " " ${ OUTPUT_DIR } /kernel- ${ TARGET_ARCH_STANDARD } "
2024-03-07 09:04:05 +00:00
else
2024-03-21 21:31:10 +00:00
echo " ERROR: unable to determine what file is the vmlinuz for ${ TARGET_ARCH_STANDARD } " > /dev/stderr
2024-03-07 09:04:05 +00:00
exit 1
fi