diff options
author | David P <megver83@parabola.nu> | 2018-03-27 14:16:24 -0300 |
---|---|---|
committer | David P <megver83@parabola.nu> | 2018-03-27 14:16:24 -0300 |
commit | dc11f3893a631130424594756b24a39acbf16247 (patch) | |
tree | e8731ccd6078b6042cc85f061324934e288704d6 /libre/linux-libre-pck/PKGBUILD | |
parent | e029927b8ceca76a9a669907ae1bbf1b3213a8ba (diff) | |
download | abslibre-dc11f3893a631130424594756b24a39acbf16247.tar.gz abslibre-dc11f3893a631130424594756b24a39acbf16247.tar.bz2 abslibre-dc11f3893a631130424594756b24a39acbf16247.zip |
upgpkg: libre/linux-libre-pck 4.15.12_gnu.pck1-1
Diffstat (limited to 'libre/linux-libre-pck/PKGBUILD')
-rw-r--r-- | libre/linux-libre-pck/PKGBUILD | 401 |
1 files changed, 401 insertions, 0 deletions
diff --git a/libre/linux-libre-pck/PKGBUILD b/libre/linux-libre-pck/PKGBUILD new file mode 100644 index 000000000..c2fec4264 --- /dev/null +++ b/libre/linux-libre-pck/PKGBUILD @@ -0,0 +1,401 @@ +# Maintainer: David P. <megver83@parabola.nu> +# Contributor: André Silva <emulatorman@hyperbola.info> +# Contributor: Márcio Silva <coadde@hyperbola.info> +# Contributor: Nicolás Reynolds <fauno@kiwwwi.com.ar> +# Contributor: Sorin-Mihai Vârgolici <smv@yobicore.org> +# Contributor: Michał Masłowski <mtjm@mtjm.eu> +# Contributor: Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: Luke R. <g4jc@openmailbox.org> + +# Based on linux-zen package + +pkgbase=linux-libre-pck +_pkgbasever=4.15-gnu +_pkgver=4.15.13-gnu +_pckpatchver=pck1 + +_replacesarchkernel=('linux-zen') +_replacesoldkernels=() +_replacesoldmodules=() + +_srcname=linux-${_pkgbasever%-*} +_archpkgver=${_pkgver%-*} +pkgver=${_pkgver//-/_}.${_pckpatchver} +pkgrel=1 +rcnrel=armv7-x1 +arch=('i686' 'x86_64' 'armv7h') +url="https://wiki.parabola.nu/PCK" +license=('GPL2') +makedepends=('xmlto' 'kmod' 'inetutils' 'bc' 'libelf') +makedepends_armv7h=('git') +options=('!strip') +source=( + "https://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/linux-libre-${_pkgbasever}.tar.xz"{,.sign} + "https://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgver}/patch-${_pkgbasever}-${_pkgver}.xz"{,.sign} + "https://repo.parabola.nu/other/pck/patches/${_pkgver}/patch-${_pkgver}-${_pckpatchver}.patch"{,.sig} + "https://repo.parabola.nu/other/linux-libre/logos/logo_linux_clut224.ppm"{,.sig} + "https://repo.parabola.nu/other/linux-libre/logos/logo_linux_mono.pbm"{,.sig} + "https://repo.parabola.nu/other/linux-libre/logos/logo_linux_vga16.ppm"{,.sig} + # the main kernel config files + 'config.i686' 'config.x86_64' 'config.armv7h' + # pacman hooks for depmod and initramfs regeneration + '60-linux.hook' '90-linux.hook' + # standard config files for mkinitcpio ramdisk + 'linux.preset' + # armv7h patches + "https://repo.parabola.nu/other/rcn-libre/patches/${_pkgver%-*}/rcn-libre-${_pkgver%-*}-${rcnrel}.patch"{,.sig} + '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-disable-USB3-port-on-ODROID-XU.patch' + '0009-ARM-dove-enable-ethernet-on-D3Plug.patch' + '0010-power-add-power-sequence-library.patch' + '0011-usb-core-add-power-sequence-handling-for-USB-devices.patch' + '0012-ARM-dts-imx6qdl-Enable-usb-node-children-with-reg.patch' + '0013-ARM-dts-imx6qdl-udoo.dtsi-fix-onboard-USB-HUB-proper.patch' + '0014-ARM-dts-imx6q-evi-Fix-onboard-hub-reset-line.patch' + # other patches + '0001-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch' + '0002-fix-Atmel-maXTouch-touchscreen-support.patch' +) +validpgpkeys=( + '474402C8C582DAFBE389C427BCB7CF877E7D47A7' # Alexandre Oliva + '6DB9C4B4F0D8C0DC432CF6E4227CA7C556B2BA78' # David P. +) +sha512sums=('a55cc663c6fb1e1cfa7905282b368b5d5888bc2398f0acf37e5bb9a232ded04fd566b1980e654da26aaec005332e458581495184d6bd4cec669181085d4d78a5' + 'SKIP' + '3b95e92ee27735d6adf31d70ef5b07cb287846d9dd5e594b9e978d914045b07262d051c2ab803f60d1c0cd1ffee7613d5b072d67e61540f33609de88dc1ed89b' + 'SKIP' + '6761ff06a2e1ebb9e74b887ad7d294aabe2c1ca2c1f8d1c680e47a7f50426d671bc166900ab4a64677a947903aec97b8be9b0a7cadc5073e618a585ca52dba30' + 'SKIP' + '13cb5bc42542e7b8bb104d5f68253f6609e463b6799800418af33eb0272cc269aaa36163c3e6f0aacbdaaa1d05e2827a4a7c4a08a029238439ed08b89c564bb3' + 'SKIP' + '267295aa0cea65684968420c68b32f1a66a22d018b9d2b2c1ef14267bcf4cb68aaf7099d073cbfefe6c25c8608bdcbbd45f7ac8893fdcecbf1e621abdfe9ecc1' + 'SKIP' + '7a3716bfe3b9f546da309c7492f3e08f8f506813afeb1c737a474c83313d5c313cf4582b65215c2cfce3b74d9d1021c96e8badafe8f6e5b01fe28d2b5c61ae78' + 'SKIP' + 'a585ddd82ccd86faf7e745605dc0cba8db7f6dcd3eeb5b5b1d030f239bfbb49efffd33f48c4d1e2df9e62e63bbd4f177c805442e09bc5d4e37ecaeb0b490fdbf' + '31b5028f23f5a0ac27258c227dadd5e9a733f563d6f01d2ea9637dc1d393d03b6982b9da1b6e741e68fa1f886230385dd7e3d6468f5cc1ace43c95dfff67ffe4' + 'a6d5407f62ab5219aef05538a8fba4240f19f8222851aaaf894ef809b8deedf6e877a5846f662bce76a96aa9280e0e754c0f84da3570964726be925c0914e706' + '7ad5be75ee422dda3b80edd2eb614d8a9181e2c8228cd68b3881e2fb95953bf2dea6cbe7900ce1013c9de89b2802574b7b24869fc5d7a95d3cc3112c4d27063a' + '4a8b324aee4cccf3a512ad04ce1a272d14e5b05c8de90feb82075f55ea3845948d817e1b0c6f298f5816834ddd3e5ce0a0e2619866289f3c1ab8fd2f35f04f44' + '2dc6b0ba8f7dbf19d2446c5c5f1823587de89f4e28e9595937dd51a87755099656f2acec50e3e2546ea633ad1bfd1c722e0c2b91eef1d609103d8abdc0a7cbaf' + '7da8f3fbeb1b697f758ff6c09dd17384b931cebaa5f2f735998f8d30d088af3d6a1895dc741df3c94f3edaad80c01b588667558a82ed029ecec69dfa39706c16' + 'SKIP' + 'ba44aa1252aa1b172e0bc8bbbff864ff60cad6739b2aed2f6a2402848aa65cdb8a8ca6bb9341569b089d60dfd83c3bdd744b5810061ac76b19f0d337afe4cc8d' + '738bc2874351d9e1b94319e6caf615b49753155c99dc9318a1ce9eced50f87627a7331762951f55e2bea8abdb97b80a617a08f3f0bc735e56ff831a8bbb19816' + 'f45d8d417eb3f4b6e02e337480bd99a8ebb4b9ac004c53a5432255e5841578fb64530663b6eacb3c8f40aaade8e1dc1e584aa1cf4b560103119e4b32e19b66c3' + '25ee5d9859d3df2d054fd6d53fe6b8931d6ac9f85533c54f3dd926fce917c81bd96cb3858189a20cf28a32b43efd1566cb5513f7db18a0bb8ead1a4e8a7be6fc' + 'a1aa8272760da0c8d2772cc8a57d8600f08db176206afd2a155055d2969bf0295f342a156841964a07de53fbf0356385b604ad75e5556569872dfad1863b2c27' + 'b58efc374344d10290371f3dfe8a124f855015d3ce169ccf538e6c1476092abf7ac689f0f10fb6a191fa19545b49ce13957ada066b37415f37dd5989ff93db37' + 'd2326e2e3ef6f2f5e911e6ad2fc3ac33b6f53fc5bb03e61d0e8371e6c7199028b226356926472ba676ca68a6cc57d33856c662615ed5b52566570670d0f96c89' + 'bc47549f2a79a79659d4d53f739e091c1e8f54cef8c1776be2034675cbb43f584a128607b1d4dd6a9f465706bb1470c6cb4277877dd3218e7280f503babf8300' + 'd90f3a3b74d65b84c4c2c229d10d2bb854e39e3429ba1469f8bb286819d559c68e00302de2be5043cf274b39a58686dc822c60afe1c553c4c967ef168d98af05' + '0c1a4334fcb4e75d25ec43873275b2f8a599a096b05a51ef2f9d48f3c8425a153f5f0df775e030e61b792f8b34e9c848229028fb6d2411f85028441826951dd5' + '0ccccf4411df6b86486b14e9354bf48355a2dc5bfefce693c5afc1a340db6f9db525a0306897ccbb5ed80304fa38ef13f32355cfeee1c9b684db0a9c0063d5c1' + '1a491eab1b07e9fb0b8a8dba4ef17d658c85106e7f62f3a37c34513aa9cd50b4bbb273aa445380f2e2135adea68c7102718e71bf2c9f4d3a5c24515620606605' + '9ae97a7f29323542d70576e8800e2090a69a43caee3182a453e80c3c3265d6cc04e2b5701e5d24d8a2717e29272950231b7e477aa32d69c7333c083626fc6802' + '9b8829fd9bf6c91e5c9e21184c7f57b22d786c20a15512e91cc75890a5d08a633df555973b29f2da9a7d9b965abd0c76ecdefa5498217837389ad1d0be0fb754' + '02af4dd2a007e41db0c63822c8ab3b80b5d25646af1906dc85d0ad9bb8bbf5236f8e381d7f91cf99ed4b0978c50aee37cb9567cdeef65b7ec3d91b882852b1af' + 'b8fe56e14006ab866970ddbd501c054ae37186ddc065bb869cf7d18db8c0d455118d5bda3255fb66a0dde38b544655cfe9040ffe46e41d19830b47959b2fb168') + +_kernelname=${pkgbase#linux-libre} +_replacesarchkernel=("${_replacesarchkernel[@]/\%/${_kernelname}}") +_replacesoldkernels=("${_replacesoldkernels[@]/\%/${_kernelname}}") +_replacesoldmodules=("${_replacesoldmodules[@]/\%/${_kernelname}}") + +case "${CARCH}" in + i686|x86_64) KARCH=x86;; + armv7h) KARCH=arm;; +esac + +prepare() { + cd ${_srcname} + + # add upstream patch + if [ "${_pkgbasever}" != "${_pkgver}" ]; then + patch -p1 -i ../patch-${_pkgbasever}-${_pkgver} + fi + + # add PCK patch + patch -p1 -i ../patch-${_pkgver}-${_pckpatchver}.patch + + if [ "${CARCH}" = "armv7h" ]; then + # RCN patch (CM3 firmware deblobbed and AUFS removed) + # Note: For stability reasons, AUFS has been removed in the RCN patch. + # We are supporting AUFS in linux-libre-pck through PCK patch. + # See https://wiki.parabola.nu/PCK for further details. + git apply -v "${srcdir}/rcn-libre-${_pkgver%-*}-${rcnrel}.patch" + + # ALARM patches + patch -p1 -i "${srcdir}/0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch" + patch -p1 -i "${srcdir}/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch" + patch -p1 -i "${srcdir}/0003-SMILE-Plug-device-tree-file.patch" + patch -p1 -i "${srcdir}/0004-fix-mvsdio-eMMC-timing.patch" + patch -p1 -i "${srcdir}/0005-net-smsc95xx-Allow-mac-address-to-be-set-as-a-parame.patch" + patch -p1 -i "${srcdir}/0006-set-default-cubietruck-led-triggers.patch" + patch -p1 -i "${srcdir}/0007-exynos4412-odroid-set-higher-minimum-buck2-regulator.patch" + patch -p1 -i "${srcdir}/0008-disable-USB3-port-on-ODROID-XU.patch" + patch -p1 -i "${srcdir}/0009-ARM-dove-enable-ethernet-on-D3Plug.patch" + patch -p1 -i "${srcdir}/0010-power-add-power-sequence-library.patch" + patch -p1 -i "${srcdir}/0011-usb-core-add-power-sequence-handling-for-USB-devices.patch" + patch -p1 -i "${srcdir}/0012-ARM-dts-imx6qdl-Enable-usb-node-children-with-reg.patch" + patch -p1 -i "${srcdir}/0013-ARM-dts-imx6qdl-udoo.dtsi-fix-onboard-USB-HUB-proper.patch" + patch -p1 -i "${srcdir}/0014-ARM-dts-imx6q-evi-Fix-onboard-hub-reset-line.patch" + fi + + # add freedo as boot logo + install -m644 -t drivers/video/logo \ + "${srcdir}/logo_linux_"{clut224.ppm,vga16.ppm,mono.pbm} + + # add latest fixes from stable queue, if needed + # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git + + # maintain the TTY over USB disconnects + # http://www.coreboot.org/EHCI_Gadget_Debug + patch -p1 -i "${srcdir}/0001-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch" + + # fix Atmel maXTouch touchscreen support + # https://labs.parabola.nu/issues/877 + # http://www.fsfla.org/pipermail/linux-libre/2015-November/003202.html + patch -p1 -i "${srcdir}/0002-fix-Atmel-maXTouch-touchscreen-support.patch" + + cat ../config.${CARCH} - >.config <<END +CONFIG_LOCALVERSION="${_kernelname}" +CONFIG_LOCALVERSION_AUTO=n +END + + # append pkgrel to extraversion and empty localversion + sed -e "/^EXTRAVERSION = -gnu/s/-gnu.*/-gnu-${pkgrel}/" \ + -e "/^EXTRAVERSION =/aLOCALVERSION =" \ + -i Makefile + + # don't run depmod on 'make install'. We'll do this ourselves in packaging + sed -i '2iexit 0' scripts/depmod.sh + + # get kernel version + make prepare + + # load configuration + # Configure the kernel. Replace the line below with one of your choice. + #make menuconfig # CLI menu for configuration + #make nconfig # new CLI menu for configuration + #make xconfig # X-based configuration + #make oldconfig # using old config from previous kernel version + # ... or manually edit .config + + # rewrite configuration + yes "" | make config >/dev/null +} + +build() { + cd ${_srcname} + + if [ "${CARCH}" = "armv7h" ]; then + make ${MAKEFLAGS} LOCALVERSION= zImage modules dtbs + elif [ "${CARCH}" = "x86_64" ] || [ "${CARCH}" = "i686" ]; then + make ${MAKEFLAGS} LOCALVERSION= bzImage modules + fi +} + +_package() { + pkgdesc="The ${pkgbase^} kernel and modules with a handful of awesome features not merged into mainline [AUFS, BFQ, BFS, UKSM, TuxOnIce]" + [ "${pkgbase}" = "linux-libre" ] && groups=('base' 'base-openrc') + depends=('coreutils' 'linux-libre-firmware' 'kmod' 'mkinitcpio>=0.7') + optdepends=('crda: to set the correct wireless channels of your country') + provides=("${_replacesarchkernel[@]/%/=${_archpkgver}}") + conflicts=("${_replacesarchkernel[@]}" "${_replacesoldkernels[@]}" "${_replacesoldmodules[@]}") + replaces=("${_replacesarchkernel[@]}" "${_replacesoldkernels[@]}" "${_replacesoldmodules[@]}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=linux.install + + cd ${_srcname} + + # get kernel version + _kernver="$(make kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} + + mkdir -p "${pkgdir}"/{boot,usr/lib/modules} + make INSTALL_MOD_PATH="${pkgdir}/usr" modules_install + if [ "${CARCH}" = "armv7h" ]; then + make LOCALVERSION= INSTALL_DTBS_PATH="${pkgdir}/boot/dtbs/${pkgbase}" dtbs_install + cp arch/$KARCH/boot/zImage "${pkgdir}/boot/vmlinuz-${pkgbase}" + elif [ "${CARCH}" = "x86_64" ] || [ "${CARCH}" = "i686" ]; then + cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}" + fi + + # make room for external modules + local _extramodules="extramodules-${_basekernel}${_kernelname}" + ln -s "../${_extramodules}" "${pkgdir}/usr/lib/modules/${_kernver}/extramodules" + + # add real version for building modules and running depmod from hook + echo "${_kernver}" | + install -Dm644 /dev/stdin "${pkgdir}/usr/lib/modules/${_extramodules}/version" + + # remove build and source links + rm "${pkgdir}"/usr/lib/modules/${_kernver}/{source,build} + + # now we call depmod... + depmod -b "${pkgdir}/usr" -F System.map "${_kernver}" + + if [ "${CARCH}" = "x86_64" ] || [ "${CARCH}" = "i686" ]; then + # add vmlinux + install -Dt "${pkgdir}/usr/lib/modules/${_kernver}/build" -m644 vmlinux + fi + + # sed expression for following substitutions + if [ "${CARCH}" = "armv7h" ]; then + local _subst=" + s|/boot/vmlinuz-%PKGBASE%|${_kernver}|g + s|%PKGBASE%|${pkgbase}|g + s|%KERNVER%|${_kernver}|g + s|%EXTRAMODULES%|${_extramodules}|g + " + elif [ "${CARCH}" = "x86_64" ] || [ "${CARCH}" = "i686" ]; then + local _subst=" + s|%PKGBASE%|${pkgbase}|g + s|%KERNVER%|${_kernver}|g + s|%EXTRAMODULES%|${_extramodules}|g + " + fi + + # hack to allow specifying an initially nonexisting install file + sed "${_subst}" "${startdir}/${install}" > "${startdir}/${install}.pkg" + true && install=${install}.pkg + + # install mkinitcpio preset file + sed "${_subst}" ../linux.preset | + install -Dm644 /dev/stdin "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" + + # install pacman hooks + sed "${_subst}" ../60-linux.hook | + install -Dm644 /dev/stdin "${pkgdir}/usr/share/libalpm/hooks/60-${pkgbase}.hook" + sed "${_subst}" ../90-linux.hook | + install -Dm644 /dev/stdin "${pkgdir}/usr/share/libalpm/hooks/90-${pkgbase}.hook" +} + +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase^} kernel" + provides=("${_replacesarchkernel[@]/%/-headers=${_archpkgver}}") + conflicts=("${_replacesarchkernel[@]/%/-headers}" "${_replacesoldkernels[@]/%/-headers}") + replaces=("${_replacesarchkernel[@]/%/-headers}" "${_replacesoldkernels[@]/%/-headers}") + + cd ${_srcname} + local _builddir="${pkgdir}/usr/lib/modules/${_kernver}/build" + + install -Dt "${_builddir}" -m644 Makefile .config Module.symvers + install -Dt "${_builddir}/kernel" -m644 kernel/Makefile + + mkdir "${_builddir}/.tmp_versions" + + cp -t "${_builddir}" -a include scripts + + install -Dt "${_builddir}/arch/${KARCH}" -m644 arch/${KARCH}/Makefile + install -Dt "${_builddir}/arch/${KARCH}/kernel" -m644 arch/${KARCH}/kernel/asm-offsets.s + + if [[ ${CARCH} = i686 ]]; then + install -t "${_builddir}/arch/${KARCH}" -m644 arch/${KARCH}/Makefile_32.cpu + fi + + cp -t "${_builddir}/arch/${KARCH}" -a arch/${KARCH}/include + + install -Dt "${_builddir}/drivers/md" -m644 drivers/md/*.h + install -Dt "${_builddir}/net/mac80211" -m644 net/mac80211/*.h + + # http://bugs.archlinux.org/task/9912 + install -Dt "${_builddir}/drivers/media/dvb-core" -m644 drivers/media/dvb-core/*.h + + # http://bugs.archlinux.org/task/13146 + install -Dt "${_builddir}/drivers/media/i2c" -m644 drivers/media/i2c/msp3400-driver.h + + # http://bugs.archlinux.org/task/20402 + install -Dt "${_builddir}/drivers/media/usb/dvb-usb" -m644 drivers/media/usb/dvb-usb/*.h + install -Dt "${_builddir}/drivers/media/dvb-frontends" -m644 drivers/media/dvb-frontends/*.h + install -Dt "${_builddir}/drivers/media/tuners" -m644 drivers/media/tuners/*.h + + # add xfs and shmem for aufs building + mkdir -p "${_builddir}"/{fs/xfs,mm} + + # copy in Kconfig files + find . -name Kconfig\* -exec install -Dm644 {} "${_builddir}/{}" \; + + # add objtool for external module building and enabled VALIDATION_STACK option + if [[ -e tools/objtool/objtool ]]; then + install -Dt "${_builddir}/tools/objtool" tools/objtool/objtool + fi + + # remove unneeded architectures + local _arch + for _arch in "${_builddir}"/arch/*/; do + [[ ${_arch} == */${KARCH}/ ]] && continue + rm -r "${_arch}" + done + + # remove files already in linux-docs package + rm -r "${_builddir}/Documentation" + + # parabola changes + # + # since we don't want to diverge too much from arch's pkgbuild, we'll + # start marking our changes as such + if [ "${CARCH}" = "armv7h" ]; then + for i in dove exynos omap2; do + mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/mach-${i}" + cp -a arch/${KARCH}/mach-${i}/include "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/mach-${i}/" + done + for i in omap orion samsung versatile; do + mkdir -p "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/plat-${i}" + cp -a arch/${KARCH}/plat-${i}/include "${pkgdir}/usr/lib/modules/${_kernver}/build/arch/${KARCH}/plat-${i}/" + done + fi + # end of parabola changes + + # remove now broken symlinks + find -L "${_builddir}" -type l -printf 'Removing %P\n' -delete + + # Fix permissions + chmod -R u=rwX,go=rX "${_builddir}" + + # strip scripts directory + local _binary _strip + while read -rd '' _binary; do + case "$(file -bi "${_binary}")" in + *application/x-sharedlib*) _strip="${STRIP_SHARED}" ;; # Libraries (.so) + *application/x-archive*) _strip="${STRIP_STATIC}" ;; # Libraries (.a) + *application/x-executable*) _strip="${STRIP_BINARIES}" ;; # Binaries + *) continue ;; + esac + /usr/bin/strip ${_strip} "${_binary}" + done < <(find "${_builddir}/scripts" -type f -perm -u+w -print0 2>/dev/null) +} + +_package-docs() { + pkgdesc="Kernel hackers manual - HTML documentation that comes with the ${pkgbase^} kernel" + provides=("${_replacesarchkernel[@]/%/-docs=${_archpkgver}}") + conflicts=("${_replacesarchkernel[@]/%/-docs}" "${_replacesoldkernels[@]/%/-docs}") + replaces=("${_replacesarchkernel[@]/%/-docs}" "${_replacesoldkernels[@]/%/-docs}") + + cd ${_srcname} + local _builddir="${pkgdir}/usr/lib/modules/${_kernver}/build" + + mkdir -p "${_builddir}" + cp -t "${_builddir}" -a Documentation + + # Fix permissions + chmod -R u=rwX,go=rX "${_builddir}" +} + +pkgname=("${pkgbase}" "${pkgbase}-headers" "${pkgbase}-docs") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + $(declare -f "_package${_p#${pkgbase}}") + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: |