db-move: moved seahorse from [testing] to [extra] (x86_64)
[arch-packages.git] / dkms / trunk / PKGBUILD
blobc49faab0966157dd57ffb3f619aaeec37bed4d3c
1 # Maintainer: Sébastien Luttringer
2 # Contributor: Balwinder S "bsd" Dheeman (bdheeman AT gmail.com)
4 pkgname=dkms
5 pkgver=3.0.10
6 pkgrel=1
7 pkgdesc='Dynamic Kernel Modules System'
8 arch=('any')
9 url='https://github.com/dell/dkms'
10 license=('GPL2')
11 depends=('coreutils' 'bash' 'gawk' 'sed' 'kmod' 'gcc' 'make' 'patch')
12 makedepends=('git')
13 optdepends=('linux-headers: build modules against the Arch kernel'
14             'linux-lts-headers: build modules against the LTS kernel'
15             'linux-zen-headers: build modules against the ZEN kernel'
16             'linux-hardened-headers: build modules against the HARDENED kernel')
17 backup=('etc/dkms/framework.conf')
18 install=$pkgname.install
19 source=("git+https://github.com/dell/dkms.git#tag=v$pkgver"
20         'hook.install'
21         'hook.remove'
22         'hook.upgrade'
23         'hook.sh')
24 sha256sums=('SKIP'
25             'acdc5b45cc018cea04ee1aec56fd8fc3a2de62cf7bc41acf53b3790872120998'
26             '326515cc7d00f93760beb844434ca7442caf7a9424614aa95a8f6d1ab79e15df'
27             '4f8dff7716e73a8bba885638f12e3cdc9e87daec1896f75e700b981527e43870'
28             'c1b4a4e2e4e0e0e59ee0887403e79d60b209f3878dbbec6612573f13b90cce01')
30 prepare() {
31   cd dkms
33   # apply patch from the source array (should be a pacman feature)
34   local filename
35   for filename in "${source[@]}"; do
36     if [[ "$filename" =~ \.patch$ ]]; then
37       msg2 "Applying patch ${filename##*/}"
38       patch -p1 -N -i "$srcdir/${filename##*/}"
39     fi
40   done
42   # /usr move
43   msg2 '/usr move patching'
44   for i in dkms{.in,.8.in,_framework.conf,.bash-completion,_common.postinst}; do
45     sed -ri 's,/lib/modules,/usr/lib/modules,g' "$i"
46   done
49 package() {
50   # alpm hooks
51   install -D -m 644 hook.install "$pkgdir/usr/share/libalpm/hooks/70-dkms-install.hook"
52   # both upgrade and remove hooks are removing dkms modules.
53   # remove always call depmod while upgrade never, as install will later.
54   # upgrade is run before remove in order to have the cleanest depmod file,
55   # if something goes wrong before the depmod call in install hook.
56   install -D -m 644 hook.upgrade "$pkgdir/usr/share/libalpm/hooks/70-dkms-upgrade.hook"
57   install -D -m 644 hook.remove "$pkgdir/usr/share/libalpm/hooks/71-dkms-remove.hook"
58   # hook helper
59   install -D -m 755 hook.sh "$pkgdir/usr/share/libalpm/scripts/dkms"
60   # upstream installer
61   cd dkms
62   # we don't need kconf files and libdir is only for debian stuff, so
63   # we install them outside of $pkgdir
64   make \
65     DESTDIR="$pkgdir" \
66     SBIN="$pkgdir/usr/bin" \
67     BASHDIR="$pkgdir/usr/share/bash-completion/completions" \
68     KCONF="$srcdir"/trash \
69     LIBDIR="$srcdir"/trash \
70     install
73 # vim:set ts=2 sw=2 et: