This config needs to be built-in to ensure that it is loaded ASAP during boot and doesn't depend on module loading logic. Signed-off-by: Aster Boese <asterboese@mailbox.org> Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/9036>
107 lines
3.1 KiB
Bash
107 lines
3.1 KiB
Bash
# Kernel config based on: arch/arm64/configs/msm8916_defconfig
|
|
maintainer="Nikita Travkin <nikita@trvn.ru>"
|
|
_flavor="postmarketos-qcom-msm8916"
|
|
pkgname=linux-$_flavor
|
|
pkgver=6.12.1
|
|
# When making kernel config changes please also submit a PR to
|
|
# https://github.com/msm8916-mainline/linux/blob/master/kernel/configs/pmos.config
|
|
# since the kernel config is regenerated on upgrades and all changes will be lost!
|
|
pkgrel=6
|
|
pkgdesc="Mainline kernel fork for Qualcomm MSM8909/MSM8916/MSM8939 devices"
|
|
arch="aarch64 armv7"
|
|
url="https://github.com/msm8916-mainline/linux"
|
|
license="GPL-2.0-only"
|
|
options="
|
|
!check
|
|
!strip
|
|
!tracedeps
|
|
pmb:cross-native
|
|
pmb:kconfigcheck-community
|
|
pmb:kconfigcheck-uefi
|
|
"
|
|
makedepends="
|
|
bison
|
|
clang
|
|
elfutils-dev
|
|
findutils
|
|
flex
|
|
linux-headers
|
|
lld
|
|
llvm
|
|
openssl-dev
|
|
pahole
|
|
perl
|
|
postmarketos-installkernel
|
|
python3
|
|
zstd
|
|
"
|
|
replaces="linux-postmarketos-qcom-msm8909 linux-postmarketos-qcom-msm8939"
|
|
|
|
# Architecture
|
|
case "$CARCH" in
|
|
aarch64) _carch="arm64" ;;
|
|
arm*) _carch="arm" ;;
|
|
esac
|
|
|
|
# Source
|
|
_tag=v${pkgver//_/-}-msm8916
|
|
source="
|
|
$pkgname-$_tag.tar.gz::$url/archive/$_tag.tar.gz
|
|
config-$_flavor.aarch64
|
|
config-$_flavor.armv7
|
|
0001-kbuild-Add-fno-builtin-wcslen.patch
|
|
"
|
|
builddir="$srcdir/linux-${_tag#v}"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
cp "$srcdir/config-$_flavor.$CARCH" .config
|
|
}
|
|
|
|
build() {
|
|
unset LDFLAGS
|
|
make ARCH="$_carch" LLVM=1 HOSTLDFLAGS="-fuse-ld=lld" \
|
|
KBUILD_BUILD_VERSION=$((pkgrel + 1 ))
|
|
}
|
|
|
|
package() {
|
|
mkdir -p "$pkgdir"/boot
|
|
|
|
_install_targets="modules_install dtbs_install"
|
|
|
|
if [ -e "$builddir/arch/$_carch/boot/vmlinuz.efi" ]; then
|
|
# ZBOOT EFI decompressor for EFI booting
|
|
install -Dm644 "$builddir/arch/$_carch/boot/vmlinuz.efi" \
|
|
"$pkgdir/boot/linux.efi"
|
|
|
|
# Old GZIP'd kernel image for boot.img compatibility
|
|
install -Dm644 "$builddir/arch/$_carch/boot/vmlinuz" \
|
|
"$pkgdir/boot/vmlinuz"
|
|
elif [ "$_carch" = "arm64" ]; then
|
|
echo "WARNING: CONFIG_ZBOOT not enabled!"
|
|
install -Dm644 "$builddir/arch/$_carch/boot/Image.gz" \
|
|
"$pkgdir/boot/vmlinuz"
|
|
else
|
|
_install_targets="zinstall modules_install dtbs_install"
|
|
fi
|
|
|
|
make $_install_targets \
|
|
ARCH="$_carch" \
|
|
LLVM=1 \
|
|
INSTALL_PATH="$pkgdir"/boot \
|
|
INSTALL_MOD_PATH="$pkgdir"/usr \
|
|
INSTALL_MOD_STRIP=1 \
|
|
INSTALL_DTBS_PATH="$pkgdir"/boot/dtbs
|
|
rm -f "$pkgdir"/usr/lib/modules/*/build "$pkgdir"/usr/lib/modules/*/source
|
|
|
|
install -D "$builddir"/include/config/kernel.release \
|
|
"$pkgdir"/usr/share/kernel/"$_flavor"/kernel.release
|
|
}
|
|
|
|
sha512sums="
|
|
e46fecfdab77f26c5127ddfd057d31bdf441da7fbf233cd574b396e762ea8992af65f577c595bab6761d1d339016733eb3ab652bf3a221e8b1f6bad4aa6adef5 linux-postmarketos-qcom-msm8916-v6.12.1-msm8916.tar.gz
|
|
bf1329ca9d19f1c318894c9507d023a531a0d4dc3c7510bfcc599e6219235b41284d0f690292c037eb39a8bc4f25283339cc17bdc50e317e31bc8e52ea74e0c1 config-postmarketos-qcom-msm8916.aarch64
|
|
4af33dffa3e8eaadbde4d4a1350c36003e39bf35b632fa509d53a3fa17b2d5c5a51d24ce5e315e3485dbc71dc34162ed11c8caa309e9cbdf9af7e038c1a708c1 config-postmarketos-qcom-msm8916.armv7
|
|
2a5c20bd9da57e42767fa70eb1aa27623e4013b5dadc3f35508e1497fb4bfd53d8775c372eea8c4d95bd12eff43f23c7a4acfb219313dcb7915643804fc73cb2 0001-kbuild-Add-fno-builtin-wcslen.patch
|
|
"
|