summaryrefslogtreecommitdiffstats
path: root/abs/core/udev/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/udev/PKGBUILD')
-rw-r--r--abs/core/udev/PKGBUILD149
1 files changed, 90 insertions, 59 deletions
diff --git a/abs/core/udev/PKGBUILD b/abs/core/udev/PKGBUILD
index c22b10b..2f71d28 100644
--- a/abs/core/udev/PKGBUILD
+++ b/abs/core/udev/PKGBUILD
@@ -1,96 +1,127 @@
-# $Id: PKGBUILD 22190 2008-12-22 18:25:11Z tpowa $
+# $Id: PKGBUILD 85315 2010-07-12 05:13:37Z tpowa $
# Maintainer: Aaron Griffin <aaron@archlinux.org>
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: Thomas Bächler <thomas@archlinux.org>
-pkgname=udev
-pkgver=135
-pkgrel=7
-pkgdesc="The userspace dev tools (udev)"
+
+pkgbase="udev"
+pkgname=('udev' 'udev-compat')
+pkgver=160
+pkgrel=1
arch=(i686 x86_64)
url="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html"
license=('GPL')
groups=('base')
-depends=('glibc' 'coreutils' 'util-linux')
-makedepends=('kernel26') #needed to build framebuffer blacklist
-install=udev.install
-backup=(etc/udev/udev.conf
- etc/scsi_id.config
- etc/udev/cdsymlinks.conf
- etc/modprobe.d/framebuffer_blacklist)
-conflicts=('pcmcia-cs' 'hotplug')
-replaces=('devfsd')
# older initscripts versions required start_udev
-conflicts=('initscripts<2008.02')
-options=(!makeflags)
+options=(!makeflags !libtool)
+makedepends=('glibc' 'coreutils' 'util-linux' 'libusb' 'glib2' 'kernel26' 'gperf' 'libxslt' 'gobject-introspection')
source=(http://www.kernel.org/pub/linux/utils/kernel/hotplug/$pkgname-$pkgver.tar.bz2
- 81-arch.rules load-modules.sh resolve-modalias.c cdsymlinks.sh root-link.sh
- arch-udev-rules.patch readme-udev-arch.txt usb-storage.rules udev-ntfs-3g.patch mount-usb)
-md5sums=('661b9df34e1304dad10f595d95b472bb'
- '3a955ca8e2122a48a223f9d8adf87b70'
- 'f4951f61438d69894b728212dac7318b'
- 'fca04a608009069beb786e26338a783b'
- '8424b78e9dd772e75b4ef90814807815'
+ 81-arch.rules load-modules.sh cdsymlinks.sh root-link.sh
+ arch-udev-rules.patch
+ logitech-rules.patch)
+md5sums=('65459a1f090082c0471bf4e5112208d7'
+ '6393ee81993f8b9beb776ca904005864'
+ 'f91fddc67609b45b244a624977c4247b'
+ '2e808ee78d237c478b57af2a68d43769'
'2d6dc6842464f107bccc68cd505a6c31'
- 'ae216c26a6a5cae4a3ef9c0e1f7bfaa6'
- '7fc6d33bb218e752302eef0a80ff0a89'
- '11eaec41b77746f50975d4ef834c8f83')
+ '70198227b7bbe3852e1cd2299693af66'
+ '817537bdcfc1a4fa79e853fd38df4528')
build() {
cd $srcdir/$pkgname-$pkgver
- patch -p1 < ../udev-ntfs-3g.patch || return 1
- ./configure --prefix="" --mandir=/usr/share/man --includedir=/usr/include
- make || return 1
- make DESTDIR=$startdir/pkg install
-
+ # fix logitech rules
+ patch -Np0 -i $srcdir/logitech-rules.patch
+ ./configure --prefix="" --mandir=/usr/share/man\
+ --includedir=/usr/include\
+ --libexecdir=/lib/udev\
+ --datarootdir=/usr/share
+ make
+}
+
+package_udev() {
+ pkgdesc="The userspace dev tools (udev)"
+ depends=('glibc' 'coreutils' 'util-linux' 'libusb' 'glib2'
+ 'module-init-tools>=3.11')
+ install=udev.install
+ backup=(etc/udev/udev.conf
+ etc/modprobe.d/framebuffer_blacklist.conf)
+ conflicts=('pcmcia-cs' 'hotplug' 'initscripts<2009.07')
+ replaces=('devfsd')
+
+ cd $srcdir/$pkgname-$pkgver
+ make DESTDIR=${pkgdir} install
# Fix pkgconfig path
install -d -m755 $pkgdir/usr/lib
mv $pkgdir/lib/pkgconfig $pkgdir/usr/lib
-
- # Non-stock rules still go in /etc
- install -D -m644 $srcdir/81-arch.rules $pkgdir/etc/udev/rules.d/81-arch.rules
- install -D -m644 $srcdir/usb-storage.rules $pkgdir/etc/udev/rules.d/usb-storage.rules
-
- # Scripts needed
- mkdir $pkgdir/etc/udev/scripts
- install -D -m744 $srcdir/mount-usb $pkgdir/etc/udev/scripts
-
+ # Fix ConsoleKit path
+ mv $pkgdir/lib/ConsoleKit $pkgdir/usr/lib
+ # Install our rule for permissions and symlinks
+ install -D -m644 $srcdir/81-arch.rules $pkgdir/lib/udev/rules.d/81-arch.rules
# install our module loading subsystem
install -D -m755 $srcdir/load-modules.sh $pkgdir/lib/udev/load-modules.sh
- install -d -m755 $pkgdir/bin
- gcc -Wall $CFLAGS -o $pkgdir/bin/resolve-modalias $srcdir/resolve-modalias.c
# install cdsymlinks.sh
install -D -m755 $srcdir/cdsymlinks.sh $pkgdir/lib/udev/cdsymlinks.sh
# install root-link.sh
install -D -m755 $srcdir/root-link.sh $pkgdir/lib/udev/root-link.sh
-
- # install instructions
- # NOTE: We should delete this file
- install -D -m644 $srcdir/readme-udev-arch.txt $pkgdir/usr/share/udev/readme-udev-arch.txt
-
- # add devices dir
- mkdir $pkgdir/lib/udev/devices
# disable error logging to prevent startup failures printed to vc on boot
sed -i -e 's|udev_log="err"|udev_log="0"|g' $pkgdir/etc/udev/udev.conf
- # install additional rules files
- for rule in $srcdir/$pkgname-$pkgver/rules/packages/*.rules; do
- install -D -m 644 $rule $pkgdir/lib/udev/rules.d/
- done
# fix standard udev rules to fit to arch
cd $pkgdir/lib/udev/rules.d/
- patch -Np1 -i $srcdir/arch-udev-rules.patch || return 1
-
- # remove the md-raid rules which are now provided by the mdadm package
- rm -f $pkgdir/lib/udev/rules.d/64-md-raid.rules
-
+ patch -Np1 -i $srcdir/arch-udev-rules.patch
+ # remove .orig files
+ rm -f $pkgdir/lib/udev/rules.d/*.orig
# disable persistent cdromsymlinks and network by default
# and move it to /etc/udev/rules.d
mv $pkgdir/lib/udev/rules.d/75-persistent-net-generator.rules \
$pkgdir/etc/udev/rules.d/75-persistent-net-generator.rules.optional
mv $pkgdir/lib/udev/rules.d/75-cd-aliases-generator.rules \
$pkgdir/etc/udev/rules.d/75-cd-aliases-generator.rules.optional
+
# create framebuffer blacklist
mkdir -p $pkgdir/etc/modprobe.d/
for mod in $(find /lib/modules/*/kernel/drivers/video -name '*fb.ko' -exec basename {} .ko \;); do
- echo "blacklist $mod" >> $pkgdir/etc/modprobe.d/framebuffer_blacklist
+ echo "blacklist $mod" >> $pkgdir/etc/modprobe.d/framebuffer_blacklist.conf
done
+
+ # create static devices in /lib/udev/devices/
+ mkdir ${pkgdir}/lib/udev/devices/pts
+ mkdir ${pkgdir}/lib/udev/devices/shm
+
+ mknod -m 0600 ${pkgdir}/lib/udev/devices/console c 5 1
+ mknod -m 0666 ${pkgdir}/lib/udev/devices/null c 1 3
+ mknod -m 0660 ${pkgdir}/lib/udev/devices/zero c 1 5
+ mknod -m 0666 ${pkgdir}/lib/udev/devices/kmsg c 1 11
+
+ ln -snf /proc/self/fd ${pkgdir}/lib/udev/devices/fd
+ ln -snf /proc/self/fd/0 ${pkgdir}/lib/udev/devices/stdin
+ ln -snf /proc/self/fd/1 ${pkgdir}/lib/udev/devices/stdout
+ ln -snf /proc/self/fd/2 ${pkgdir}/lib/udev/devices/stderr
+ ln -snf /proc/kcore ${pkgdir}/lib/udev/devices/core
+
+ # these static devices are created for convenience, to autoload the modules if necessary
+ # /dev/loop0
+ mknod -m 0660 ${pkgdir}/lib/udev/devices/loop0 b 7 0
+ chgrp disk ${pkgdir}/lib/udev/devices/loop0
+ # /dev/net/tun
+ mkdir ${pkgdir}/lib/udev/devices/net
+ mknod -m 0666 ${pkgdir}/lib/udev/devices/net/tun c 10 200
+ # /dev/fuse
+ mknod -m 0666 ${pkgdir}/lib/udev/devices/fuse c 10 229
+ # /dev/ppp
+ mknod -m 0600 ${pkgdir}/lib/udev/devices/ppp c 108 0
+
+ # Replace dialout group in rules with uucp group
+ for i in $pkgdir/lib/udev/rules.d/*.rules; do
+ sed -i -e 's#GROUP="dialout"#GROUP="uucp"#g' $i
+ done
+
+ mv "${pkgdir}/lib/girepository-1.0" "${pkgdir}/usr/lib/"
+}
+
+package_udev-compat() {
+ pkgdesc="The userspace dev tools (udev) - additional rules for older kernels"
+ depends=('udev')
+ groups=('')
+ cd $srcdir/$pkgname-$pkgver
+ install -d -m755 ${pkgdir}/lib/${pkgname}/rules.d
+ install -D -m644 ${srcdir}/${pkgname}-${pkgver}/rules/misc/30-kernel-compat.rules ${pkgdir}/lib/udev/rules.d/30-kernel-compat.rules
}