mirror of
https://gitdl.cn/https://github.com/chakralinux/core.git
synced 2025-02-10 08:04:36 +08:00
56 lines
1.7 KiB
Bash
56 lines
1.7 KiB
Bash
pkgbase=acpi_call
|
|
pkgname=(acpi_call acpi_call-dkms)
|
|
pkgver=1.1.0
|
|
pkgrel=57
|
|
pkgdesc="A kernel module that enables you to call parameterless ACPI methods by writing the method name to /proc/acpi/call, e.g. to turn off discrete graphics card in a dual graphics environment (like NVIDIA Optimus)."
|
|
arch=('x86_64')
|
|
url="http://github.com/mkottman/acpi_call"
|
|
license=('GPL')
|
|
depends=("linux=4.19.12")
|
|
makedepends=("linux-headers=4.19.12")
|
|
_extramodules=extramodules-CHAKRA
|
|
source=("https://github.com/mkottman/acpi_call/archive/v${pkgver}.tar.gz"
|
|
dkms.conf)
|
|
md5sums=('f69d40e130b0e5ed17ce8adb19e6dda1'
|
|
'dbaf20d4ac8b02490a1b3526e4536687')
|
|
|
|
prepare() {
|
|
cd $pkgbase-$pkgver
|
|
|
|
# Fix build with Linux >= 3.17
|
|
sed -i 's|acpi/acpi.h|linux/acpi.h|' acpi_call.c
|
|
|
|
# Fix build with Linux >= 4.12
|
|
sed -i 's|asm/uaccess.h|linux/uaccess.h|' acpi_call.c
|
|
}
|
|
|
|
build() {
|
|
cd $pkgbase-$pkgver
|
|
make KVERSION="$(cat /usr/lib/modules/$_extramodules/version)"
|
|
}
|
|
|
|
package_acpi_call() {
|
|
cd $pkgbase-$pkgver
|
|
install -Dt "$pkgdir/usr/lib/modules/$_extramodules" -m644 *.ko
|
|
find "$pkgdir" -name '*.ko' -exec xz {} +
|
|
|
|
echo acpi_call | install -Dm644 /dev/stdin "$pkgdir/usr/lib/modules-load.d/acpi_call.conf"
|
|
|
|
mkdir -p "$pkgdir/usr/share/acpi_call"
|
|
cp -t "$pkgdir/usr/share/acpi_call" -dr --no-preserve=ownership examples support
|
|
}
|
|
|
|
package_acpi_call-dkms() {
|
|
depends=(dkms)
|
|
provides=("acpi_call=$pkgver-$pkgrel")
|
|
conflicts=(acpi_call)
|
|
|
|
cd $pkgbase-$pkgver
|
|
install -Dt "$pkgdir/usr/src/$pkgbase-$pkgver" -m644 Makefile acpi_call.c ../dkms.conf
|
|
|
|
echo acpi_call | install -Dm644 /dev/stdin "$pkgdir/usr/lib/modules-load.d/acpi_call.conf"
|
|
|
|
mkdir -p "$pkgdir/usr/share/acpi_call"
|
|
cp -t "$pkgdir/usr/share/acpi_call" -dr --no-preserve=ownership examples support
|
|
}
|