summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2012-08-07 17:53:32 (GMT)
committerJames Meyer <james.meyer@operamail.com>2012-08-07 17:53:32 (GMT)
commit25b32097c819d3812d466fde64e141cb1f77443c (patch)
tree9d8bd09b7bbd15ee181effbf19a1ecf3709a5433
parent85df93f5e84582cc25ccce73a8bf1cba67475c6f (diff)
downloadlinhes_pkgbuild-25b32097c819d3812d466fde64e141cb1f77443c.zip
linhes_pkgbuild-25b32097c819d3812d466fde64e141cb1f77443c.tar.gz
linhes_pkgbuild-25b32097c819d3812d466fde64e141cb1f77443c.tar.bz2
pcmcia 018
-rw-r--r--abs/core/pcmciautils/60-pcmcia.rules30
-rw-r--r--abs/core/pcmciautils/PKGBUILD42
-rw-r--r--abs/core/pcmciautils/initcpio-install-pcmcia22
3 files changed, 45 insertions, 49 deletions
diff --git a/abs/core/pcmciautils/60-pcmcia.rules b/abs/core/pcmciautils/60-pcmcia.rules
deleted file mode 100644
index aa3c1a2..0000000
--- a/abs/core/pcmciautils/60-pcmcia.rules
+++ /dev/null
@@ -1,30 +0,0 @@
-# PCMCIA devices:
-#
-ACTION!="add", GOTO="pcmciautils_end"
-# modprobe $env{MODALIAS} loads all possibly appropriate modules
-SUBSYSTEM=="pcmcia", ENV{MODALIAS}=="?*", \
- RUN+="/lib/udev/load-modules.sh $env{MODALIAS}"
-
-# Very few CIS firmware entries (which we use for matching)
-# are so broken that we need to read out random bytes of it
-# instead of the manufactor, card or product ID. Then the
-# matching is done in userspace.
-SUBSYSTEM=="pcmcia", ENV{MODALIAS}=="?*", \
- RUN+="/lib/udev/pcmcia-check-broken-cis"
-
-# However, the "weak" matching by func_id is only allowed _after_ modprobe
-# returns, so that "strong" matches have a higher priority.
-SUBSYSTEM=="pcmcia", ENV{MODALIAS}=="?*", ATTR{allow_func_id_match}="1"
-
-# PCMCIA sockets:
-#
-# modprobe the pcmcia bus module so that 16-bit PCMCIA devices work
-SUBSYSTEM=="pcmcia_socket", \
- RUN+="/lib/udev/load-modules.sh pcmcia"
-
-# if this is a PCMCIA socket which needs a resource database,
-# pcmcia-socket-startup sets it up
-SUBSYSTEM=="pcmcia_socket", \
- RUN+="/lib/udev/pcmcia-socket-startup"
-
-LABEL="pcmciautils_end"
diff --git a/abs/core/pcmciautils/PKGBUILD b/abs/core/pcmciautils/PKGBUILD
index 40a4a6b..fcc5996 100644
--- a/abs/core/pcmciautils/PKGBUILD
+++ b/abs/core/pcmciautils/PKGBUILD
@@ -1,31 +1,35 @@
-# $Id: PKGBUILD 82630 2010-06-15 04:26:01Z allan $
-# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# $Id: PKGBUILD 155725 2012-04-06 00:03:55Z tomegun $
+# Maintainer: Tom Gundersen <teg@jklm.no>
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=pcmciautils
-pkgver=017
-pkgrel=1
+pkgver=018
+pkgrel=4
pkgdesc="Utilities for inserting and removing PCMCIA cards"
-arch=('i686' 'x86_64')
+arch=(i686 x86_64)
url="http://kernel.org/pub/linux/utils/kernel/pcmcia/pcmcia.html"
license=('GPL')
groups=('base')
-depends=('glibc' 'sysfsutils' 'module-init-tools>=3.2pre9')
+# sysfsutils will not be required in the next release
+depends=('udev' 'sysfsutils')
conflicts=('pcmcia-cs')
-source=(http://kernel.org/pub/linux/utils/kernel/pcmcia/pcmciautils-$pkgver.tar.bz2
- 60-pcmcia.rules)
+# source=(http://kernel.org/pub/linux/utils/kernel/pcmcia/${pkgname}-${pkgver}.tar.bz2) broken due to breakin
+source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.xz
+ initcpio-install-pcmcia)
options=(!makeflags)
-md5sums=('5245af28eeba57ec0606a874d44d10f7'
- 'f88ac464ab9c75fe1565af551e6553a2')
build() {
- cd $srcdir/$pkgname-$pkgver
- sed -i -e 's,/usr/bin/install,/bin/install,g' Makefile
- make || return 1
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ sed -i -e 's,/usr/bin/install,install,g;
+ s,/lib/udev,/usr/lib/udev,g' Makefile
+ make
}
+
package() {
- cd $srcdir/$pkgname-$pkgver
- make DESTDIR=$pkgdir install || return 1
- # fix lspcmcia symlink
- ln -sf pccardctl $pkgdir/sbin/lspcmcia
- # add fixed rules file
- install -D -m644 $srcdir/60-pcmcia.rules $pkgdir/lib/udev/rules.d/
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ # install the mkinitpcio hook
+ install -D -m644 ../initcpio-install-pcmcia ${pkgdir}/usr/lib/initcpio/install/pcmcia
}
+md5sums=('964c802994677a71b38ec56554aa229f'
+ '2659576a4637c58c4e79a96f8e43e316')
diff --git a/abs/core/pcmciautils/initcpio-install-pcmcia b/abs/core/pcmciautils/initcpio-install-pcmcia
new file mode 100644
index 0000000..71052d6
--- /dev/null
+++ b/abs/core/pcmciautils/initcpio-install-pcmcia
@@ -0,0 +1,22 @@
+#!/bin/bash
+
+build() {
+ FILES="/etc/pcmcia/config.opts"
+ MODULES=" $(checked_modules '/drivers/pcmcia/' | grep -ve 'sound' -e 'net') $(checked_modules '/ide/legacy')"
+
+ [[ $MODULES ]] && MODULES+=" sd_mod?"
+
+ add_binary "/usr/lib/udev/pcmcia-socket-startup"
+ add_binary "/usr/lib/udev/pcmcia-check-broken-cis"
+ add_file "/usr/lib/udev/rules.d/60-pcmcia.rules"
+}
+
+help() {
+ cat <<HELPEOF
+This hook loads the necessary modules for a pcmcia root device. Detection will
+take place at runtime. To minimize the modules in the image, add the autodetect
+hook too.
+HELPEOF
+}
+
+# vim: set ft=sh ts=4 sw=4 et: