diff options
97 files changed, 3325 insertions, 274 deletions
diff --git a/community/apcupsd/PKGBUILD b/community/apcupsd/PKGBUILD index 9ef6c7ff5..ecdc98517 100644 --- a/community/apcupsd/PKGBUILD +++ b/community/apcupsd/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 52280 2011-07-23 09:29:14Z spupykin $ +# $Id: PKGBUILD 53371 2011-08-03 09:47:21Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Todd Musall <tmusall@comcast.net> pkgname=apcupsd pkgver=3.14.9 -pkgrel=1 +pkgrel=2 pkgdesc="Apcupsd can be used for power mangement and controlling most of APC's UPS models on Unix and Windows machines." arch=(i686 x86_64) url="http://www.apcupsd.org" @@ -19,7 +19,7 @@ backup=(etc/apcupsd/apcupsd.conf etc/apcupsd/hosts.conf source=(http://downloads.sourceforge.net/apcupsd/$pkgname-$pkgver.tar.gz apcupsd) md5sums=('aa5e2c2954a81c2f07e0a356e38fe853' - '5eae3c4d921eeb81798a0250fe3dd111') + '8bc674da24188c69b0ad5d7fe7510f73') build() { cd $srcdir/$pkgname-$pkgver diff --git a/community/apcupsd/apcupsd b/community/apcupsd/apcupsd index 3cd5c9dc8..73ca2b4bf 100755 --- a/community/apcupsd/apcupsd +++ b/community/apcupsd/apcupsd @@ -13,8 +13,6 @@ case "$1" in if [ $? -gt 0 ]; then stat_fail else - PID=`pidof -o %PPID /sbin/apcupsd` - echo $PID > /var/run/apcupsd.pid add_daemon apcupsd stat_done fi @@ -25,7 +23,6 @@ case "$1" in if [ $? -gt 0 ]; then stat_fail else - rm /var/run/apcupsd.pid rm_daemon apcupsd stat_done fi @@ -39,6 +36,6 @@ case "$1" in /sbin/apcaccess status ;; *) - echo "usage: $0 {start|stop|restart|status}" + echo "usage: $0 {start|stop|restart|status}" esac exit 0 diff --git a/community/calcurse/PKGBUILD b/community/calcurse/PKGBUILD index 537483258..a3e9c8b43 100644 --- a/community/calcurse/PKGBUILD +++ b/community/calcurse/PKGBUILD @@ -1,16 +1,17 @@ -# $Id: PKGBUILD 53331 2011-08-02 22:40:00Z lfleischer $ +# $Id: PKGBUILD 53403 2011-08-03 11:06:10Z lfleischer $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Ronald van Haren <ronald.archlinux.org> # Contributor: wain <wain.at.gmx.net> pkgname=calcurse pkgver=2.9.1 -pkgrel=1 +pkgrel=2 pkgdesc='A text-based personal organizer.' arch=('i686' 'x86_64') url='http://calcurse.org/' license=('BSD') depends=('ncurses') +makedepends=('asciidoc') source=("http://calcurse.org/files/${pkgname}-${pkgver}.tar.gz") md5sums=('3a1af304a55a87169c425099b4886dc2') diff --git a/community/compiz/PKGBUILD b/community/compiz/PKGBUILD index 6c28aaf4b..eb4a0c1fb 100644 --- a/community/compiz/PKGBUILD +++ b/community/compiz/PKGBUILD @@ -9,14 +9,14 @@ pkgname=('compiz-core' 'compiz-decorator-kde' 'compiz-decorator-gtk') pkgver=0.8.8 -pkgrel=1 +pkgrel=2 pkgdesc="Composite manager for Aiglx and Xgl" url="http://www.compiz.org/" license=('GPL' 'LGPL' 'MIT') arch=('i686' 'x86_64') groups=('compiz' 'compiz-kde' 'compiz-gtk' 'compiz-fusion') makedepends=('intltool' 'gnome-control-center' 'libwnck' 'kdebase-workspace' - 'startup-notification' 'librsvg' 'libgl' 'dbus' 'mesa' 'libxslt' 'fuse') + 'startup-notification' 'librsvg' 'libgl' 'dbus' 'mesa' 'libxslt' 'fuse' 'metacity') options=(!libtool !emptydirs) conflicts=('compiz' 'compiz-core-git' 'compiz-git') replaces=('compiz') @@ -65,7 +65,7 @@ package_compiz-core() package_compiz-decorator-gtk() { pkgdesc="Compiz decorator for GNOME" - depends=('gnome-control-center' 'libwnck' 'compiz-core') + depends=('gnome-control-center' 'libwnck' 'compiz-core' 'metacity') install=compiz-decorator-gtk.install cd $srcdir/compiz-$pkgver diff --git a/community/directfb/PKGBUILD b/community/directfb/PKGBUILD index 7a366507a..322155d9f 100644 --- a/community/directfb/PKGBUILD +++ b/community/directfb/PKGBUILD @@ -1,24 +1,22 @@ -# $Id: PKGBUILD 33711 2010-11-27 20:33:08Z jlichtblau $ +# $Id: PKGBUILD 53472 2011-08-03 20:58:54Z ebelanger $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> -# Maintainer: Eric Belanger <eric@archlinux.org> -# Contributor: Eric Belanger <eric@archlinux.org> +# Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=directfb -pkgver=1.4.11 +pkgver=1.4.14 pkgrel=1 pkgdesc="A thin library that provides hardware graphics acceleration, input device handling and abstraction, integrated windowing system on top of the Linux Framebuffer Device" arch=('i686' 'x86_64') url="http://www.directfb.org" license=('LGPL') -depends=('libjpeg' 'libxext' 'sdl' 'sysfsutils' 'libpng' 'freetype2') +depends=('gcc-libs' 'libjpeg' 'sdl' 'sysfsutils' 'libpng' 'freetype2') options=('!libtool') changelog=$pkgname.changelog source=(http://www.directfb.org/downloads/Core/DirectFB-${pkgver%.*}/DirectFB-${pkgver}.tar.gz) -md5sums=('94735ccec21120794adcce93a61445d2') +md5sums=('de0745d25a6ac9e337d4d5572df85471') build() { - cd ${srcdir}/DirectFB-${pkgver} - + cd "${srcdir}/DirectFB-${pkgver}" ./configure --prefix=/usr --sysconfdir=/etc --enable-static --enable-zlib \ --enable-x11 --enable-sdl --disable-vnc --disable-osx \ --enable-video4linux2 --enable-voodoo @@ -26,7 +24,6 @@ build() { } package() { - cd ${srcdir}/DirectFB-${pkgver} - - make DESTDIR=${pkgdir} install + cd "${srcdir}/DirectFB-${pkgver}" + make DESTDIR="${pkgdir}" install } diff --git a/community/ibus-hangul/PKGBUILD b/community/ibus-hangul/PKGBUILD index efeed5115..6191465bf 100644 --- a/community/ibus-hangul/PKGBUILD +++ b/community/ibus-hangul/PKGBUILD @@ -1,9 +1,10 @@ +# $Id: PKGBUILD 53477 2011-08-03 21:36:31Z ebelanger $ # Maintainer: Thomas Dziedzic < gostrc at gmail > # Contributor: Radim Hvizdák <hvizdakr at gmail dot com> pkgname=ibus-hangul -pkgver=1.3.0.20100329 -pkgrel=2 +pkgver=1.3.1 +pkgrel=1 pkgdesc='Korean input engine for IBus' arch=('i686' 'x86_64') url='http://ibus.googlecode.com' @@ -11,10 +12,10 @@ license=('GPL') depends=('ibus' 'libhangul') makedepends=('intltool') source=("http://ibus.googlecode.com/files/${pkgname}-${pkgver}.tar.gz") -md5sums=('3464c98626685c8e23f6b0b580de2d08') +md5sums=('b71565bba3a1439a47212611b774ecf7') build() { - cd ${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" ./configure \ --prefix=/usr \ @@ -24,7 +25,7 @@ build() { } package() { - cd ${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" - make NO_INDEX=true DESTDIR=${pkgdir} install + make NO_INDEX=true DESTDIR="${pkgdir}" install } diff --git a/community/ibus-m17n/PKGBUILD b/community/ibus-m17n/PKGBUILD index 3e08b4c03..1849c40dd 100644 --- a/community/ibus-m17n/PKGBUILD +++ b/community/ibus-m17n/PKGBUILD @@ -1,20 +1,21 @@ +# $Id: PKGBUILD 53482 2011-08-03 22:10:35Z ebelanger $ # Maintainer: Thomas Dziedzic < gostrc at gmail > # Contributor: Lonfucius <Lonfucius@gmail.com> # Contributor: Jesse Jaara <jesse.jaara@gmail.com> pkgname=ibus-m17n -pkgver=1.3.1 -pkgrel=2 +pkgver=1.3.2 +pkgrel=1 pkgdesc='M17N engine for IBus' arch=('i686' 'x86_64') url='http://code.google.com/p/ibus/' license=('LGPL') depends=('python-pyenchant' 'ibus' 'm17n-db' 'm17n-lib') source=("http://ibus.googlecode.com/files/${pkgname}-${pkgver}.tar.gz") -md5sums=('38ff41207518812945c60084deba0080') +md5sums=('4c406147318f94e5e805c408c4be075e') build() { - cd ${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" ./configure \ --prefix=/usr \ @@ -24,7 +25,7 @@ build() { } package() { - cd ${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install } diff --git a/community/jshon/PKGBUILD b/community/jshon/PKGBUILD index b9d7c736c..653274e4d 100644 --- a/community/jshon/PKGBUILD +++ b/community/jshon/PKGBUILD @@ -1,6 +1,6 @@ # Maintainer: Kyle Keen <keenerd@gmail.com> pkgname=jshon -pkgver=20110723 +pkgver=20110803 pkgrel=1 pkgdesc="A json parser for the shell." arch=('i686' 'x86_64') @@ -10,7 +10,7 @@ depends=('jansson') makedepends=() optdepends=() source=(http://kmkeen.com/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('604ae154cb29cee8369df465794872ec') +md5sums=('d14f012d6e9acf2c0ccc355fcd53c6fd') build() { cd "$srcdir/$pkgname" diff --git a/community/kiwi/PKGBUILD b/community/kiwi/PKGBUILD index bd02fe205..3b30c8fcc 100644 --- a/community/kiwi/PKGBUILD +++ b/community/kiwi/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 26968 2010-09-16 03:55:06Z bfanella $ +# $Id: PKGBUILD 53351 2011-08-03 06:50:46Z bfanella $ # Maintainer: Brad Fanella <bradfanella@archlinux.us> # Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org> # Contributor: William Rea <sillywilly@gmail.com> pkgname=kiwi -pkgver=1.9.26 -pkgrel=3 +pkgver=1.9.29 +pkgrel=1 pkgdesc="A set of classes and wrappers for PyGTK" arch=('i686' 'x86_64') url="http://www.async.com.br/projects/kiwi" @@ -13,7 +13,7 @@ license=("LGPL") depends=('pygtk') makedepends=('gettext') source=(http://download.gnome.org/sources/$pkgname/1.9/$pkgname-$pkgver.tar.bz2) -md5sums=('43c2aab9acf8d95321ee1ccec2c5e4e4') +sha256sums=('0ffa912cd180b3092b3ff636c582ab2c40f0f8eb541ada07b1432631a2d49e90') build() { cd $srcdir/$pkgname-$pkgver @@ -27,5 +27,6 @@ build() { } package() { cd $srcdir/$pkgname-$pkgver + python2 setup.py install --root=$pkgdir } diff --git a/community/libinfinity/PKGBUILD b/community/libinfinity/PKGBUILD index 21497ff60..49f850d9a 100644 --- a/community/libinfinity/PKGBUILD +++ b/community/libinfinity/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 45226 2011-04-18 13:01:37Z spupykin $ +# $Id: PKGBUILD 53361 2011-08-03 09:42:41Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Gregory Haynes <greg@greghaynes.net> pkgname=libinfinity -pkgver=0.5.0 +pkgver=0.5.1 pkgrel=1 pkgdesc="An implementation of the Infininote protocol written in GObject-based C" arch=('i686' 'x86_64') @@ -16,7 +16,7 @@ optdepends=('avahi: zeroconf support' 'gtk2: gtk support') options=('!libtool') source=("http://releases.0x539.de/${pkgname}/${pkgname}-${pkgver}.tar.gz") -md5sums=('2b25de033c3a4c9975340300b09b84b0') +md5sums=('85e6d75e101fe25503653d2202054eff') build() { cd ${srcdir}/${pkgname}-${pkgver} diff --git a/community/libvirt/PKGBUILD b/community/libvirt/PKGBUILD index c2354f5e5..f15f7c2ad 100644 --- a/community/libvirt/PKGBUILD +++ b/community/libvirt/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 53281 2011-08-02 17:21:12Z spupykin $ +# $Id: PKGBUILD 53366 2011-08-03 09:43:53Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Jonathan Wiersma <archaur at jonw dot org> pkgname=libvirt -pkgver=0.9.3 -pkgrel=4 +pkgver=0.9.4 +pkgrel=1 pkgdesc="API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)" arch=('i686' 'x86_64') url="http://libvirt.org/" @@ -38,10 +38,10 @@ source=("http://libvirt.org/sources/$pkgname-$pkgver.tar.gz" openbsd-netcat-default.patch unixperms.patch yajl-2.x.patch) -md5sums=('04f47fad7d0c614af9dcc5d1351c2148' +md5sums=('86b411b11bd23d4af20611699f372af7' 'c43244c40a0437038c82089618e7beaa' '3ed0e24f5b5e25bf553f5427d64915e6' - 'ebb78cda893ca7991e0c22588a63132b' + 'ee7052f3929d5d918236c646a59edebf' 'db95aecdf2ccf3693fef5821cdcb7eba' '5745bb8d0b254abb7a3528c66e03b0f9') diff --git a/community/libvirt/openbsd-netcat-default.patch b/community/libvirt/openbsd-netcat-default.patch index 29f05b34f..c7543c5a4 100644 --- a/community/libvirt/openbsd-netcat-default.patch +++ b/community/libvirt/openbsd-netcat-default.patch @@ -1,7 +1,7 @@ -diff -wbBur libvirt-0.9.3/src/qemu/qemu_migration.c libvirt-0.9.3.my/src/qemu/qemu_migration.c ---- libvirt-0.9.3/src/qemu/qemu_migration.c 2011-07-04 06:45:14.000000000 +0400 -+++ libvirt-0.9.3.my/src/qemu/qemu_migration.c 2011-07-04 15:03:15.000000000 +0400 -@@ -1763,7 +1763,7 @@ +diff -wbBur libvirt-0.9.4.org/src/qemu/qemu_migration.c libvirt-0.9.4/src/qemu/qemu_migration.c +--- libvirt-0.9.4.org/src/qemu/qemu_migration.c 2011-08-03 05:36:34.000000000 +0400 ++++ libvirt-0.9.4/src/qemu/qemu_migration.c 2011-08-03 13:29:56.000000000 +0400 +@@ -1612,7 +1612,7 @@ ret = qemuMonitorMigrateToUnix(priv->mon, background_flags, unixfile); } else if (qemuCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC)) { @@ -10,24 +10,24 @@ diff -wbBur libvirt-0.9.3/src/qemu/qemu_migration.c libvirt-0.9.3.my/src/qemu/qe ret = qemuMonitorMigrateToCommand(priv->mon, QEMU_MONITOR_MIGRATE_BACKGROUND, args); } else { ret = -1; -diff -wbBur libvirt-0.9.3/src/remote/remote_driver.c libvirt-0.9.3.my/src/remote/remote_driver.c ---- libvirt-0.9.3/src/remote/remote_driver.c 2011-07-01 10:59:10.000000000 +0400 -+++ libvirt-0.9.3.my/src/remote/remote_driver.c 2011-07-04 15:03:32.000000000 +0400 -@@ -571,7 +571,7 @@ - command, +diff -wbBur libvirt-0.9.4.org/src/remote/remote_driver.c libvirt-0.9.4/src/remote/remote_driver.c +--- libvirt-0.9.4.org/src/remote/remote_driver.c 2011-07-29 09:14:03.000000000 +0400 ++++ libvirt-0.9.4/src/remote/remote_driver.c 2011-08-03 13:30:05.000000000 +0400 +@@ -588,7 +588,7 @@ username, - no_tty, + !tty, + !verify, - netcat ? netcat : "nc", + netcat ? netcat : "nc.openbsd", + keyfile, sockname))) goto failed; - -diff -wbBur libvirt-0.9.3/src/rpc/virnetsocket.c libvirt-0.9.3.my/src/rpc/virnetsocket.c ---- libvirt-0.9.3/src/rpc/virnetsocket.c 2011-07-01 10:59:10.000000000 +0400 -+++ libvirt-0.9.3.my/src/rpc/virnetsocket.c 2011-07-04 15:03:00.000000000 +0400 -@@ -597,7 +597,7 @@ - virCommandAddArgList(cmd, "-T", "-o", "BatchMode=yes", - "-e", "none", NULL); +diff -wbBur libvirt-0.9.4.org/src/rpc/virnetsocket.c libvirt-0.9.4/src/rpc/virnetsocket.c +--- libvirt-0.9.4.org/src/rpc/virnetsocket.c 2011-08-01 05:32:35.000000000 +0400 ++++ libvirt-0.9.4/src/rpc/virnetsocket.c 2011-08-03 13:29:46.000000000 +0400 +@@ -629,7 +629,7 @@ + if (noVerify) + virCommandAddArgList(cmd, "-o", "StrictHostKeyChecking=no", NULL); virCommandAddArgList(cmd, nodename, - netcat ? netcat : "nc", + netcat ? netcat : "nc.openbsd", diff --git a/community/listen/PKGBUILD b/community/listen/PKGBUILD index ca594fa72..87f1289b8 100644 --- a/community/listen/PKGBUILD +++ b/community/listen/PKGBUILD @@ -4,7 +4,7 @@ pkgname=listen pkgver=0.6.5 -pkgrel=6 +pkgrel=7 pkgdesc="Music player and management for GNOME" arch=('i686' 'x86_64') url="http://www.listen-project.org/" @@ -15,7 +15,6 @@ depends=('python2-egg' 'python2-libgnome' 'mutagen' makedepends=('gettext' 'pkgconfig' 'intltool' 'docbook2x' 'docbook-xml') optdepends=('python-musicbrainz2: musicbrainz & cd support' 'libgpod: iPod support' - 'hal: hal support' 'python-daap: DAAP support' 'tunepimp: tagging support') source=("http://download.listen-project.org/0.6/${pkgname}-${pkgver}.tar.gz") diff --git a/community/lxappearance/PKGBUILD b/community/lxappearance/PKGBUILD index ba101365a..18136b30e 100644 --- a/community/lxappearance/PKGBUILD +++ b/community/lxappearance/PKGBUILD @@ -1,21 +1,21 @@ -#$Id: PKGBUILD 52925 2011-07-29 21:34:54Z angvp $ +#$Id: PKGBUILD 53436 2011-08-03 17:25:08Z angvp $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr> pkgname=lxappearance pkgver=0.5.1 -pkgrel=1 +pkgrel=2 pkgdesc="GTK+ theme switcher of the LXDE Desktop (manages icons and fonts)" arch=('i686' 'x86_64') license=('GPL2') url="http://lxde.org/" groups=('lxde') -depends=('gtk3' 'intltool') +depends=('gtk2' 'intltool') makedepends=('pkgconfig') source=(http://downloads.sourceforge.net/sourceforge/lxde/${pkgname}-${pkgver}.tar.gz) build() { cd "$srcdir/$pkgname-$pkgver" - ./configure --sysconfdir=/etc --prefix=/usr --enable-gtk3 + ./configure --sysconfdir=/etc --prefix=/usr make } diff --git a/community/lxde-common/PKGBUILD b/community/lxde-common/PKGBUILD index b2516b833..808afbf1f 100644 --- a/community/lxde-common/PKGBUILD +++ b/community/lxde-common/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 49034 2011-06-09 21:26:14Z andrea $ +# $Id: PKGBUILD 53456 2011-08-03 20:00:26Z angvp $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Maintainer: Juergen Hoetzel <juergen@archlinux.org> pkgname=lxde-common -pkgver=0.5.0 -pkgrel=3 +pkgver=0.5.5 +pkgrel=1 pkgdesc="Common files of the LXDE Desktop" arch=('i686' 'x86_64') license=('GPL2') @@ -15,16 +15,12 @@ url="http://lxde.org/" makedepends=(automake) optdepends=(lxsession-lite) backup=(etc/xdg/lxsession/LXDE/{desktop.conf,autostart}) -source=("http://downloads.sourceforge.net/lxde/${pkgname}-${pkgver}.tar.gz" - "${pkgname}-arch.patch" "${pkgname}-invalid-distfile.patch") -md5sums=('23606ab3d6e1039386d62a4b68b4ffc6' - '21657157d9ab377de55deb19a42d68e8' - '24938631783683fd98dfd533023e6d4e') +source=("http://downloads.sourceforge.net/lxde/${pkgname}-${pkgver}.tar.gz") +md5sums=('e51a6b2a815a89fda1f497b509465a97') build() { cd "$srcdir/$pkgname-$pkgver" - patch -p1 -i ${srcdir}/${pkgname}-arch.patch autoreconf ./configure --sysconfdir=/etc --prefix=/usr } diff --git a/community/lxdm/PKGBUILD b/community/lxdm/PKGBUILD index f40329120..5e7a7ee29 100644 --- a/community/lxdm/PKGBUILD +++ b/community/lxdm/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 52900 2011-07-29 19:07:23Z angvp $ +# $Id: PKGBUILD 53431 2011-08-03 17:17:03Z angvp $ # Maintainer: AndyRTR <andyrtr@archlinux.org> # Contributor: kiefer <jorgelmadrid@gmail.com> pkgname=lxdm pkgver=0.4.1 -pkgrel=1 +pkgrel=2 pkgdesc="Lightweight Display Manager (part of LXDE)" arch=('i686' 'x86_64') url="http://sourceforge.net/projects/lxdm/" @@ -13,7 +13,7 @@ groups=('lxde') depends=('gtk2' 'xorg-server' 'consolekit') makedepends=('intltool') install=${pkgname}.install -backup=('etc/lxdm/lxdm.conf') # 'etc/lxdm/xinitrc') +backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm') # 'etc/lxdm/xinitrc') source=("http://downloads.sourceforge.net/lxde/$pkgname-$pkgver.tar.gz" Xsession.patch lxdm.patch lxdm-pam.patch lxdm-daemon) md5sums=('8da1cfc2be6dc9217c85a7cf51e1e821' diff --git a/community/lxsession/PKGBUILD b/community/lxsession/PKGBUILD new file mode 100644 index 000000000..db8719774 --- /dev/null +++ b/community/lxsession/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 53453 2011-08-03 19:42:00Z angvp $ +# Maintainer: Angel Velasquez <angvp@archlinux.org> +# Maintainer: Juergen Hoetzel <juergen@archlinux.org> + +pkgname=lxsession +pkgver=0.4.6.1 +pkgrel=1 +pkgdesc="Session manager of the LXDE Desktop (light version)" +arch=('i686' 'x86_64') +license=('GPL2') +url="http://lxde.org/" +groups=('lxde') +depends=('gtk2' 'dbus') +makedepends=('pkgconfig' 'intltool') +replaces=('lxde-settings-daemon' 'lxsession-lite') +conflicts=('lxsession-lite' 'lxde-settings-daemon') +source=(http://downloads.sourceforge.net/lxde/lxsession-${pkgver}.tar.gz) +md5sums=('e456b64c5ab3652a4dec661ec706dc6e') + +build() { + cd "$srcdir/lxsession-$pkgver" + ./configure --sysconfdir=/etc --prefix=/usr + make +} + +package() { + cd "$srcdir/lxsession-$pkgver" + make DESTDIR="$pkgdir" install +} diff --git a/community/lxtask/PKGBUILD b/community/lxtask/PKGBUILD index 38c46743e..8d2e9a7e9 100644 --- a/community/lxtask/PKGBUILD +++ b/community/lxtask/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 52423 2011-07-24 22:29:09Z angvp $ +# $Id: PKGBUILD 53426 2011-08-03 17:15:52Z angvp $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr> pkgname=lxtask pkgver=0.1.4 -pkgrel=2 +pkgrel=3 pkgdesc="Task manager of the LXDE Desktop" arch=('i686' 'x86_64') license=('GPL2') url="http://lxde.org/" groups=('lxde') -depends=('gtk3') +depends=('gtk2') makedepends=('pkgconfig' 'intltool') source=(http://downloads.sourceforge.net/sourceforge/lxde/${pkgname}-${pkgver}.tar.gz) md5sums=('c4ab47d03d41a88696d64d3f1e78cf7f') @@ -17,7 +17,7 @@ md5sums=('c4ab47d03d41a88696d64d3f1e78cf7f') build() { cd "$srcdir/$pkgname-$pkgver" autoreconf - ./configure --sysconfdir=/etc --prefix=/usr --enable-gtk3 + ./configure --sysconfdir=/etc --prefix=/usr make } package() { diff --git a/community/packagekit/PKGBUILD b/community/packagekit/PKGBUILD index 36876fe3d..b12c49445 100644 --- a/community/packagekit/PKGBUILD +++ b/community/packagekit/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 51085 2011-07-05 07:17:46Z jconder $ +# $Id: PKGBUILD 53398 2011-08-03 10:39:01Z jconder $ # Maintainer: Jonathan Conder <jonno.conder@gmail.com> pkgbase='packagekit' pkgname=('packagekit' 'packagekit-qt' 'packagekit-qt2' 'packagekit-python') -pkgver=0.6.16 +pkgver=0.6.17 pkgrel=1 pkgdesc="A system designed to make installation and updates of packages easier." arch=('i686' 'x86_64') @@ -13,7 +13,7 @@ makedepends=('dbus-glib' 'gobject-introspection' 'gtk-doc' 'intltool' 'shared-mime-info' 'sqlite3' 'udev') options=('!libtool') source=("http://www.packagekit.org/releases/PackageKit-$pkgver.tar.xz") -sha256sums=('28fc2149e2dac4bed5b6b0479488dacc8af7e8a18556851711502b26de567e67') +sha256sums=('7d6e0d0c63d0a0ef9b393a80ae3711e073cd4b884ff4996d5622f688e28d63c3') build() { cd "$srcdir/PackageKit-$pkgver" diff --git a/community/qbittorrent/PKGBUILD b/community/qbittorrent/PKGBUILD index ef9d59015..fc56d7629 100644 --- a/community/qbittorrent/PKGBUILD +++ b/community/qbittorrent/PKGBUILD @@ -3,8 +3,8 @@ # Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr> pkgname=qbittorrent -pkgver=2.8.2 -pkgrel=2 +pkgver=2.8.3 +pkgrel=1 pkgdesc="A bittorrent client written in C++ / Qt4 using the good libtorrent library" arch=('i686' 'x86_64') url="http://www.qbittorrent.org/" @@ -16,7 +16,7 @@ optdepends=('python2: needed for search' install='qbittorrent.install' source=("http://downloads.sourceforge.net/sourceforge/qbittorrent/qbittorrent-${pkgver}.tar.gz" 'python2.patch') -md5sums=('58008b6b0233c7997067a61cf07af50d' +md5sums=('2e977ece476a83116beee5bf9df7a6c1' 'db0d79fee8ce3470ad3741d36b02a94c') build() { diff --git a/community/root/PKGBUILD b/community/root/PKGBUILD index 643c7b379..05d858e2c 100644 --- a/community/root/PKGBUILD +++ b/community/root/PKGBUILD @@ -3,7 +3,7 @@ pkgname=root pkgver=5.30.00 -pkgrel=2 +pkgrel=3 pkgdesc='C++ data analysis framework and interpreter from CERN.' arch=('i686' 'x86_64') url='http://root.cern.ch' @@ -40,7 +40,12 @@ build() { # python2 switch find . -type f -exec sed -i -e 's/python -O/python2 -O/g' -e 's/python -c/python2 -c/g' {} \; - sed -i 's/python 2/python2 2/g' configure + sed \ + -e 's/python 2/python2 2/g' \ + -i configure + sed \ + -e 's/python $(pkgpyexecdir)/python2 $(pkgpyexecdir)/g' \ + -i cint/reflex/python/genreflex/Makefile.am ./configure \ ${TARGET} \ diff --git a/community/synce-vdccm/PKGBUILD b/community/synce-vdccm/PKGBUILD index ef43928d7..384394e78 100644 --- a/community/synce-vdccm/PKGBUILD +++ b/community/synce-vdccm/PKGBUILD @@ -1,26 +1,24 @@ -# $Id: PKGBUILD 17750 2010-05-24 21:46:24Z spupykin $ +# $Id: PKGBUILD 53376 2011-08-03 10:12:14Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Zhukov Pavel <gelios@gmail.com> pkgname=synce-vdccm pkgver=0.10.1 -pkgrel=2 +pkgrel=3 pkgdesc="provide a means of communication with a Windows CE device - daemon to communicate with a handheld device" arch=('i686' 'x86_64') url="http://synce.sourceforge.net/" license=('GPL') depends=('synce-libsynce') -source=(http://downloads.sourceforge.net/synce/vdccm-$pkgver.tar.gz) -md5sums=('43bca4c2fdb658f99b07549fa03832e0') +source=(http://downloads.sourceforge.net/synce/vdccm-$pkgver.tar.gz + build-fix.patch) +md5sums=('43bca4c2fdb658f99b07549fa03832e0' + 'b90e1f8b46e70cd7f8f66f7ef041f3ac') build() { cd $srcdir/vdccm-$pkgver + patch -p1 <$srcdir/build-fix.patch ./configure --prefix=/usr - sed -i 's#-pedantic-errors##' Makefile.in src/Makefile.in Makefile src/Makefile - sed -i '1,1i#include <string.h>' lib/tcpsocket.cpp lib/tcpconnectedsocket.cpp lib/tcpclientsocket.cpp lib/udpsocket.cpp src/rapiclient.cpp - sed -i '1,1i#include <stdint.h>' lib/udpsocket.h src/rapiclient.h - sed -i '1,1i#include <limits.h>' src/rapiclient.h - sed -i '1,1i#include <stdio.h>' src/rapiconnection.cpp - make || return 1 - make DESTDIR=$pkgdir install || return 1 + make + make DESTDIR=$pkgdir install } diff --git a/community/synce-vdccm/build-fix.patch b/community/synce-vdccm/build-fix.patch new file mode 100644 index 000000000..f3bd32cff --- /dev/null +++ b/community/synce-vdccm/build-fix.patch @@ -0,0 +1,123 @@ +diff -wbBur vdccm-0.10.1/lib/continousnode.cpp vdccm-0.10.1.my/lib/continousnode.cpp +--- vdccm-0.10.1/lib/continousnode.cpp 2006-03-28 02:40:15.000000000 +0400 ++++ vdccm-0.10.1.my/lib/continousnode.cpp 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <stdio.h> + /*************************************************************************** + * Copyright (c) 2003 Volker Christian <voc@users.sourceforge.net> * + * * +diff -wbBur vdccm-0.10.1/lib/localclientsocket.cpp vdccm-0.10.1.my/lib/localclientsocket.cpp +--- vdccm-0.10.1/lib/localclientsocket.cpp 2006-03-22 22:59:14.000000000 +0300 ++++ vdccm-0.10.1.my/lib/localclientsocket.cpp 2011-08-03 14:09:42.000000000 +0400 +@@ -68,6 +68,7 @@ + raddr.sun_family = AF_LOCAL; + strncpy(raddr.sun_path, path.c_str(), sizeof(raddr.sun_path)); + ++#define offsetof(type, member) __builtin_offsetof (type, member) + size_t size = (offsetof (struct sockaddr_un, sun_path) + strlen(raddr.sun_path) + 1); + + if (::connect(fd, (struct sockaddr *) &raddr, size) < 0) { +diff -wbBur vdccm-0.10.1/lib/localsocket.cpp vdccm-0.10.1.my/lib/localsocket.cpp +--- vdccm-0.10.1/lib/localsocket.cpp 2006-03-28 02:40:15.000000000 +0400 ++++ vdccm-0.10.1.my/lib/localsocket.cpp 2011-08-03 14:09:16.000000000 +0400 +@@ -78,6 +78,7 @@ + localAddress.sun_family = AF_LOCAL; + strncpy(localAddress.sun_path, path.c_str(), sizeof(localAddress.sun_path)); + ++#define offsetof(type, member) __builtin_offsetof (type, member) + size_t size = (offsetof (struct sockaddr_un, sun_path) + strlen(localAddress.sun_path) + 1); + + if (::bind(getDescriptor(), (struct sockaddr *) &localAddress, size) < 0) { +diff -wbBur vdccm-0.10.1/lib/tcpclientsocket.cpp vdccm-0.10.1.my/lib/tcpclientsocket.cpp +--- vdccm-0.10.1/lib/tcpclientsocket.cpp 2006-03-22 22:59:14.000000000 +0300 ++++ vdccm-0.10.1.my/lib/tcpclientsocket.cpp 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <string.h> + /*************************************************************************** + * Copyright (c) 2003 Volker Christian <voc@users.sourceforge.net> * + * * +diff -wbBur vdccm-0.10.1/lib/tcpconnectedsocket.cpp vdccm-0.10.1.my/lib/tcpconnectedsocket.cpp +--- vdccm-0.10.1/lib/tcpconnectedsocket.cpp 2006-06-29 23:01:48.000000000 +0400 ++++ vdccm-0.10.1.my/lib/tcpconnectedsocket.cpp 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <string.h> + /*************************************************************************** + * Copyright (c) 2003 Volker Christian <voc@users.sourceforge.net> * + * * +diff -wbBur vdccm-0.10.1/lib/tcpsocket.cpp vdccm-0.10.1.my/lib/tcpsocket.cpp +--- vdccm-0.10.1/lib/tcpsocket.cpp 2006-06-29 23:01:48.000000000 +0400 ++++ vdccm-0.10.1.my/lib/tcpsocket.cpp 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <string.h> + /*************************************************************************** + * Copyright (c) 2003 Volker Christian <voc@users.sourceforge.net> * + * * +diff -wbBur vdccm-0.10.1/lib/udpsocket.cpp vdccm-0.10.1.my/lib/udpsocket.cpp +--- vdccm-0.10.1/lib/udpsocket.cpp 2006-05-07 19:49:36.000000000 +0400 ++++ vdccm-0.10.1.my/lib/udpsocket.cpp 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <string.h> + // + // C++ Implementation: udpsocket + // +diff -wbBur vdccm-0.10.1/lib/udpsocket.h vdccm-0.10.1.my/lib/udpsocket.h +--- vdccm-0.10.1/lib/udpsocket.h 2006-05-06 17:07:32.000000000 +0400 ++++ vdccm-0.10.1.my/lib/udpsocket.h 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <stdint.h> + // + // C++ Interface: udpsocket + // +diff -wbBur vdccm-0.10.1/Makefile.in vdccm-0.10.1.my/Makefile.in +--- vdccm-0.10.1/Makefile.in 2007-12-19 22:59:02.000000000 +0300 ++++ vdccm-0.10.1.my/Makefile.in 2011-08-03 14:05:21.000000000 +0400 +@@ -186,9 +186,9 @@ + sysconfdir = @sysconfdir@ + target_alias = @target_alias@ + SUBDIRS = lib src tools +-AM_CFLAGS = -O2 -Werror -pedantic-errors -Wall +-AM_CXXFLAGS = -O2 -Werror -pedantic-errors -Wall +-AM_FFLAGS = -O2 -Werror -pedantic-errors -Wall ++AM_CFLAGS = -O2 -Werror -Wall ++AM_CXXFLAGS = -O2 -Werror -Wall ++AM_FFLAGS = -O2 -Werror -Wall + all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +diff -wbBur vdccm-0.10.1/src/Makefile.in vdccm-0.10.1.my/src/Makefile.in +--- vdccm-0.10.1/src/Makefile.in 2007-12-19 22:59:01.000000000 +0300 ++++ vdccm-0.10.1.my/src/Makefile.in 2011-08-03 14:05:21.000000000 +0400 +@@ -250,7 +250,7 @@ + rapiproxy.cpp rapiproxyfactory.cpp rapiproxyconnection.cpp \ + $(am__append_3) + AM_CFLAGS = -Wall +-AM_CXXFLAGS = -pedantic-errors -Wall ++AM_CXXFLAGS = -Wall + man_MANS = vdccm.1 + EXTRA_DIST = $(man_MANS) + all: $(BUILT_SOURCES) +diff -wbBur vdccm-0.10.1/src/rapiclient.cpp vdccm-0.10.1.my/src/rapiclient.cpp +--- vdccm-0.10.1/src/rapiclient.cpp 2006-05-06 17:07:32.000000000 +0400 ++++ vdccm-0.10.1.my/src/rapiclient.cpp 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <string.h> + // + // C++ Implementation: rapiclient + // +diff -wbBur vdccm-0.10.1/src/rapiclient.h vdccm-0.10.1.my/src/rapiclient.h +--- vdccm-0.10.1/src/rapiclient.h 2006-05-06 17:07:32.000000000 +0400 ++++ vdccm-0.10.1.my/src/rapiclient.h 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,5 @@ ++#include <limits.h> ++#include <stdint.h> + // + // C++ Interface: rapiclient + // +diff -wbBur vdccm-0.10.1/src/rapiconnection.cpp vdccm-0.10.1.my/src/rapiconnection.cpp +--- vdccm-0.10.1/src/rapiconnection.cpp 2007-05-10 22:27:03.000000000 +0400 ++++ vdccm-0.10.1.my/src/rapiconnection.cpp 2011-08-03 14:05:21.000000000 +0400 +@@ -1,3 +1,4 @@ ++#include <stdio.h> + // + // C++ Implementation: rapiconnection + // diff --git a/community/systemd/PKGBUILD b/community/systemd/PKGBUILD index 0efa9c6d0..03f85a55d 100644 --- a/community/systemd/PKGBUILD +++ b/community/systemd/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 49447 2011-06-16 13:09:25Z dreisner $ -# Maintainer: Dave Reisner <d@falconindy.com> +# $Id: PKGBUILD 53341 2011-08-03 04:06:06Z dreisner $ +# Maintainer: Dave Reisner <dreisner@archlinux.org> pkgname=systemd -pkgver=29 +pkgver=33 pkgrel=1 pkgdesc="Session and Startup manager" arch=('i686' 'x86_64') url="http://www.freedesktop.org/wiki/Software/systemd" license=('GPL2') -depends=('dbus-core' 'sysvinit' 'util-linux>=2.19') -makedepends=('docbook-xsl' 'libxslt' 'cryptsetup' 'gtk2' 'libnotify') +depends=('dbus-core' 'libcap' 'util-linux>=2.19' 'udev>=172') +makedepends=('docbook-xsl' 'libxslt' 'cryptsetup' 'gtk2' 'intltool' 'libnotify' 'gperf') optdepends=('cryptsetup: required for encrypted block devices' 'dbus-python: systemd-analyze' 'gtk2: systemadm' @@ -20,29 +20,42 @@ optdepends=('cryptsetup: required for encrypted block devices' 'systemd-arch-units: collection of native unit files for Arch daemon/init scripts') groups=('systemd') options=('!libtool') -backup=(etc/systemd/system.conf - etc/tmpfiles.d/console.conf - usr/lib/tmpfiles.d/legacy.conf - usr/lib/tmpfiles.d/systemd.conf - usr/lib/tmpfiles.d/x11.conf) +backup=(etc/dbus-1/system.d/org.freedesktop.systemd1.conf + etc/dbus-1/system.d/org.freedesktop.hostname1.conf + etc/dbus-1/system.d/org.freedesktop.login1.conf + etc/dbus-1/system.d/org.freedesktop.locale1.conf + etc/dbus-1/system.d/org.freedesktop.timedate1.conf + etc/systemd/system.conf + etc/systemd/user.conf + etc/systemd/systemd-logind.conf) install=systemd.install source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.bz2" "os-release") -md5sums=('e91ffd208c5f03e5c11966eee7b684b0' +md5sums=('361cad7c3debbdd81c211527509ba181' '752636def0db3c03f121f8b4f44a63cd') build() { cd "$srcdir/$pkgname-$pkgver" + # Don't unset locale in getty + # https://bugzilla.redhat.com/show_bug.cgi?id=663900 + sed -i -e '/^Environ.*LANG/s/^/#/' \ + -e '/^ExecStart/s/agetty/& -8/' units/getty@.service.m4 + ./configure --prefix=/usr \ - --with-rootdir= \ --sysconfdir=/etc \ --libexecdir=/usr/lib \ + --libdir=/usr/lib \ --localstatedir=/var \ + --with-rootdir= \ + --with-rootlibdir=/lib \ --disable-audit \ --disable-tcpwrap make + + # fix .so links in manpages + sed -i 's|\.so halt\.8|.so systemd.halt.8|' man/{halt,poweroff}.8 } package() { @@ -51,7 +64,7 @@ package() { make DESTDIR="$pkgdir" install install -Dm644 "$srcdir/os-release" "$pkgdir/etc/os-release" - printf "d /run/console 755 root root\n" > "$pkgdir/etc/tmpfiles.d/console.conf" + printf "d /run/console 755 root root\n" > "$pkgdir/usr/lib/tmpfiles.d/console.conf" # fix systemd-analyze for python2 sed -i '1s/python$/python2/' "$pkgdir/usr/bin/systemd-analyze" @@ -61,5 +74,5 @@ package() { for manpage in telinit halt reboot poweroff runlevel shutdown; do mv {,systemd.}"$manpage.8" done -} +} diff --git a/community/systemd/systemd.install b/community/systemd/systemd.install index 7ec58682a..34f902276 100644 --- a/community/systemd/systemd.install +++ b/community/systemd/systemd.install @@ -1,13 +1,21 @@ #!/bin/sh checkgroups() { - getent group lock >/dev/null || groupadd -g 54 lock + if usr/bin/getent group lock >/dev/null; then + usr/sbin/groupadd -g 54 lock + fi +} + +sd_booted() { + [ -e sys/fs/cgroups/systemd ] } post_install() { checkgroups - [ -f /etc/machine-id ] || systemd-machine-id-setup + if [ -f etc/machine-id ]; then + bin/systemd-machine-id-setup + fi echo "systemd has been installed to /bin/systemd. Please ensure you append" echo "init=/bin/systemd to your kernel command line in your bootloader." @@ -16,16 +24,28 @@ post_install() { post_upgrade() { checkgroups - [ -f /etc/machine-id ] || systemd-machine-id-setup - systemctl daemon-reexec >/dev/null || : -} + if [ -f etc/machine-id ]; then + bin/systemd-machine-id-setup + fi + + if sd_booted; then + bin/systemctl daemon-reexec >/dev/null + fi + + newpkgver=${1%-*} + oldpkgver=${2%-*} -pre_remove() { - rm -f /etc/systemd/system/default.target + # catch v31 need for restarting systemd-logind.service + if [ "$newpkgver" -ge 31 ] && [ "$oldpkgver" -lt 31 ]; then + # but only if systemd is running + if sd_booted; then + bin/systemctl try-restart systemd-logind.service + fi + fi } post_remove() { - getent group lock >/dev/null && groupdel lock + usr/bin/getent group lock >/dev/null && usr/sbin/groupdel lock } # vim:set ts=2 sw=2 et: diff --git a/core/udev/81-arch.rules b/core/udev/81-arch.rules index cd4e3e9b4..71f1a883b 100644 --- a/core/udev/81-arch.rules +++ b/core/udev/81-arch.rules @@ -26,8 +26,7 @@ KERNEL=="sg[0-9]*", ATTRS{type}!="3|6", GROUP="disk", MODE="0660" SUBSYSTEMS=="ide", KERNEL=="hd[a-z]", ATTR{removable}=="1", ATTRS{media}=="cdrom*", GROUP="optical" # permissions for SCSI CD devices -SUBSYSTEMS=="scsi", KERNEL=="sr[0-9]*", ATTRS{type}=="5", SYMLINK+="scd%n", GROUP="optical" -SUBSYSTEMS=="scsi", KERNEL=="sg[0-9]*", ATTRS{type}=="5", GROUP="optical" +SUBSYSTEMS=="scsi", KERNEL=="s[rg][0-9]*", ATTRS{type}=="5", GROUP="optical" # permissions for removable devices like cardreaders or sticks KERNEL=="sd*", ATTRS{scsi_level}=="3", ATTRS{type}=="0", GROUP="storage" @@ -61,23 +60,12 @@ KERNEL=="radio[0-9]*", GROUP="video" KERNEL=="video0", SYMLINK+="video" KERNEL=="vtx0", SYMLINK+="vtx" -# video devices -### xorg resets those permissions, adjust your xorg.conf! -KERNEL=="3dfx*", GROUP="video" -KERNEL=="fb[0-9]*", GROUP="video" - # misc KERNEL=="sgi_fetchop", MODE="0666" KERNEL=="sonypi", MODE="0666" # USB devices KERNEL=="legousbtower*", MODE="0666" - -# kbd devices -KERNEL=="kbd", MODE="0664" - -# miscellaneous -KERNEL=="rtc|rtc0", GROUP="audio", MODE="0664" ####################################### # Permissions and Symlinks - end ####################################### diff --git a/core/udev/PKGBUILD b/core/udev/PKGBUILD index b80fd7707..bab6a2cbe 100644 --- a/core/udev/PKGBUILD +++ b/core/udev/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 126202 2011-06-02 14:49:12Z tomegun $ +# $Id: PKGBUILD 134147 2011-08-02 11:38:00Z tomegun $ # Maintainer: Aaron Griffin <aaron@archlinux.org> # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Maintainer: Thomas Bächler <thomas@archlinux.org> @@ -6,8 +6,8 @@ pkgbase="udev" pkgname=('udev' 'udev-compat') -pkgver=171 -pkgrel=2 +pkgver=173 +pkgrel=3 arch=(i686 x86_64) url="http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html" license=('GPL') @@ -16,18 +16,20 @@ groups=('base') options=(!makeflags !libtool) makedepends=('glibc' 'coreutils' 'util-linux' 'pciutils' 'libusb-compat' 'glib2' 'kernel26' 'gperf' 'libxslt' 'gobject-introspection') source=(http://www.kernel.org/pub/linux/utils/kernel/hotplug/$pkgbase-$pkgver.tar.bz2 - 81-arch.rules - static-audio-nodes-group.patch - static-nodes-permissions.patch) + bluetooth.patch + 81-arch.rules) build() { cd $srcdir/$pkgbase-$pkgver - # fix https://bugs.archlinux.org/task/24362 (will be in udev-172) - patch -Np1 -i ../static-audio-nodes-group.patch - patch -Np1 -i ../static-nodes-permissions.patch - ./configure --sysconfdir=/etc --with-rootlibdir=/lib --libexecdir=/lib/udev\ - --sbindir=/sbin --with-systemdsystemunitdir=/lib/systemd/system\ - --disable-rule-generator + # fix https://bugs.archlinux.org/task/25356 (submitted upstream) + patch -Np1 -i ../bluetooth.patch + ./configure --sysconfdir=/etc\ + --with-rootlibdir=/lib\ + --libexecdir=/lib/udev\ + --sbindir=/sbin\ + --with-systemdsystemunitdir=/lib/systemd/system\ + --disable-rule-generator\ + --enable-udev_acl make } @@ -36,8 +38,7 @@ package_udev() { depends=('glibc' 'coreutils' 'util-linux' 'libusb-compat' 'glib2' 'module-init-tools>=3.11' 'pciutils') install=udev.install - backup=(etc/udev/udev.conf - etc/modprobe.d/framebuffer_blacklist.conf) + backup=(etc/udev/udev.conf) conflicts=('pcmcia-cs' 'hotplug' 'initscripts<2009.07') replaces=('devfsd') @@ -47,14 +48,33 @@ package_udev() { install -D -m644 $srcdir/81-arch.rules $pkgdir/lib/udev/rules.d/81-arch.rules # create framebuffer blacklist - mkdir -p $pkgdir/etc/modprobe.d/ + mkdir -p $pkgdir/lib/modprobe.d/ for mod in $(find /lib/modules/*/kernel/drivers/video -name '*fb.ko.gz' -exec basename {} .ko.gz \;); do echo "blacklist $mod" - done | sort -u > $pkgdir/etc/modprobe.d/framebuffer_blacklist.conf + done | sort -u > $pkgdir/lib/modprobe.d/framebuffer_blacklist.conf + # 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 + + # Replace dialout/tape/cdrom group in rules with uucp/storage/optical group + for i in $pkgdir/lib/udev/rules.d/*.rules; do + sed -i -e 's#GROUP="dialout"#GROUP="uucp"#g; + s#GROUP="tape"#GROUP="storage"#g; + s#GROUP="cdrom"#GROUP="optical"#g' $i + done +} + +package_udev-compat() { + pkgdesc="The userspace dev tools (udev) - additional rules for older kernels" + depends=('udev') + groups=('') + cd $srcdir/$pkgbase-$pkgver + install -d -m755 ${pkgdir}/lib/${pkgbase}/rules.d + install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/rules/misc/30-kernel-compat.rules ${pkgdir}/lib/udev/rules.d/30-kernel-compat.rules # create static devices in /lib/udev/devices/ - mkdir ${pkgdir}/lib/udev/devices/pts - mkdir ${pkgdir}/lib/udev/devices/shm + mkdir -p ${pkgdir}/lib/udev/devices/{pts,shm} mknod -m 0600 ${pkgdir}/lib/udev/devices/console c 5 1 mknod -m 0666 ${pkgdir}/lib/udev/devices/null c 1 3 @@ -68,9 +88,6 @@ package_udev() { 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 @@ -78,24 +95,7 @@ package_udev() { 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/tape/cdrom group in rules with uucp/storage/optical group - for i in $pkgdir/lib/udev/rules.d/*.rules; do - sed -i -e 's#GROUP="dialout"#GROUP="uucp"#g; - s#GROUP="tape"#GROUP="storage"#g; - s#GROUP="cdrom"#GROUP="optical"#g' $i - done -} - -package_udev-compat() { - pkgdesc="The userspace dev tools (udev) - additional rules for older kernels" - depends=('udev') - groups=('') - cd $srcdir/$pkgbase-$pkgver - install -d -m755 ${pkgdir}/lib/${pkgbase}/rules.d - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/rules/misc/30-kernel-compat.rules ${pkgdir}/lib/udev/rules.d/30-kernel-compat.rules } -md5sums=('bdf4617284be2ecac11767437417e209' - '6ee44e3feb8e0f037947e7d4ca273f12' - '4f625aea95a5597afd8cdf189421f193' - 'f9e50b8dfcd2215f5423ff9bc04ecf68') +md5sums=('91a88a359b60bbd074b024883cc0dbde' + '36cb9bfb55a8d931b7498d2e46730745' + 'ec529eb1ddaabb70c61b38f80bb8462a') diff --git a/core/udev/bluetooth.patch b/core/udev/bluetooth.patch new file mode 100644 index 000000000..96f5d6901 --- /dev/null +++ b/core/udev/bluetooth.patch @@ -0,0 +1,36 @@ +From 7462d61442f606cc118722e0572ac8db48fa2540 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Thomas=20B=C3=A4chler?= <thomas@archlinux.org> +Date: Tue, 2 Aug 2011 10:56:33 +0200 +Subject: [PATCH] rules: input - fix detection of bluetooth hid devices in + Xorg + +Commit c49df20758e0f22778cfc93b598f2929f4c86272 prevented udev from +creating broken symlinks for bluetooth hid devices. Unfortunately, +it also removed the ID_INPUT=1 and ID_INPUT_{KEY,MOUSE}=1 properties +from those devices. Xorg relies on these properties for cold- and +hotplugging of input devices. + +With this patch, udev still omits the broken symlinks, but also +imports the input_id properties again. +--- + rules/rules.d/60-persistent-input.rules | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/rules/rules.d/60-persistent-input.rules b/rules/rules.d/60-persistent-input.rules +index 65a6381..28d50d2 100644 +--- a/rules/rules.d/60-persistent-input.rules ++++ b/rules/rules.d/60-persistent-input.rules +@@ -2,9 +2,9 @@ + + ACTION=="remove", GOTO="persistent_input_end" + SUBSYSTEM!="input", GOTO="persistent_input_end" +-SUBSYSTEMS=="bluetooth", GOTO="persistent_input_end" + + ENV{ID_INPUT}=="", IMPORT{program}="input_id %p" ++SUBSYSTEMS=="bluetooth", GOTO="persistent_input_end" + SUBSYSTEMS=="usb", ENV{ID_BUS}=="", IMPORT{program}="usb_id --export %p" + + # determine class name for persistent symlinks +-- +1.7.6 + diff --git a/core/udev/udev.install b/core/udev/udev.install index 5c02dd15b..272ab60c0 100644 --- a/core/udev/udev.install +++ b/core/udev/udev.install @@ -2,40 +2,47 @@ # arg 2: the old package version post_upgrade() { - if [ "$(vercmp $2 100)" -lt 0 ]; then - echo "ATTENTION UDEV:" - echo "----------" - echo "udev >=098 rules syntax has changed, please update your own rules." - echo "udev >=099 Added persistent network and CD/DVD Symlink generator rules." - echo "Please read the instructions carefully before reboot." - echo "They are located in /etc/udev/readme-udev-arch.txt" - echo "----------" - fi - if [ "$(vercmp $2 169)" -lt 0 ]; then - echo "ATTENTION UDEV:" - echo "---------------" - echo "Kernel 2.6.32 or newer is now required." - echo "OSS emulation modules are not loaded by default, add to rc.conf if needed." - echo "Arch specific cd symlinks are now no longer created." - echo "cd and net persistent rules will no longer be autogenerated," - echo "see <https://wiki.archlinux.org/index.php/Udev> for details." - echo "Errors are now logged (possibly to the console) by default." - echo "---------------" - fi if [ "$(vercmp $2 172)" -lt 0 ]; then echo "ATTENTION UDEV:" - echo "---------------" - echo "Arch's custom blacklisting logic has been removed. MOD_AUTOLOAD and" - echo "blacklisting in MODULES no longer works." - echo "See 'man modprobe.conf' for a replacement to blacklisting." - echo "To disable a module mod1 on the kernel command line, use" - echo "mod1.disable=1" - echo "or" - echo "modprobe.blacklist=mod1" + echo "----------" + if [ "$(vercmp $2 168)" -lt 0 ]; then + echo "Kernel 2.6.32 or newer is now required." + echo " --" + echo "OSS emulation modules are not loaded by default, add to rc.conf if needed." + echo " --" + echo "Arch specific cd symlinks are now no longer created." + echo " --" + echo "cd and net persistent rules will no longer be autogenerated," + echo "see <https://wiki.archlinux.org/index.php/Udev> for details." + echo " --" + echo "Errors are now logged (possibly to the console) by default." + echo " --" + fi + if [ "$(vercmp $2 171)" -lt 0 ]; then + echo "Arch's custom blacklisting logic has been removed. MOD_AUTOLOAD and" + echo "blacklisting in MODULES no longer works." + echo "See 'man modprobe.conf' for a replacement to blacklisting." + echo "To disable a module mod1 on the kernel command line, use" + echo "mod1.disable=1" + echo "or" + echo "modprobe.blacklist=mod1" + echo " --" + echo "The following modules are no longer unconditionally loaded:" + echo " pcspkr irtty-sir analog lp ppdev ide-generic" + echo "Add them to MODULES in rc.conf if you need them." + echo " --" + fi + echo "Support for non-devtmpfs self-compiled kernels have been moved to udev-compat." + echo " --" + echo "Blacklisting of framebuffer devices has moved from /etc/modprobe.d to" + echo "/lib/modprobe.d. Any customizations shoud be done to the file in /etc, as it" + echo "takes precedence." + echo " --" + echo "kbd and rtc devices are no longer world readable." echo " --" - echo "The following modules are no longer unconditionally loaded:" - echo " pcspkr irtty-sir analog lp ppdev ide-generic" - echo "Add them to MODULES in rc.conf if you need them." + echo "rtc is no longer in the audio group and fb devices are no longer in" + echo "the video group, as permissions and ownership of fb devices are controlled" + echo "by X." echo "---------------" fi } diff --git a/extra/bmp/PKGBUILD b/extra/bmp/PKGBUILD index 1cb44d79c..8c89b7db0 100644 --- a/extra/bmp/PKGBUILD +++ b/extra/bmp/PKGBUILD @@ -1,27 +1,32 @@ -# $Id: PKGBUILD 30185 2009-03-17 03:43:05Z eric $ +# $Id: PKGBUILD 134409 2011-08-03 18:32:37Z angvp $ # Maintainer: Kevin Piche <kevin@archlinux.org> # Contributor: Ben <contrasutra@myrealbox.com> pkgname=bmp pkgver=0.9.7.1 -pkgrel=5 +pkgrel=6 pkgdesc="gtk2 port of xmms" arch=(i686 x86_64) url="http://sourceforge.net/projects/beepmp/" license=('GPL') -depends=('esound' 'id3lib' 'libglade' 'libsm' 'libvorbis' 'unzip') +depends=('id3lib' 'libglade' 'libsm' 'libvorbis' 'unzip') makedepends=('libxt') options=('!libtool') source=(http://downloads.sourceforge.net/sourceforge/beepmp/${pkgname}-${pkgver}.tar.gz ${pkgver}-visualization.patch bmp-${pkgver}-crossfade-0.3.9.patch) -md5sums=('c25d5a8d49cc5851d13d525a20023c4c' 'fa1bdf5a8d03e8539a6bed5caa471176'\ +md5sums=('c25d5a8d49cc5851d13d525a20023c4c' + 'fa1bdf5a8d03e8539a6bed5caa471176' '42ad4109ddb66024d4c6d1f3e572ab86') build() { cd ${srcdir}/${pkgname}-${pkgver} - patch -p0 -i ../${pkgver}-visualization.patch || return 1 - patch -p1 -i ../${pkgname}-${pkgver}-crossfade-0.3.9.patch || return 1 - ./configure --prefix=/usr --mandir=/usr/share/man || return 1 - make || return 1 - make DESTDIR=${pkgdir} install || return 1 + patch -p0 -i ../${pkgver}-visualization.patch + patch -p1 -i ../${pkgname}-${pkgver}-crossfade-0.3.9.patch + ./configure --prefix=/usr --mandir=/usr/share/man + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install } # vim: ts=2 sw=2 et ft=sh diff --git a/extra/libmpeg2/PKGBUILD b/extra/libmpeg2/PKGBUILD index 0e201b092..25960822d 100644 --- a/extra/libmpeg2/PKGBUILD +++ b/extra/libmpeg2/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 134269 2011-08-02 18:27:34Z jgc $ +# $Id: PKGBUILD 134366 2011-08-03 07:11:36Z jgc $ # Contributor: Sarah Hay <sarah@archlinux.org> # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgname=libmpeg2 pkgver=0.5.1 -pkgrel=2 +pkgrel=3 pkgdesc="Library for decoding MPEG-1 and MPEG-2 video streams." arch=('i686' 'x86_64') url="http://libmpeg2.sourceforge.net/" @@ -12,14 +12,18 @@ depends=('glibc') makedepends=('sdl' 'libxv') optdepends=('sdl: requiered for mpeg2dec' 'libxv: requiered for mpeg2dec') -source=(http://libmpeg2.sourceforge.net/files/${pkgname}-${pkgver}.tar.gz) +source=(http://libmpeg2.sourceforge.net/files/${pkgname}-${pkgver}.tar.gz + libmpeg2-0.5.1-gcc4.6.patch) license=('GPL2') options=(!libtool) provides=('mpeg2dec') -md5sums=('0f92c7454e58379b4a5a378485bbd8ef') +md5sums=('0f92c7454e58379b4a5a378485bbd8ef' + '8b36660297e6ffde6aa9733136bff405') build() { cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}/libmpeg2-0.5.1-gcc4.6.patch" + sed '/AC_PATH_XTRA/d' -i configure.ac autoreconf --force --install diff --git a/extra/libmpeg2/libmpeg2-0.5.1-gcc4.6.patch b/extra/libmpeg2/libmpeg2-0.5.1-gcc4.6.patch new file mode 100644 index 000000000..9c0e185be --- /dev/null +++ b/extra/libmpeg2/libmpeg2-0.5.1-gcc4.6.patch @@ -0,0 +1,128 @@ +--- libmpeg2-0.5.1/libmpeg2/idct_mmx.c.orig 2011-05-13 09:23:02.557758717 -0300 ++++ libmpeg2-0.5.1/libmpeg2/idct_mmx.c 2011-05-13 09:23:06.346778580 -0300 +@@ -39,7 +39,6 @@ + #define rounder(bias) {round (bias), round (bias)} + #define rounder_sse2(bias) {round (bias), round (bias), round (bias), round (bias)} + +- + #if 0 + /* C row IDCT - it is just here to document the MMXEXT and MMX versions */ + static inline void idct_row (int16_t * row, int offset, +@@ -464,10 +463,10 @@ static inline void sse2_idct_col (int16_ + /* Almost identical to mmxext version: */ + /* just do both 4x8 columns in paraller */ + +- static const short t1_vector[] ATTR_ALIGN(16) = {T1,T1,T1,T1,T1,T1,T1,T1}; +- static const short t2_vector[] ATTR_ALIGN(16) = {T2,T2,T2,T2,T2,T2,T2,T2}; +- static const short t3_vector[] ATTR_ALIGN(16) = {T3,T3,T3,T3,T3,T3,T3,T3}; +- static const short c4_vector[] ATTR_ALIGN(16) = {C4,C4,C4,C4,C4,C4,C4,C4}; ++ static/* const*/ short t1_vector[] ATTR_ALIGN(16) = {T1,T1,T1,T1,T1,T1,T1,T1}; ++ static/* const*/ short t2_vector[] ATTR_ALIGN(16) = {T2,T2,T2,T2,T2,T2,T2,T2}; ++ static/* const*/ short t3_vector[] ATTR_ALIGN(16) = {T3,T3,T3,T3,T3,T3,T3,T3}; ++ static/* const*/ short c4_vector[] ATTR_ALIGN(16) = {C4,C4,C4,C4,C4,C4,C4,C4}; + + #if defined(__x86_64__) + +@@ -710,10 +709,10 @@ static inline void sse2_idct_col (int16_ + /* MMX column IDCT */ + static inline void idct_col (int16_t * const col, const int offset) + { +- static const short t1_vector[] ATTR_ALIGN(8) = {T1,T1,T1,T1}; +- static const short t2_vector[] ATTR_ALIGN(8) = {T2,T2,T2,T2}; +- static const short t3_vector[] ATTR_ALIGN(8) = {T3,T3,T3,T3}; +- static const short c4_vector[] ATTR_ALIGN(8) = {C4,C4,C4,C4}; ++ static/* const*/ short t1_vector[] ATTR_ALIGN(8) = {T1,T1,T1,T1}; ++ static/* const*/ short t2_vector[] ATTR_ALIGN(8) = {T2,T2,T2,T2}; ++ static/* const*/ short t3_vector[] ATTR_ALIGN(8) = {T3,T3,T3,T3}; ++ static/* const*/ short c4_vector[] ATTR_ALIGN(8) = {C4,C4,C4,C4}; + + /* column code adapted from peter gubanov */ + /* http://www.elecard.com/peter/idct.shtml */ +@@ -847,33 +846,33 @@ static inline void idct_col (int16_t * c + } + + +-static const int32_t rounder0[] ATTR_ALIGN(8) = ++static/* const*/ int32_t rounder0[] ATTR_ALIGN(8) = + rounder ((1 << (COL_SHIFT - 1)) - 0.5); +-static const int32_t rounder4[] ATTR_ALIGN(8) = rounder (0); +-static const int32_t rounder1[] ATTR_ALIGN(8) = ++static/* const*/ int32_t rounder4[] ATTR_ALIGN(8) = rounder (0); ++static/* const*/ int32_t rounder1[] ATTR_ALIGN(8) = + rounder (1.25683487303); /* C1*(C1/C4+C1+C7)/2 */ +-static const int32_t rounder7[] ATTR_ALIGN(8) = ++static/* const*/ int32_t rounder7[] ATTR_ALIGN(8) = + rounder (-0.25); /* C1*(C7/C4+C7-C1)/2 */ +-static const int32_t rounder2[] ATTR_ALIGN(8) = ++static/* const*/ int32_t rounder2[] ATTR_ALIGN(8) = + rounder (0.60355339059); /* C2 * (C6+C2)/2 */ +-static const int32_t rounder6[] ATTR_ALIGN(8) = ++static/* const*/ int32_t rounder6[] ATTR_ALIGN(8) = + rounder (-0.25); /* C2 * (C6-C2)/2 */ +-static const int32_t rounder3[] ATTR_ALIGN(8) = ++static/* const*/ int32_t rounder3[] ATTR_ALIGN(8) = + rounder (0.087788325588); /* C3*(-C3/C4+C3+C5)/2 */ +-static const int32_t rounder5[] ATTR_ALIGN(8) = ++static/* const*/ int32_t rounder5[] ATTR_ALIGN(8) = + rounder (-0.441341716183); /* C3*(-C5/C4+C5-C3)/2 */ + + + #define declare_idct(idct,table,idct_row_head,idct_row,idct_row_tail,idct_row_mid) \ + static inline void idct (int16_t * const block) \ + { \ +- static const int16_t table04[] ATTR_ALIGN(16) = \ ++ static/* const*/ int16_t table04[] ATTR_ALIGN(16) = \ + table (22725, 21407, 19266, 16384, 12873, 8867, 4520); \ +- static const int16_t table17[] ATTR_ALIGN(16) = \ ++ static/* const*/ int16_t table17[] ATTR_ALIGN(16) = \ + table (31521, 29692, 26722, 22725, 17855, 12299, 6270); \ +- static const int16_t table26[] ATTR_ALIGN(16) = \ ++ static/* const*/ int16_t table26[] ATTR_ALIGN(16) = \ + table (29692, 27969, 25172, 21407, 16819, 11585, 5906); \ +- static const int16_t table35[] ATTR_ALIGN(16) = \ ++ static/* const*/ int16_t table35[] ATTR_ALIGN(16) = \ + table (26722, 25172, 22654, 19266, 15137, 10426, 5315); \ + \ + idct_row_head (block, 0*8, table04); \ +@@ -900,29 +899,29 @@ static inline void idct (int16_t * const + + static inline void sse2_idct (int16_t * const block) + { +- static const int16_t table04[] ATTR_ALIGN(16) = ++ static/* const*/ int16_t table04[] ATTR_ALIGN(16) = + sse2_table (22725, 21407, 19266, 16384, 12873, 8867, 4520); +- static const int16_t table17[] ATTR_ALIGN(16) = ++ static/* const*/ int16_t table17[] ATTR_ALIGN(16) = + sse2_table (31521, 29692, 26722, 22725, 17855, 12299, 6270); +- static const int16_t table26[] ATTR_ALIGN(16) = ++ static/* const*/ int16_t table26[] ATTR_ALIGN(16) = + sse2_table (29692, 27969, 25172, 21407, 16819, 11585, 5906); +- static const int16_t table35[] ATTR_ALIGN(16) = ++ static/* const*/ int16_t table35[] ATTR_ALIGN(16) = + sse2_table (26722, 25172, 22654, 19266, 15137, 10426, 5315); + +- static const int32_t rounder0_128[] ATTR_ALIGN(16) = ++ static/* const*/ int32_t rounder0_128[] ATTR_ALIGN(16) = + rounder_sse2 ((1 << (COL_SHIFT - 1)) - 0.5); +- static const int32_t rounder4_128[] ATTR_ALIGN(16) = rounder_sse2 (0); +- static const int32_t rounder1_128[] ATTR_ALIGN(16) = ++ static/* const*/ int32_t rounder4_128[] ATTR_ALIGN(16) = rounder_sse2 (0); ++ static/* const*/ int32_t rounder1_128[] ATTR_ALIGN(16) = + rounder_sse2 (1.25683487303); /* C1*(C1/C4+C1+C7)/2 */ +- static const int32_t rounder7_128[] ATTR_ALIGN(16) = ++ static/* const*/ int32_t rounder7_128[] ATTR_ALIGN(16) = + rounder_sse2 (-0.25); /* C1*(C7/C4+C7-C1)/2 */ +- static const int32_t rounder2_128[] ATTR_ALIGN(16) = ++ static/* const*/ int32_t rounder2_128[] ATTR_ALIGN(16) = + rounder_sse2 (0.60355339059); /* C2 * (C6+C2)/2 */ +- static const int32_t rounder6_128[] ATTR_ALIGN(16) = ++ static/* const*/ int32_t rounder6_128[] ATTR_ALIGN(16) = + rounder_sse2 (-0.25); /* C2 * (C6-C2)/2 */ +- static const int32_t rounder3_128[] ATTR_ALIGN(16) = ++ static/* const*/ int32_t rounder3_128[] ATTR_ALIGN(16) = + rounder_sse2 (0.087788325588); /* C3*(-C3/C4+C3+C5)/2 */ +- static const int32_t rounder5_128[] ATTR_ALIGN(16) = ++ static/* const*/ int32_t rounder5_128[] ATTR_ALIGN(16) = + rounder_sse2 (-0.441341716183); /* C3*(-C5/C4+C5-C3)/2 */ + + #if defined(__x86_64__) diff --git a/extra/mercurial/PKGBUILD b/extra/mercurial/PKGBUILD index 208c30404..d139715da 100644 --- a/extra/mercurial/PKGBUILD +++ b/extra/mercurial/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 131160 2011-07-11 12:44:25Z giovanni $ +# $Id: PKGBUILD 134393 2011-08-03 15:08:59Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> pkgname=mercurial -pkgver=1.9 -pkgrel=2 +pkgver=1.9.1 +pkgrel=1 pkgdesc="A scalable distributed SCM tool" arch=('i686' 'x86_64') -url="http://www.selenic.com/mercurial" +url="http://mercurial.selenic.com/" license=('GPL') depends=('python2') optdepends=('tk: for the hgk GUI') backup=('etc/mercurial/hgrc') -source=(http://www.selenic.com/mercurial/release/${pkgname}-${pkgver}.tar.gz +source=(http://mercurial.selenic.com/release/${pkgname}-${pkgver}.tar.gz mercurial.profile) -md5sums=('d4842129fa2732eb6ed1180467bc32e2' +md5sums=('601990cc58af8316af4e1ea63e19d1be' '43e1d36564d4c7fbe9a091d3ea370a44') package() { diff --git a/extra/modemmanager/PKGBUILD b/extra/modemmanager/PKGBUILD index 890026787..8ac3539e5 100644 --- a/extra/modemmanager/PKGBUILD +++ b/extra/modemmanager/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 130025 2011-07-01 09:21:47Z ibiru $ +# $Id: PKGBUILD 134371 2011-08-03 08:01:01Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> pkgname=modemmanager _realname=ModemManager -pkgver=0.4.998 +pkgver=0.5 pkgrel=1 pkgdesc="Mobile broadband modem management service" arch=('i686' 'x86_64') @@ -11,9 +11,9 @@ license=('GPL2') depends=('dbus-glib' 'udev' 'ppp') makedepends=('intltool') options=('!libtool') -source=(http://download.gnome.org/sources/${_realname}/0.4/${_realname}-${pkgver}.tar.xz) +source=(http://download.gnome.org/sources/${_realname}/0.5/${_realname}-${pkgver}.tar.xz) optdepends=('usb_modeswitch: install if your modem shows up as a storage drive') -sha256sums=('a0d96d0f9e06f1542b4c32d114833114b330682f93eea16fda8cdba289ceadf5') +sha256sums=('e7c7aed7c1484adee22f04dac358c1f971985f8413096c4d412d084aa2cd7c7f') build() { cd "$srcdir/${_realname}-${pkgver}" diff --git a/extra/racket/PKGBUILD b/extra/racket/PKGBUILD index 97e42ea39..2dd085d65 100644 --- a/extra/racket/PKGBUILD +++ b/extra/racket/PKGBUILD @@ -1,14 +1,14 @@ -# $Id: PKGBUILD 122617 2011-05-05 05:05:42Z eric $ +# $Id: PKGBUILD 134452 2011-08-03 23:25:25Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=racket -pkgver=5.1.1 +pkgver=5.1.2 pkgrel=1 pkgdesc="PLT Racket (a variant of Scheme) Environment" arch=('i686' 'x86_64') url="http://racket-lang.org/" license=('LGPL') -depends=('gtk2' 'libjpeg' 'libffi' 'desktop-file-utils') +depends=('gtk2' 'libffi' 'desktop-file-utils') makedepends=('gsfonts') provides=('drscheme') conflicts=('drscheme') @@ -17,9 +17,9 @@ options=('!strip') install=racket.install source=(http://download.racket-lang.org/installers/${pkgver}/racket/${pkgname}-${pkgver}-src-unix.tgz \ drracket.desktop) -md5sums=('26d6b320218497dba71630b9ad4dcf59' +md5sums=('c686e789913c40bfd78505574963c1fe' '9223c9736ead677431542b41271c7b3c') -sha1sums=('be339495aef3334530ea8fc63ef4014ad8a4b0b2' +sha1sums=('f1f7e2ee1cd754d65013dab80bc1f9a3be1e3b41' 'a20808f6b250225704856f82a544681a962a299d') build() { diff --git a/extra/system-config-printer/PKGBUILD b/extra/system-config-printer/PKGBUILD index c36f18834..2976a0be4 100644 --- a/extra/system-config-printer/PKGBUILD +++ b/extra/system-config-printer/PKGBUILD @@ -1,21 +1,25 @@ -# $Id: PKGBUILD 134084 2011-08-01 10:53:11Z andrea $ +# $Id: PKGBUILD 134387 2011-08-03 14:53:04Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> pkgbase=system-config-printer pkgname=('system-config-printer-common' 'system-config-printer-gnome') pkgver=1.3.5 -pkgrel=1 +pkgrel=2 pkgdesc="A CUPS printer configuration tool and status applet" url="http://cyberelk.net/tim/software/system-config-printer/" arch=('i686' 'x86_64') license=('GPL') makedepends=('intltool' 'python2' 'xmlto' 'docbook-xsl' 'desktop-file-utils' 'libcups' 'libxml2') -source=("http://cyberelk.net/tim/data/${pkgbase}/1.3/${pkgbase}-${pkgver}.tar.xz") -md5sums=('9d806643f17dc65a492a1d4e8a60f2ec') +source=("http://cyberelk.net/tim/data/${pkgbase}/1.3/${pkgbase}-${pkgver}.tar.xz" + 'no-packagekit.patch') +md5sums=('9d806643f17dc65a492a1d4e8a60f2ec' + 'e70a274c3cced39db1668e2a748e068f') build() { cd "${srcdir}"/${pkgbase}-${pkgver} + + patch -p1 -i "${srcdir}"/no-packagekit.patch sed -i -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \ -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \ diff --git a/extra/system-config-printer/no-packagekit.patch b/extra/system-config-printer/no-packagekit.patch new file mode 100644 index 000000000..8482ad823 --- /dev/null +++ b/extra/system-config-printer/no-packagekit.patch @@ -0,0 +1,36 @@ +--- system-config-printer-1.3.5/cupshelpers/cupshelpers.py 2011-08-01 10:47:11.614519332 +0100 ++++ system-config-printer-1.3.5/cupshelpers/cupshelpers.py 2011-08-02 15:45:33.807623959 +0100 +@@ -21,7 +21,6 @@ + + import cups, pprint, os, tempfile, re, string + import locale +-import packagekit.client, packagekit.enums + from . import _debugprint + + class Printer: +@@ -829,24 +828,7 @@ + missing executables + """ + executables = missingExecutables(ppd) +- packages = [] +- if executables: +- unresolved_executables = [] +- client = packagekit.client.PackageKitClient () +- for executable in executables: +- if not executable.startswith ("/"): +- executable = "/usr/bin/" + executable +- +- result = client.search_file ([executable], +- packagekit.enums.FILTER_NOT_INSTALLED) +- if result: +- packages.extend (set (map (lambda x: x.name, result))) +- else: +- unresolved_executables.append (executable) +- +- executables = unresolved_executables +- +- return (packages, executables) ++ return ([], executables) + + def _main(): + c = cups.Connection() diff --git a/extra/xine-lib/PKGBUILD b/extra/xine-lib/PKGBUILD index d2f9dbe51..ecaf308d2 100644 --- a/extra/xine-lib/PKGBUILD +++ b/extra/xine-lib/PKGBUILD @@ -1,45 +1,53 @@ -# $Id: PKGBUILD 101416 2010-11-29 05:43:59Z eric $ -# Maintainer: Eric Belanger <eric@archlinux.org> +# $Id: PKGBUILD 134420 2011-08-03 19:34:12Z eric $ +# Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=xine-lib pkgver=1.1.19 -pkgrel=2 +pkgrel=3 pkgdesc="A multimedia playback engine" arch=('i686' 'x86_64') url="http://www.xine-project.org" license=('LGPL' 'GPL') -depends=('libgl' 'libxvmc' 'esound' 'flac' 'libvorbis' 'sdl' 'libmng' 'libtheora' - 'libxcb' 'wavpack' 'ffmpeg' 'faad2') -makedepends=('pkg-config' 'libtool' 'imagemagick' 'smbclient' 'mesa' 'alsa-lib' - 'vcdimager' 'jack' 'gtk2' 'libpulse' 'speex' 'aalib') -optdepends=('imagemagick: for using the imagemagick plugin' 'smbclient: for using the smb plugin' \ - 'jack: for using the jack plugin' 'vcdimager: for using the vcd plugin' \ - 'gtk2: for using the gdk-pixbuf plugin' 'mesa: for using the opengl plugin' \ - 'libpulse: for using the pulseaudio plugin' 'speex: for using the speex plugin' \ +depends=('libgl' 'libxvmc' 'flac' 'ffmpeg' 'libxinerama') +makedepends=('wavpack' 'faad2' 'libmng' 'imagemagick' 'smbclient' 'mesa' 'libmodplug' + 'v4l-utils' 'vcdimager' 'jack' 'gdk-pixbuf2' 'libpulse' 'speex' 'aalib') +optdepends=('imagemagick: for using the imagemagick plugin' \ + 'smbclient: for using the smb plugin' \ + 'jack: for using the jack plugin' \ + 'vcdimager: for using the vcd plugin' \ + 'gdk-pixbuf2: for using the gdk-pixbuf plugin' \ + 'mesa: for using the opengl plugin' \ + 'libpulse: for using the pulseaudio plugin' \ + 'speex: for using the speex plugin' \ + 'libmodplug: for using the modplug plugin' \ + 'v4l-utils: for using the v4l plugin' \ + 'wavpack: for using the wavpack plugin' \ + 'faad2: for using the faad plugin' \ + 'libmng: for using the mng plugin' \ 'aalib: for using the aalib plugin') options=('!libtool') source=(http://downloads.sourceforge.net/sourceforge/xine/${pkgname}-${pkgver}.tar.bz2 xine-lib-1.1.1-configure-no-mcpu-march.patch xine-lib-1.1.19-xvmc.patch) -md5sums=('a410a0f0617e1d6309f0cbe907f73f8a' '9776df4eb54d2f1f68d8268adbc3b5c2'\ +md5sums=('a410a0f0617e1d6309f0cbe907f73f8a' + '9776df4eb54d2f1f68d8268adbc3b5c2' '8662fb124870b1dd7effe4ff5e2a2e3d') -sha1sums=('5afcc28c5cf2bdaab99d951960f6587797e1e5a0' '121a8358d7919b2e51067412373f52848290338a'\ - '920bf27e6e3523dfe4cc9c802ff713e9688a3f34') +sha1sums=('5afcc28c5cf2bdaab99d951960f6587797e1e5a0' + '121a8358d7919b2e51067412373f52848290338a' + '920bf27e6e3523dfe4cc9c802ff713e9688a3f34') build() { cd "${srcdir}/${pkgname}-${pkgver}" patch -p0 < ../xine-lib-1.1.1-configure-no-mcpu-march.patch patch -p0 < ../xine-lib-1.1.19-xvmc.patch + sed -i 's|linux/videodev.h|libv4l1-videodev.h|' \ + configure.ac src/input/input_v4l.c src/video_out/video_out_syncfb.h libtoolize --force --copy aclocal -I m4 autoconf automake --add-missing - ./configure --prefix=/usr --with-w32-path=/usr/lib/codecs \ - --with-xv-path=/usr/lib --with-xxmc-path=/usr/lib --with-xvmc-path=/usr/lib \ - --with-libflac --with-wavpack --with-xcb --with-jack --with-speex \ - --disable-gnomevfs --with-pulseaudio --enable-aalib --disable-modplug \ - --with-external-ffmpeg + ./configure --prefix=/usr --with-wavpack --with-external-ffmpeg --with-external-libfaad make } diff --git a/multilib/lib32-bzip2/PKGBUILD b/multilib/lib32-bzip2/PKGBUILD new file mode 100644 index 000000000..3b81ad3ec --- /dev/null +++ b/multilib/lib32-bzip2/PKGBUILD @@ -0,0 +1,43 @@ +#$Id: PKGBUILD 53422 2011-08-03 14:41:13Z ibiru $ +# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> +# Contributor: TryA <tryagainprod {at} gmail.com> + +_pkgbasename=bzip2 +pkgname=lib32-bzip2 +pkgver=1.0.6 +pkgrel=1 +pkgdesc="A high-quality data compression program (32-bit)" +arch=('x86_64') +license=('custom') +url="http://sources.redhat.com/bzip2" +depends=('lib32-glibc' $_pkgbasename) +makedepends=('gcc-multilib') +source=(http://www.bzip.org/$pkgver/bzip2-$pkgver.tar.gz) +md5sums=('00b516f4704d4a7cb50a1d97e6e8e15b') + +build() { + cd "${srcdir}/${_pkgbasename}-${pkgver}" + + sed -i "s|CC=gcc|CC=gcc -m32|" Makefile + sed -i "s|CC=gcc|CC=gcc -m32|" Makefile-libbz2_so + + # add large-file support + sed -e 's/^CFLAGS=\(.*\)$/CFLAGS=\1 \$(BIGFILES)/' -i ./Makefile-libbz2_so + + # use our optimization + sed -i "s|-O2|${CFLAGS}|g" Makefile + sed -i "s|-O2|${CFLAGS}|g" Makefile-libbz2_so + + make -f Makefile-libbz2_so + make libbz2.a +} + +package(){ + cd "${srcdir}/${_pkgbasename}-${pkgver}" + install -Dm755 libbz2.so.1.0.6 "${pkgdir}"/usr/lib32/libbz2.so.1.0.6 + ln -s libbz2.so.1.0.6 "${pkgdir}"/usr/lib32/libbz2.so + ln -s libbz2.so.1.0.6 "${pkgdir}"/usr/lib32/libbz2.so.1 + ln -s libbz2.so.1.0.6 "${pkgdir}"/usr/lib32/libbz2.so.1.0 + + install -Dm644 libbz2.a ${pkgdir}/usr/lib32/libbz2.a +} diff --git a/multilib/lib32-freetype2/PKGBUILD b/multilib/lib32-freetype2/PKGBUILD index 02eb2af12..73a59381b 100644 --- a/multilib/lib32-freetype2/PKGBUILD +++ b/multilib/lib32-freetype2/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 53168 2011-07-31 09:46:40Z ibiru $ +# $Id: PKGBUILD 53420 2011-08-03 14:38:19Z ibiru $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> _pkgbasename=freetype2 pkgname=lib32-$_pkgbasename pkgver=2.4.6 -pkgrel=1 +pkgrel=2 pkgdesc="TrueType font rendering library (32-bit)" arch=(x86_64) license=('GPL') url="http://freetype.sourceforge.net" -depends=('lib32-zlib' $_pkgbasename) +depends=('lib32-zlib' 'lib32-bzip2' $_pkgbasename) makedepends=(gcc-multilib) options=('!libtool') source=(http://downloads.sourceforge.net/sourceforge/freetype/freetype-${pkgver}.tar.bz2 diff --git a/multilib/lib32-mesa/PKGBUILD b/multilib/lib32-mesa/PKGBUILD index d381a3346..ce31f6840 100644 --- a/multilib/lib32-mesa/PKGBUILD +++ b/multilib/lib32-mesa/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 53216 2011-08-01 12:58:34Z ibiru $ +# $Id: PKGBUILD 53381 2011-08-03 10:15:51Z ibiru $ # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Andreas Radke <andyrtr@archlinux.org> @@ -16,10 +16,10 @@ if [ "${_git}" = "true" ]; then pkgver=7.11 fi -pkgrel=1 +pkgrel=2 arch=(x86_64) makedepends=('glproto>=1.4.14' 'lib32-libdrm>=2.4.26' 'lib32-libxxf86vm>=1.1.1' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.0.1' 'lib32-libx11>=1.4.3' 'lib32-libxt>=1.1.1' -'lib32-gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'gcc-multilib' imake 'lib32-udev' 'lib32-llvm') +'lib32-gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'gcc-multilib' imake 'lib32-udev' 'lib32-llvm' 'namcap') url="http://mesa3d.sourceforge.net" license=('custom') if [ "${_git}" = "true" ]; then @@ -39,9 +39,6 @@ build() { # for our llvm-config for 32 bit export LLVM_CONFIG=/usr/lib32/llvm/llvm-config - # fix link errors: https://bugs.archlinux.org/task/25093 - export LDFLAGS=${LDFLAGS/-Wl,--as-needed/} - cd ${srcdir}/?esa-* autoreconf -vfi diff --git a/testing/cyrus-sasl/0003_saslauthd_mdoc.patch b/testing/cyrus-sasl/0003_saslauthd_mdoc.patch new file mode 100644 index 000000000..694f4bb67 --- /dev/null +++ b/testing/cyrus-sasl/0003_saslauthd_mdoc.patch @@ -0,0 +1,35 @@ +0003_saslauthd_mdoc.dpatch by <fabbe@debian.org> + +Use the correct path for the saslauthd.conf file, and use another +date format (cosmetic). + +diff -urNad trunk~/saslauthd/saslauthd.mdoc trunk/saslauthd/saslauthd.mdoc +--- trunk~/saslauthd/saslauthd.mdoc 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/saslauthd.mdoc 2006-07-12 15:05:25.000000000 +0300 +@@ -10,7 +10,7 @@ + .\" manpage in saslauthd.8 whenever you change this source + .\" version. Only the pre-formatted manpage is installed. + .\" +-.Dd 10 24 2002 ++.Dd October 24 2002 + .Dt SASLAUTHD 8 + .Os "CMU-SASL" + .Sh NAME +@@ -216,7 +216,7 @@ + .Em (All platforms that support OpenLDAP 2.0 or higher) + .Pp + Authenticate against an ldap server. The ldap configuration parameters are +-read from /usr/local/etc/saslauthd.conf. The location of this file can be ++read from /etc/saslauthd.conf. The location of this file can be + changed with the -O parameter. See the LDAP_SASLAUTHD file included with the + distribution for the list of available parameters. + .It Li sia +@@ -249,7 +249,7 @@ + .Bl -tag -width "/var/run/saslauthd/mux" + .It Pa /var/run/saslauthd/mux + The default communications socket. +-.It Pa /usr/local/etc/saslauthd.conf ++.It Pa /etc/saslauthd.conf + The default configuration file for ldap support. + .El + .Sh SEE ALSO diff --git a/testing/cyrus-sasl/0010_maintainer_mode.patch b/testing/cyrus-sasl/0010_maintainer_mode.patch new file mode 100644 index 000000000..cf3d02a08 --- /dev/null +++ b/testing/cyrus-sasl/0010_maintainer_mode.patch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 0010_maintainer_mode.dpatch by <fabbe@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Enable maintainer mode to avoid auto* problems. + +@DPATCH@ +diff -urNad trunk~/configure.in trunk/configure.in +--- trunk~/configure.in 2006-05-29 22:52:46.000000000 +0300 ++++ trunk/configure.in 2006-11-01 23:24:55.000000000 +0200 +@@ -62,6 +62,8 @@ + AM_INIT_AUTOMAKE(cyrus-sasl, 2.1.22) + CMU_INIT_AUTOMAKE + ++AM_MAINTAINER_MODE ++ + # and include our config dir scripts + ACLOCAL="$ACLOCAL -I \$(top_srcdir)/config" + diff --git a/testing/cyrus-sasl/0011_saslauthd_ac_prog_libtool.patch b/testing/cyrus-sasl/0011_saslauthd_ac_prog_libtool.patch new file mode 100644 index 000000000..3805b4857 --- /dev/null +++ b/testing/cyrus-sasl/0011_saslauthd_ac_prog_libtool.patch @@ -0,0 +1,15 @@ +0011_saslauthd_ac_prog_libtool.dpatch by <fabbe@debian.org> + +Enable libtool use. + +diff -urNad trunk~/saslauthd/configure.in trunk/saslauthd/configure.in +--- trunk~/saslauthd/configure.in 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/configure.in 2006-11-01 23:41:51.000000000 +0200 +@@ -25,6 +25,7 @@ + AC_PROG_MAKE_SET + AC_PROG_LN_S + AC_PROG_INSTALL ++AC_PROG_LIBTOOL + + dnl Checks for build foo + CMU_C___ATTRIBUTE__ diff --git a/testing/cyrus-sasl/0012_xopen_crypt_prototype.patch b/testing/cyrus-sasl/0012_xopen_crypt_prototype.patch new file mode 100644 index 000000000..d50ec8343 --- /dev/null +++ b/testing/cyrus-sasl/0012_xopen_crypt_prototype.patch @@ -0,0 +1,20 @@ +0012_xopen_crypt_prototype.dpatch by <dannf@debian.org> + +When _XOPEN_SOURCE is defined, the subsequent #include <unistd.h> +will define a correct function prototype for the crypt function. +This avoids segfaults on architectures where the size of a pointer +is greater than the size of an integer (ia64 and amd64 are examples). +This may be detected by looking for build log lines such as the +following: +auth_shadow.c:183: warning: implicit declaration of function ‘crypt’ +auth_shadow.c:183: warning: cast to pointer from integer of different +size + +diff -urNad trunk~/saslauthd/auth_shadow.c trunk/saslauthd/auth_shadow.c +--- trunk~/saslauthd/auth_shadow.c 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/auth_shadow.c 2006-11-08 13:44:23.000000000 +0200 +@@ -1,3 +1,4 @@ ++#define _XOPEN_SOURCE + #define PWBUFSZ 256 /***SWB***/ + + /* MODULE: auth_shadow */ diff --git a/testing/cyrus-sasl/0016_pid_file_lock_creation_mask.patch b/testing/cyrus-sasl/0016_pid_file_lock_creation_mask.patch new file mode 100644 index 000000000..e9170cef3 --- /dev/null +++ b/testing/cyrus-sasl/0016_pid_file_lock_creation_mask.patch @@ -0,0 +1,27 @@ +0016_pid_file_lock_creation_mask.dpatch by Sam Hocevar <sam@zoy.org> + +pid_file_lock is created with a mask of 644 instead of 0644. +This patch fixes this octal/decimal confusion as well as the +(harmless) one in the previous umask() call. + +diff -urNad trunk~/saslauthd/saslauthd-main.c trunk/saslauthd/saslauthd-main.c +--- trunk~/saslauthd/saslauthd-main.c 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/saslauthd-main.c 2007-06-26 12:07:10.000000000 +0300 +@@ -276,7 +276,7 @@ + exit(1); + } + +- umask(077); ++ umask(0077); + + pid_file_size = strlen(run_path) + sizeof(PID_FILE_LOCK) + 1; + if ((pid_file_lock = malloc(pid_file_size)) == NULL) { +@@ -287,7 +287,7 @@ + strlcpy(pid_file_lock, run_path, pid_file_size); + strlcat(pid_file_lock, PID_FILE_LOCK, pid_file_size); + +- if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 644)) < 0) { ++ if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 0644)) < 0) { + rc = errno; + logger(L_ERR, L_FUNC, "could not open pid lock file: %s", pid_file_lock); + logger(L_ERR, L_FUNC, "open: %s", strerror(rc)); diff --git a/testing/cyrus-sasl/0018_auth_rimap_quotes.patch b/testing/cyrus-sasl/0018_auth_rimap_quotes.patch new file mode 100644 index 000000000..13fa999f0 --- /dev/null +++ b/testing/cyrus-sasl/0018_auth_rimap_quotes.patch @@ -0,0 +1,35 @@ +0016_auth_rimap_quotes.dpatch by <fabbe@debian.org> + +All lines beginning with `## DP:' are a description of the patch. +Avoid infinite loop when username/password has a double quote character. +Upstream change: https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/sasl/saslauthd/auth_rimap.c.diff?r1=1.12;r2=1.13 + +diff -urNad etch~/saslauthd/auth_rimap.c etch/saslauthd/auth_rimap.c +--- etch~/saslauthd/auth_rimap.c 2007-03-29 15:16:20.000000000 +0300 ++++ etch/saslauthd/auth_rimap.c 2008-02-13 13:42:53.000000000 +0200 +@@ -162,6 +162,7 @@ + num_quotes = 0; + p1 = s; + while ((p1 = strchr(p1, '"')) != NULL) { ++ p1++; + num_quotes++; + } + +@@ -438,7 +439,7 @@ + syslog(LOG_WARNING, "auth_rimap: writev: %m"); + memset(qlogin, 0, strlen(qlogin)); + free(qlogin); +- memset(qpass, 0, strlen(qlogin)); ++ memset(qpass, 0, strlen(qpass)); + free(qpass); + (void)close(s); + return strdup(RESP_IERROR); +@@ -447,7 +448,7 @@ + /* don't need these any longer */ + memset(qlogin, 0, strlen(qlogin)); + free(qlogin); +- memset(qpass, 0, strlen(qlogin)); ++ memset(qpass, 0, strlen(qpass)); + free(qpass); + + /* read and parse the LOGIN response */ diff --git a/testing/cyrus-sasl/0019_ldap_deprecated.patch b/testing/cyrus-sasl/0019_ldap_deprecated.patch new file mode 100644 index 000000000..8825256cb --- /dev/null +++ b/testing/cyrus-sasl/0019_ldap_deprecated.patch @@ -0,0 +1,22 @@ +0019_ldap_deprecated.dpatch by dann frazier <dannf@debian.org> + +The function ldap_get_values, used in saslauthd/lak.c, is deprecated. +Therefore, its prototype is not included by default when compiling +against the ldap.h headers. As a result, the compiler cannot know the +return type of the function at compile time, and will implicitly +convert to a pointer. This has implications on 64-bit systems. +This patch sets the deprecation mode on, so that the function prototype +gets included when compiling. +(Description by Fabian Fagerholm <fabbe@debian.org>) + +diff -urNad trunk~/saslauthd/lak.c trunk/saslauthd/lak.c +--- trunk~/saslauthd/lak.c 2006-06-04 12:26:20.000000000 +0300 ++++ trunk/saslauthd/lak.c 2008-02-15 14:32:11.000000000 +0200 +@@ -55,6 +55,7 @@ + #include <openssl/des.h> + #endif + ++#define LDAP_DEPRECATED 1 + #include <ldap.h> + #include <lber.h> + #include <sasl.h> diff --git a/testing/cyrus-sasl/0022_gcc4.4_preprocessor_syntax.patch b/testing/cyrus-sasl/0022_gcc4.4_preprocessor_syntax.patch new file mode 100644 index 000000000..a49b553f0 --- /dev/null +++ b/testing/cyrus-sasl/0022_gcc4.4_preprocessor_syntax.patch @@ -0,0 +1,26 @@ +0022_gcc4.4_preprocessor_syntax.dpatch by <fabbe@paniq.net> + +The #elif preprocessor directive requires a test condition. +GCC 4.4 enforces this rule. + +diff -urNad trunk~/plugins/digestmd5.c trunk/plugins/digestmd5.c +--- trunk~/plugins/digestmd5.c 2006-06-04 12:26:19.000000000 +0300 ++++ trunk/plugins/digestmd5.c 2009-01-26 13:29:40.000000000 +0200 +@@ -2715,7 +2715,7 @@ + "DIGEST-MD5", /* mech_name */ + #ifdef WITH_RC4 + 128, /* max_ssf */ +-#elif WITH_DES ++#elif defined(WITH_DES) + 112, + #else + 1, +@@ -4034,7 +4034,7 @@ + "DIGEST-MD5", + #ifdef WITH_RC4 /* mech_name */ + 128, /* max ssf */ +-#elif WITH_DES ++#elif defined(WITH_DES) + 112, + #else + 1, diff --git a/testing/cyrus-sasl/0025_ld_as_needed.patch b/testing/cyrus-sasl/0025_ld_as_needed.patch new file mode 100644 index 000000000..67b48b4a4 --- /dev/null +++ b/testing/cyrus-sasl/0025_ld_as_needed.patch @@ -0,0 +1,27 @@ +Author: Matthias Klose <doko@ubuntu.com> +Desription: Fix FTBFS, add $(SASL_DB_LIB) as dependency to libsasldb, and use +it. +--- a/saslauthd/Makefile.am ++++ b/saslauthd/Makefile.am +@@ -16,7 +16,7 @@ EXTRA_saslauthd_sources = getaddrinfo.c + saslauthd_DEPENDENCIES = saslauthd-main.o @LTLIBOBJS@ + saslauthd_LDADD = @SASL_KRB_LIB@ \ + @GSSAPIBASE_LIBS@ @GSSAPI_LIBS@ @LIB_CRYPT@ @LIB_SIA@ \ +- @LIB_SOCKET@ @SASL_DB_LIB@ @LIB_PAM@ @LDAP_LIBS@ @LTLIBOBJS@ ++ @LIB_SOCKET@ ../sasldb/libsasldb.la @LIB_PAM@ @LDAP_LIBS@ @LTLIBOBJS@ + + testsaslauthd_SOURCES = testsaslauthd.c utils.c + testsaslauthd_LDADD = @LIB_SOCKET@ +--- a/sasldb/Makefile.am ++++ b/sasldb/Makefile.am +@@ -55,8 +55,8 @@ noinst_LIBRARIES = libsasldb.a + + libsasldb_la_SOURCES = allockey.c sasldb.h + EXTRA_libsasldb_la_SOURCES = $(extra_common_sources) +-libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND) +-libsasldb_la_LIBADD = $(SASL_DB_BACKEND) ++libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND) $(SASL_DB_LIB) ++libsasldb_la_LIBADD = $(SASL_DB_BACKEND) $(SASL_DB_LIB) + + # Prevent make dist stupidity + libsasldb_a_SOURCES = diff --git a/testing/cyrus-sasl/0026_drop_krb5support_dependency.patch b/testing/cyrus-sasl/0026_drop_krb5support_dependency.patch new file mode 100644 index 000000000..cc00867ef --- /dev/null +++ b/testing/cyrus-sasl/0026_drop_krb5support_dependency.patch @@ -0,0 +1,14 @@ +Author: Roberto C. Sanchez <roberto@connexer.com> +Description: Drop gratuitous dependency on krb5support +--- a/cmulocal/sasl2.m4 ++++ b/cmulocal/sasl2.m4 +@@ -112,9 +112,6 @@ if test "$gssapi" != no; then + fi + + if test "$gss_impl" = "auto" -o "$gss_impl" = "mit"; then +- # check for libkrb5support first +- AC_CHECK_LIB(krb5support,krb5int_getspecific,K5SUP=-lkrb5support K5SUPSTATIC=$gssapi_dir/libkrb5support.a,,${LIB_SOCKET}) +- + gss_failed=0 + AC_CHECK_LIB(gssapi_krb5,gss_unwrap,gss_impl="mit",gss_failed=1, + ${GSSAPIBASE_LIBS} -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err ${K5SUP} ${LIB_SOCKET}) diff --git a/testing/cyrus-sasl/0027_db5_support.patch b/testing/cyrus-sasl/0027_db5_support.patch new file mode 100644 index 000000000..522824074 --- /dev/null +++ b/testing/cyrus-sasl/0027_db5_support.patch @@ -0,0 +1,24 @@ +Author: Ondřej Surý <ondrej@debian.org> +Description: Support newer Berkeley DB versions +--- a/sasldb/db_berkeley.c ++++ b/sasldb/db_berkeley.c +@@ -101,7 +101,7 @@ static int berkeleydb_open(const sasl_ut + ret = db_create(mbdb, NULL, 0); + if (ret == 0 && *mbdb != NULL) + { +-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 ++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)) + ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660); + #else + ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660); +--- a/utils/dbconverter-2.c ++++ b/utils/dbconverter-2.c +@@ -214,7 +214,7 @@ static int berkeleydb_open(const char *p + ret = db_create(mbdb, NULL, 0); + if (ret == 0 && *mbdb != NULL) + { +-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 ++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)) + ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664); + #else + ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664); diff --git a/testing/cyrus-sasl/0030-dont_use_la_files_for_opening_plugins.patch b/testing/cyrus-sasl/0030-dont_use_la_files_for_opening_plugins.patch new file mode 100644 index 000000000..14a322496 --- /dev/null +++ b/testing/cyrus-sasl/0030-dont_use_la_files_for_opening_plugins.patch @@ -0,0 +1,134 @@ +--- a/lib/dlopen.c ++++ b/lib/dlopen.c +@@ -247,105 +247,6 @@ static int _sasl_plugin_load(char *plugi + return result; + } + +-/* this returns the file to actually open. +- * out should be a buffer of size PATH_MAX +- * and may be the same as in. */ +- +-/* We'll use a static buffer for speed unless someone complains */ +-#define MAX_LINE 2048 +- +-static int _parse_la(const char *prefix, const char *in, char *out) +-{ +- FILE *file; +- size_t length; +- char line[MAX_LINE]; +- char *ntmp = NULL; +- +- if(!in || !out || !prefix || out == in) return SASL_BADPARAM; +- +- /* Set this so we can detect failure */ +- *out = '\0'; +- +- length = strlen(in); +- +- if (strcmp(in + (length - strlen(LA_SUFFIX)), LA_SUFFIX)) { +- if(!strcmp(in + (length - strlen(SO_SUFFIX)),SO_SUFFIX)) { +- /* check for a .la file */ +- strcpy(line, prefix); +- strcat(line, in); +- length = strlen(line); +- *(line + (length - strlen(SO_SUFFIX))) = '\0'; +- strcat(line, LA_SUFFIX); +- file = fopen(line, "r"); +- if(file) { +- /* We'll get it on the .la open */ +- fclose(file); +- return SASL_FAIL; +- } +- } +- strcpy(out, prefix); +- strcat(out, in); +- return SASL_OK; +- } +- +- strcpy(line, prefix); +- strcat(line, in); +- +- file = fopen(line, "r"); +- if(!file) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "unable to open LA file: %s", line); +- return SASL_FAIL; +- } +- +- while(!feof(file)) { +- if(!fgets(line, MAX_LINE, file)) break; +- if(line[strlen(line) - 1] != '\n') { +- _sasl_log(NULL, SASL_LOG_WARN, +- "LA file has too long of a line: %s", in); +- return SASL_BUFOVER; +- } +- if(line[0] == '\n' || line[0] == '#') continue; +- if(!strncmp(line, "dlname=", sizeof("dlname=") - 1)) { +- /* We found the line with the name in it */ +- char *end; +- char *start; +- size_t len; +- end = strrchr(line, '\''); +- if(!end) continue; +- start = &line[sizeof("dlname=")-1]; +- len = strlen(start); +- if(len > 3 && start[0] == '\'') { +- ntmp=&start[1]; +- *end='\0'; +- /* Do we have dlname="" ? */ +- if(ntmp == end) { +- _sasl_log(NULL, SASL_LOG_DEBUG, +- "dlname is empty in .la file: %s", in); +- return SASL_FAIL; +- } +- strcpy(out, prefix); +- strcat(out, ntmp); +- } +- break; +- } +- } +- if(ferror(file) || feof(file)) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "Error reading .la: %s\n", in); +- fclose(file); +- return SASL_FAIL; +- } +- fclose(file); +- +- if(!(*out)) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "Could not find a dlname line in .la file: %s", in); +- return SASL_FAIL; +- } +- +- return SASL_OK; +-} + #endif /* DO_DLOPEN */ + + /* loads a plugin library */ +@@ -499,18 +400,18 @@ int _sasl_load_plugins(const add_plugin_ + if (length + pos>=PATH_MAX) continue; /* too big */ + + if (strcmp(dir->d_name + (length - strlen(SO_SUFFIX)), +- SO_SUFFIX) +- && strcmp(dir->d_name + (length - strlen(LA_SUFFIX)), +- LA_SUFFIX)) ++ SO_SUFFIX)) + continue; + ++ /* We only use .so files for loading plugins */ ++ + memcpy(name,dir->d_name,length); + name[length]='\0'; + +- result = _parse_la(prefix, name, tmp); +- if(result != SASL_OK) +- continue; +- ++ /* Create full name with path */ ++ strncpy(tmp, prefix, PATH_MAX); ++ strncat(tmp, name, PATH_MAX); ++ + /* skip "lib" and cut off suffix -- + this only need be approximate */ + strcpy(plugname, name + 3); diff --git a/testing/cyrus-sasl/PKGBUILD b/testing/cyrus-sasl/PKGBUILD new file mode 100644 index 000000000..f4d80b6a6 --- /dev/null +++ b/testing/cyrus-sasl/PKGBUILD @@ -0,0 +1,203 @@ +# $Id: PKGBUILD 134446 2011-08-03 20:43:28Z jgc $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +# This package spans multiple repositories. +# Always build from cyrus-sasl/trunk and merge changes to libsasl/trunk. + +pkgbase=('cyrus-sasl') +pkgname=('cyrus-sasl' 'cyrus-sasl-gssapi' 'cyrus-sasl-ldap' 'cyrus-sasl-sql') +#pkgname=libsasl +pkgver=2.1.23 +pkgrel=7 +pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" +arch=('i686' 'x86_64') +url="http://cyrusimap.web.cmu.edu/downloads.html#sasl" +license=('custom') +options=('!makeflags' '!libtool') +makedepends=('postgresql-libs' 'libmysqlclient' 'libldap' 'krb5' 'openssl') +source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-${pkgver}.tar.gz + cyrus-sasl-2.1.19-checkpw.c.patch + cyrus-sasl-2.1.22-crypt.patch + cyrus-sasl-2.1.22-qa.patch + cyrus-sasl-2.1.22-automake-1.10.patch + cyrus-sasl-2.1.23-authd-fix.patch + 0003_saslauthd_mdoc.patch + 0010_maintainer_mode.patch + 0011_saslauthd_ac_prog_libtool.patch + 0012_xopen_crypt_prototype.patch + 0016_pid_file_lock_creation_mask.patch + 0018_auth_rimap_quotes.patch + 0019_ldap_deprecated.patch + 0022_gcc4.4_preprocessor_syntax.patch + 0025_ld_as_needed.patch + 0026_drop_krb5support_dependency.patch + 0027_db5_support.patch + 0030-dont_use_la_files_for_opening_plugins.patch + saslauthd.conf.d + saslauthd) +md5sums=('2eb0e48106f0e9cd8001e654f267ecbc' + 'e27ddff076342e7a3041c4759817d04b' + 'd7e6886e88af04d05f3dec7f0a59ccf7' + '79b8a5e8689989e2afd4b7bda595a7b1' + 'f4131b077ddb5240b375d749162f1b7a' + 'c7ad2c70c1ef814eb4b119f316c064f2' + 'caeeac3feba19cbbd36e7345cc805600' + 'f45d8b60e8f74dd7f7c2ec1665fa602a' + '9d93880514cb5ff5da969f1ceb64a661' + 'dfdc052a7e678db9f687482c5d52f34e' + '4a09f6b24b91f8450892a78e378860da' + '213abe7c5dfe0d7f446992787da1e780' + '5a0321177ad30cb5518c8b6812e3961a' + '0c965748970eea29fa295524821d43f0' + '62bf892fe4d1df41ff748e91a1afaf67' + 'b7848957357e7c02d6490102be496bf9' + 'd86a5aa2e3b5b7c1bad6f8b548b7ea36' + '8e7106f32e495e9ade69014fd1b3352a' + '49219af5641150edec288a3fdb65e7c1' + '75542f613185d5a90520ad0d7d926a20') + +build() { + cd "${srcdir}/cyrus-sasl-${pkgver}" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.19-checkpw.c.patch" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-crypt.patch" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-qa.patch" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-automake-1.10.patch" + patch -Np0 -i "${srcdir}/cyrus-sasl-2.1.23-authd-fix.patch" + patch -Np1 -i "${srcdir}/0003_saslauthd_mdoc.patch" + patch -Np1 -i "${srcdir}/0010_maintainer_mode.patch" + patch -Np1 -i "${srcdir}/0011_saslauthd_ac_prog_libtool.patch" + patch -Np1 -i "${srcdir}/0012_xopen_crypt_prototype.patch" + patch -Np1 -i "${srcdir}/0016_pid_file_lock_creation_mask.patch" + patch -Np1 -i "${srcdir}/0018_auth_rimap_quotes.patch" + patch -Np1 -i "${srcdir}/0019_ldap_deprecated.patch" + patch -Np1 -i "${srcdir}/0022_gcc4.4_preprocessor_syntax.patch" + patch -Np1 -i "${srcdir}/0025_ld_as_needed.patch" + patch -Np1 -i "${srcdir}/0026_drop_krb5support_dependency.patch" + patch -Np1 -i "${srcdir}/0027_db5_support.patch" + patch -Np1 -i "${srcdir}/0030-dont_use_la_files_for_opening_plugins.patch" + + rm -f config/config.guess config/config.sub + rm -f config/ltconfig config/ltmain.sh config/libtool.m4 + rm -fr autom4te.cache + libtoolize -c + aclocal -I config -I cmulocal + automake -a -c + autoheader + autoconf + + pushd saslauthd + rm -f config/config.guess config/config.sub + rm -f config/ltconfig config/ltmain.sh config/libtool.m4 + rm -fr autom4te.cache + libtoolize -c + aclocal -I config -I ../cmulocal -I ../config + automake -a -c + autoheader + autoconf + popd + + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --disable-static \ + --enable-shared \ + --enable-alwaystrue \ + --enable-checkapop \ + --enable-cram \ + --enable-digest \ + --disable-otp \ + --disable-srp \ + --disable-srp-setpass \ + --disable-krb4 \ + --enable-gssapi \ + --enable-auth-sasldb \ + --enable-plain \ + --enable-anon \ + --enable-login \ + --enable-ntlm \ + --disable-passdss \ + --enable-sql \ + --enable-ldapdb \ + --disable-macos-framework \ + --with-pam \ + --with-saslauthd=/var/run/saslauthd \ + --with-ldap \ + --with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \ + --sysconfdir=/etc \ + --with-devrandom=/dev/urandom + make +} + +package_libsasl() { + pkgdesc="Cyrus Simple Authentication Service Layer (SASL) Library" + depends=('openssl') + provides=('cyrus-sasl-plugins') + conflicts=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}" + for dir in include lib sasldb plugins utils; do + pushd ${dir} + make DESTDIR="${pkgdir}" install + popd + done + rm -f "${pkgdir}"/usr/lib/sasl2/libsql.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libgssapiv2.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libldapdb.so* + install -m755 -d "${pkgdir}/usr/share/licenses/libsasl" + install -m644 COPYING "${pkgdir}/usr/share/licenses/libsasl/" +} + +package_cyrus-sasl() { + depends=("libsasl=${pkgver}-${pkgrel}") + pkgdesc="Cyrus saslauthd SASL authentication daemon" + backup=('etc/conf.d/saslauthd') + + cd "${srcdir}/cyrus-sasl-${pkgver}/saslauthd" + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/etc/rc.d" + install -m755 -d "${pkgdir}/etc/conf.d" + install -m755 "${srcdir}/saslauthd" "${pkgdir}/etc/rc.d/" + install -m644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl/" +} + +package_cyrus-sasl-gssapi() { + pkgdesc="GSSAPI authentication mechanism for Cyrus SASL" + depends=("libsasl=${pkgver}-${pkgrel}" 'krb5') + replaces=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}/plugins" + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libgssapiv2.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi/" +} + +package_cyrus-sasl-ldap() { + pkgdesc="ldapdb auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}-${pkgrel}" 'libldap') + replaces=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}/plugins" + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libldapdb.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap/" +} + +package_cyrus-sasl-sql() { + pkgdesc="SQL auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}-${pkgrel}" 'postgresql-libs' 'libmysqlclient') + replaces=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}/plugins" + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libsql.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-sql" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-sql/" +} diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.19-checkpw.c.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.19-checkpw.c.patch new file mode 100644 index 000000000..f7bf44b79 --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.19-checkpw.c.patch @@ -0,0 +1,170 @@ +diff -ur ../cyrus-sasl-2.1.19.orig/lib/Makefile.in ./lib/Makefile.in +--- ../cyrus-sasl-2.1.19.orig/lib/Makefile.in 2004-07-02 21:40:15.000000000 +0200 ++++ ./lib/Makefile.in 2004-09-07 13:21:22.746680576 +0200 +@@ -120,7 +120,7 @@ + JAVA_TRUE = @JAVA_TRUE@ + LDFLAGS = @LDFLAGS@ + LIBOBJS = @LIBOBJS@ +-LIBS = @LIBS@ ++LIBS = -lcrypt @LIBS@ + LIBTOOL = @LIBTOOL@ + LIB_CRYPT = @LIB_CRYPT@ + LIB_DES = @LIB_DES@ +diff -ur ../cyrus-sasl-2.1.19.orig/lib/checkpw.c ./lib/checkpw.c +--- ../cyrus-sasl-2.1.19.orig/lib/checkpw.c 2004-03-17 14:58:13.000000000 +0100 ++++ ./lib/checkpw.c 2004-09-07 13:21:12.645916147 +0200 +@@ -94,6 +94,23 @@ + # endif + #endif + ++/****************************** ++ * crypt(3) patch start * ++ ******************************/ ++char *crypt(const char *key, const char *salt); ++ ++/* cleartext password formats */ ++#define PASSWORD_FORMAT_CLEARTEXT 1 ++#define PASSWORD_FORMAT_CRYPT 2 ++#define PASSWORD_FORMAT_CRYPTTRAD 3 ++#define PASSWORD_SALT_BUF_LEN 22 ++ ++/* weeds out crypt(3) password's salt */ ++int _sasl_get_salt (char *dest, char *src, int format); ++ ++/****************************** ++ * crypt(3) patch stop * ++ ******************************/ + + /* we store the following secret to check plaintext passwords: + * +@@ -143,7 +160,51 @@ + "*cmusaslsecretPLAIN", + NULL }; + struct propval auxprop_values[3]; +- ++ ++ /****************************** ++ * crypt(3) patch start * ++ * for password format check * ++ ******************************/ ++ sasl_getopt_t *getopt; ++ void *context; ++ const char *p = NULL; ++ /** ++ * MD5: 12 char salt ++ * BLOWFISH: 16 char salt ++ */ ++ char salt[PASSWORD_SALT_BUF_LEN]; ++ int password_format; ++ ++ /* get password format from auxprop configuration */ ++ if (_sasl_getcallback(conn, SASL_CB_GETOPT, &getopt, &context) == SASL_OK) { ++ getopt(context, NULL, "password_format", &p, NULL); ++ } ++ ++ /* set password format */ ++ if (p) { ++ /* ++ memset(pass_format_str, '\0', PASSWORD_FORMAT_STR_LEN); ++ strncpy(pass_format_str, p, (PASSWORD_FORMAT_STR_LEN - 1)); ++ */ ++ /* modern, modular crypt(3) */ ++ if (strncmp(p, "crypt", 11) == 0) ++ password_format = PASSWORD_FORMAT_CRYPT; ++ /* traditional crypt(3) */ ++ else if (strncmp(p, "crypt_trad", 11) == 0) ++ password_format = PASSWORD_FORMAT_CRYPTTRAD; ++ /* cleartext password */ ++ else ++ password_format = PASSWORD_FORMAT_CLEARTEXT; ++ } else { ++ /* cleartext password */ ++ password_format = PASSWORD_FORMAT_CLEARTEXT; ++ } ++ ++ /****************************** ++ * crypt(3) patch stop * ++ * for password format check * ++ ******************************/ ++ + if (!conn || !userstr) + return SASL_BADPARAM; + +@@ -180,14 +241,31 @@ + goto done; + } + +- /* At the point this has been called, the username has been canonified +- * and we've done the auxprop lookup. This should be easy. */ +- if(auxprop_values[0].name +- && auxprop_values[0].values +- && auxprop_values[0].values[0] +- && !strcmp(auxprop_values[0].values[0], passwd)) { +- /* We have a plaintext version and it matched! */ +- return SASL_OK; ++ ++ /****************************** ++ * crypt(3) patch start * ++ ******************************/ ++ ++ /* get salt */ ++ _sasl_get_salt(salt, (char *) auxprop_values[0].values[0], password_format); ++ ++ /* crypt(3)-ed password? */ ++ if (password_format != PASSWORD_FORMAT_CLEARTEXT) { ++ /* compare password */ ++ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(crypt(passwd, salt), auxprop_values[0].values[0]) == 0) ++ return SASL_OK; ++ else ++ ret = SASL_BADAUTH; ++ } ++ else if (password_format == PASSWORD_FORMAT_CLEARTEXT) { ++ /* compare passwords */ ++ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(auxprop_values[0].values[0], passwd) == 0) ++ return SASL_OK; ++ else ++ ret = SASL_BADAUTH; ++ /****************************** ++ * crypt(3) patch stop * ++ ******************************/ + } else if(auxprop_values[1].name + && auxprop_values[1].values + && auxprop_values[1].values[0]) { +@@ -975,3 +1053,37 @@ + #endif + { NULL, NULL } + }; ++ ++/* weeds out crypt(3) password's salt */ ++int _sasl_get_salt (char *dest, char *src, int format) { ++ int num; /* how many characters is salt long? */ ++ switch (format) { ++ case PASSWORD_FORMAT_CRYPT: ++ /* md5 crypt */ ++ if (src[1] == '1') ++ num = 12; ++ /* blowfish crypt */ ++ else if (src[1] == '2') ++ num = (src[1] == '2' && src[2] == 'a') ? 17 : 16; ++ /* traditional crypt */ ++ else ++ num = 2; ++ break; ++ ++ case PASSWORD_FORMAT_CRYPTTRAD: ++ num = 2; ++ break; ++ ++ default: ++ return 1; ++ } ++ ++ /* destroy destination */ ++ memset(dest, '\0', (num + 1)); ++ ++ /* copy salt to destination */ ++ strncpy(dest, src, num); ++ ++ return 1; ++} ++ diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.22-as-needed.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.22-as-needed.patch new file mode 100644 index 000000000..1294cb507 --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.22-as-needed.patch @@ -0,0 +1,11 @@ +--- saslauthd/configure.in.orig 2006-05-23 15:53:17.000000000 -0700 ++++ saslauthd/configure.in 2006-05-23 15:53:33.000000000 -0700 +@@ -77,7 +77,7 @@ + AC_DEFINE(AUTH_SASLDB,[],[Include SASLdb Support]) + SASL_DB_PATH_CHECK() + SASL_DB_CHECK() +- SASL_DB_LIB="$SASL_DB_LIB ../sasldb/.libs/libsasldb.al" ++ SASL_DB_LIB="../sasldb/.libs/libsasldb.a $SASL_DB_LIB" + fi + + AC_ARG_ENABLE(httpform, [ --enable-httpform enable HTTP form authentication [[no]] ], diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.22-automake-1.10.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.22-automake-1.10.patch new file mode 100644 index 000000000..8cd71c0c5 --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.22-automake-1.10.patch @@ -0,0 +1,94 @@ +Re-merged patch by Robert Scheck <redhat@linuxnetz.de> for cyrus-sasl >= 2.1.22, which was +originally written by Jacek Konieczny <jajcus@pld-linux.org> and makes cyrus-sasl building +using automake 1.10. + +--- cyrus-sasl-2.1.22/plugins/Makefile.am 2006-05-17 18:46:16.000000000 +0200 ++++ cyrus-sasl-2.1.22/plugins/Makefile.am.am110 2007-02-16 15:42:07.000000000 +0100 +@@ -82,73 +82,73 @@ + libntlm.la libpassdss.la libsasldb.la libsql.la libldapdb.la + + libplain_la_SOURCES = plain.c plain_init.c $(common_sources) +-libplain_la_LDFLAGS = -version-info $(plain_version) ++libplain_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(plain_version) + libplain_la_DEPENDENCIES = $(COMPAT_OBJS) + libplain_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) + + libanonymous_la_SOURCES = anonymous.c anonymous_init.c $(common_sources) +-libanonymous_la_LDFLAGS = -version-info $(anonymous_version) ++libanonymous_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(anonymous_version) + libanonymous_la_DEPENDENCIES = $(COMPAT_OBJS) + libanonymous_la_LIBADD = $(COMPAT_OBJS) + + libkerberos4_la_SOURCES = kerberos4.c kerberos4_init.c $(common_sources) +-libkerberos4_la_LDFLAGS = -version-info $(kerberos4_version) ++libkerberos4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(kerberos4_version) + libkerberos4_la_DEPENDENCIES = $(COMPAT_OBJS) + libkerberos4_la_LIBADD = $(SASL_KRB_LIB) $(LIB_SOCKET) $(COMPAT_OBJS) + + libgssapiv2_la_SOURCES = gssapi.c gssapiv2_init.c $(common_sources) +-libgssapiv2_la_LDFLAGS = -version-info $(gssapiv2_version) ++libgssapiv2_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(gssapiv2_version) + libgssapiv2_la_DEPENDENCIES = $(COMPAT_OBJS) + libgssapiv2_la_LIBADD = $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(LIB_SOCKET) $(COMPAT_OBJS) + + libcrammd5_la_SOURCES = cram.c crammd5_init.c $(common_sources) +-libcrammd5_la_LDFLAGS = -version-info $(crammd5_version) ++libcrammd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(crammd5_version) + libcrammd5_la_DEPENDENCIES = $(COMPAT_OBJS) + libcrammd5_la_LIBADD = $(COMPAT_OBJS) + + libdigestmd5_la_SOURCES = digestmd5.c digestmd5_init.c $(common_sources) +-libdigestmd5_la_LDFLAGS = -version-info $(digestmd5_version) ++libdigestmd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(digestmd5_version) + libdigestmd5_la_DEPENDENCIES = $(COMPAT_OBJS) + libdigestmd5_la_LIBADD = $(LIB_DES) $(LIB_SOCKET) $(COMPAT_OBJS) + + liblogin_la_SOURCES = login.c login_init.c $(common_sources) +-liblogin_la_LDFLAGS = -version-info $(login_version) ++liblogin_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(login_version) + liblogin_la_DEPENDENCIES = $(COMPAT_OBJS) + liblogin_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) + + libsrp_la_SOURCES = srp.c srp_init.c $(common_sources) +-libsrp_la_LDFLAGS = -version-info $(srp_version) ++libsrp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(srp_version) + libsrp_la_DEPENDENCIES = $(COMPAT_OBJS) + libsrp_la_LIBADD = $(SRP_LIBS) $(COMPAT_OBJS) + + libotp_la_SOURCES = otp.c otp_init.c otp.h $(common_sources) +-libotp_la_LDFLAGS = -version-info $(otp_version) ++libotp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(otp_version) + libotp_la_DEPENDENCIES = $(COMPAT_OBJS) + libotp_la_LIBADD = $(OTP_LIBS) $(COMPAT_OBJS) + + libntlm_la_SOURCES = ntlm.c ntlm_init.c $(common_sources) +-libntlm_la_LDFLAGS = -version-info $(ntlm_version) ++libntlm_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(ntlm_version) + libntlm_la_DEPENDENCIES = $(COMPAT_OBJS) + libntlm_la_LIBADD = $(NTLM_LIBS) $(COMPAT_OBJS) + + libpassdss_la_SOURCES = passdss.c passdss_init.c $(common_sources) +-libpassdss_la_LDFLAGS = -version-info $(passdss_version) ++libpassdss_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(passdss_version) + libpassdss_la_DEPENDENCIES = $(COMPAT_OBJS) + libpassdss_la_LIBADD = $(PASSDSS_LIBS) $(COMPAT_OBJS) + + # Auxprop Plugins + libsasldb_la_SOURCES = sasldb.c sasldb_init.c $(common_sources) +-libsasldb_la_LDFLAGS = -version-info $(sasldb_version) ++libsasldb_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(sasldb_version) + libsasldb_la_DEPENDENCIES = $(COMPAT_OBJS) + libsasldb_la_LIBADD = ../sasldb/libsasldb.la $(SASL_DB_LIB) $(COMPAT_OBJS) + + libldapdb_la_SOURCES = ldapdb.c ldapdb_init.c $(common_sources) +-libldapdb_la_LDFLAGS = $(LIB_LDAP) -version-info $(ldapdb_version) ++libldapdb_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_LDAP) -version-info $(ldapdb_version) + libldapdb_la_DEPENDENCIES = $(COMPAT_OBJS) + libldapdb_la_LIBADD = $(COMPAT_OBJS) + + libsql_la_SOURCES = sql.c sql_init.c $(common_sources) +-libsql_la_LDFLAGS = $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version) ++libsql_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version) + libsql_la_DEPENDENCIES = $(COMPAT_OBJS) + libsql_la_LIBADD = $(COMPAT_OBJS) + diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.22-crypt.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.22-crypt.patch new file mode 100644 index 000000000..fd356327b --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.22-crypt.patch @@ -0,0 +1,71 @@ +http://bugs.gentoo.org/152544 + +--- cyrus-sasl-2.1.22/lib/Makefile.am ++++ cyrus-sasl-2.1.22/lib/Makefile.am +@@ -45,6 +45,7 @@ sasl_version = 2:22:0 + + INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb + ++AM_CFLAGS = -fPIC + EXTRA_DIST = windlopen.c staticopen.h NTMakefile + EXTRA_LIBRARIES = libsasl2.a + noinst_LIBRARIES = @SASL_STATIC_LIBS@ +--- cyrus-sasl-2.1.22/plugins/Makefile.am ++++ cyrus-sasl-2.1.22/plugins/Makefile.am +@@ -63,6 +63,7 @@ srp_version = 2:22:0 + + INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/lib -I$(top_srcdir)/sasldb -I$(top_builddir)/include + AM_LDFLAGS = -module -export-dynamic -rpath $(plugindir) ++AM_CFLAGS = -fPIC + + COMPAT_OBJS = @LTGETADDRINFOOBJS@ @LTGETNAMEINFOOBJS@ @LTSNPRINTFOBJS@ + +--- cyrus-sasl-2.1.22/sasldb/Makefile.am ++++ cyrus-sasl-2.1.22/sasldb/Makefile.am +@@ -48,6 +48,7 @@ INCLUDES=-I$(top_srcdir)/include -I$(top + + extra_common_sources = db_none.c db_ndbm.c db_gdbm.c db_berkeley.c + ++AM_CFLAGS = -fPIC + EXTRA_DIST = NTMakefile + + noinst_LTLIBRARIES = libsasldb.la +--- cyrus-sasl-2.1.22/utils/Makefile.am ++++ cyrus-sasl-2.1.22/utils/Makefile.am +@@ -42,7 +42,7 @@ + # + ################################################################ + +-all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET) ++all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET) $(LIB_CRYPT) + all_sasl_static_libs = ../lib/.libs/libsasl2.a $(SASL_DB_LIB) $(LIB_SOCKET) $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(SASL_KRB_LIB) $(LIB_DES) $(PLAIN_LIBS) $(SRP_LIBS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) + + sbin_PROGRAMS = @SASL_DB_UTILS@ @SMTPTEST_PROGRAM@ pluginviewer +--- cyrus-sasl-2.1.22/sample/Makefile.am ++++ cyrus-sasl-2.1.22/sample/Makefile.am +@@ -54,10 +54,10 @@ sample_server_SOURCES = sample-server.c + server_SOURCES = server.c common.c common.h + client_SOURCES = client.c common.c common.h + +-server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) +-client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) ++server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) ++client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) + +-sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) +-sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) ++sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) ++sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) + + EXTRA_DIST = NTMakefile +--- cyrus-sasl-2.1.22/lib/Makefile.am ++++ cyrus-sasl-2.1.22/lib/Makefile.am +@@ -63,7 +63,7 @@ lib_LTLIBRARIES = libsasl2.la + libsasl2_la_SOURCES = $(common_sources) $(common_headers) + libsasl2_la_LDFLAGS = -version-info $(sasl_version) + libsasl2_la_DEPENDENCIES = $(LTLIBOBJS) +-libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR) ++libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR) $(LIB_CRYPT) + + if MACOSX + framedir = /Library/Frameworks/SASL2.framework diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.22-qa.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.22-qa.patch new file mode 100644 index 000000000..4f7b04f13 --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.22-qa.patch @@ -0,0 +1,22 @@ +fix missing prototype warnings + +--- cyrus-sasl-2.1.22/lib/auxprop.c ++++ cyrus-sasl-2.1.22/lib/auxprop.c +@@ -43,6 +43,7 @@ + */ + + #include <config.h> ++#include <stdio.h> + #include <sasl.h> + #include <prop.h> + #include <ctype.h> +--- cyrus-sasl-2.1.22/pwcheck/pwcheck_getspnam.c ++++ cyrus-sasl-2.1.22/pwcheck/pwcheck_getspnam.c +@@ -24,6 +24,7 @@ OF OR IN CONNECTION WITH THE USE OR PERF + ******************************************************************/ + + #include <shadow.h> ++#include <string.h> + + extern char *crypt(); + diff --git a/testing/cyrus-sasl/cyrus-sasl-2.1.23-authd-fix.patch b/testing/cyrus-sasl/cyrus-sasl-2.1.23-authd-fix.patch new file mode 100644 index 000000000..f5f372d17 --- /dev/null +++ b/testing/cyrus-sasl/cyrus-sasl-2.1.23-authd-fix.patch @@ -0,0 +1,28 @@ +fix warnings: + +auth_sasldb.c: In function ‘auth_sasldb’: +auth_sasldb.c:144: warning: implicit declaration of function ‘gethostname’ + +auth_sasldb.c:153: warning: passing argument 8 of ‘_sasldb_getdata’ from incompatible pointer type +../sasldb/sasldb.h:60: note: expected ‘size_t *’ but argument is of type ‘int *’ + +--- saslauthd/auth_sasldb.c ++++ saslauthd/auth_sasldb.c +@@ -41,6 +41,7 @@ + #include <string.h> + #include <stdlib.h> + #include <pwd.h> ++#include <unistd.h> + /* END PUBLIC DEPENDENCIES */ + + #define RETURN(x) return strdup(x) +@@ -131,7 +132,8 @@ + /* VARIABLES */ + char pw[1024]; /* pointer to passwd file entry */ + sasl_utils_t utils; +- int ret, outsize; ++ int ret; ++ size_t outsize; + const char *use_realm; + char realm_buf[MAXHOSTNAMELEN]; + /* END VARIABLES */ diff --git a/testing/cyrus-sasl/saslauthd b/testing/cyrus-sasl/saslauthd new file mode 100644 index 000000000..6afafae0b --- /dev/null +++ b/testing/cyrus-sasl/saslauthd @@ -0,0 +1,49 @@ +#!/bin/bash + +# source application-specific settings +[ -f /etc/conf.d/saslauthd ] && . /etc/conf.d/saslauthd + +. /etc/rc.conf +. /etc/rc.d/functions + +DAEMON_NAME="saslauthd" +SASLAUTHD_BIN=/usr/sbin/saslauthd +SASLAUTHD_RUN=/var/run/saslauthd +SASLAUTHD_PID=$SASLAUTHD_RUN/saslauthd.pid + +case "$1" in + start) + stat_busy "Starting $DAEMON_NAME" + [ ! -d /var/run/saslauthd ] && install -d /var/run/saslauthd + if $SASLAUTHD_BIN $SASLAUTHD_OPTS >/dev/null; then + add_daemon $DAEMON_NAME + stat_done + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $DAEMON_NAME" + [ -f $SASLAUTHD_PID ] && kill `cat $SASLAUTHD_PID` &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm_daemon $DAEMON_NAME + stat_done + fi + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 +# vim: ts=2 sw=2 et ft=sh diff --git a/testing/cyrus-sasl/saslauthd.conf.d b/testing/cyrus-sasl/saslauthd.conf.d new file mode 100644 index 000000000..167211290 --- /dev/null +++ b/testing/cyrus-sasl/saslauthd.conf.d @@ -0,0 +1 @@ +SASLAUTHD_OPTS="-a pam" diff --git a/testing/dbus-core/PKGBUILD b/testing/dbus-core/PKGBUILD new file mode 100644 index 000000000..50c3d0110 --- /dev/null +++ b/testing/dbus-core/PKGBUILD @@ -0,0 +1,57 @@ +# $Id: PKGBUILD 134377 2011-08-03 11:19:59Z ibiru $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Link Dupont <link@subpop.net> +# +pkgname=dbus-core +pkgver=1.4.14 +pkgrel=1 +pkgdesc="Freedesktop.org message bus system" +url="http://www.freedesktop.org/Software/dbus" +arch=(i686 x86_64) +license=('GPL' 'custom') +depends=('expat>=2.0.1' 'coreutils' 'filesystem') +makedepends=('libx11') +conflicts=('dbus<1.2.3-2') +options=(!libtool) +install=dbus.install +source=(http://dbus.freedesktop.org/releases/dbus/dbus-${pkgver}.tar.gz + dbus) +md5sums=('ae6de2562a57516cfabaf56903375ba9' + '08f93dd19cffd1b45ab05c1fd4efb560') + +build() { + cd "${srcdir}/dbus-${pkgver}" + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --libexecdir=/usr/lib/dbus-1.0 --with-dbus-user=81 \ + --with-system-pid-file=/var/run/dbus.pid \ + --enable-inotify --disable-dnotify \ + --disable-verbose-mode --disable-static \ + --disable-tests --disable-asserts \ + --with-systemdsystemunitdir=/lib/systemd/system + make +} + +package(){ + cd "${srcdir}/dbus-${pkgver}" + make DESTDIR="${pkgdir}" install + + rm -f "${pkgdir}/usr/bin/dbus-launch" + rm -f "${pkgdir}/usr/share/man/man1/dbus-launch.1" + + chown 81:81 "${pkgdir}/var/run/dbus" + + install -m755 -d "${pkgdir}/etc/rc.d" + install -m755 "${srcdir}/dbus" "${pkgdir}/etc/rc.d/" + + #Fix configuration file + sed -i -e 's|<user>81</user>|<user>dbus</user>|' "${pkgdir}/etc/dbus-1/system.conf" + + #install .keep files so pacman doesn't delete empty dirs + touch "${pkgdir}/usr/share/dbus-1/services/.keep" + touch "${pkgdir}/usr/share/dbus-1/system-services/.keep" + touch "${pkgdir}/etc/dbus-1/session.d/.keep" + touch "${pkgdir}/etc/dbus-1/system.d/.keep" + + install -d -m755 "${pkgdir}/usr/share/licenses/dbus-core" + install -m644 COPYING "${pkgdir}/usr/share/licenses/dbus-core/" +} diff --git a/testing/dbus-core/dbus b/testing/dbus-core/dbus new file mode 100644 index 000000000..66b84cae0 --- /dev/null +++ b/testing/dbus-core/dbus @@ -0,0 +1,57 @@ +#!/bin/bash + +# general config +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Starting D-BUS system messagebus" + if [ ! -x /var/run/dbus ] ; then + install -m755 -g 81 -o 81 -d /var/run/dbus + fi + if [ -x /usr/bin/dbus-uuidgen ] ; then + /usr/bin/dbus-uuidgen --ensure + fi + + /usr/bin/dbus-daemon --system + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon dbus + stat_done + fi + ;; + stop) + stat_busy "Stopping D-BUS system messagebus" + [ -f /var/run/dbus.pid ] && kill `cat /var/run/dbus.pid` >/dev/null 2>&1 + if [ $? -gt 0 ]; then + stat_fail + else + rm -f /var/run/dbus.pid + rm_daemon dbus + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + reload) + stat_busy "Reloading D-BUS configuration" + [ -f /var/run/dbus.pid ] && /usr/bin/dbus-send \ + --system --type=method_call \ + --dest=org.freedesktop.DBus \ + / org.freedesktop.DBus.ReloadConfig + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + ;; + *) + echo "usage: $0 {start|stop|restart|reload}" + ;; +esac +exit 0 diff --git a/testing/dbus-core/dbus.install b/testing/dbus-core/dbus.install new file mode 100644 index 000000000..44f4475ee --- /dev/null +++ b/testing/dbus-core/dbus.install @@ -0,0 +1,24 @@ +post_install() { + getent group dbus >/dev/null || usr/sbin/groupadd -g 81 dbus + getent passwd dbus >/dev/null || usr/sbin/useradd -c 'System message bus' -u 81 -g dbus -d '/' -s /bin/false dbus + usr/bin/passwd -l dbus &>/dev/null + dbus-uuidgen --ensure +} + +post_upgrade() { + post_install + + #Make sure new rc script can shutdown running dbus + if [ -f var/run/dbus/pid ]; then + mv var/run/dbus/pid var/run/dbus.pid + fi +} + +post_remove() { + if getent passwd dbus >/dev/null; then + usr/sbin/userdel dbus + fi + if getent group dbus >/dev/null; then + usr/sbin/groupdel dbus + fi +} diff --git a/testing/dbus/30-dbus b/testing/dbus/30-dbus new file mode 100644 index 000000000..603e92d3e --- /dev/null +++ b/testing/dbus/30-dbus @@ -0,0 +1,9 @@ +#!/bin/bash + +# launches a session dbus instance + +dbuslaunch="`which dbus-launch 2>/dev/null`" +if [ -n "$dbuslaunch" ] && [ -x "$dbuslaunch" ] && [ -z "$DBUS_SESSION_BUS_ADDRESS" ]; then + eval `$dbuslaunch --sh-syntax --exit-with-session` +fi + diff --git a/testing/dbus/PKGBUILD b/testing/dbus/PKGBUILD new file mode 100644 index 000000000..6def02fe7 --- /dev/null +++ b/testing/dbus/PKGBUILD @@ -0,0 +1,41 @@ +# $Id: PKGBUILD 134376 2011-08-03 11:19:50Z ibiru $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Link Dupont <link@subpop.net> +# +pkgname=dbus +pkgver=1.4.14 +pkgrel=1 +pkgdesc="Freedesktop.org message bus system" +url="http://www.freedesktop.org/Software/dbus" +arch=(i686 x86_64) +license=('GPL' 'custom') +depends=("dbus-core>=${pkgver}" 'libx11') +source=(http://dbus.freedesktop.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz + 30-dbus) +md5sums=('ae6de2562a57516cfabaf56903375ba9' + 'd14e59575f04e55d21a04907b6fd9f3c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ECHO="echo" ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ + --libexecdir=/usr/lib/dbus-1.0 --with-dbus-user=81 \ + --with-system-pid-file=/var/run/dbus.pid \ + --disable-verbose-mode --disable-static \ + --enable-inotify --disable-dnotify \ + --disable-tests --disable-asserts + make -C tools dbus-launch +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + install -m755 -d "${pkgdir}/usr/bin" + install -m755 -d "${pkgdir}/usr/share/man/man1" + install -m755 tools/dbus-launch "${pkgdir}/usr/bin/" + install -m644 doc/dbus-launch.1 "${pkgdir}/usr/share/man/man1/" + + install -m755 -d "${pkgdir}/etc/X11/xinit/xinitrc.d" + install -m755 "${srcdir}/30-dbus" "${pkgdir}/etc/X11/xinit/xinitrc.d/" + + install -d -m755 "${pkgdir}/usr/share/licenses/dbus" + install -m644 COPYING "${pkgdir}/usr/share/licenses/dbus/" +} diff --git a/testing/libsasl/0003_saslauthd_mdoc.patch b/testing/libsasl/0003_saslauthd_mdoc.patch new file mode 100644 index 000000000..694f4bb67 --- /dev/null +++ b/testing/libsasl/0003_saslauthd_mdoc.patch @@ -0,0 +1,35 @@ +0003_saslauthd_mdoc.dpatch by <fabbe@debian.org> + +Use the correct path for the saslauthd.conf file, and use another +date format (cosmetic). + +diff -urNad trunk~/saslauthd/saslauthd.mdoc trunk/saslauthd/saslauthd.mdoc +--- trunk~/saslauthd/saslauthd.mdoc 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/saslauthd.mdoc 2006-07-12 15:05:25.000000000 +0300 +@@ -10,7 +10,7 @@ + .\" manpage in saslauthd.8 whenever you change this source + .\" version. Only the pre-formatted manpage is installed. + .\" +-.Dd 10 24 2002 ++.Dd October 24 2002 + .Dt SASLAUTHD 8 + .Os "CMU-SASL" + .Sh NAME +@@ -216,7 +216,7 @@ + .Em (All platforms that support OpenLDAP 2.0 or higher) + .Pp + Authenticate against an ldap server. The ldap configuration parameters are +-read from /usr/local/etc/saslauthd.conf. The location of this file can be ++read from /etc/saslauthd.conf. The location of this file can be + changed with the -O parameter. See the LDAP_SASLAUTHD file included with the + distribution for the list of available parameters. + .It Li sia +@@ -249,7 +249,7 @@ + .Bl -tag -width "/var/run/saslauthd/mux" + .It Pa /var/run/saslauthd/mux + The default communications socket. +-.It Pa /usr/local/etc/saslauthd.conf ++.It Pa /etc/saslauthd.conf + The default configuration file for ldap support. + .El + .Sh SEE ALSO diff --git a/testing/libsasl/0010_maintainer_mode.patch b/testing/libsasl/0010_maintainer_mode.patch new file mode 100644 index 000000000..cf3d02a08 --- /dev/null +++ b/testing/libsasl/0010_maintainer_mode.patch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 0010_maintainer_mode.dpatch by <fabbe@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Enable maintainer mode to avoid auto* problems. + +@DPATCH@ +diff -urNad trunk~/configure.in trunk/configure.in +--- trunk~/configure.in 2006-05-29 22:52:46.000000000 +0300 ++++ trunk/configure.in 2006-11-01 23:24:55.000000000 +0200 +@@ -62,6 +62,8 @@ + AM_INIT_AUTOMAKE(cyrus-sasl, 2.1.22) + CMU_INIT_AUTOMAKE + ++AM_MAINTAINER_MODE ++ + # and include our config dir scripts + ACLOCAL="$ACLOCAL -I \$(top_srcdir)/config" + diff --git a/testing/libsasl/0011_saslauthd_ac_prog_libtool.patch b/testing/libsasl/0011_saslauthd_ac_prog_libtool.patch new file mode 100644 index 000000000..3805b4857 --- /dev/null +++ b/testing/libsasl/0011_saslauthd_ac_prog_libtool.patch @@ -0,0 +1,15 @@ +0011_saslauthd_ac_prog_libtool.dpatch by <fabbe@debian.org> + +Enable libtool use. + +diff -urNad trunk~/saslauthd/configure.in trunk/saslauthd/configure.in +--- trunk~/saslauthd/configure.in 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/configure.in 2006-11-01 23:41:51.000000000 +0200 +@@ -25,6 +25,7 @@ + AC_PROG_MAKE_SET + AC_PROG_LN_S + AC_PROG_INSTALL ++AC_PROG_LIBTOOL + + dnl Checks for build foo + CMU_C___ATTRIBUTE__ diff --git a/testing/libsasl/0012_xopen_crypt_prototype.patch b/testing/libsasl/0012_xopen_crypt_prototype.patch new file mode 100644 index 000000000..d50ec8343 --- /dev/null +++ b/testing/libsasl/0012_xopen_crypt_prototype.patch @@ -0,0 +1,20 @@ +0012_xopen_crypt_prototype.dpatch by <dannf@debian.org> + +When _XOPEN_SOURCE is defined, the subsequent #include <unistd.h> +will define a correct function prototype for the crypt function. +This avoids segfaults on architectures where the size of a pointer +is greater than the size of an integer (ia64 and amd64 are examples). +This may be detected by looking for build log lines such as the +following: +auth_shadow.c:183: warning: implicit declaration of function ‘crypt’ +auth_shadow.c:183: warning: cast to pointer from integer of different +size + +diff -urNad trunk~/saslauthd/auth_shadow.c trunk/saslauthd/auth_shadow.c +--- trunk~/saslauthd/auth_shadow.c 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/auth_shadow.c 2006-11-08 13:44:23.000000000 +0200 +@@ -1,3 +1,4 @@ ++#define _XOPEN_SOURCE + #define PWBUFSZ 256 /***SWB***/ + + /* MODULE: auth_shadow */ diff --git a/testing/libsasl/0016_pid_file_lock_creation_mask.patch b/testing/libsasl/0016_pid_file_lock_creation_mask.patch new file mode 100644 index 000000000..e9170cef3 --- /dev/null +++ b/testing/libsasl/0016_pid_file_lock_creation_mask.patch @@ -0,0 +1,27 @@ +0016_pid_file_lock_creation_mask.dpatch by Sam Hocevar <sam@zoy.org> + +pid_file_lock is created with a mask of 644 instead of 0644. +This patch fixes this octal/decimal confusion as well as the +(harmless) one in the previous umask() call. + +diff -urNad trunk~/saslauthd/saslauthd-main.c trunk/saslauthd/saslauthd-main.c +--- trunk~/saslauthd/saslauthd-main.c 2006-05-29 22:52:42.000000000 +0300 ++++ trunk/saslauthd/saslauthd-main.c 2007-06-26 12:07:10.000000000 +0300 +@@ -276,7 +276,7 @@ + exit(1); + } + +- umask(077); ++ umask(0077); + + pid_file_size = strlen(run_path) + sizeof(PID_FILE_LOCK) + 1; + if ((pid_file_lock = malloc(pid_file_size)) == NULL) { +@@ -287,7 +287,7 @@ + strlcpy(pid_file_lock, run_path, pid_file_size); + strlcat(pid_file_lock, PID_FILE_LOCK, pid_file_size); + +- if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 644)) < 0) { ++ if ((pid_file_lock_fd = open(pid_file_lock, O_CREAT|O_TRUNC|O_RDWR, 0644)) < 0) { + rc = errno; + logger(L_ERR, L_FUNC, "could not open pid lock file: %s", pid_file_lock); + logger(L_ERR, L_FUNC, "open: %s", strerror(rc)); diff --git a/testing/libsasl/0018_auth_rimap_quotes.patch b/testing/libsasl/0018_auth_rimap_quotes.patch new file mode 100644 index 000000000..13fa999f0 --- /dev/null +++ b/testing/libsasl/0018_auth_rimap_quotes.patch @@ -0,0 +1,35 @@ +0016_auth_rimap_quotes.dpatch by <fabbe@debian.org> + +All lines beginning with `## DP:' are a description of the patch. +Avoid infinite loop when username/password has a double quote character. +Upstream change: https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/sasl/saslauthd/auth_rimap.c.diff?r1=1.12;r2=1.13 + +diff -urNad etch~/saslauthd/auth_rimap.c etch/saslauthd/auth_rimap.c +--- etch~/saslauthd/auth_rimap.c 2007-03-29 15:16:20.000000000 +0300 ++++ etch/saslauthd/auth_rimap.c 2008-02-13 13:42:53.000000000 +0200 +@@ -162,6 +162,7 @@ + num_quotes = 0; + p1 = s; + while ((p1 = strchr(p1, '"')) != NULL) { ++ p1++; + num_quotes++; + } + +@@ -438,7 +439,7 @@ + syslog(LOG_WARNING, "auth_rimap: writev: %m"); + memset(qlogin, 0, strlen(qlogin)); + free(qlogin); +- memset(qpass, 0, strlen(qlogin)); ++ memset(qpass, 0, strlen(qpass)); + free(qpass); + (void)close(s); + return strdup(RESP_IERROR); +@@ -447,7 +448,7 @@ + /* don't need these any longer */ + memset(qlogin, 0, strlen(qlogin)); + free(qlogin); +- memset(qpass, 0, strlen(qlogin)); ++ memset(qpass, 0, strlen(qpass)); + free(qpass); + + /* read and parse the LOGIN response */ diff --git a/testing/libsasl/0019_ldap_deprecated.patch b/testing/libsasl/0019_ldap_deprecated.patch new file mode 100644 index 000000000..8825256cb --- /dev/null +++ b/testing/libsasl/0019_ldap_deprecated.patch @@ -0,0 +1,22 @@ +0019_ldap_deprecated.dpatch by dann frazier <dannf@debian.org> + +The function ldap_get_values, used in saslauthd/lak.c, is deprecated. +Therefore, its prototype is not included by default when compiling +against the ldap.h headers. As a result, the compiler cannot know the +return type of the function at compile time, and will implicitly +convert to a pointer. This has implications on 64-bit systems. +This patch sets the deprecation mode on, so that the function prototype +gets included when compiling. +(Description by Fabian Fagerholm <fabbe@debian.org>) + +diff -urNad trunk~/saslauthd/lak.c trunk/saslauthd/lak.c +--- trunk~/saslauthd/lak.c 2006-06-04 12:26:20.000000000 +0300 ++++ trunk/saslauthd/lak.c 2008-02-15 14:32:11.000000000 +0200 +@@ -55,6 +55,7 @@ + #include <openssl/des.h> + #endif + ++#define LDAP_DEPRECATED 1 + #include <ldap.h> + #include <lber.h> + #include <sasl.h> diff --git a/testing/libsasl/0022_gcc4.4_preprocessor_syntax.patch b/testing/libsasl/0022_gcc4.4_preprocessor_syntax.patch new file mode 100644 index 000000000..a49b553f0 --- /dev/null +++ b/testing/libsasl/0022_gcc4.4_preprocessor_syntax.patch @@ -0,0 +1,26 @@ +0022_gcc4.4_preprocessor_syntax.dpatch by <fabbe@paniq.net> + +The #elif preprocessor directive requires a test condition. +GCC 4.4 enforces this rule. + +diff -urNad trunk~/plugins/digestmd5.c trunk/plugins/digestmd5.c +--- trunk~/plugins/digestmd5.c 2006-06-04 12:26:19.000000000 +0300 ++++ trunk/plugins/digestmd5.c 2009-01-26 13:29:40.000000000 +0200 +@@ -2715,7 +2715,7 @@ + "DIGEST-MD5", /* mech_name */ + #ifdef WITH_RC4 + 128, /* max_ssf */ +-#elif WITH_DES ++#elif defined(WITH_DES) + 112, + #else + 1, +@@ -4034,7 +4034,7 @@ + "DIGEST-MD5", + #ifdef WITH_RC4 /* mech_name */ + 128, /* max ssf */ +-#elif WITH_DES ++#elif defined(WITH_DES) + 112, + #else + 1, diff --git a/testing/libsasl/0025_ld_as_needed.patch b/testing/libsasl/0025_ld_as_needed.patch new file mode 100644 index 000000000..67b48b4a4 --- /dev/null +++ b/testing/libsasl/0025_ld_as_needed.patch @@ -0,0 +1,27 @@ +Author: Matthias Klose <doko@ubuntu.com> +Desription: Fix FTBFS, add $(SASL_DB_LIB) as dependency to libsasldb, and use +it. +--- a/saslauthd/Makefile.am ++++ b/saslauthd/Makefile.am +@@ -16,7 +16,7 @@ EXTRA_saslauthd_sources = getaddrinfo.c + saslauthd_DEPENDENCIES = saslauthd-main.o @LTLIBOBJS@ + saslauthd_LDADD = @SASL_KRB_LIB@ \ + @GSSAPIBASE_LIBS@ @GSSAPI_LIBS@ @LIB_CRYPT@ @LIB_SIA@ \ +- @LIB_SOCKET@ @SASL_DB_LIB@ @LIB_PAM@ @LDAP_LIBS@ @LTLIBOBJS@ ++ @LIB_SOCKET@ ../sasldb/libsasldb.la @LIB_PAM@ @LDAP_LIBS@ @LTLIBOBJS@ + + testsaslauthd_SOURCES = testsaslauthd.c utils.c + testsaslauthd_LDADD = @LIB_SOCKET@ +--- a/sasldb/Makefile.am ++++ b/sasldb/Makefile.am +@@ -55,8 +55,8 @@ noinst_LIBRARIES = libsasldb.a + + libsasldb_la_SOURCES = allockey.c sasldb.h + EXTRA_libsasldb_la_SOURCES = $(extra_common_sources) +-libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND) +-libsasldb_la_LIBADD = $(SASL_DB_BACKEND) ++libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND) $(SASL_DB_LIB) ++libsasldb_la_LIBADD = $(SASL_DB_BACKEND) $(SASL_DB_LIB) + + # Prevent make dist stupidity + libsasldb_a_SOURCES = diff --git a/testing/libsasl/0026_drop_krb5support_dependency.patch b/testing/libsasl/0026_drop_krb5support_dependency.patch new file mode 100644 index 000000000..cc00867ef --- /dev/null +++ b/testing/libsasl/0026_drop_krb5support_dependency.patch @@ -0,0 +1,14 @@ +Author: Roberto C. Sanchez <roberto@connexer.com> +Description: Drop gratuitous dependency on krb5support +--- a/cmulocal/sasl2.m4 ++++ b/cmulocal/sasl2.m4 +@@ -112,9 +112,6 @@ if test "$gssapi" != no; then + fi + + if test "$gss_impl" = "auto" -o "$gss_impl" = "mit"; then +- # check for libkrb5support first +- AC_CHECK_LIB(krb5support,krb5int_getspecific,K5SUP=-lkrb5support K5SUPSTATIC=$gssapi_dir/libkrb5support.a,,${LIB_SOCKET}) +- + gss_failed=0 + AC_CHECK_LIB(gssapi_krb5,gss_unwrap,gss_impl="mit",gss_failed=1, + ${GSSAPIBASE_LIBS} -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err ${K5SUP} ${LIB_SOCKET}) diff --git a/testing/libsasl/0027_db5_support.patch b/testing/libsasl/0027_db5_support.patch new file mode 100644 index 000000000..522824074 --- /dev/null +++ b/testing/libsasl/0027_db5_support.patch @@ -0,0 +1,24 @@ +Author: Ondřej Surý <ondrej@debian.org> +Description: Support newer Berkeley DB versions +--- a/sasldb/db_berkeley.c ++++ b/sasldb/db_berkeley.c +@@ -101,7 +101,7 @@ static int berkeleydb_open(const sasl_ut + ret = db_create(mbdb, NULL, 0); + if (ret == 0 && *mbdb != NULL) + { +-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 ++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)) + ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660); + #else + ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660); +--- a/utils/dbconverter-2.c ++++ b/utils/dbconverter-2.c +@@ -214,7 +214,7 @@ static int berkeleydb_open(const char *p + ret = db_create(mbdb, NULL, 0); + if (ret == 0 && *mbdb != NULL) + { +-#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 ++#if (DB_VERSION_MAJOR > 4) || ((DB_VERSION_MAJOR == 4) && (DB_VERSION_MINOR >= 1)) + ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664); + #else + ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664); diff --git a/testing/libsasl/0030-dont_use_la_files_for_opening_plugins.patch b/testing/libsasl/0030-dont_use_la_files_for_opening_plugins.patch new file mode 100644 index 000000000..14a322496 --- /dev/null +++ b/testing/libsasl/0030-dont_use_la_files_for_opening_plugins.patch @@ -0,0 +1,134 @@ +--- a/lib/dlopen.c ++++ b/lib/dlopen.c +@@ -247,105 +247,6 @@ static int _sasl_plugin_load(char *plugi + return result; + } + +-/* this returns the file to actually open. +- * out should be a buffer of size PATH_MAX +- * and may be the same as in. */ +- +-/* We'll use a static buffer for speed unless someone complains */ +-#define MAX_LINE 2048 +- +-static int _parse_la(const char *prefix, const char *in, char *out) +-{ +- FILE *file; +- size_t length; +- char line[MAX_LINE]; +- char *ntmp = NULL; +- +- if(!in || !out || !prefix || out == in) return SASL_BADPARAM; +- +- /* Set this so we can detect failure */ +- *out = '\0'; +- +- length = strlen(in); +- +- if (strcmp(in + (length - strlen(LA_SUFFIX)), LA_SUFFIX)) { +- if(!strcmp(in + (length - strlen(SO_SUFFIX)),SO_SUFFIX)) { +- /* check for a .la file */ +- strcpy(line, prefix); +- strcat(line, in); +- length = strlen(line); +- *(line + (length - strlen(SO_SUFFIX))) = '\0'; +- strcat(line, LA_SUFFIX); +- file = fopen(line, "r"); +- if(file) { +- /* We'll get it on the .la open */ +- fclose(file); +- return SASL_FAIL; +- } +- } +- strcpy(out, prefix); +- strcat(out, in); +- return SASL_OK; +- } +- +- strcpy(line, prefix); +- strcat(line, in); +- +- file = fopen(line, "r"); +- if(!file) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "unable to open LA file: %s", line); +- return SASL_FAIL; +- } +- +- while(!feof(file)) { +- if(!fgets(line, MAX_LINE, file)) break; +- if(line[strlen(line) - 1] != '\n') { +- _sasl_log(NULL, SASL_LOG_WARN, +- "LA file has too long of a line: %s", in); +- return SASL_BUFOVER; +- } +- if(line[0] == '\n' || line[0] == '#') continue; +- if(!strncmp(line, "dlname=", sizeof("dlname=") - 1)) { +- /* We found the line with the name in it */ +- char *end; +- char *start; +- size_t len; +- end = strrchr(line, '\''); +- if(!end) continue; +- start = &line[sizeof("dlname=")-1]; +- len = strlen(start); +- if(len > 3 && start[0] == '\'') { +- ntmp=&start[1]; +- *end='\0'; +- /* Do we have dlname="" ? */ +- if(ntmp == end) { +- _sasl_log(NULL, SASL_LOG_DEBUG, +- "dlname is empty in .la file: %s", in); +- return SASL_FAIL; +- } +- strcpy(out, prefix); +- strcat(out, ntmp); +- } +- break; +- } +- } +- if(ferror(file) || feof(file)) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "Error reading .la: %s\n", in); +- fclose(file); +- return SASL_FAIL; +- } +- fclose(file); +- +- if(!(*out)) { +- _sasl_log(NULL, SASL_LOG_WARN, +- "Could not find a dlname line in .la file: %s", in); +- return SASL_FAIL; +- } +- +- return SASL_OK; +-} + #endif /* DO_DLOPEN */ + + /* loads a plugin library */ +@@ -499,18 +400,18 @@ int _sasl_load_plugins(const add_plugin_ + if (length + pos>=PATH_MAX) continue; /* too big */ + + if (strcmp(dir->d_name + (length - strlen(SO_SUFFIX)), +- SO_SUFFIX) +- && strcmp(dir->d_name + (length - strlen(LA_SUFFIX)), +- LA_SUFFIX)) ++ SO_SUFFIX)) + continue; + ++ /* We only use .so files for loading plugins */ ++ + memcpy(name,dir->d_name,length); + name[length]='\0'; + +- result = _parse_la(prefix, name, tmp); +- if(result != SASL_OK) +- continue; +- ++ /* Create full name with path */ ++ strncpy(tmp, prefix, PATH_MAX); ++ strncat(tmp, name, PATH_MAX); ++ + /* skip "lib" and cut off suffix -- + this only need be approximate */ + strcpy(plugname, name + 3); diff --git a/testing/libsasl/PKGBUILD b/testing/libsasl/PKGBUILD new file mode 100644 index 000000000..4b59049a4 --- /dev/null +++ b/testing/libsasl/PKGBUILD @@ -0,0 +1,202 @@ +# $Id: PKGBUILD 134437 2011-08-03 20:35:03Z jgc $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +# This package spans multiple repositories. +# Always build from cyrus-sasl/trunk and merge changes to libsasl/trunk. + +#pkgbase=('cyrus-sasl') +#pkgname=('cyrus-sasl' 'cyrus-sasl-gssapi' 'cyrus-sasl-ldap' 'cyrus-sasl-sql') +pkgname=libsasl +pkgver=2.1.23 +pkgrel=7 +pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" +arch=('i686' 'x86_64') +url="http://cyrusimap.web.cmu.edu/downloads.html#sasl" +license=('custom') +options=('!makeflags' '!libtool') +makedepends=('postgresql-libs' 'libmysqlclient' 'libldap' 'krb5' 'openssl') +source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-${pkgver}.tar.gz + cyrus-sasl-2.1.19-checkpw.c.patch + cyrus-sasl-2.1.22-crypt.patch + cyrus-sasl-2.1.22-qa.patch + cyrus-sasl-2.1.22-automake-1.10.patch + cyrus-sasl-2.1.23-authd-fix.patch + 0003_saslauthd_mdoc.patch + 0010_maintainer_mode.patch + 0011_saslauthd_ac_prog_libtool.patch + 0012_xopen_crypt_prototype.patch + 0016_pid_file_lock_creation_mask.patch + 0018_auth_rimap_quotes.patch + 0019_ldap_deprecated.patch + 0022_gcc4.4_preprocessor_syntax.patch + 0025_ld_as_needed.patch + 0026_drop_krb5support_dependency.patch + 0027_db5_support.patch + 0030-dont_use_la_files_for_opening_plugins.patch + saslauthd.conf.d + saslauthd) +md5sums=('2eb0e48106f0e9cd8001e654f267ecbc' + 'e27ddff076342e7a3041c4759817d04b' + 'd7e6886e88af04d05f3dec7f0a59ccf7' + '79b8a5e8689989e2afd4b7bda595a7b1' + 'f4131b077ddb5240b375d749162f1b7a' + 'c7ad2c70c1ef814eb4b119f316c064f2' + 'caeeac3feba19cbbd36e7345cc805600' + 'f45d8b60e8f74dd7f7c2ec1665fa602a' + '9d93880514cb5ff5da969f1ceb64a661' + 'dfdc052a7e678db9f687482c5d52f34e' + '4a09f6b24b91f8450892a78e378860da' + '213abe7c5dfe0d7f446992787da1e780' + '5a0321177ad30cb5518c8b6812e3961a' + '0c965748970eea29fa295524821d43f0' + '62bf892fe4d1df41ff748e91a1afaf67' + 'b7848957357e7c02d6490102be496bf9' + 'd86a5aa2e3b5b7c1bad6f8b548b7ea36' + '8e7106f32e495e9ade69014fd1b3352a' + '49219af5641150edec288a3fdb65e7c1' + '75542f613185d5a90520ad0d7d926a20') + +build() { + cd "${srcdir}/cyrus-sasl-${pkgver}" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.19-checkpw.c.patch" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-crypt.patch" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-qa.patch" + patch -Np1 -i "${srcdir}/cyrus-sasl-2.1.22-automake-1.10.patch" + patch -Np0 -i "${srcdir}/cyrus-sasl-2.1.23-authd-fix.patch" + patch -Np1 -i "${srcdir}/0003_saslauthd_mdoc.patch" + patch -Np1 -i "${srcdir}/0010_maintainer_mode.patch" + patch -Np1 -i "${srcdir}/0011_saslauthd_ac_prog_libtool.patch" + patch -Np1 -i "${srcdir}/0012_xopen_crypt_prototype.patch" + patch -Np1 -i "${srcdir}/0016_pid_file_lock_creation_mask.patch" + patch -Np1 -i "${srcdir}/0018_auth_rimap_quotes.patch" + patch -Np1 -i "${srcdir}/0019_ldap_deprecated.patch" + patch -Np1 -i "${srcdir}/0022_gcc4.4_preprocessor_syntax.patch" + patch -Np1 -i "${srcdir}/0025_ld_as_needed.patch" + patch -Np1 -i "${srcdir}/0026_drop_krb5support_dependency.patch" + patch -Np1 -i "${srcdir}/0027_db5_support.patch" + patch -Np1 -i "${srcdir}/0030-dont_use_la_files_for_opening_plugins.patch" + + rm -f config/config.guess config/config.sub + rm -f config/ltconfig config/ltmain.sh config/libtool.m4 + rm -fr autom4te.cache + libtoolize -c + aclocal -I config -I cmulocal + automake -a -c + autoheader + autoconf + + pushd saslauthd + rm -f config/config.guess config/config.sub + rm -f config/ltconfig config/ltmain.sh config/libtool.m4 + rm -fr autom4te.cache + libtoolize -c + aclocal -I config -I ../cmulocal -I ../config + automake -a -c + autoheader + autoconf + popd + + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --disable-static \ + --enable-shared \ + --enable-alwaystrue \ + --enable-checkapop \ + --enable-cram \ + --enable-digest \ + --disable-otp \ + --disable-srp \ + --disable-srp-setpass \ + --disable-krb4 \ + --enable-gssapi \ + --enable-auth-sasldb \ + --enable-plain \ + --enable-anon \ + --enable-login \ + --enable-ntlm \ + --disable-passdss \ + --enable-sql \ + --enable-ldapdb \ + --disable-macos-framework \ + --with-pam \ + --with-saslauthd=/var/run/saslauthd \ + --with-ldap \ + --with-configdir=/etc/sasl2:/etc/sasl:/usr/lib/sasl2 \ + --sysconfdir=/etc \ + --with-devrandom=/dev/urandom + make +} + +package_libsasl() { + pkgdesc="Cyrus Simple Authentication Service Layer (SASL) Library" + depends=('openssl') + provides=('cyrus-sasl-plugins') + conflicts=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}" + for dir in include lib sasldb plugins utils; do + pushd ${dir} + make DESTDIR="${pkgdir}" install + popd + done + rm -f "${pkgdir}"/usr/lib/sasl2/libsql.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libgssapiv2.so* + rm -f "${pkgdir}"/usr/lib/sasl2/libldapdb.so* + install -m755 -d "${pkgdir}/usr/share/licenses/libsasl" + install -m644 COPYING "${pkgdir}/usr/share/licenses/libsasl/" +} + +package_cyrus-sasl() { + depends=("libsasl=${pkgver}-${pkgrel}") + pkgdesc="Cyrus saslauthd SASL authentication daemon" + + cd "${srcdir}/cyrus-sasl-${pkgver}/saslauthd" + make DESTDIR="${pkgdir}" install + install -m755 -d "${pkgdir}/etc/rc.d" + install -m755 -d "${pkgdir}/etc/conf.d" + install -m755 "${srcdir}/saslauthd" "${pkgdir}/etc/rc.d/" + install -m644 "${srcdir}/saslauthd.conf.d" "${pkgdir}/etc/conf.d/saslauthd" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl/" +} + +package_cyrus-sasl-gssapi() { + pkgdesc="GSSAPI authentication mechanism for Cyrus SASL" + depends=("libsasl=${pkgver}-${pkgrel}" 'krb5') + replaces=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}/plugins" + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libgssapiv2.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-gssapi/" +} + +package_cyrus-sasl-ldap() { + pkgdesc="ldapdb auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}-${pkgrel}" 'libldap') + replaces=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}/plugins" + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libldapdb.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-ldap/" +} + +package_cyrus-sasl-sql() { + pkgdesc="SQL auxprop module for Cyrus SASL" + depends=("libsasl=${pkgver}-${pkgrel}" 'postgresql-libs' 'libmysqlclient') + replaces=('cyrus-sasl-plugins') + + cd "${srcdir}/cyrus-sasl-${pkgver}/plugins" + install -m755 -d "${pkgdir}/usr/lib/sasl2" + cp -a .libs/libsql.so* "${pkgdir}/usr/lib/sasl2/" + + install -m755 -d "${pkgdir}/usr/share/licenses/cyrus-sasl-sql" + ln -sf ../libsasl/COPYING "${pkgdir}/usr/share/licenses/cyrus-sasl-sql/" +} diff --git a/testing/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch b/testing/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch new file mode 100644 index 000000000..f7bf44b79 --- /dev/null +++ b/testing/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch @@ -0,0 +1,170 @@ +diff -ur ../cyrus-sasl-2.1.19.orig/lib/Makefile.in ./lib/Makefile.in +--- ../cyrus-sasl-2.1.19.orig/lib/Makefile.in 2004-07-02 21:40:15.000000000 +0200 ++++ ./lib/Makefile.in 2004-09-07 13:21:22.746680576 +0200 +@@ -120,7 +120,7 @@ + JAVA_TRUE = @JAVA_TRUE@ + LDFLAGS = @LDFLAGS@ + LIBOBJS = @LIBOBJS@ +-LIBS = @LIBS@ ++LIBS = -lcrypt @LIBS@ + LIBTOOL = @LIBTOOL@ + LIB_CRYPT = @LIB_CRYPT@ + LIB_DES = @LIB_DES@ +diff -ur ../cyrus-sasl-2.1.19.orig/lib/checkpw.c ./lib/checkpw.c +--- ../cyrus-sasl-2.1.19.orig/lib/checkpw.c 2004-03-17 14:58:13.000000000 +0100 ++++ ./lib/checkpw.c 2004-09-07 13:21:12.645916147 +0200 +@@ -94,6 +94,23 @@ + # endif + #endif + ++/****************************** ++ * crypt(3) patch start * ++ ******************************/ ++char *crypt(const char *key, const char *salt); ++ ++/* cleartext password formats */ ++#define PASSWORD_FORMAT_CLEARTEXT 1 ++#define PASSWORD_FORMAT_CRYPT 2 ++#define PASSWORD_FORMAT_CRYPTTRAD 3 ++#define PASSWORD_SALT_BUF_LEN 22 ++ ++/* weeds out crypt(3) password's salt */ ++int _sasl_get_salt (char *dest, char *src, int format); ++ ++/****************************** ++ * crypt(3) patch stop * ++ ******************************/ + + /* we store the following secret to check plaintext passwords: + * +@@ -143,7 +160,51 @@ + "*cmusaslsecretPLAIN", + NULL }; + struct propval auxprop_values[3]; +- ++ ++ /****************************** ++ * crypt(3) patch start * ++ * for password format check * ++ ******************************/ ++ sasl_getopt_t *getopt; ++ void *context; ++ const char *p = NULL; ++ /** ++ * MD5: 12 char salt ++ * BLOWFISH: 16 char salt ++ */ ++ char salt[PASSWORD_SALT_BUF_LEN]; ++ int password_format; ++ ++ /* get password format from auxprop configuration */ ++ if (_sasl_getcallback(conn, SASL_CB_GETOPT, &getopt, &context) == SASL_OK) { ++ getopt(context, NULL, "password_format", &p, NULL); ++ } ++ ++ /* set password format */ ++ if (p) { ++ /* ++ memset(pass_format_str, '\0', PASSWORD_FORMAT_STR_LEN); ++ strncpy(pass_format_str, p, (PASSWORD_FORMAT_STR_LEN - 1)); ++ */ ++ /* modern, modular crypt(3) */ ++ if (strncmp(p, "crypt", 11) == 0) ++ password_format = PASSWORD_FORMAT_CRYPT; ++ /* traditional crypt(3) */ ++ else if (strncmp(p, "crypt_trad", 11) == 0) ++ password_format = PASSWORD_FORMAT_CRYPTTRAD; ++ /* cleartext password */ ++ else ++ password_format = PASSWORD_FORMAT_CLEARTEXT; ++ } else { ++ /* cleartext password */ ++ password_format = PASSWORD_FORMAT_CLEARTEXT; ++ } ++ ++ /****************************** ++ * crypt(3) patch stop * ++ * for password format check * ++ ******************************/ ++ + if (!conn || !userstr) + return SASL_BADPARAM; + +@@ -180,14 +241,31 @@ + goto done; + } + +- /* At the point this has been called, the username has been canonified +- * and we've done the auxprop lookup. This should be easy. */ +- if(auxprop_values[0].name +- && auxprop_values[0].values +- && auxprop_values[0].values[0] +- && !strcmp(auxprop_values[0].values[0], passwd)) { +- /* We have a plaintext version and it matched! */ +- return SASL_OK; ++ ++ /****************************** ++ * crypt(3) patch start * ++ ******************************/ ++ ++ /* get salt */ ++ _sasl_get_salt(salt, (char *) auxprop_values[0].values[0], password_format); ++ ++ /* crypt(3)-ed password? */ ++ if (password_format != PASSWORD_FORMAT_CLEARTEXT) { ++ /* compare password */ ++ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(crypt(passwd, salt), auxprop_values[0].values[0]) == 0) ++ return SASL_OK; ++ else ++ ret = SASL_BADAUTH; ++ } ++ else if (password_format == PASSWORD_FORMAT_CLEARTEXT) { ++ /* compare passwords */ ++ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(auxprop_values[0].values[0], passwd) == 0) ++ return SASL_OK; ++ else ++ ret = SASL_BADAUTH; ++ /****************************** ++ * crypt(3) patch stop * ++ ******************************/ + } else if(auxprop_values[1].name + && auxprop_values[1].values + && auxprop_values[1].values[0]) { +@@ -975,3 +1053,37 @@ + #endif + { NULL, NULL } + }; ++ ++/* weeds out crypt(3) password's salt */ ++int _sasl_get_salt (char *dest, char *src, int format) { ++ int num; /* how many characters is salt long? */ ++ switch (format) { ++ case PASSWORD_FORMAT_CRYPT: ++ /* md5 crypt */ ++ if (src[1] == '1') ++ num = 12; ++ /* blowfish crypt */ ++ else if (src[1] == '2') ++ num = (src[1] == '2' && src[2] == 'a') ? 17 : 16; ++ /* traditional crypt */ ++ else ++ num = 2; ++ break; ++ ++ case PASSWORD_FORMAT_CRYPTTRAD: ++ num = 2; ++ break; ++ ++ default: ++ return 1; ++ } ++ ++ /* destroy destination */ ++ memset(dest, '\0', (num + 1)); ++ ++ /* copy salt to destination */ ++ strncpy(dest, src, num); ++ ++ return 1; ++} ++ diff --git a/testing/libsasl/cyrus-sasl-2.1.22-as-needed.patch b/testing/libsasl/cyrus-sasl-2.1.22-as-needed.patch new file mode 100644 index 000000000..1294cb507 --- /dev/null +++ b/testing/libsasl/cyrus-sasl-2.1.22-as-needed.patch @@ -0,0 +1,11 @@ +--- saslauthd/configure.in.orig 2006-05-23 15:53:17.000000000 -0700 ++++ saslauthd/configure.in 2006-05-23 15:53:33.000000000 -0700 +@@ -77,7 +77,7 @@ + AC_DEFINE(AUTH_SASLDB,[],[Include SASLdb Support]) + SASL_DB_PATH_CHECK() + SASL_DB_CHECK() +- SASL_DB_LIB="$SASL_DB_LIB ../sasldb/.libs/libsasldb.al" ++ SASL_DB_LIB="../sasldb/.libs/libsasldb.a $SASL_DB_LIB" + fi + + AC_ARG_ENABLE(httpform, [ --enable-httpform enable HTTP form authentication [[no]] ], diff --git a/testing/libsasl/cyrus-sasl-2.1.22-automake-1.10.patch b/testing/libsasl/cyrus-sasl-2.1.22-automake-1.10.patch new file mode 100644 index 000000000..8cd71c0c5 --- /dev/null +++ b/testing/libsasl/cyrus-sasl-2.1.22-automake-1.10.patch @@ -0,0 +1,94 @@ +Re-merged patch by Robert Scheck <redhat@linuxnetz.de> for cyrus-sasl >= 2.1.22, which was +originally written by Jacek Konieczny <jajcus@pld-linux.org> and makes cyrus-sasl building +using automake 1.10. + +--- cyrus-sasl-2.1.22/plugins/Makefile.am 2006-05-17 18:46:16.000000000 +0200 ++++ cyrus-sasl-2.1.22/plugins/Makefile.am.am110 2007-02-16 15:42:07.000000000 +0100 +@@ -82,73 +82,73 @@ + libntlm.la libpassdss.la libsasldb.la libsql.la libldapdb.la + + libplain_la_SOURCES = plain.c plain_init.c $(common_sources) +-libplain_la_LDFLAGS = -version-info $(plain_version) ++libplain_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(plain_version) + libplain_la_DEPENDENCIES = $(COMPAT_OBJS) + libplain_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) + + libanonymous_la_SOURCES = anonymous.c anonymous_init.c $(common_sources) +-libanonymous_la_LDFLAGS = -version-info $(anonymous_version) ++libanonymous_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(anonymous_version) + libanonymous_la_DEPENDENCIES = $(COMPAT_OBJS) + libanonymous_la_LIBADD = $(COMPAT_OBJS) + + libkerberos4_la_SOURCES = kerberos4.c kerberos4_init.c $(common_sources) +-libkerberos4_la_LDFLAGS = -version-info $(kerberos4_version) ++libkerberos4_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(kerberos4_version) + libkerberos4_la_DEPENDENCIES = $(COMPAT_OBJS) + libkerberos4_la_LIBADD = $(SASL_KRB_LIB) $(LIB_SOCKET) $(COMPAT_OBJS) + + libgssapiv2_la_SOURCES = gssapi.c gssapiv2_init.c $(common_sources) +-libgssapiv2_la_LDFLAGS = -version-info $(gssapiv2_version) ++libgssapiv2_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(gssapiv2_version) + libgssapiv2_la_DEPENDENCIES = $(COMPAT_OBJS) + libgssapiv2_la_LIBADD = $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(LIB_SOCKET) $(COMPAT_OBJS) + + libcrammd5_la_SOURCES = cram.c crammd5_init.c $(common_sources) +-libcrammd5_la_LDFLAGS = -version-info $(crammd5_version) ++libcrammd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(crammd5_version) + libcrammd5_la_DEPENDENCIES = $(COMPAT_OBJS) + libcrammd5_la_LIBADD = $(COMPAT_OBJS) + + libdigestmd5_la_SOURCES = digestmd5.c digestmd5_init.c $(common_sources) +-libdigestmd5_la_LDFLAGS = -version-info $(digestmd5_version) ++libdigestmd5_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(digestmd5_version) + libdigestmd5_la_DEPENDENCIES = $(COMPAT_OBJS) + libdigestmd5_la_LIBADD = $(LIB_DES) $(LIB_SOCKET) $(COMPAT_OBJS) + + liblogin_la_SOURCES = login.c login_init.c $(common_sources) +-liblogin_la_LDFLAGS = -version-info $(login_version) ++liblogin_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(login_version) + liblogin_la_DEPENDENCIES = $(COMPAT_OBJS) + liblogin_la_LIBADD = $(PLAIN_LIBS) $(COMPAT_OBJS) + + libsrp_la_SOURCES = srp.c srp_init.c $(common_sources) +-libsrp_la_LDFLAGS = -version-info $(srp_version) ++libsrp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(srp_version) + libsrp_la_DEPENDENCIES = $(COMPAT_OBJS) + libsrp_la_LIBADD = $(SRP_LIBS) $(COMPAT_OBJS) + + libotp_la_SOURCES = otp.c otp_init.c otp.h $(common_sources) +-libotp_la_LDFLAGS = -version-info $(otp_version) ++libotp_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(otp_version) + libotp_la_DEPENDENCIES = $(COMPAT_OBJS) + libotp_la_LIBADD = $(OTP_LIBS) $(COMPAT_OBJS) + + libntlm_la_SOURCES = ntlm.c ntlm_init.c $(common_sources) +-libntlm_la_LDFLAGS = -version-info $(ntlm_version) ++libntlm_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(ntlm_version) + libntlm_la_DEPENDENCIES = $(COMPAT_OBJS) + libntlm_la_LIBADD = $(NTLM_LIBS) $(COMPAT_OBJS) + + libpassdss_la_SOURCES = passdss.c passdss_init.c $(common_sources) +-libpassdss_la_LDFLAGS = -version-info $(passdss_version) ++libpassdss_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(passdss_version) + libpassdss_la_DEPENDENCIES = $(COMPAT_OBJS) + libpassdss_la_LIBADD = $(PASSDSS_LIBS) $(COMPAT_OBJS) + + # Auxprop Plugins + libsasldb_la_SOURCES = sasldb.c sasldb_init.c $(common_sources) +-libsasldb_la_LDFLAGS = -version-info $(sasldb_version) ++libsasldb_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(sasldb_version) + libsasldb_la_DEPENDENCIES = $(COMPAT_OBJS) + libsasldb_la_LIBADD = ../sasldb/libsasldb.la $(SASL_DB_LIB) $(COMPAT_OBJS) + + libldapdb_la_SOURCES = ldapdb.c ldapdb_init.c $(common_sources) +-libldapdb_la_LDFLAGS = $(LIB_LDAP) -version-info $(ldapdb_version) ++libldapdb_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_LDAP) -version-info $(ldapdb_version) + libldapdb_la_DEPENDENCIES = $(COMPAT_OBJS) + libldapdb_la_LIBADD = $(COMPAT_OBJS) + + libsql_la_SOURCES = sql.c sql_init.c $(common_sources) +-libsql_la_LDFLAGS = $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version) ++libsql_la_LDFLAGS = $(AM_LDFLAGS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) -version-info $(sql_version) + libsql_la_DEPENDENCIES = $(COMPAT_OBJS) + libsql_la_LIBADD = $(COMPAT_OBJS) + diff --git a/testing/libsasl/cyrus-sasl-2.1.22-crypt.patch b/testing/libsasl/cyrus-sasl-2.1.22-crypt.patch new file mode 100644 index 000000000..fd356327b --- /dev/null +++ b/testing/libsasl/cyrus-sasl-2.1.22-crypt.patch @@ -0,0 +1,71 @@ +http://bugs.gentoo.org/152544 + +--- cyrus-sasl-2.1.22/lib/Makefile.am ++++ cyrus-sasl-2.1.22/lib/Makefile.am +@@ -45,6 +45,7 @@ sasl_version = 2:22:0 + + INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/plugins -I$(top_builddir)/include -I$(top_srcdir)/sasldb + ++AM_CFLAGS = -fPIC + EXTRA_DIST = windlopen.c staticopen.h NTMakefile + EXTRA_LIBRARIES = libsasl2.a + noinst_LIBRARIES = @SASL_STATIC_LIBS@ +--- cyrus-sasl-2.1.22/plugins/Makefile.am ++++ cyrus-sasl-2.1.22/plugins/Makefile.am +@@ -63,6 +63,7 @@ srp_version = 2:22:0 + + INCLUDES=-I$(top_srcdir)/include -I$(top_srcdir)/lib -I$(top_srcdir)/sasldb -I$(top_builddir)/include + AM_LDFLAGS = -module -export-dynamic -rpath $(plugindir) ++AM_CFLAGS = -fPIC + + COMPAT_OBJS = @LTGETADDRINFOOBJS@ @LTGETNAMEINFOOBJS@ @LTSNPRINTFOBJS@ + +--- cyrus-sasl-2.1.22/sasldb/Makefile.am ++++ cyrus-sasl-2.1.22/sasldb/Makefile.am +@@ -48,6 +48,7 @@ INCLUDES=-I$(top_srcdir)/include -I$(top + + extra_common_sources = db_none.c db_ndbm.c db_gdbm.c db_berkeley.c + ++AM_CFLAGS = -fPIC + EXTRA_DIST = NTMakefile + + noinst_LTLIBRARIES = libsasldb.la +--- cyrus-sasl-2.1.22/utils/Makefile.am ++++ cyrus-sasl-2.1.22/utils/Makefile.am +@@ -42,7 +42,7 @@ + # + ################################################################ + +-all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET) ++all_sasl_libs = ../lib/libsasl2.la $(SASL_DB_LIB) $(LIB_SOCKET) $(LIB_CRYPT) + all_sasl_static_libs = ../lib/.libs/libsasl2.a $(SASL_DB_LIB) $(LIB_SOCKET) $(GSSAPIBASE_LIBS) $(GSSAPI_LIBS) $(SASL_KRB_LIB) $(LIB_DES) $(PLAIN_LIBS) $(SRP_LIBS) $(LIB_MYSQL) $(LIB_PGSQL) $(LIB_SQLITE) + + sbin_PROGRAMS = @SASL_DB_UTILS@ @SMTPTEST_PROGRAM@ pluginviewer +--- cyrus-sasl-2.1.22/sample/Makefile.am ++++ cyrus-sasl-2.1.22/sample/Makefile.am +@@ -54,10 +54,10 @@ sample_server_SOURCES = sample-server.c + server_SOURCES = server.c common.c common.h + client_SOURCES = client.c common.c common.h + +-server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) +-client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) ++server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) ++client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) + +-sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) +-sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) ++sample_client_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) ++sample_server_LDADD = ../lib/libsasl2.la $(LIB_SOCKET) $(LIB_CRYPT) + + EXTRA_DIST = NTMakefile +--- cyrus-sasl-2.1.22/lib/Makefile.am ++++ cyrus-sasl-2.1.22/lib/Makefile.am +@@ -63,7 +63,7 @@ lib_LTLIBRARIES = libsasl2.la + libsasl2_la_SOURCES = $(common_sources) $(common_headers) + libsasl2_la_LDFLAGS = -version-info $(sasl_version) + libsasl2_la_DEPENDENCIES = $(LTLIBOBJS) +-libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR) ++libsasl2_la_LIBADD = $(LTLIBOBJS) $(SASL_DL_LIB) $(LIB_SOCKET) $(LIB_DOOR) $(LIB_CRYPT) + + if MACOSX + framedir = /Library/Frameworks/SASL2.framework diff --git a/testing/libsasl/cyrus-sasl-2.1.22-qa.patch b/testing/libsasl/cyrus-sasl-2.1.22-qa.patch new file mode 100644 index 000000000..4f7b04f13 --- /dev/null +++ b/testing/libsasl/cyrus-sasl-2.1.22-qa.patch @@ -0,0 +1,22 @@ +fix missing prototype warnings + +--- cyrus-sasl-2.1.22/lib/auxprop.c ++++ cyrus-sasl-2.1.22/lib/auxprop.c +@@ -43,6 +43,7 @@ + */ + + #include <config.h> ++#include <stdio.h> + #include <sasl.h> + #include <prop.h> + #include <ctype.h> +--- cyrus-sasl-2.1.22/pwcheck/pwcheck_getspnam.c ++++ cyrus-sasl-2.1.22/pwcheck/pwcheck_getspnam.c +@@ -24,6 +24,7 @@ OF OR IN CONNECTION WITH THE USE OR PERF + ******************************************************************/ + + #include <shadow.h> ++#include <string.h> + + extern char *crypt(); + diff --git a/testing/libsasl/cyrus-sasl-2.1.23-authd-fix.patch b/testing/libsasl/cyrus-sasl-2.1.23-authd-fix.patch new file mode 100644 index 000000000..f5f372d17 --- /dev/null +++ b/testing/libsasl/cyrus-sasl-2.1.23-authd-fix.patch @@ -0,0 +1,28 @@ +fix warnings: + +auth_sasldb.c: In function ‘auth_sasldb’: +auth_sasldb.c:144: warning: implicit declaration of function ‘gethostname’ + +auth_sasldb.c:153: warning: passing argument 8 of ‘_sasldb_getdata’ from incompatible pointer type +../sasldb/sasldb.h:60: note: expected ‘size_t *’ but argument is of type ‘int *’ + +--- saslauthd/auth_sasldb.c ++++ saslauthd/auth_sasldb.c +@@ -41,6 +41,7 @@ + #include <string.h> + #include <stdlib.h> + #include <pwd.h> ++#include <unistd.h> + /* END PUBLIC DEPENDENCIES */ + + #define RETURN(x) return strdup(x) +@@ -131,7 +132,8 @@ + /* VARIABLES */ + char pw[1024]; /* pointer to passwd file entry */ + sasl_utils_t utils; +- int ret, outsize; ++ int ret; ++ size_t outsize; + const char *use_realm; + char realm_buf[MAXHOSTNAMELEN]; + /* END VARIABLES */ diff --git a/testing/libsasl/saslauthd b/testing/libsasl/saslauthd new file mode 100644 index 000000000..6afafae0b --- /dev/null +++ b/testing/libsasl/saslauthd @@ -0,0 +1,49 @@ +#!/bin/bash + +# source application-specific settings +[ -f /etc/conf.d/saslauthd ] && . /etc/conf.d/saslauthd + +. /etc/rc.conf +. /etc/rc.d/functions + +DAEMON_NAME="saslauthd" +SASLAUTHD_BIN=/usr/sbin/saslauthd +SASLAUTHD_RUN=/var/run/saslauthd +SASLAUTHD_PID=$SASLAUTHD_RUN/saslauthd.pid + +case "$1" in + start) + stat_busy "Starting $DAEMON_NAME" + [ ! -d /var/run/saslauthd ] && install -d /var/run/saslauthd + if $SASLAUTHD_BIN $SASLAUTHD_OPTS >/dev/null; then + add_daemon $DAEMON_NAME + stat_done + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $DAEMON_NAME" + [ -f $SASLAUTHD_PID ] && kill `cat $SASLAUTHD_PID` &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm_daemon $DAEMON_NAME + stat_done + fi + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 +# vim: ts=2 sw=2 et ft=sh diff --git a/testing/libsasl/saslauthd.conf.d b/testing/libsasl/saslauthd.conf.d new file mode 100644 index 000000000..167211290 --- /dev/null +++ b/testing/libsasl/saslauthd.conf.d @@ -0,0 +1 @@ +SASLAUTHD_OPTS="-a pam" diff --git a/testing/mdadm/PKGBUILD b/testing/mdadm/PKGBUILD new file mode 100644 index 000000000..44d4c7c66 --- /dev/null +++ b/testing/mdadm/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 134363 2011-08-03 06:56:40Z tpowa $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +# Contributor: Judd Vinet <jvinet@zeroflux.org> +pkgname=mdadm +pkgver=3.2.2 +pkgrel=3 +pkgdesc="A tool for managing/monitoring Linux md device arrays, also known as Software RAID" +arch=(i686 x86_64) +license=('GPL') +url="http://www.cse.unsw.edu.au/~neilb/source/mdadm/" +groups=('base') +conflicts=('mkinitcpio<0.7') +depends=('glibc') +backup=('etc/mdadm.conf') +source=(ftp://ftp.kernel.org/pub/linux/utils/raid/mdadm/mdadm-$pkgver.tar.bz2 + mdadm + mdadm.conf + mdadm_install + mdadm_hook + disable-werror.patch + linux-3.0.patch) +install=mdadm.install +replaces=('raidtools') +md5sums=('12ee2fbf3beddb60601fb7a4c4905651' + '6df172c8f77b280018cf87eb3d313f29' + '00cbed931db4f15b6ce49e3e7d433966' + '4bb000166fb13e82ceaa2422fdfaac7e' + '36f7cc564ed3267888d90208e0eb7adc' + '4ad87b74a4bc9a34621280abe0e0c3e4' + 'c499b3edbf2c400c8a1984e18c7ce7fa') + +build() { + cd $srcdir/$pkgname-$pkgver + patch -Np0 -i ../disable-werror.patch + patch -Np1 -i ../linux-3.0.patch + make CXiFLAGS="$CFLAGS" +} + +package() { + cd $srcdir/$pkgname-$pkgver + make INSTALL=/bin/install DESTDIR=$pkgdir install + install -D -m644 ../mdadm.conf $pkgdir/etc/mdadm.conf + install -D -m755 ../mdadm $pkgdir/etc/rc.d/mdadm + install -D -m644 ../mdadm_install $pkgdir/lib/initcpio/install/mdadm + install -D -m644 ../mdadm_hook $pkgdir/lib/initcpio/hooks/mdadm + # symlink for backward compatibility + ln -sf /lib/initcpio/hooks/mdadm $pkgdir/lib/initcpio/hooks/raid +} diff --git a/testing/mdadm/disable-werror.patch b/testing/mdadm/disable-werror.patch new file mode 100644 index 000000000..50a33f19d --- /dev/null +++ b/testing/mdadm/disable-werror.patch @@ -0,0 +1,11 @@ +--- Makefile.old 2011-06-17 09:38:03.269238332 +0200 ++++ Makefile 2011-06-17 09:38:14.122398837 +0200 +@@ -42,7 +42,7 @@ + + CC = $(CROSS_COMPILE)gcc + CXFLAGS = -ggdb +-CWFLAGS = -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter ++CWFLAGS = -Wall -Wstrict-prototypes -Wextra -Wno-unused-parameter + ifdef WARN_UNUSED + CWFLAGS += -Wp,-D_FORTIFY_SOURCE=2 -O + endif diff --git a/testing/mdadm/linux-3.0.patch b/testing/mdadm/linux-3.0.patch new file mode 100644 index 000000000..cd9d5473c --- /dev/null +++ b/testing/mdadm/linux-3.0.patch @@ -0,0 +1,45 @@ +From f161d047eed634b3380262767f955eb888502e88 Mon Sep 17 00:00:00 2001 +From: NeilBrown <neilb@suse.de> +Date: Fri, 17 Jun 2011 22:49:24 +1000 +Subject: [PATCH 1/1] util: correctly parse shorter linux version numbers. + +The next version of Linux might be 3.0. If it is, get_linux_version +will fail. +So make it more robust. + +Reported-by: Namhyung Kim <namhyung@gmail.com> +Reported-by: Milan Broz <mbroz@redhat.com> +Signed-off-by: NeilBrown <neilb@suse.de> +--- + util.c | 10 +++++----- + 1 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/util.c b/util.c +index 10bbe56..55d171a 100644 +--- a/util.c ++++ b/util.c +@@ -146,16 +146,16 @@ int get_linux_version() + { + struct utsname name; + char *cp; +- int a,b,c; ++ int a = 0, b = 0,c = 0; + if (uname(&name) <0) + return -1; + + cp = name.release; + a = strtoul(cp, &cp, 10); +- if (*cp != '.') return -1; +- b = strtoul(cp+1, &cp, 10); +- if (*cp != '.') return -1; +- c = strtoul(cp+1, NULL, 10); ++ if (*cp == '.') ++ b = strtoul(cp+1, &cp, 10); ++ if (*cp == '.') ++ c = strtoul(cp+1, &cp, 10); + + return (a*1000000)+(b*1000)+c; + } +-- +1.7.2.3 + diff --git a/testing/mdadm/mdadm b/testing/mdadm/mdadm new file mode 100755 index 000000000..e196f3642 --- /dev/null +++ b/testing/mdadm/mdadm @@ -0,0 +1,37 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -o %PPID /sbin/mdadm` +case "$1" in + start) + stat_busy "Starting mdadm RAID Monitor" + if [ -z "$PID" ]; then + /sbin/mdadm --monitor --scan -i /var/run/mdadm.pid -f + fi + if [ ! -z "$PID" -o $? -gt 0 ]; then + stat_fail + else + add_daemon mdadm + stat_done + fi + ;; + stop) + stat_busy "Stopping mdadm RAID Monitor" + [ ! -z "$PID" ] && kill $PID &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon mdadm + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac diff --git a/testing/mdadm/mdadm.conf b/testing/mdadm/mdadm.conf new file mode 100644 index 000000000..57bd4c683 --- /dev/null +++ b/testing/mdadm/mdadm.conf @@ -0,0 +1,67 @@ +# mdadm configuration file +# +# mdadm will function properly without the use of a configuration file, +# but this file is useful for keeping track of arrays and member disks. +# In general, a mdadm.conf file is created, and updated, after arrays +# are created. This is the opposite behavior of /etc/raidtab which is +# created prior to array construction. +# +# +# the config file takes two types of lines: +# +# DEVICE lines specify a list of devices of where to look for +# potential member disks +# +# ARRAY lines specify information about how to identify arrays so +# so that they can be activated +# + + +# You can have more than one device line and use wild cards. The first +# example includes SCSI the first partition of SCSI disks /dev/sdb, +# /dev/sdc, /dev/sdd, /dev/sdj, /dev/sdk, and /dev/sdl. The second +# line looks for array slices on IDE disks. +# +#DEVICE /dev/sd[bcdjkl]1 +#DEVICE /dev/hda1 /dev/hdb1 +# +# The designation "partitions" will scan all partitions found in +# /proc/partitions +DEVICE partitions + + +# ARRAY lines specify an array to assemble and a method of identification. +# Arrays can currently be identified by using a UUID, superblock minor number, +# or a listing of devices. +# +# super-minor is usually the minor number of the metadevice +# UUID is the Universally Unique Identifier for the array +# Each can be obtained using +# +# mdadm -D <md> +# +# To capture the UUIDs for all your RAID arrays to this file, run these: +# to get a list of running arrays: +# # mdadm -D --scan >>/etc/mdadm.conf +# to get a list from superblocks: +# # mdadm -E --scan >>/etc/mdadm.conf +# +#ARRAY /dev/md0 UUID=3aaa0122:29827cfa:5331ad66:ca767371 +#ARRAY /dev/md1 super-minor=1 +#ARRAY /dev/md2 devices=/dev/hda1,/dev/hdb1 +# +# ARRAY lines can also specify a "spare-group" for each array. mdadm --monitor +# will then move a spare between arrays in a spare-group if one array has a +# failed drive but no spare +#ARRAY /dev/md4 uuid=b23f3c6d:aec43a9f:fd65db85:369432df spare-group=group1 +#ARRAY /dev/md5 uuid=19464854:03f71b1b:e0df2edd:246cc977 spare-group=group1 +# + + +# When used in --follow (aka --monitor) mode, mdadm needs a +# mail address and/or a program. To start mdadm's monitor mode, add +# "mdadm" to your DAEMONS array in /etc/rc.conf +# +# If the lines are not found, mdadm will exit quietly +#MAILADDR root@mydomain.tld +#PROGRAM /usr/sbin/handle-mdadm-events diff --git a/testing/mdadm/mdadm.install b/testing/mdadm/mdadm.install new file mode 100644 index 000000000..e8404c260 --- /dev/null +++ b/testing/mdadm/mdadm.install @@ -0,0 +1,10 @@ +# arg 1: the new package version +# arg 2: the old package version + +post_upgrade() { + if [ "$(vercmp $2 2.6.8-2)" -lt 0 -a "$(grep raid_partitions /etc/mkinitcpio.conf)" ]; then + echo "Attention mdadm update:" + echo "raid_partitions hook has been replaced by the more powerfull mdadm hook." + echo "Please update your /etc/mkinitcpio.conf accordingly." + fi +} diff --git a/testing/mdadm/mdadm_hook b/testing/mdadm/mdadm_hook new file mode 100755 index 000000000..1d217a5a8 --- /dev/null +++ b/testing/mdadm/mdadm_hook @@ -0,0 +1,42 @@ +# vim: set ft=sh: +run_hook () +{ + input="$(cat /proc/cmdline)" + mdconfig="/etc/mdadm.conf" + # for partitionable raid, we need to load md_mod first! + modprobe md_mod 2>/dev/null + # If md is specified on commandline, create config file from those parameters. + if [ "$(echo $input | grep "md=")" ]; then + #Create initial mdadm.conf + # scan all devices in /proc/partitions + echo DEVICE partitions > $mdconfig + for i in $input; do + case $i in + # raid + md=[0-9]*,/*) + device="$(echo "$i" | sed -e 's|,/.*||g' -e 's|=||g')" + array="$(echo $i | cut -d, -f2-)" + echo "ARRAY /dev/$device devices=$array" >> $mdconfig + ;; + # partitionable raid + md=d[0-9]*,/*) + device="$(echo "$i" | sed -e 's|,/.*||g' -e 's|=|_|g')" + array="$(echo $i | cut -d, -f2-)" + echo "ARRAY /dev/$device devices=$array" >> $mdconfig + ;; + # raid UUID + md=[0-9]*,[0-9,a-z]*) + device="$(echo "$i" | sed -e 's|,.*||g' -e 's|=||g')" + array="$(echo $i | cut -d, -f2-)" + echo "ARRAY /dev/$device UUID=$array" >> $mdconfig + ;; + # partitionable raid UUID + md=d[0-9]*,[0-9,a-z]*) + device="$(echo "$i" | sed -e 's|,.*||g' -e 's|=|_|g')" + array="$(echo $i | cut -d, -f2-)" + echo "ARRAY /dev/$device UUID=$array" >> $mdconfig + ;; + esac + done + fi +} diff --git a/testing/mdadm/mdadm_install b/testing/mdadm/mdadm_install new file mode 100644 index 000000000..f351cb292 --- /dev/null +++ b/testing/mdadm/mdadm_install @@ -0,0 +1,46 @@ +# vim: set ft=sh: + +build() +{ + MODULES=" $(checked_modules "drivers/md/*" | grep -v "dm-") " + BINARIES="" + FILES="" + SCRIPT="mdadm" + # check if a custom mdadm.conf exists + if grep -q ^ARRAY /etc/mdadm.conf; then + echo "Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays." + add_file "/etc/mdadm.conf" + fi + add_binary "/sbin/mdadm" + add_file "/lib/udev/rules.d/64-md-raid.rules" +} + +help () +{ +cat<<HELPEOF + This hook loads the necessary modules for any raid root device, + and assembles the raid device when run. + + If arrays are defined in /etc/mdadm.conf, the file will be used instead + of command line assembling. + + Command Line Setup: + - for raid arrays with persistent superblocks: + md=<md device no.>,dev0,dev1,...,devn + md=<md device no.>,uuid + - for partitionable raid arrays with persistent superblocks: + md=d<md device no.>,dev0,dev1,...,devn + md=d<md device no.>,uuid + + Parameters: + - <md device no.> = the number of the md device: + 0 means md0, 1 means md1, ... + - <dev0-devn>: e.g. /dev/hda1,/dev/hdc1,/dev/sda1,/dev/sdb1 + or 0900878d:f95f6057:c39a36e9:55efa60a + Examples: + - md=d0,/dev/sda3,/dev/sda4 md=d1,/dev/hda1,/dev/hdb1 + This will setup 2 md partitionable arrays. + - md=0,/dev/sda3,/dev/sda4 md=1,/dev/hda1,/dev/hdb1 + This will setup 2 md arrays with persistent superblocks. +HELPEOF +} diff --git a/testing/pcmciautils/PKGBUILD b/testing/pcmciautils/PKGBUILD new file mode 100644 index 000000000..fee30155d --- /dev/null +++ b/testing/pcmciautils/PKGBUILD @@ -0,0 +1,27 @@ +# $Id: PKGBUILD 134400 2011-08-03 16:55:02Z tomegun $ +# Maintainer: Tobias Powalowski <tpowa@archlinux.org> +pkgname=pcmciautils +pkgver=018 +pkgrel=1 +pkgdesc="Utilities for inserting and removing PCMCIA cards" +arch=(i686 x86_64) +url="http://kernel.org/pub/linux/utils/kernel/pcmcia/pcmcia.html" +license=('GPL') +groups=('base') +# 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) +options=(!makeflags) + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -i -e 's,/usr/bin/install,/bin/install,g' Makefile + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} +md5sums=('5d85669b3440baa4532363da6caaf1b4') |