Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/8766>
138 lines
4.6 KiB
Bash
138 lines
4.6 KiB
Bash
# Co-Maintainer: Achill Gilgenast <achill@achill.org>
|
|
maintainer="Aelin <aelin@postmarketos.org>"
|
|
pkgname=linux-postmarketos-lts
|
|
pkgver=6.18.35
|
|
pkgrel=0
|
|
_kver=${pkgver%.*}
|
|
pkgdesc="LTS Kernel"
|
|
# armhf: pmbootstrap cannot dynamically choose a defconfig, so it ends up using multi_v7_defconfig which isn't correct
|
|
# s390x: kconfigcheck is not ready for it yet
|
|
arch="all !armhf !s390x"
|
|
_flavor="lts"
|
|
url="https://kernel.org"
|
|
license="GPL-2.0-only"
|
|
options="
|
|
!check
|
|
!strip
|
|
!tracedeps
|
|
pmb:cross-native
|
|
pmb:generic-kernel
|
|
pmb:kconfigcheck-community
|
|
pmb:kconfigcheck-immutable
|
|
pmb:kconfigcheck-rust
|
|
pmb:kconfigcheck-selinux
|
|
pmb:kconfigcheck-uefi
|
|
pmb:kconfigcheck-virt
|
|
"
|
|
makedepends="
|
|
bison
|
|
clang
|
|
clang-libclang
|
|
diffutils
|
|
elfutils-dev
|
|
findutils
|
|
flex
|
|
kmod
|
|
linux-headers
|
|
lld
|
|
llvm
|
|
openssl-dev
|
|
pahole
|
|
perl
|
|
postmarketos-installkernel
|
|
python3
|
|
rust
|
|
rust-bindgen
|
|
rust-src
|
|
rustfmt
|
|
sed
|
|
zstd
|
|
"
|
|
replaces="linux-lts"
|
|
|
|
# powerpc boot wrapper patches:
|
|
# Necessary for compilation without cross GCC in PATH, cherry-picked from
|
|
# Nathan's fork, he does not have time to upstream them right now but would be
|
|
# happy if someone else did:
|
|
# https://lore.kernel.org/linuxppc-dev/aXs8sgAcci9FKKpx@luna/
|
|
source="
|
|
linux-$_kver.tar.xz::https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/linux-$_kver.tar.xz
|
|
|
|
0001-WIP-arch-powerpc-boot-Support-LLVM-1-in-wrapper-scri.patch
|
|
0002-WIP-arch-powerpc-boot-Use-z-notext-for-pseries-image.patch
|
|
0003-WIP-arch-powerpc-boot-Add-z-norelro.patch
|
|
|
|
config-lts.aarch64
|
|
config-lts.armv7
|
|
config-lts.loongarch64
|
|
config-lts.ppc64le
|
|
config-lts.riscv64
|
|
config-lts.x86
|
|
config-lts.x86_64
|
|
"
|
|
builddir="$srcdir/linux-$_kver"
|
|
_defconfig="defconfig"
|
|
|
|
if [ "${pkgver%.0}" = "$pkgver" ]; then
|
|
# Prepend to apply first
|
|
source="patch-$pkgver.patch.xz::https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/patch-$pkgver.xz $source"
|
|
fi
|
|
|
|
case "$CARCH" in
|
|
aarch64*) _carch="arm64" ;;
|
|
arm*) _carch="arm" ;;
|
|
loongarch*) _carch="loongarch" ;;
|
|
ppc*) _carch="powerpc" ;;
|
|
riscv*) _carch="riscv" ;;
|
|
s390x) _carch="s390" ;;
|
|
x86) _carch="i386" ;;
|
|
x86_64) _carch="x86_64" ;;
|
|
esac
|
|
|
|
prepare() {
|
|
default_prepare
|
|
cp "$srcdir/config-$_flavor.$CARCH" .config
|
|
}
|
|
|
|
build() {
|
|
unset LDFLAGS
|
|
make ARCH="$_carch" LLVM=1 \
|
|
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-$_flavor"
|
|
}
|
|
|
|
package() {
|
|
local _install
|
|
case "$CARCH" in
|
|
arm*|aarch64|riscv*) _install="zinstall dtbs_install" ;;
|
|
*) _install="install" ;;
|
|
esac
|
|
|
|
make modules_install $_install \
|
|
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="
|
|
e6ee5f39ac4205da637f1bce67eb96b59726a15ef3579ae3850ef73ecfbf6d24d4f622b3e74b04fd119f87cd8864152eba74a14fc753f716fec91f5e91015e96 patch-6.18.35.patch.xz
|
|
88599ffdec96d150c1feb9b261ba93bb0301a9d0e1ad6bef7aeab1f5372cbfc57d8b43c7e902bd8f76921d1dbd8189663c142ea869e51d0e2b483b150ee00fe0 linux-6.18.tar.xz
|
|
1f11df2480e9f691573283597160b4c806e492cdca4825f3acb3afb70bde43abfab487bcde1f5553b431a702a0039479d041b0ce7859970e706b5a51d2ad8fb0 0001-WIP-arch-powerpc-boot-Support-LLVM-1-in-wrapper-scri.patch
|
|
26521a9c9ea769534095dc4e306babadc8bcbaf03d7faa523c377e41ba0f742ecd0490fa27791d895f729c3ae8845297dca59b4db2475e7f078e689c447430bc 0002-WIP-arch-powerpc-boot-Use-z-notext-for-pseries-image.patch
|
|
302c20c85559fc9b3b2420ed25be1bfbb76c87f2a470e4141c32e9542cf1f5c6b3b5a7847231a3eaa0f6bc0e5942d0c1599e807175dcf5e63469704c3d6adde3 0003-WIP-arch-powerpc-boot-Add-z-norelro.patch
|
|
1f30be9aa6134ea9ebbcbd2d17932c2870a26b44b0ce4104d7b9de787addbe69b41782386fabccc828183cf260632608f750cede89ea91b5d091fc20dffc80b5 config-lts.aarch64
|
|
80e170f9a017a099fa9c5fc41b908c8b6d44387e4aef0776acd5ffecac73e6f5c42e32e472b844be927f9f866c65356bff700148729a352f4ecdced9ba01d2d8 config-lts.armv7
|
|
ccf03bf4fbb1d370ca37ad50c7ab94c076d215f5a2182b16aeafca5f7e8b78584094f4e84f694e3e287c0a06317b602b0a9901636801366695cf38fde0b3f3c8 config-lts.loongarch64
|
|
8e4a1cae0700d6f5b9ea56df09924d4ca043e4775b0f4c0ce16cdc8f4e470c778e4096a0ade678452f59de1e79d5e758cdc5fb268e3bf955fea58c5adfb4cfac config-lts.ppc64le
|
|
17a854e0afeac8891b47744ddb474330007648d1249f5726c08da1b30649886a483c8a9515744da62e30951b21a4d8a269153393d9be20fc06c88c63acfc7cb6 config-lts.riscv64
|
|
5a94a20a295a365b5b4367639b63171691bc8b3aa383697da6a87e58d21e72293afdf1e86c4bccbf65e1c019384832d029bf36df5ddf9d15c74c3f5d9ada8a11 config-lts.x86
|
|
76c2d9584614ff274fa5c6f4cce031de810a14e10596ab0e541814b89f08ecc898425bee20bb127c5a8655ebf69b206b8676b8bdc4bb86b4414d1f2baa93efad config-lts.x86_64
|
|
"
|