diff options
Diffstat (limited to 'PKGBUILD')
| -rw-r--r-- | PKGBUILD | 116 | 
1 files changed, 85 insertions, 31 deletions
| @@ -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}") | 
