summaryrefslogtreecommitdiff
path: root/PKGBUILD
diff options
context:
space:
mode:
authorjc_gargma <jc_gargma@iserlohn-fortress.net>2019-07-09 14:46:03 -0700
committerjc_gargma <jc_gargma@iserlohn-fortress.net>2019-07-09 14:46:03 -0700
commit812e60f37953825700cae6971f5160eb764c16c3 (patch)
tree8cc4c67c571fe3504126c9afa74f949e00378524 /PKGBUILD
parentUpdated to 5.1.16 (diff)
downloadlinux-812e60f37953825700cae6971f5160eb764c16c3.tar.xz
Updated to 5.2.0
Re-enabled kernel support for Intel ME, as me_cleaner relies on it. Disabled several insecure filesystems by default.
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD54
1 files changed, 45 insertions, 9 deletions
diff --git a/PKGBUILD b/PKGBUILD
index a38a378..e8bac4d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -9,15 +9,14 @@
# Arch version lacks graysky gcc patch with bdver2 fix
# Arch version lacks ath9k regdom and raid6 algo patches
# Arch version allows SEED, SM3, SM4, and Streebog
+# Arch version allows insecure filesystems
# Arch version is 300 Hz
-# Arch version supports Intel ME
# Arch version is not configured for openrc
-# Arch version builds docs using python and graphviz
# Arch version uses git
pkgbase=linux
-_majver=5.1
-_minver=16
+_majver=5.2
+_minver=0
if [ "$_minver" == "0" ]; then
pkgver=${_majver}
else
@@ -29,13 +28,17 @@ pkgrel=1
url='https://kernel.org'
arch=('x86_64')
license=('GPL2')
-makedepends=('xmlto' 'kmod' 'inetutils' 'bc' 'libelf')
+makedepends=(
+ 'xmlto' 'kmod' 'inetutils' 'bc' 'libelf'
+ 'python-sphinx' 'python-sphinx_rtd_theme' 'graphviz' 'imagemagick'
+ )
conflicts=('linux-libre')
options=('!strip')
source=(
https://www.kernel.org/pub/linux/kernel/v5.x/linux-$pkgver.tar.{xz,sign}
0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch
0002-ZEN-Add-CONFIG-for-unprivileged_userns_clone.patch
+ 0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch
graysky_bdver2-hotfix.patch
enable_additional_cpu_optimizations-$_gcc_more_v.tar.gz::https://github.com/graysky2/kernel_gcc_patch/archive/$_gcc_more_v.tar.gz
ath9k-regdom-hack.patch
@@ -45,15 +48,16 @@ source=(
90-linux.hook # pacman hook for initramfs regeneration
linux.preset # standard config files for mkinitcpio ramdisk
)
-sha256sums=('8a3e55be3e788700836db6f75875b4d3b824a581d1eacfc2fcd29ed4e727ba3e'
+sha256sums=('54ad66f672e1a831b574f5e704e8a05f1e6180a8245d4bdd811208a6cb0ac1e7'
'SKIP'
'91fafa76bf9cb32159ac7f22191b3589278b91e65bc4505cf2fc6013b8037bf3'
'63e4378e69e2f23ed87af32a4951477a6d82d4ac0de2295db46502c8120da9d9'
+ '8449de698dfc8f95ff03dbfd98b6abdd71dbc4238896256690cb856fe366aac3'
'229e063a578db0a278108f37b24da20c2a2a18d825e98a67e426cb0f4b492e4a'
'226e30068ea0fecdb22f337391385701996bfbdba37cdcf0f1dbf55f1080542d'
'e7ebf050c22bcec0028c0b3c79fd6d3913b0370ecc6a23dfe78ce475630cf503'
'0f81d6e4158b7beeb0eb514f1b9401f7e23699cb0f7b0d513e25dae1815daaeb'
- 'a3c0af2f4e433c556b72595d7fec57577c4c90c7b40dae0afd4733b10d409c14'
+ 'ec9cd087e4fe97e014fd5af7874d451bb6e56f2a9da63760049a353e63a890c1'
'ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21'
'75f99f5239e03238f88d1a834c50043ec32b1dc568f2cc291b07d04718483919'
'ad6344badc91ad0630caacde83f7f9b97276f80d26a20619a87952be65492c65')
@@ -77,6 +81,7 @@ prepare() {
msg2 "Applying hotfixes"
patch -p1 -i ../0001-add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by.patch
patch -p1 -i ../0002-ZEN-Add-CONFIG-for-unprivileged_userns_clone.patch
+ patch -p1 -i ../0003-iwlwifi-mvm-disable-TX-AMSDU-on-older-NICs.patch
# graysky gcc hotfixes
@@ -140,7 +145,7 @@ prepare() {
build() {
cd $_srcname
- make bzImage modules
+ make bzImage modules htmldocs
}
_package() {
@@ -280,7 +285,38 @@ _package-headers() {
chmod -Rc u=rwX,go=rX "$pkgdir"
}
-pkgname=("$pkgbase" "$pkgbase-headers")
+_package-docs() {
+ pkgdesc="Kernel hackers manual - HTML documentation that comes with the ${pkgbase/linux/Linux} kernel"
+
+ local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
+
+ cd $_srcname
+
+ msg2 "Installing documentation..."
+ mkdir -p "$builddir"
+ cp -t "$builddir" -a Documentation
+
+ msg2 "Removing doctrees..."
+ rm -r "$builddir/Documentation/output/.doctrees"
+
+ msg2 "Moving HTML docs..."
+ local src dst
+ while read -rd '' src; do
+ dst="$builddir/Documentation/${src#$builddir/Documentation/output/}"
+ mkdir -p "${dst%/*}"
+ mv "$src" "$dst"
+ rmdir -p --ignore-fail-on-non-empty "${src%/*}"
+ done < <(find "$builddir/Documentation/output" -type f -print0)
+
+ msg2 "Adding symlink..."
+ mkdir -p "$pkgdir/usr/share/doc"
+ ln -sr "$builddir/Documentation" "$pkgdir/usr/share/doc/$pkgbase"
+
+ msg2 "Fixing permissions..."
+ chmod -Rc u=rwX,go=rX "$pkgdir"
+}
+
+pkgname=("$pkgbase" "$pkgbase-headers" "$pkgbase-docs")
for _p in "${pkgname[@]}"; do
eval "package_$_p() {
$(declare -f "_package${_p#$pkgbase}")