diff options
Diffstat (limited to 'libre/linux-libre/PKGBUILD')
-rw-r--r-- | libre/linux-libre/PKGBUILD | 250 |
1 files changed, 136 insertions, 114 deletions
diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index 0a470d644..a289301ef 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -14,28 +14,39 @@ _replacesoldkernels=() # '%' gets replaced with kernel suffix _replacesoldmodules=() # '%' gets replaced with kernel suffix pkgbase=linux-libre -pkgver=5.15.12 +pkgver=6.7.4 pkgrel=1 pkgdesc='Linux-libre' -rcnver=5.11.11 -rcnrel=armv7-x14 url='https://linux-libre.fsfla.org/' arch=(i686 x86_64 armv7h) license=(GPL2) makedepends=( - bc kmod libelf pahole cpio perl tar xz - xmlto python-sphinx python-sphinx_rtd_theme graphviz imagemagick + bc + cpio + gettext + libelf + pahole + perl + python + tar + xz + + # htmldocs + graphviz + imagemagick + python-sphinx + texlive-latexextra ) makedepends_armv7h=(uboot-tools vboot-utils dtc) # required by linux-libre-chromebook options=('!strip') -_srcname=linux-5.15 +_srcname=linux-6.7 source=( "https://linux-libre.fsfla.org/pub/linux-libre/releases/${_srcname##*-}-gnu/linux-libre-${_srcname##*-}-gnu.tar.xz"{,.sign} "https://linux-libre.fsfla.org/pub/linux-libre/releases/$pkgver-gnu/patch-${_srcname##*-}-gnu-$pkgver-gnu.xz"{,.sign} "https://repo.parabola.nu/other/linux-libre/logos/logo_linux_"{clut224.ppm,vga16.ppm,mono.pbm}{,.sig} config.i686 config.x86_64 config.armv7h # the main kernel config files linux-armv7h.preset # armv7h preset file for mkinitcpio ramdisk - "kernel"{.its,.keyblock,_data_key.vbprivk} # files for signing Chromebooks kernels + "kernel"{.its,.keyblock,_data_key.vbprivk} # files for signing veyron Chromebook kernels # maintain the TTY over USB disconnects # http://www.coreboot.org/EHCI_Gadget_Debug @@ -45,75 +56,89 @@ source=( # http://www.fsfla.org/pipermail/linux-libre/2015-November/003202.html 0002-fix-Atmel-maXTouch-touchscreen-support.patch # Arch Linux patches + # https://github.com/archlinux/linux 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch - 0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch - 0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch - 0004-cpufreq-intel_pstate-ITMT-support-for-overclocked-sy.patch - 0005-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch - 0006-lg-laptop-Recognize-more-models.patch + 0002-drivers-firmware-skip-simpledrm-if-nvidia-drm.modese.patch + 0003-arch-Kconfig-Default-to-maximum-amount-of-ASLR-bits.patch ) source_i686=( # avoid using zstd compression in ultra mode (exhausts virtual memory) no-ultra-zstd.patch ) source_armv7h=( - # RCN patch (CM3 firmware deblobbed and bloatware removed) - "https://repo.parabola.nu/other/rcn-libre/patches/$rcnver/rcn-libre-$rcnver-$rcnrel.patch"{,.sig} # Arch Linux ARM patches + # https://github.com/archlinuxarm/PKGBUILDs/tree/master/core/linux-armv7 0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch 0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch - 0003-SMILE-Plug-device-tree-file.patch - 0004-fix-mvsdio-eMMC-timing.patch - 0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch - 0006-set-default-cubietruck-led-triggers.patch - 0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch - 0008-ARM-dove-enable-ethernet-on-D3Plug.patch - 0009-USB-Armory-MkII-support.patch - # ChromiumOS patches + 0003-fix-mvsdio-eMMC-timing.patch + 0004-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch + #0005-set-default-cubietruck-led-triggers.patch + #0006-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch + #0007-USB-Armory-MkII-support.patch + # ChromiumOS patch + # https://labs.parabola.nu/issues/2372 0001-CHROMIUM-block-partitions-efi-Add-support-for-IGNORE.patch ) validpgpkeys=( - '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva - '6DB9C4B4F0D8C0DC432CF6E4227CA7C556B2BA78' # David P. + 474402C8C582DAFBE389C427BCB7CF877E7D47A7 # Alexandre Oliva + 6DB9C4B4F0D8C0DC432CF6E4227CA7C556B2BA78 # David P. ) -sha512sums=('3c586054285ea0cb4d1a1ff257757d092db80c2413dcec6e58c63b22490d42b8f2c441cee62839603599d5ad75fbd7560bf51ec6c2f3ab9354adae0c2c7234e5' +sha256sums=('eb43c7dfe646d607ce7f010fa77789260db46fad1086dcd5c7f8df0bee9c14b0' 'SKIP' - '80a0d8903c6ee462f966e3360d22f4894dc69239c99ef28d62a1ea6643008580a368b61cee5e6691f2bbf0ff162fb10e13ca31904ab89a5e679f91ae9860999b' + 'ed1227ef770e37e3df3e760b908497f8492c2902c2e9063737690cf70d94c14c' 'SKIP' - '13cb5bc42542e7b8bb104d5f68253f6609e463b6799800418af33eb0272cc269aaa36163c3e6f0aacbdaaa1d05e2827a4a7c4a08a029238439ed08b89c564bb3' + 'bfd4a7f61febe63c880534dcb7c31c5b932dde6acf991810b41a939a93535494' 'SKIP' - '7a3716bfe3b9f546da309c7492f3e08f8f506813afeb1c737a474c83313d5c313cf4582b65215c2cfce3b74d9d1021c96e8badafe8f6e5b01fe28d2b5c61ae78' + '6de8a8319271809ffdb072b68d53d155eef12438e6d04ff06a5a4db82c34fa8a' 'SKIP' - '267295aa0cea65684968420c68b32f1a66a22d018b9d2b2c1ef14267bcf4cb68aaf7099d073cbfefe6c25c8608bdcbbd45f7ac8893fdcecbf1e621abdfe9ecc1' + '13bd7a8d9ed6b6bc971e4cd162262c5a20448a83796af39ce394d827b0e5de74' 'SKIP' - '4d20c1d0eed64bc64ac04e41e10288259212e00bc0967887e20e5ae277735d3a036c0a5ded08276455d2748af5787ebcf910329491eb43e84c204d6a9d76065f' - '51de84caf459ba526afaf11ce9e4b697bc828edaf841c512ee0438ed14b7c3beaa269f95446eeb6b6a87f91b20d075b43dfea901b6aed8ef45a476bc5ac6a3b2' - '51e8b4da770067e8257d292622d865cb16ac57fdfd8967bdfb74efec197dae9eab958e5637a728640ae60885bdde41c06c8076227a4f83db0b752215f91f3a87' - '53103bf55b957b657039510527df0df01279dec59cda115a4d6454e4135025d4546167fa30bdc99107f232561c1e096d8328609ab5a876cf7017176f92ad3e0b' - '167bc73c6c1c63931806238905dc44c7d87c5a5c0f6293159f2133dfe717fb44081018d810675716d1605ec7dff5e8333b87b19e09e2de21d0448e447437873b' - 'bb6718984a7357c9b00c37e4788480e5b8b75018c172ecc1441bc3fc5d2d42444eb5d8c7f9d2e3a7d6fed6d03acb565e3c0559486e494c40a7fe6bd0570c9ede' - '143dea30c6da00e504c99984a98a0eb2411f558fcdd9dfa7f607d6c14e9e7dffff9cb00121d9317044b07e3e210808286598c785ee854084b993ec9cb14d8232' - '02af4dd2a007e41db0c63822c8ab3b80b5d25646af1906dc85d0ad9bb8bbf5236f8e381d7f91cf99ed4b0978c50aee37cb9567cdeef65b7ec3d91b882852b1af' - 'b8fe56e14006ab866970ddbd501c054ae37186ddc065bb869cf7d18db8c0d455118d5bda3255fb66a0dde38b544655cfe9040ffe46e41d19830b47959b2fb168' - '5ad31d899fa56b49efb6eec6d721e85e1b723f65c83a9aaec52c3281f1862c7b0ccf5ddac077af669aa222b4818c4ddbc64f39739fc2946c5ddab49101ba0924' - 'c12a450a5026216676bd5728b43e04641d28a0eacd916e9304b6c38b03699005cf74ed8d3e4de67cab73f47cdaef728fdb1f75b3b1e5221cfc62c2a37e52ff67' - '65f4ecc64551d3e644fb6e95ed70dcb694aedd58fc6bed694a912c6d89bfdfd2382d1f20c3b79c0a9e6f5c479efe7e950e47f88b10925ac71276e4cad94ab07e' - '5b052dfc8f62ac2f86b1a08620109ec06154273a67ef011b18d38f7098b5b42026da2a8ba79a9234d10766bc00f740a2ce900552806a49937b7e33a35bca2809' - '6f139510d047cf0f915daded5221ea4cf2551ebb50c7350965ba417b9b2d0df8796e0508d772cdc6d50cdc5b8c1d8589ace86d6e7a779ea2abed0013696396a3' - 'e54423a3f0162f76cd211706c48f05f4fd96ea99453ca84821018947dd05b3d1bb943c8ba9e5ce190d237663136122601e7edfe50540fef24ab16c813c6a02e1') -sha512sums_i686=('3a346ff5e0fdefafd28bc3dd0e4b6cd68e3f0014e59d1611d99f2edb8d074fd32649eeb0894a7e340e4f907b5cfc0e08e0753e0427a68dc113bb22835a892968') -sha512sums_armv7h=('a4aa00ca3f03d524d3fb6379116c4e4e7908e7c30f6347f55be256c44d806d8db5f04c96369d5a725e45b7390e9fde842f388cdc5d5699d80ec5d1519f7367f4' - 'SKIP' - 'b832287560c841e292d71be01c65045ee2ee6ac41f05176ebe349d730b5b79887bb629d176d5fd16a3e7ebb5e51de30b6d6fad6fad53821063188248bd1415bb' - 'f997a0afaaffb66533168f5d9cc341871eb54feb88d6ce578e816add82596bedf4dc242510e171e1e5b56464cf701384a32ed916176ea0c2db24209d754d3c58' - '96b97f6e721d179d88e7b4084ebb62ce30ddd13cbbcb367147e6646c8487107af36b3610d10e53abffae3a83736cdd7734e5dbcadb1909ced278f40a20302861' - '14f3ef9f2211e98198e96bd4f91978720acd703ee778698b85916cef73c1aea648d1d08a075f2ed334f5c27b9933274fa0651401e0baa3570f389a20aaec54e8' - 'b464e9af459c37c929ba30cdb7eb575038e970c9d91ff98fa37c0bc6161538b42a802dde34882772cf665130038158cb985fe06d65313f7c584c6c63045199d8' - '9d8019b8f525d5614d476ac34a35a40e8e1994f444a686b561c57b8ae488fcc44ffca9d034cea7b2271a2b7a7fa3a2ba2fcaa452504c320eff0bc3fc4de64ed2' - 'b3cf13c44b8b35bb7610206161a251cbf90299b0533e8e23465b9ae566feed510c5722aceadb7e2097de439362d0689de5692a091cbe8bec2994ef5290622095' - '463d68de99f434fd3409ee620eaa7b648d6627c5a04cfeab65b91053129e71bf906db817fd9770297ae1e38f8a5a84be4d20a1d1717e6821478f2c1bbc416cb2' - '813fbfb17659e4e7512367f03b06f9bc54070886f5e7206548deced60032f92d3ca0beb78416706662bf713cb0f7a5d8d81f8f08b911ca8254b417e82306d829' - '7bda2ad7eb81af802873cb6764cb9c675ec50ceeb5adc487881ebc8c316cf55f836e56c2cc67494a2920e86494861db2eb924b7ff9b151ae3c5b0e493c373bf9') + '0e4aed294e60fc9ac397cff327a8b549e672d423bf71e4a2e53c62d36c60701c' + 'b2b69216aeb072ae8c40256c253a68c40a98f91d3ee544747c5e381eb7f311b8' + 'b66961f28d8e01d4c0cb6bf9df6cc3edc89c7a3369f44bb718ff6a1d77f6fd74' + 'ca1708abbd2f8960c278722dc81a7c635973d92872386ad9e2fff10b86836e98' + '523d52a6fc9df4c43c8401f17cd796ebd281845d05358c9564a64d8c5a63f028' + '4e708c9ec43ac4a5d718474c9431ba6b6da3e64a9dda6afd2853a9e9e3079ffb' + 'bc9e707a86e55a93f423e7bcdae4a25fd470b868e53829b91bbe2ccfbc6da27b' + '0376bd5efa31d4e2a9d52558777cebd9f0941df8e1adab916c868bf0c05f2fc3' + '351fd96be8cd5ebd0435c0a8a978673fc023e3b1026085e67f86d815b2285e25' + '994b27f23073a6e04bf8a61cd2eb9d2511b8eb0e81ed7828d4c3880f1e1f5061' + 'e66f241a67f2aeda3fd61ef56c6fa40f414f3b89b5e700cfb7680384f2be7f63' + 'f36b1b3109d035139cfff75962a81c870fcb73fc3f81bb958e34a9e60af4fa3a') +sha256sums_i686=('d32270be5fd9c3e3ba50f3aef33f6cfcb85be0c8216f03b777287cc621fdff28') +sha256sums_armv7h=('ef4661a32234fe12bda28e698400c78c11491387df83ee554c53afb4dba244da' + 'd3a4b7c7a3d3b4d69369b85630eef33b21cfbcffc23adbdc3cfa837610912287' + '2bce52fa4ae4d34ca171d3aa100302a920c231275fc3ba9141af8b2f68cf67d1' + '12d5706b00d2939b92130a4dc41d060f5e1fea75424b902ebceca72e427dc3b9' + 'f4d4b44adc4b47b18bac33aa2c46b458c1b7ceb277416eff59054b6d7687c6da') +b2sums=('45471cdf9e8fc37e384bdcfc2d22b113850daf62a5bea70a1dc6ea402fd2f924bc21cb0275f7e22532092e20af6de7fc2bc7f2056321d29fd29e5cb0e7e80f87' + 'SKIP' + 'e7e8c9e4bae48c6c15ce3d5b50694ae8560a48731263445c81284c5e798eb8d77ef032dc22d3dcbe8b47029f53518cbe559d8194b92d0c8bec76bb3acf9f708c' + 'SKIP' + '73fee2ae5cb1ffd3e6584e56da86a8b1ff6c713aae54d77c0dab113890fc673dc5f300eb9ed93fb367b045ece8fa80304ff277fe61665eccf7b7ce24f0c045eb' + 'SKIP' + 'd02a1153a4285b32c774dca4560fe37907ccf30b8e487a681b717ed95ae9bed5988875c0a118938e5885ae9d2857e53a6f216b732b6fa3368e3c5fe08c86382c' + 'SKIP' + '580911af9431c066bbc072fd22d5e2ef65f12d8358cec5ff5a4f1b7deebb86cef6b5c1ad631f42350af72c51d44d2093c71f761234fb224a8b9dbb3b64b8201d' + 'SKIP' + '196423ae81a8c359db0c70888b3117d126594699ddbf3033c69c5c2aba02d20f7349a48b9d8095c7d398024b10ef1f89f12b59421074cd57ac74d9462b0457d0' + '6389814bc853747652d366753e69c007a7499ac62e0052c81f83b78f151a186b2b25409c5e08ee027e1a262767476b07d6812779056719a80caf70b7e1dd5621' + '5760e0879cf71dfc1c9bdd557829f28437909e701fa566cc3575a52785c81ac70d634ec929833ac01aea111bbae6ba402add738dc86623b32bcc3b523d43f60f' + 'af69176b1117b94e56b043e97b0bd5873a2974a6a2fd52b102d0ffdca440ff68cfb241d6c4d4ef453cc8c220c236b739bad232e53fd500ce7672fa6e5ba87383' + '9336fb5d1f98a77144673750b0f924b15b60e98e4bba0d13d1b1a5c977f14538f97143147081c94e0d8555b5dbd246fe0a410c7146a9b0866f3728176548fb0a' + 'eeed12b2ab60c3d3aad598a1d44b4f23560d818e8fe1ef143f857c8e176652df53501b192ade7d4d915d425fff818b2a232d46bae0d3a0f46b8959e614e0ede2' + 'aaa4e28a31967cc3a7fe25a86ba35fdfa210cd8b1a9cc96298349cbf01d60cdf146ee519d6803d05b175873f1b3367e47194a178db7ed97c802e59b38f8c303c' + 'c2214154c36900e311531bfe68184f31639f5c50fed23bc3803a7f18439b7ff258552a39f02fed0ea92f10744e17a6c55cef0ef1a98187f978fe480fb3dddc14' + '0c7ceba7cd90087db3296610a07886f337910bad265a32c052d3a703e6eb8e53f355ab9948d72d366408d968d8ee7435084dd89bef5ed0b69355fd884c2cd468' + '6f1d4a50cbfc5777d481596593b4d137fcd35b5b2af6ad610147ae28e5918800f917f7d65544c97b67005ad7c171b36c205c748e24a5d44fea23ed53460bd2bc' + '3b9a9e60af14d82d82e9645b55cd8f1f5827da1b15226c1cd8022c0a426c1d4d66981c2be2ef422cd7401aa74d3e610ebe9f4e76e0b506cebe758bc27464145a' + 'a8b01480b16f062bf465149494387f6f4eabc3289dc7596c4dbfe4a4a963f60d717f86cead9dc37d1fea9c9213cd6d2663648f3fc8d197c09d006ac2dc0c4511') +b2sums_i686=('165ab9dd8cedeaae5327accc1581c19cf0be55f923b03feb889cad3351b74c7c4cd3d3c206938e5152bfe1d947513dea8f630f8f5544099ec13d16d254725c40') +b2sums_armv7h=('73ecc5862c6b4aef7b163c1992004273fbf791b82c75a8602e3def311f682f2b866124c0bfde90d03c7c76bb8b5853bdb9daad6ee2ab0908f4145cda476b8286' + '15f7b70b5d153e9336006aba873a78f94d91b8df5e1939041f12e678bb9cfbdda2e362001068a07c044ce606cf0d4d2e625002df9c569c914f7ac248d4d3e8ad' + '6219cec826bc543000ab87cf35dcc713f0635519cf79e75888b213a5e2d1f728e59e70df7fd842dda6e40494bf9cafa9f87368cb75b338c5a157a0adcf583512' + '66d6cff292962c4c8bbea62b2240c4c53c0c514f9e99864be9244cb846c505e1bedd800ca1347b80883543035d20573b06796e5bacbace6e829880695ffca781' + '741ad7ffc9e8200657315fc4111066b2477cde35ecdc5e73976457f17106f80d148d86bf97b92c523fef1cc5a26ddb867d16330f592f2aa4d886be596bedc8df') _replacesarchkernel=("${_replacesarchkernel[@]/\%/${pkgbase#linux-libre}}") _replacesoldkernels=("${_replacesoldkernels[@]/\%/${pkgbase#linux-libre}}") @@ -141,36 +166,22 @@ prepare() { ../logo_linux_{clut224.ppm,vga16.ppm,mono.pbm} echo "Setting version..." - scripts/setlocalversion --save-scmversion echo "-$pkgrel" > localversion.10-pkgrel echo "${pkgbase#linux-libre}" > localversion.20-pkgname - if [ "$CARCH" = "armv7h" ]; then - local src_armv7h - for src_armv7h in "${source_armv7h[@]}"; do - src_armv7h="${src_armv7h%%::*}" - src_armv7h="${src_armv7h##*/}" - [[ $src_armv7h = *.patch ]] || continue - echo "Applying patch $src_armv7h..." - patch -Np1 < "../$src_armv7h" - done - fi - - if [ "$CARCH" = "i686" ]; then - local src_i686 - for src_i686 in "${source_i686[@]}"; do - src_i686="${src_i686%%::*}" - src_i686="${src_i686##*/}" - [[ $src_i686 = *.patch ]] || continue - echo "Applying patch $src_i686..." - patch -Np1 < "../$src_i686" - done - fi + local source=("${source[@]}") + case "$CARCH" in + "armv7h") + source+=("${source_armv7h[@]}") ;; + "i686") + source+=("${source_i686[@]}") ;; + esac local src for src in "${source[@]}"; do src="${src%%::*}" src="${src##*/}" + src="${src%.zst}" [[ $src = *.patch ]] || continue echo "Applying patch $src..." patch -Np1 < "../$src" @@ -179,7 +190,7 @@ prepare() { echo "Setting config..." cp ../config.$CARCH .config make olddefconfig - diff -u ../config .config || : + diff -u ../config.$CARCH .config || : make -s kernelrelease > version echo "Prepared $pkgbase version $(<version)" @@ -188,23 +199,39 @@ prepare() { build() { cd $_srcname make all - make htmldocs + + # temporarily disabled documentation due to sphinx_rtd_theme (FS32#163) + if [ "$CARCH" != "i686" ]; then + make htmldocs + fi } _package() { pkgdesc="The $pkgdesc kernel and modules" - depends=(coreutils kmod initramfs) - optdepends=('crda: to set the correct wireless channels of your country' - 'linux-libre-firmware: firmware images needed for some devices') - provides=(VIRTUALBOX-GUEST-MODULES WIREGUARD-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-libre-firmware: firmware images needed for some devices' + ) + provides=( + KSMBD-MODULE + VIRTUALBOX-GUEST-MODULES + WIREGUARD-MODULE + ) + replaces=( + virtualbox-guest-modules-arch + wireguard-arch + ) provides+=("${_replacesarchkernel[@]/%/=$pkgver}" "LINUX-ABI_VERSION=$pkgver") conflicts+=("${_replacesarchkernel[@]}" "${_replacesoldkernels[@]}" "${_replacesoldmodules[@]}") replaces+=("${_replacesarchkernel[@]}" "${_replacesoldkernels[@]}" "${_replacesoldmodules[@]}") 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 @@ -215,19 +242,20 @@ _package() { echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase" echo "Installing modules..." - make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 modules_install + 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 if [ "$CARCH" = "armv7h" ]; then echo "Installing device tree binaries..." make INSTALL_DTBS_PATH="$pkgdir/boot/dtbs/$pkgbase" dtbs_install - # armv7h presets only work with ALL_kver=$kernver - backup=("etc/mkinitcpio.d/$pkgbase.preset") + # armv7h presets only work with ALL_kver=$(<version) + backup+=("etc/mkinitcpio.d/$pkgbase.preset") echo "Installing mkinitcpio preset..." - sed "s|%PKGBASE%|$pkgbase|g;s|%KERNVER%|$kernver|g" ../linux-armv7h.preset \ + sed "s|%PKGBASE%|$pkgbase|g;s|%KERNVER%|$(<version)|g" ../linux-armv7h.preset \ | install -Dm644 /dev/stdin "$pkgdir/etc/mkinitcpio.d/$pkgbase.preset" fi } @@ -247,36 +275,26 @@ _package-headers() { localversion.* version vmlinux install -Dt "$builddir/kernel" -m644 kernel/Makefile install -Dt "$builddir/arch/$KARCH" -m644 arch/$KARCH/Makefile - if [[ $CARCH = i686 ]]; then - install -Dt "$builddir/arch/$KARCH" -m644 arch/$KARCH/Makefile_32.cpu + if [ "$CARCH" = "i686" ]; then + install -Dt "$builddir/arch/x86" -m644 arch/x86/Makefile_32.cpu fi cp -t "$builddir" -a scripts - # add objtool for external module building and enabled VALIDATION_STACK option + # required when STACK_VALIDATION is enabled if [[ -e tools/objtool/objtool ]]; then install -Dt "$builddir/tools/objtool" tools/objtool/objtool fi - # add xfs and shmem for aufs building - mkdir -p "$builddir"/{fs/xfs,mm} + # required when DEBUG_INFO_BTF_MODULES is enabled + if [[ -e tools/bpf/resolve_btfids/resolve_btfids ]]; then + install -Dt "$builddir/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids + fi echo "Installing headers..." cp -t "$builddir" -a include cp -t "$builddir/arch/$KARCH" -a arch/$KARCH/include install -Dt "$builddir/arch/$KARCH/kernel" -m644 arch/$KARCH/kernel/asm-offsets.s - # from linux-armv7 - if [ "$CARCH" = "armv7h" ]; then - for i in dove omap2; do - mkdir -p "$builddir/arch/$KARCH/mach-$i" - cp -t "$builddir/arch/$KARCH/mach-$i/" -a arch/$KARCH/mach-$i/include - done - for i in omap orion versatile; do - mkdir -p "$builddir/arch/$KARCH/plat-$i" - cp -t "$builddir/arch/$KARCH/plat-$i/" -a arch/$KARCH/plat-$i/include - done - fi - install -Dt "$builddir/drivers/md" -m644 drivers/md/*.h install -Dt "$builddir/net/mac80211" -m644 net/mac80211/*.h @@ -314,7 +332,7 @@ _package-headers() { echo "Stripping build tools..." local file while read -rd '' file; do - case "$(file -bi "$file")" in + case "$(file -Sib "$file")" in application/x-sharedlib\;*) # Libraries (.so) strip -v $STRIP_SHARED "$file" ;; application/x-archive\;*) # Libraries (.a) @@ -387,8 +405,12 @@ _package-chromebook() { cp vmlinux.kpart "$pkgdir/boot" } -pkgname=("$pkgbase" "$pkgbase-headers" "$pkgbase-docs") -[[ $CARCH = armv7h ]] && pkgname+=("$pkgbase-chromebook") +pkgname=( + "$pkgbase" + "$pkgbase-headers" + "$pkgbase-docs" +) +[ "$CARCH" = "armv7h" ] && pkgname+=("$pkgbase-chromebook") for _p in "${pkgname[@]}"; do eval "package_$_p() { $(declare -f "_package${_p#$pkgbase}") |