summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorXorg2016-03-27 12:05:25 +0200
committerXorg2016-03-27 12:07:40 +0200
commit8b5dd1aad792a8133129073ea0e71908b1fba8c3 (patch)
tree78e4923bc823333ac5cb5047ab2136474e9fd82b
parentb0c4472a5065e4aeaa620e5a54f7cbf431e01c31 (diff)
downloadaur-8b5dd1aad792a8133129073ea0e71908b1fba8c3.tar.gz
Add DKMS support (split package)
-rw-r--r--.SRCINFO17
-rw-r--r--.gitignore1
-rw-r--r--PKGBUILD41
-rw-r--r--dkms.conf9
4 files changed, 57 insertions, 11 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4539485a026a..88d7238fa8de 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,18 +1,27 @@
# Generated by mksrcinfo v8
-# Wed Mar 2 16:19:02 UTC 2016
+# Sun Mar 27 10:05:25 UTC 2016
pkgbase = darling-mach-git
pkgdesc = Darling's Linux kernel module (darling-mach)
- pkgver = 21.b37d736
- pkgrel = 1
+ pkgver = 23.4036a2b
+ pkgrel = 2
url = http://www.darlinghq.org
- install = darling-mach-git.install
arch = x86_64
groups = darling-git
license = GPL3
makedepends = git
makedepends = linux-headers
source = git+https://github.com/darlinghq/darling.git
+ source = dkms.conf
md5sums = SKIP
+ md5sums = ecdbe450d66128abda784cf6ec232f25
pkgname = darling-mach-git
+ install = darling-mach-git.install
+ conflicts = darling-mach-dkms-git
+
+pkgname = darling-mach-dkms-git
+ depends = dkms
+ optdepends = linux-headers: Build the module for Arch kernel
+ optdepends = linux-lts-headers: Build the module for LTS Arch kernel
+ conflicts = darling-mach-git
diff --git a/.gitignore b/.gitignore
index 49182eca72dd..9898f063f671 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
!.SRCINFO
!PKGBUILD
!darling-mach-git.install
+!dkms.conf
diff --git a/PKGBUILD b/PKGBUILD
index 04b90e290b99..26090480f7b9 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,18 +2,20 @@
_kernel=$(pacman -Qqo /usr/lib/modules/`uname -r` | grep linux | grep -v headers)
_gitname=darling
-pkgname=$_gitname-mach-git
-pkgver=21.b37d736
-pkgrel=1
+pkgbase=$_gitname-mach-git
+pkgname=($_gitname-mach-git $_gitname-mach-dkms-git)
+pkgver=23.4036a2b
+pkgrel=2
pkgdesc="Darling's Linux kernel module (darling-mach)"
arch=('x86_64') # Can only be built on x86_64 systems
url="http://www.darlinghq.org"
license=('GPL3')
groups=('darling-git')
makedepends=('git' "$_kernel-headers")
-install=$pkgname.install
-source=('git+https://github.com/darlinghq/darling.git')
-md5sums=('SKIP')
+source=('git+https://github.com/darlinghq/darling.git'
+ 'dkms.conf')
+md5sums=('SKIP'
+ 'ecdbe450d66128abda784cf6ec232f25')
pkgver() {
cd "$srcdir/$_gitname"
@@ -31,7 +33,10 @@ build() {
done
}
-package() {
+package_darling-mach-git() {
+ install=$pkgname.install
+ conflicts=('darling-mach-dkms-git')
+
cd "$srcdir/$_gitname/src/lkm"
for kernel in $(ls -d /lib/modules/*); do
@@ -41,3 +46,25 @@ package() {
fi
done
}
+
+package_darling-mach-dkms-git() {
+ depends=('dkms')
+ optdepends=('linux-headers: Build the module for Arch kernel'
+ 'linux-lts-headers: Build the module for LTS Arch kernel')
+ conflicts=('darling-mach-git')
+ _srcdest="$pkgdir/usr/src/darling-mach-$pkgver"
+
+ msg2 "Install module sources for DKMS..."
+ install -dm755 "$_srcdest"
+ cp -r "$srcdir/$_gitname/src/lkm" "$_srcdest"
+ cp -r "$srcdir/$_gitname/kernel-include" "$_srcdest"
+ cp -r "$srcdir/$_gitname/platform-include" "$_srcdest"
+ cp -r "$srcdir/$_gitname/src/libc/include" "$_srcdest/libc-include"
+ install -Dm644 "$srcdir/dkms.conf" "$_srcdest"
+
+ msg2 "Set configuration for DKMS..."
+ sed -i "s|/../../kernel-include|/../kernel-include|" "$_srcdest/lkm/Makefile"
+ sed -i "s|/../../platform-include|/../platform-include|" "$_srcdest/lkm/Makefile"
+ sed -i "s|/../libc/include|/../libc-include|" "$_srcdest/lkm/Makefile"
+ sed -i "s|@PKGVER@|$pkgver|g" "$_srcdest/dkms.conf"
+}
diff --git a/dkms.conf b/dkms.conf
new file mode 100644
index 000000000000..8c7b06e023e1
--- /dev/null
+++ b/dkms.conf
@@ -0,0 +1,9 @@
+## @file
+PACKAGE_NAME="darling-mach-dkms-git"
+PACKAGE_VERSION="@PKGVER@"
+AUTOINSTALL="yes"
+
+MAKE[0]="make -C /lib/modules/$kernelver/build M=/usr/src/darling-mach-@PKGVER@/lkm modules"
+BUILT_MODULE_NAME[0]="darling-mach"
+BUILT_MODULE_LOCATION[0]="lkm"
+DEST_MODULE_LOCATION[0]="/kernel/misc"