Files
pmaports-rtwo/device/community/linux-purism-librem5/APKBUILD
T
Achill Gilgenast ecd710af96 */*: move to maintainer= variables
* Also move right above pkgname=
* Move Co-Maintainer lines above maintainer=
* Remove empty lines in the header

pmbootstrap 3.7+ & abuild supports maintainer= variables.

See also https://gitlab.alpinelinux.org/alpine/tsc/-/issues/88

[ci:skip-build]: no pkgver/pkgrel changes
[ci:ignore-count]: intended
[ci:skip-vercheck]: no functional changes
[skip ci]: false positives

Part-of: <https://gitlab.postmarketos.org/postmarketOS/pmaports/-/merge_requests/7723>
2026-01-12 17:01:35 +01:00

100 lines
3.0 KiB
Bash

# Reference: <https://postmarketos.org/vendorkernel>
# Co-Maintainer: Newbyte <newbyte@postmarketos.org>
# Contributor: Clayton Craft <clayton@craftyguy.net>
maintainer="Alistair Francis <alistair@alistair23.me>"
pkgname=linux-purism-librem5
pkgver=6.6.118
pkgrel=0
# NOTE: Don't forget to rebase the config! See prepare() for instructions.
_purismrel=1
_pureosrel=cri1
# <kernel ver> + <purism kernel release> + <PureOS release>
_purismver=${pkgver}pureos${_purismrel}_$_pureosrel
pkgdesc="Purism Librem 5 phone kernel fork"
arch="aarch64"
_carch="arm64"
_flavor="purism-librem5"
url="https://source.puri.sm/Librem5/linux"
license="GPL-2.0-only"
options="!strip !check !tracedeps
pmb:cross-native
pmb:kconfigcheck-community
pmb:kconfigcheck-librem5
"
makedepends="
bash
bison
clang
devicepkg-dev
findutils
flex
installkernel
lld
llvm
openssl-dev
perl
rsync
xz
"
install="$pkgname.post-upgrade"
# Source
_repository="linux"
# kconfig generated with: ARCH=arm64 make defconfig KBUILD_DEFCONFIG=librem5_defconfig
_config="config-$_flavor.$arch"
source="
$pkgname-$_purismver.tar.gz::https://source.puri.sm/Librem5/linux/-/archive/pureos/$_purismver/linux-pureos-$_purismver.tar.gz
$_config
"
builddir="$srcdir/$_repository-pureos-$_purismver"
prepare() {
default_prepare
REPLACE_GCCH=0 \
. downstreamkernel_prepare
####### Rebase config
# The kernel config needs to be periodically rebased to enable new
# modules/features that Purism has enabled in their defconfig. This is done
# by: 1) generate .config using librem5_defconfig, 2) diff that .config
# with the config in this package, 3) carefully going over the diff and
# selecting new things enabled in their config.
#
# This can be uncommented to help generate the defconfig using "pmbootstrap
# build linux-purism-librem5". The build will fail (exit 1) to let you grab
# the config before it starts building the kernel:
# make ARCH="$_carch" LLVM=1 \
# defconfig KBUILD_DEFCONFIG=librem5_defconfig
# exit 1
#
# After that run the following
# cp <chroot_native/home/pmos/build/src/linux-pureos-6.6.83pureos2_cri1/.config> \
# device/community/linux-purism-librem5/config-purism-librem5.aarch64
# pmbootstrap kconfig edit linux-purism-librem5
# pmbootstrap kconfig check linux-purism-librem5
}
build() {
unset LDFLAGS
make ARCH="$_carch" LLVM=1 \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS" \
LOCALVERSION=".$_purismrel"
}
package() {
downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor"
make modules_install dtbs_install \
ARCH="$_carch" \
LLVM=1 \
INSTALL_MOD_PATH="$pkgdir" \
INSTALL_DTBS_PATH="$pkgdir/boot/dtbs"
}
sha512sums="
f1d75865ff15793e6e70414a356209bd27fdb4c084d773698589f2e376ddcf037f2ac60a131a72ad3986b51b88c0c738deb65169bb30fd472f25cb06327ed1a8 linux-purism-librem5-6.6.118pureos1_cri1.tar.gz
c2d7bc31efcc58c50fafd1a515604d01d54df10a5a9dc555ad1efe2ccf91616205aff6d96d8ee03b14ef0ec9755b216f430a6d197473a252ca030f2612449250 config-purism-librem5.aarch64
"