diff options
-rw-r--r-- | PKGBUILD | 39 | ||||
-rw-r--r-- | dkms.conf | 7 | ||||
-rw-r--r-- | mcp2210-dkms-git.install | 15 | ||||
-rw-r--r-- | mcp2210-git.install | 2 |
4 files changed, 53 insertions, 10 deletions
@@ -1,22 +1,24 @@ # Maintainer: Alexey Galakhov <agalakhov@gmail.com> pkgbase=mcp2210-git -pkgname=(mcp2210-git mcp2210-utils-git) -pkgver="v0.1.r27.gfc8d532" +pkgname=(mcp2210-git mcp2210-dkms-git mcp2210-utils-git) +pkgver=v0.1.r28.gea416ae pkgver() { - cd "mcp2210-linux" - git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g' + cd "mcp2210-linux" + git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g' } -pkgrel=1 +pkgrel=2 pkgdesc="A kernel module for Microchip MCP2210 USB-to-SPI bridge" url="https://github.com/agalakhov/mcp2210-linux" license=("GPL") arch=('i686' 'x86_64' 'armv7h') depends=('linux') -makedepends=('linux-headers') -install=$pkgname.install -source=(git://github.com/agalakhov/mcp2210-linux.git) -md5sums=('SKIP') +makedepends=('linux-headers' 'dkms') +source=( git://github.com/agalakhov/mcp2210-linux.git + dkms.conf + ) +sha256sums=('SKIP' + '8f56d80fceeac1ed7fe786e16718c054212fd939dcac54b7976984127305ae53') build() { _kernver=$(pacman -Q linux | sed -r 's#.* ([0-9]+\.[0-9]+).*#\1#') @@ -27,6 +29,8 @@ build() { } package_mcp2210-git() { + install=mcp2210-git.install + conflicts=('mcp2210') _kernver=$(pacman -Q linux | sed -r 's#.* ([0-9]+\.[0-9]+).*#\1#') depends=("linux>=$_kernver" "linux<${_kernver/.*}.$(expr ${_kernver/*.} + 1)") KERNEL_VERSION=$(cat /usr/lib/modules/extramodules-$_kernver-ARCH/version) @@ -39,7 +43,24 @@ package_mcp2210-git() { sed -i "s|extramodules-.*-ARCH|extramodules-$_kernver-ARCH|" "$startdir/$pkgname.install" } +package_mcp2210-dkms-git() { + install=mcp2210-dkms-git.install + conflicts=('mcp2210' 'mcp2210-git') + depends=('dkms') + install -Dm644 dkms.conf "${pkgdir}"/usr/src/${pkgbase}-${pkgver}/dkms.conf + + # Set name and version + sed -e "s/@PKGBASE@/${pkgbase}/" \ + -e "s/@PKGVER@/${pkgver}/" \ + -i "${pkgdir}"/usr/src/${pkgbase}-${pkgver}/dkms.conf + + cp -r mcp2210-linux/* "${pkgdir}"/usr/src/${pkgbase}-${pkgver}/ + make -C "${pkgdir}"/usr/src/${pkgbase}-${pkgver}/ clean + #rm -r "${pkgdir}"/usr/src/${pkgbase}-${pkgver}/user +} + package_mcp2210-utils-git() { + conflicts=('mcp2210-utils') cd "mcp2210-linux" install -Dm644 user/libmcp2210.so "$pkgdir/usr/lib/libmcp2210.so" install -Dm755 user/mcp2210-util "$pkgdir/usr/bin/mcp2210-util" diff --git a/dkms.conf b/dkms.conf new file mode 100644 index 000000000000..843d869bc499 --- /dev/null +++ b/dkms.conf @@ -0,0 +1,7 @@ +PACKAGE_NAME="@PKGBASE@" +PACKAGE_VERSION="@PKGVER@" +MAKE[0]="'make' KERNELDIR='/lib/modules/$kernelver/build' modules" +CLEAN="make clean" +BUILT_MODULE_NAME[0]="mcp2210" +DEST_MODULE_LOCATION[0]="/kernel/drivers/misc" +AUTOINSTALL="yes" diff --git a/mcp2210-dkms-git.install b/mcp2210-dkms-git.install new file mode 100644 index 000000000000..7e5d21164f7f --- /dev/null +++ b/mcp2210-dkms-git.install @@ -0,0 +1,15 @@ +post_install() { + dkms install mcp2210-git/${1%%-*} +} + +pre_upgrade() { + pre_remove ${2%%-*} +} + +post_upgrade() { + post_install ${1%%-*} +} + +pre_remove() { + dkms remove mcp2210-git/${1%%-*} --all +} diff --git a/mcp2210-git.install b/mcp2210-git.install index 6cda7d993d31..a936d9bec955 100644 --- a/mcp2210-git.install +++ b/mcp2210-git.install @@ -1,5 +1,5 @@ rebuild_module_dependencies() { - EXTRAMODULES='extramodules-4.1-ARCH' + EXTRAMODULES='extramodules-4.2-ARCH' depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) } |