summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD54
1 files changed, 54 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..faea8b02a32f
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,54 @@
+# Maintainer: Devin J. Pohly <djpohly+arch@gmail.com>
+# To build for alternate kernels, change pkgname to match
+pkgname=piuio-git
+#pkgname=piuio-git-lts
+pkgver=0.3.1.r0.gb8bdcb5
+pkgrel=2
+_srcname=piuio
+_kernelname=${pkgname#piuio-git}
+pkgdesc="Kernel driver for the PIUIO arcade input device"
+arch=('i686' 'x86_64')
+url="https://github.com/djpohly/$_srcname"
+license=('GPL2')
+makedepends=('git' 'kmod' "linux$_kernelname-headers")
+provides=("piuio$_kernelname")
+conflicts=("piuio$_kernelname")
+install=$_srcname.install
+source=("git+https://github.com/djpohly/$_srcname.git")
+sha256sums=('SKIP')
+
+pkgver() {
+ cd "$srcdir/$_srcname"
+ git describe --long --tags | sed -r 's/^v//;s/([^-]*-g)/r\1/;s/-/./g'
+}
+
+build() {
+ # Build against currently installed headers for the given kernel
+ _kernver=$(pacman -Q "linux$_kernelname-headers" | cut -d' ' -f2)
+ _kerneldir=/usr/lib/modules/$_kernver${_kernelname:--ARCH}/build
+
+ cd "$srcdir/$_srcname/mod"
+
+ make modules KDIR="$_kerneldir"
+}
+
+package() {
+ cd "$srcdir/$_srcname/mod"
+
+ # Get the version from the already-built module, in case installed
+ # version has changed since build.
+ _kernver=$(modinfo -F vermagic "$_srcname.ko" | cut -d' ' -f1)
+ _kernminor=${_kernver%.*}
+ _nextminor=${_kernminor%.*}.$((${_kernminor##*.}+1))
+ depends=("linux$_kernelname>=$_kernminor" "linux$_kernelname<$_nextminor")
+
+ install -Dm644 "$_srcname.ko" \
+ "$pkgdir/usr/lib/modules/extramodules-$_kernminor${_kernelname:--ARCH}/$_srcname.ko"
+
+ # Set kernel version in install script (for depmod)
+ sed \
+ -e "s/^KERNEL_VERSION=.*/KERNEL_VERSION=$_kernminor${_kernelname:--ARCH}/" \
+ -i "$startdir/$install"
+}
+
+# vim:set ts=2 sw=2 et: