Date: Sunday, July 30, 2017 @ 20:36:05 Author: heftig Revision: 247103
0.42-25 Modified: tp_smapi/trunk/PKGBUILD ----------+ PKGBUILD | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2017-07-30 20:04:51 UTC (rev 247102) +++ PKGBUILD 2017-07-30 20:36:05 UTC (rev 247103) @@ -10,8 +10,8 @@ pkgname=tp_smapi _pkgname=tp-smapi pkgver=0.42 -_extramodules=extramodules-4.12-ARCH -pkgrel=24 +_extradir=/usr/lib/modules/extramodules-4.12-ARCH +pkgrel=25 pkgdesc="Modules for ThinkPad's SMAPI functionality" arch=('i686' 'x86_64') url='https://github.com/evgeni/tp_smapi' @@ -18,36 +18,31 @@ license=('GPL') depends=('linux>=4.12' 'linux<4.13') makedepends=('linux-headers>=4.12' 'linux-headers<4.13') -install="${pkgname}.install" -source=("https://github.com/evgeni/$pkgname/archive/$_pkgname/$pkgver.tar.gz") +install="$pkgname.install" +source=("$pkgname-$_pkgname-$pkgver.tar.gz::https://github.com/evgeni/$pkgname/archive/$_pkgname/$pkgver.tar.gz") md5sums=('6a51d3aa459ad7a6ebfbb8c29527b3ee') build() { - cd "$srcdir/$pkgname-$_pkgname-$pkgver" + cd $pkgname-$_pkgname-$pkgver - _kernver="$(cat /usr/lib/modules/${_extramodules}/version)" - make HDAPS=1 KVER="$_kernver" KBASE="/usr/lib/modules/$_kernver" + # https://bugs.archlinux.org/task/54975 (kernel has no _GLOBAL_OFFSET_TABLE_): + # Clear EXTRA_CFLAGS since it defaults to injecting CFLAGS and -fno-plt breaks the modules + + make HDAPS=1 KVER="$(<$_extradir/version)" EXTRA_CFLAGS= } package() { - _kernver="$(cat /usr/lib/modules/${_extramodules}/version)" + cd $pkgname-$_pkgname-$pkgver - make -C "/usr/lib/modules/${_kernver}/build" \ - INSTALL_MOD_PATH="${pkgdir}/usr" \ - M="$srcdir/$pkgname-$_pkgname-$pkgver" modules_install + # install kernel modules + find . -name "*.ko" -exec install -Dt "$pkgdir$_extradir" {} + - cd "${pkgdir}/usr/lib/modules" - mv "${_kernver}/extra" "${_extramodules}" - rmdir "${_kernver}" - # compress kernel modules - find "${pkgdir}" -name "*.ko" -exec gzip -9 {} + + find "$pkgdir" -name "*.ko" -exec gzip -n -9 {} + # load module on startup - echo tp_smapi > "${srcdir}/${pkgname}.conf" - install -Dm644 "${srcdir}/${pkgname}.conf" "${pkgdir}/usr/lib/modules-load.d/${pkgname}.conf" + echo tp_smapi | install -Dm644 /dev/stdin "$pkgdir/usr/lib/modules-load.d/$pkgname.conf" # update kernel version in install file - sed -ri "s|^(extramodules=).*\$|\1/usr/lib/modules/${_extramodules}|" \ - "${startdir}/${pkgname}.install" + sed -ri "s|^(extramodules=).*\$|\1$_extradir|" "$startdir/tp_smapi.install" }