#!/bin/sh # vim: set sw=4 ts=4 sts=4 et : set -e O="${1}" . "${CONFIGDIR:=${PWD}}"/config PORTAGE_CONFIGROOT="${CONFIGDIR}"/portage/host \ emerge -vnj ${kernel_pkg} export ARCH=arm64 CROSS_COMPILE=${target}- unset MAKEFLAGS MAKEOVERRIDES MAKELEVEL mkdir -p "${O}"/linux /usr/src/linux/scripts/kconfig/merge_config.sh -m \ -O "${O}"/linux \ /usr/src/linux/arch/*/configs/${kernel_defconfig}_defconfig \ "${CONFIGDIR}"/linux.config cd "${O}"/linux make -C /usr/src/linux O=${PWD} olddefconfig make -j$(nproc) touch arch/arm64/boot/Image.gz kver=$(make -s kernelversion) make modules_install INSTALL_MOD_PATH=/mnt/gentoo/usr cd - printf 'Installing Kernel %s ...\n' "${kver}" mkdir -p /mnt/gentoo/boot cp -au "${O}"/linux/arch/arm64/boot/Image.gz /mnt/gentoo/boot/vmlinuz-${kver} cp -au "${O}"/linux/.config /mnt/gentoo/boot/config-${kver} cp -au "${O}"/linux/System.map /mnt/gentoo/boot/System.map-${kver} printf 'Installing device tree binaries ...\n' mkdir -p "${O}"/efi-part/overlays cp -u "${O}"/linux/arch/arm64/boot/dts/${device_tree} "${O}"/efi-part/ cp -u \ "${O}"/linux/arch/arm64/boot/dts/overlays/*.dtb \ "${O}"/linux/arch/arm64/boot/dts/overlays/*.dtbo \ "${O}"/efi-part/overlays/