summaryrefslogtreecommitdiff
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD116
1 files changed, 85 insertions, 31 deletions
diff --git a/PKGBUILD b/PKGBUILD
index d5646cf..535783f 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,18 +1,36 @@
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
pkgbase=linux-kentdobias
-_kver=6.2.kd1
-_zver=2.1.9
+_kver=6.5.11
+_zver=2.2.0
pkgver="${_kver}_${_zver}"
pkgrel=1
pkgdesc='Linux'
-_srctag=v${_kver%.*}-${_kver##*.}
-url="https://github.com/archlinux/linux/commits/$_srctag"
+_srctag=v${_kver}
+url='https://github.com/archlinux/linux'
arch=(x86_64)
license=(GPL2)
makedepends=(
- bc libelf pahole cpio perl tar xz gettext
+ bc
+ cpio
+ gettext
+ libelf
+ pahole
+ perl
+ python
+ tar
+ xz
+
+ # htmldocs
+ graphviz
+ imagemagick
+ python-sphinx
+ texlive-latexextra
+
git
+ clang
+ llvm
+ lld
)
options=('!strip')
_srcname=kentdobias-linux
@@ -22,27 +40,24 @@ source=(
config # the main kernel config file
)
validpgpkeys=(
- 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds
- '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman
- 'A2FF3A36AAA56654109064AB19802F8B0D70FC30' # Jan Alexander Steffens (heftig)
- 'C7E7849466FE2358343588377258734B41C31549' # David Runge <dvzrv@archlinux.org>
- '0E3A444DD0760E65901BF59679E824090BD31086' # Jaron Kent-Dobias
+ ABAF11C65A2970B130ABE3C479BE3E4300411886 # Linus Torvalds
+ 647F28654894E3BD457199BE38DBBDC86092693E # Greg Kroah-Hartman
+ A2FF3A36AAA56654109064AB19802F8B0D70FC30 # Jan Alexander Steffens (heftig)
+ 0E3A444DD0760E65901BF59679E824090BD31086 # Jaron Kent-Dobias
)
sha256sums=('SKIP'
- '6b172cdf2eb54e17fcd68f900fab33c1430c5c59848fa46fab83614922fe50f6'
- '76268f9dc9a8e2d23abdb7f9210a5cf5768f33fdae660b5f5c610f86373b4679')
+ '42035fd059faa25a09cd511b24a57b8ad1285cb69127f2a0043b98562c5ec690'
+ '0baa4321ff0d6b2cedb101b8b82d6f5ebea17af70441ddf2b790f7baa23541b3')
export KBUILD_BUILD_HOST=archlinux
export KBUILD_BUILD_USER=$pkgbase
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
-
-_make='make LLVM=1'
+export LLVM=1
prepare() {
cd $_srcname
echo "Setting version..."
- scripts/setlocalversion --save-scmversion
echo "-$pkgrel" > localversion.10-pkgrel
echo "${pkgbase#linux}" > localversion.20-pkgname
@@ -50,6 +65,7 @@ prepare() {
for src in "${source[@]}"; do
src="${src%%::*}"
src="${src##*/}"
+ src="${src%.zst}"
[[ $src = *.patch ]] || continue
echo "Applying patch $src..."
patch -Np1 < "../$src"
@@ -57,7 +73,8 @@ prepare() {
echo "Setting config..."
cp ../config .config
- $_make prepare
+ make olddefconfig
+ make prepare
cd ../zfs-${_zver}
./autogen.sh
@@ -73,44 +90,58 @@ prepare() {
echo "Setting config..."
cp ../config .config
- $_make olddefconfig
+
+ make olddefconfig
diff -u ../config .config || :
- $_make -s kernelrelease > version
+ make -s kernelrelease > version
echo "Prepared $pkgbase version $(<version)"
}
build() {
cd $_srcname
- $_make all
+ make all
+ make htmldocs
}
_package() {
pkgdesc="The $pkgdesc kernel and modules"
- depends=(coreutils kmod initramfs)
- optdepends=('wireless-regdb: to set the correct wireless channels of your country'
- 'linux-firmware: firmware images needed for some devices')
- provides=(VIRTUALBOX-GUEST-MODULES WIREGUARD-MODULE KSMBD-MODULE)
- replaces=(virtualbox-guest-modules-arch wireguard-arch)
+ depends=(
+ coreutils
+ initramfs
+ kmod
+ )
+ optdepends=(
+ 'wireless-regdb: to set the correct wireless channels of your country'
+ 'linux-firmware: firmware images needed for some devices'
+ )
+ provides=(
+ KSMBD-MODULE
+ VIRTUALBOX-GUEST-MODULES
+ WIREGUARD-MODULE
+ )
+ replaces=(
+ virtualbox-guest-modules-arch
+ wireguard-arch
+ )
cd $_srcname
- local kernver="$(<version)"
- local modulesdir="$pkgdir/usr/lib/modules/$kernver"
+ local modulesdir="$pkgdir/usr/lib/modules/$(<version)"
echo "Installing boot image..."
# systemd expects to find the kernel here to allow hibernation
# https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344
- install -Dm644 "$($_make -s image_name)" "$modulesdir/vmlinuz"
+ install -Dm644 "$(make -s image_name)" "$modulesdir/vmlinuz"
# Used by mkinitcpio to name the kernel
echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
echo "Installing modules..."
- $_make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 \
+ ZSTD_CLEVEL=19 make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 \
DEPMOD=/doesnt/exist modules_install # Suppress depmod
- # remove build and source links
- rm "$modulesdir"/{source,build}
+ # remove build link
+ rm "$modulesdir"/build
}
_package-headers() {
@@ -195,7 +226,30 @@ _package-headers() {
ln -sr "$builddir" "$pkgdir/usr/src/$pkgbase"
}
-pkgname=("$pkgbase")
+_package-docs() {
+ pkgdesc="Documentation for the $pkgdesc kernel"
+
+ cd $_srcname
+ local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
+
+ echo "Installing documentation..."
+ local src dst
+ while read -rd '' src; do
+ dst="${src#Documentation/}"
+ dst="$builddir/Documentation/${dst#output/}"
+ install -Dm644 "$src" "$dst"
+ done < <(find Documentation -name '.*' -prune -o ! -type d -print0)
+
+ echo "Adding symlink..."
+ mkdir -p "$pkgdir/usr/share/doc"
+ ln -sr "$builddir/Documentation" "$pkgdir/usr/share/doc/$pkgbase"
+}
+
+pkgname=(
+ "$pkgbase"
+ "$pkgbase-headers"
+ "$pkgbase-docs"
+)
for _p in "${pkgname[@]}"; do
eval "package_$_p() {
$(declare -f "_package${_p#$pkgbase}")