diff options
327 files changed, 2534 insertions, 13758 deletions
diff --git a/community-staging/hostapd/PKGBUILD b/community-staging/hostapd/PKGBUILD deleted file mode 100644 index 4442002cd..000000000 --- a/community-staging/hostapd/PKGBUILD +++ /dev/null @@ -1,81 +0,0 @@ -# $Id: PKGBUILD 64270 2012-02-11 04:20:10Z heftig $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> - -_madwifiver=0.9.4.4133 -pkgname=hostapd -pkgver=0.7.3 -pkgrel=6 -pkgdesc="daemon for wireless software access points" -arch=('i686' 'x86_64') -url="http://hostap.epitest.fi/hostapd/" -license=('custom') -depends=('openssl' 'libnl') -makedepends=() -provides=('hostapd') -conflicts=('hostapd') -backup=('etc/hostapd/hostapd.conf' - 'etc/conf.d/hostapd' - 'etc/hostapd/hlr_auc_gw.milenage_db' - 'etc/hostapd/hostapd.accept' - 'etc/hostapd/hostapd.deny' - 'etc/hostapd/hostapd.eap_user' - 'etc/hostapd/hostapd.radius_clients' - 'etc/hostapd/hostapd.sim_db' - 'etc/hostapd/hostapd.vlan' - 'etc/hostapd/hostapd.wpa_psk' - 'etc/hostapd/wired.conf') -install=hostapd.install -source=(http://hostap.epitest.fi/releases/$pkgname-$pkgver.tar.gz - ftp://ftp.archlinux.org/other/madwifi/madwifi-${_madwifiver}.tar.bz2 - hostap_allow-linking-with-libnl-3.2.patch - config.bz2 - hostapd - hostapd.conf.d) -md5sums=('91a7c8d0f090b7104152d3455a84c112' - 'ca3c3504d000e7b3d7063af46271c932' - 'e904e62b12c5d64132dd9441e8b45dce' - 'aa86f89f51b39cea75a8c15f7b376a67' - 'd570327c385f34a4af24d3a0d61cea19' - 'f169534b0f59b341f6df1a21e0344511') - -build() { - cd $srcdir/$pkgname-$pkgver - patch -Np1 -i "$srcdir/hostap_allow-linking-with-libnl-3.2.patch" - - cd hostapd - cp ../../config ./.config - - sed -i "s|/usr|$srcdir/madwifi|" .config - sed -i "s|/usr/local/bin|$pkgdir/usr/bin|" Makefile - - mkdir -p $pkgdir/usr/bin $pkgdir/etc/hostapd \ - $pkgdir/usr/man/man1 $pkgdir/usr/man/man8 \ - $pkgdir/usr/share/licenses/$pkgname $pkgdir/etc/rc.d - - make -} - -package() { - cd $srcdir/$pkgname-$pkgver/hostapd - make DESTDIR=$pkg install - - cp hlr_auc_gw.milenage_db $pkgdir/etc/hostapd - cp hostapd.accept $pkgdir/etc/hostapd - cp hostapd.conf $pkgdir/etc/hostapd - cp hostapd.deny $pkgdir/etc/hostapd - cp hostapd.eap_user $pkgdir/etc/hostapd - cp hostapd.radius_clients $pkgdir/etc/hostapd - cp hostapd.sim_db $pkgdir/etc/hostapd - cp hostapd.vlan $pkgdir/etc/hostapd - cp hostapd.wpa_psk $pkgdir/etc/hostapd - cp wired.conf $pkgdir/etc/hostapd - cp hostapd.8 $pkgdir/usr/man/man8 - cp hostapd_cli.1 $pkgdir/usr/man/man1 - cp ../COPYING $pkgdir/usr/share/licenses/hostapd - cp ../../hostapd $pkgdir/etc/rc.d - mkdir -p $pkgdir/etc/conf.d - cp ../../hostapd.conf.d $pkgdir/etc/conf.d/hostapd - - mv $pkgdir/usr/man $pkgdir/usr/share/ - sed -i 's#/etc/hostapd#/etc/hostapd/hostapd#' $pkgdir/etc/hostapd/hostapd.conf -} diff --git a/community-staging/hostapd/config.bz2 b/community-staging/hostapd/config.bz2 Binary files differdeleted file mode 100644 index d11df0bd5..000000000 --- a/community-staging/hostapd/config.bz2 +++ /dev/null diff --git a/community-staging/hostapd/hostap_allow-linking-with-libnl-3.2.patch b/community-staging/hostapd/hostap_allow-linking-with-libnl-3.2.patch deleted file mode 100644 index 8e7cd9a97..000000000 --- a/community-staging/hostapd/hostap_allow-linking-with-libnl-3.2.patch +++ /dev/null @@ -1,42 +0,0 @@ -Subject: [RFC] hostap: Allow linking with libnl-3. -Date: Tue, 15 Nov 2011 14:30:04 -0000 -From: Ben Greear <greearb@candelatech.com> - -I needed this patch to compile against the latest -libnl code. I added this to my config file: - -CONFIG_LIBNL32=y - -Signed-hostap: Ben Greear <greearb@candelatech.com> -rediffed against 0.7.3 by Stefan Lippers-Hollmann <s.l-h@gmx.de> - ---- -:100644 100644 5caeec5... 0cc81f9... M src/drivers/drivers.mak - src/drivers/drivers.mak | 21 ++++++++++++++------- - 2 files changed, 29 insertions(+), 14 deletions(-) - ---- a/src/drivers/drivers.mak -+++ b/src/drivers/drivers.mak -@@ -31,11 +31,18 @@ NEED_SME=y - NEED_AP_MLME=y - NEED_NETLINK=y - NEED_LINUX_IOCTL=y --DRV_LIBS += -lnl -+ifdef CONFIG_LIBNL32 -+ DRV_LIBS += -lnl-3 -+ DRV_LIBS += -lnl-genl-3 -+ DRV_CFLAGS += -DCONFIG_LIBNL20 -+ DRV_CFLAGS += -I/usr/include/libnl3/ -+else -+ DRV_LIBS += -lnl - --ifdef CONFIG_LIBNL20 --DRV_LIBS += -lnl-genl --DRV_CFLAGS += -DCONFIG_LIBNL20 -+ ifdef CONFIG_LIBNL20 -+ DRV_LIBS += -lnl-genl -+ DRV_CFLAGS += -DCONFIG_LIBNL20 -+ endif - endif - endif - diff --git a/community-staging/hostapd/hostapd b/community-staging/hostapd/hostapd deleted file mode 100644 index b4709d7bf..000000000 --- a/community-staging/hostapd/hostapd +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/hostapd - -case "$1" in - start) - stat_busy "Starting hostapd" - /usr/bin/hostapd -B -P ${HOSTAPD_PID} ${HOSTAPD_CONF} &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - add_daemon hostapd - fi - ;; - stop) - stat_busy "Stopping hostapd" - [ -f ${HOSTAPD_PID} ] && kill `cat ${HOSTAPD_PID}` &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - rm_daemon hostapd - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/community-staging/hostapd/hostapd.conf.d b/community-staging/hostapd/hostapd.conf.d deleted file mode 100644 index 7a7bbc806..000000000 --- a/community-staging/hostapd/hostapd.conf.d +++ /dev/null @@ -1,2 +0,0 @@ -HOSTAPD_PID="/var/run/hostapd.pid" -HOSTAPD_CONF="/etc/hostapd/hostapd.conf" diff --git a/community-staging/hostapd/hostapd.install b/community-staging/hostapd/hostapd.install deleted file mode 100644 index 801187e71..000000000 --- a/community-staging/hostapd/hostapd.install +++ /dev/null @@ -1,20 +0,0 @@ -post_install() { - echo "> Note: You will find some config examples in" - echo "> /etc/hostapd. The default location of several" - echo "> key configuration files for hostapd are in" - echo "> /etc/hostapd as well. They are:" - echo "> hostapd.conf --> primary configuration file" - echo "> hostapd.allow --> MAC allow list" - echo "> hostapd.deny --> MAC deny list" - echo "> Also, note that there are some self-explanatory" - echo "> examples in the directory. Feel free to change the mac" - echo "> list location by defining it differently in your hostapd.conf" - echo "> file. Please, note, however. The daemon start/stop" - echo "> script assumes you have a working config file at" - echo "> /etc/hostapd/hostapd.conf. One final thing to remember." - echo "> You need to install madwifi if you want support for it." -} - -post_upgrade() { - post_install -} diff --git a/community-staging/knemo/PKGBUILD b/community-staging/knemo/PKGBUILD deleted file mode 100644 index e4b1f4173..000000000 --- a/community-staging/knemo/PKGBUILD +++ /dev/null @@ -1,40 +0,0 @@ -# $Id: PKGBUILD 64272 2012-02-11 04:40:09Z heftig $ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: Stefano Zamprogno <stefano dot zamprogno at gmail dot com> - -pkgname=knemo -pkgver=0.7.3 -pkgrel=2 -pkgdesc="The KDE Network Monitor" -arch=('i686' 'x86_64') -url="http://www.kde-apps.org/content/show.php?content=12956" -license=('GPL') -depends=('kdebase-workspace' 'wireless_tools' 'iw' 'libnl1' - 'gtk-update-icon-cache') -makedepends=('cmake' 'automoc4') -install=${pkgname}.install -options=('libtool') -source=("http://www.kde-apps.org/CONTENT/content-files/12956-${pkgname}-${pkgver}.tar.bz2") -md5sums=('24b5ec27b862ed7026ff643193952b78') - -build() { - cd ${srcdir} - - mkdir build - cd build - cmake ../${pkgname}-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=ON \ - -DCMAKE_INSTALL_PREFIX=/usr - make -} - -package() { - cd ${srcdir}/build - - make DESTDIR=${pkgdir} install - - # remove knemo autostart - rm -rf ${pkgdir}/usr/share/autostart -} diff --git a/community-staging/knemo/knemo.install b/community-staging/knemo/knemo.install deleted file mode 100644 index 0fbb3047a..000000000 --- a/community-staging/knemo/knemo.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} - -post_upgrade() { - post_install -} - -post_remove() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} diff --git a/community-staging/libvirt/PKGBUILD b/community-staging/libvirt/PKGBUILD new file mode 100644 index 000000000..f5f73cd0e --- /dev/null +++ b/community-staging/libvirt/PKGBUILD @@ -0,0 +1,88 @@ +# $Id: PKGBUILD 64468 2012-02-14 07:05:10Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Jonathan Wiersma <archaur at jonw dot org> + +pkgname=libvirt +pkgver=0.9.10 +pkgrel=1 +pkgdesc="API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)" +arch=('i686' 'x86_64') +url="http://libvirt.org/" +license=('LGPL') +depends=('e2fsprogs' 'gnutls' 'iptables' 'libxml2' 'parted' 'polkit' 'python2' + 'avahi' 'yajl' 'libpciaccess' 'udev' 'dbus-core' 'libxau' 'libxdmcp' 'libpcap' + 'curl' 'libsasl' 'libgcrypt' 'libgpg-error' 'openssl' 'libxcb' 'gcc-libs' + 'iproute2' 'netcf' 'libnl1') +makedepends=('pkgconfig' 'lvm2') +optdepends=('bridge-utils: for briged networking (default)' + 'dnsmasq: for NAT/DHCP for guests' + 'kvm' + 'openbsd-netcat: for remote management over ssh' + 'qemu' + 'radvd' + 'dmidecode') +options=('emptydirs' '!libtool') +backup=('etc/conf.d/libvirtd' + 'etc/conf.d/libvirtd-guests' + 'etc/libvirt/libvirtd.conf' + 'etc/libvirt/libvirt.conf' + 'etc/libvirt/qemu.conf' + 'etc/sasl2/libvirt.conf') +install="libvirt.install" +source=("http://libvirt.org/sources/$pkgname-$pkgver.tar.gz" + libvirtd.rc.d + libvirtd.conf.d + libvirtd-guests.rc.d + libvirtd-guests.conf.d + openbsd-netcat-default.patch + unixperms.patch + yajl-2.x.patch) +md5sums=('a424bb793521e637349da47e93dd5fff' + 'c43244c40a0437038c82089618e7beaa' + '3ed0e24f5b5e25bf553f5427d64915e6' + '737ec24aa56871fbabfa892789457db4' + 'bc2971dacdbac967fc3474e50affc345' + 'b0be50eb9dfe4d133decf23b60880f7d' + 'db95aecdf2ccf3693fef5821cdcb7eba' + '5745bb8d0b254abb7a3528c66e03b0f9') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # python2 fix + export PYTHON=`which python2` + for file in $(find . -name '*.py' -print); do + sed -i 's_#!.*/usr/bin/python_#!/usr/bin/python2_' $file + sed -i 's_#!.*/usr/bin/env.*python_#!/usr/bin/env python2_' $file + done + +# for more information on authentication see http://libvirt.org/auth.html +# If you wish to have unix-permissions based access rather than only polkit +# access, create a group called libvirt and uncomment the line below: +# patch -Np1 -i "$srcdir"/unixperms.patch + + [ $NOEXTRACT -eq 1 ] || patch -Np1 -i "$srcdir"/openbsd-netcat-default.patch + + # fixes for yajl 2.0 API changes +# [ $NOEXTRACT -eq 1 ] || patch -Np1 -i "$srcdir/yajl-2.x.patch" + + export LDFLAGS=-lX11 + [ -f Makefile ] || ./configure --prefix=/usr --libexec=/usr/lib/"$pkgname" \ + --with-storage-lvm --without-xen --with-udev --without-hal --disable-static + find -name Makefile -exec sed -i 's#-L /usr#-L/usr#' {} \; + make -j1 +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + + install -D -m755 "$srcdir"/libvirtd.rc.d "$pkgdir"/etc/rc.d/libvirtd + install -D -m644 "$srcdir"/libvirtd.conf.d "$pkgdir"/etc/conf.d/libvirtd + + install -D -m755 "$srcdir"/libvirtd-guests.rc.d "$pkgdir"/etc/rc.d/libvirtd-guests + install -D -m644 "$srcdir"/libvirtd-guests.conf.d "$pkgdir"/etc/conf.d/libvirtd-guests + + rm -rf $pkgdir/var/run +} diff --git a/community-staging/libvirt/libvirt.install b/community-staging/libvirt/libvirt.install new file mode 100644 index 000000000..3881386d2 --- /dev/null +++ b/community-staging/libvirt/libvirt.install @@ -0,0 +1,38 @@ +_libvirt_setup() { + rm -f /usr/lib/python?.?/site-packages/libvirt.pyc + echo ">>> To use libvirt as a non-root user:" + echo ">>> Use polkit to grant access." + echo ">>> ...or change the access model in /etc/libvirt/libvirtd.conf." + echo ">>> (see unixperms.patch in PKGBUILD for help)" + echo "" +} + +post_install() { + _libvirt_setup || return 1 + echo ">>> Be sure to see optdepends as you may find some of them helpfull." + echo ">>> Especially: bridge-utils, dnsmasq, and hal." + echo "" + echo ">>> To start libvirtd run: '/etc/rc.d/libvirtd start' as root." + echo ">>> Add 'libvirtd' to daemons in /etc/rc.conf if you want it to load upon" + echo ">>> booting." + echo "" + /bin/true +} + +post_upgrade() { + _libvirt_setup || return 1 + echo ">>> To finish the upgrade, restart libvirtd by running the command:" + echo ">>> '/etc/rc.d/libvirtd restart' as root or rebooting." + echo ">>> You may also need to run 'rm -rf ~/.libvirt'" + echo "" + /bin/true +} + +post_remove() { + rm -f /usr/lib/python[0-9].[0-9]/site-packages/libvirt.pyc + echo ">>> You may wish to delete the group 'libvirt' if it still exists." + echo ">>> It can be removed by running 'groupdel libvirt' as root." + echo "" + depmod -a + /bin/true +} diff --git a/community-staging/libvirt/libvirtd-guests.conf.d b/community-staging/libvirt/libvirtd-guests.conf.d new file mode 100644 index 000000000..02a933715 --- /dev/null +++ b/community-staging/libvirt/libvirtd-guests.conf.d @@ -0,0 +1,11 @@ +LIBVIRTD_STOP_ACTION=suspend + +#LIBVIRTD_URI="-c qemu+ssh://user@host/system" +LIBVIRTD_URI="" + +#LIBVIRTD_BYPASS_CACHE="--bypass-cache" +LIBVIRTD_BYPASS_CACHE="" + +LIBVIRTD_START_DELAY=0 + +LIBVIRTD_SHUTDOWN_TIMEOUT=3 diff --git a/community-staging/libvirt/libvirtd-guests.rc.d b/community-staging/libvirt/libvirtd-guests.rc.d new file mode 100644 index 000000000..b4331964a --- /dev/null +++ b/community-staging/libvirt/libvirtd-guests.rc.d @@ -0,0 +1,107 @@ +#!/bin/bash + +. /etc/conf.d/libvirtd-guests +. /etc/rc.conf +. /etc/rc.d/functions + +LIBVIRTD_LISTFILE="/var/state/libvirtd/vm-list" + +# get guest state by name +libvirt_get_guest_state() +{ + virsh $LIBVIRTD_URI dominfo "$1" | grep -E '^State:' | awk '{print $2}' +} + +# list IDs of running guests +libvirt_list() +{ + virsh $LIBVIRTD_URI list | awk 'NR > 2 {print $2}' +} + +# suspend guest by name +libvirt_suspend() +{ + virsh $LIBVIRTD_URI $LIBVIRTD_BYPASS_CACHE managedsave "$1" >/dev/null + timeout=$LIBVIRTD_SHUTDOWN_TIMEOUT + while [ "$timeout" -gt 0 ]; do + sleep 1 + timeout=$((timeout - 1)) + state=`libvirt_get_guest_state "$1"` + [ "x$state" == "xshut" ] && return 0 + done + return 1 +} + +# shutdown guest by name +libvirt_shutdown() +{ + virsh $LIBVIRTD_URI shutdown "$1" >/dev/null + timeout=$LIBVIRTD_SHUTDOWN_TIMEOUT + while [ "$timeout" -gt 0 ]; do + sleep 1 + timeout=$((timeout - 1)) + state=`libvirt_get_guest_state "$1"` + [ "x$state" != "xshut" ] && return 0 + done + return 1 +} + +# start guest by name +libvirt_start() +{ + virsh $LIBVIRTD_URI $LIBVIRTD_BYPASS_CACHE start "$1" >/dev/null +} + +# stop all guests +libvirt_stop_all() +{ + mkdir -p `dirname $LIBVIRTD_LISTFILE` + echo -n >$LIBVIRTD_LISTFILE + for i in `libvirt_list`; do + if [ "x$LIBVIRTD_STOP_ACTION" == "xsuspend" ]; then + stat_busy "Suspending libvirtd/$i guest" + libvirt_suspend "$i" + else + stat_busy "Shutting libvirtd/$i guest down" + libvirt_shutdown "$i" + fi + [ $? -eq 0 ] && stat_done || stat_fail + echo $i >>$LIBVIRTD_LISTFILE + done +} + +# start all guests +libvirt_start_all() +{ + if [ -f $LIBVIRTD_LISTFILE ]; then + for i in `cat $LIBVIRTD_LISTFILE`; do + stat_busy "Starting/resuming libvirtd/$i guest" + libvirt_start "$i" + [ $? -eq 0 ] && { sleep $LIBVIRTD_START_DELAY; stat_done; } || stat_fail + done + fi + rm -f $LIBVIRTD_LISTFILE +} + +# main +LC_ALL=C +LANG=C +case "$1" in + start) + libvirt_start_all + add_daemon libvirtd-guests + ;; + stop) + libvirt_stop_all + rm_daemon libvirtd-guests + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + *) + echo $"Usage: $0 {start|stop|restart}" + ;; +esac +exit 0 diff --git a/community-staging/libvirt/libvirtd.conf.d b/community-staging/libvirt/libvirtd.conf.d new file mode 100644 index 000000000..d4d25b47a --- /dev/null +++ b/community-staging/libvirt/libvirtd.conf.d @@ -0,0 +1,3 @@ +LIBVIRTD_CONFIG="/etc/libvirt/libvirtd.conf" +LIBVIRTD_ARGS="-p /var/run/libvirtd.pid" +KRB5_KTNAME="/etc/libvirt/krb5.tab" diff --git a/community-staging/libvirt/libvirtd.rc.d b/community-staging/libvirt/libvirtd.rc.d new file mode 100644 index 000000000..193bffa9c --- /dev/null +++ b/community-staging/libvirt/libvirtd.rc.d @@ -0,0 +1,66 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/conf.d/libvirtd +. /etc/rc.d/functions + +LIBVIRTD_CONFIG_ARGS= +if [ -n "$LIBVIRTD_CONFIG" ] +then + LIBVIRTD_CONFIG_ARGS="--config $LIBVIRTD_CONFIG" +fi + +PID=`pidof -o %PPID /usr/sbin/libvirtd` +case "$1" in + start) + stat_busy "Starting libvirtd" + export RADVD=/usr/sbin/radvd + for i in /var/run/libvirt/qemu /var/run/libvirt/lxc /var/run/libvirt/uml /var/run/libvirt/network; do + [ -d $i ] || mkdir -p $i + done + [ -z "$PID" ] && ( + mkdir -p /var/{cache,run}/libvirt + rm -rf /var/cache/libvirt/* + KRB5_KTNAME=$KRB5_KTNAME \ + /usr/sbin/libvirtd --daemon $LIBVIRTD_CONFIG_ARGS $LIBVIRTD_ARGS + ) + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon libvirtd + stat_done + fi + ;; + stop) + stat_busy "Stopping libvirtd" + [ ! -z "$PID" ] && ( + kill $PID &> /dev/null + rm -rf /var/cache/libvirt/* + rm -f /var/run/libvirtd.pid + ) + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon libvirtd + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + reload) + stat_busy "Reloading libvirtd configuration" + [ ! -z "$PID" ] && kill -HUP $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + ;; + *) + echo $"Usage: $0 {start|stop|restart|reload}" + ;; +esac +exit 0 diff --git a/community-staging/libvirt/openbsd-netcat-default.patch b/community-staging/libvirt/openbsd-netcat-default.patch new file mode 100644 index 000000000..a01b4f14e --- /dev/null +++ b/community-staging/libvirt/openbsd-netcat-default.patch @@ -0,0 +1,36 @@ +diff -wbBur libvirt-0.9.7/src/qemu/qemu_migration.c libvirt-0.9.7.my/src/qemu/qemu_migration.c +--- libvirt-0.9.7/src/qemu/qemu_migration.c 2011-10-31 07:46:04.000000000 +0400 ++++ libvirt-0.9.7.my/src/qemu/qemu_migration.c 2011-11-08 15:46:10.000000000 +0400 +@@ -1589,7 +1589,7 @@ + spec->dest.unix_socket.file); + } else { + const char *args[] = { +- "nc", "-U", spec->dest.unix_socket.file, NULL ++ "nc.openbsd", "-U", spec->dest.unix_socket.file, NULL + }; + ret = qemuMonitorMigrateToCommand(priv->mon, migrate_flags, args); + } +diff -wbBur libvirt-0.9.7/src/remote/remote_driver.c libvirt-0.9.7.my/src/remote/remote_driver.c +--- libvirt-0.9.7/src/remote/remote_driver.c 2011-11-08 07:53:30.000000000 +0400 ++++ libvirt-0.9.7.my/src/remote/remote_driver.c 2011-11-08 15:46:10.000000000 +0400 +@@ -614,7 +614,7 @@ + username, + !tty, + !verify, +- netcat ? netcat : "nc", ++ netcat ? netcat : "nc.openbsd", + keyfile, + sockname))) + goto failed; +diff -wbBur libvirt-0.9.7/src/rpc/virnetsocket.c libvirt-0.9.7.my/src/rpc/virnetsocket.c +--- libvirt-0.9.7/src/rpc/virnetsocket.c 2011-11-08 07:53:30.000000000 +0400 ++++ libvirt-0.9.7.my/src/rpc/virnetsocket.c 2011-11-08 15:46:31.000000000 +0400 +@@ -642,7 +642,7 @@ + virCommandAddArgList(cmd, "-o", "StrictHostKeyChecking=no", NULL); + + if (!netcat) +- netcat = "nc"; ++ netcat = "nc.openbsd"; + + virCommandAddArgList(cmd, nodename, "sh", "-c", NULL); + diff --git a/community-staging/libvirt/unixperms.patch b/community-staging/libvirt/unixperms.patch new file mode 100644 index 000000000..b3fb86cf5 --- /dev/null +++ b/community-staging/libvirt/unixperms.patch @@ -0,0 +1,47 @@ +diff -ur libvirt-0.7.4-orig/daemon/libvirtd.conf libvirt-0.7.4-patched/daemon/libvirtd.conf +--- libvirt-0.7.4-orig/daemon/libvirtd.conf 2009-11-23 03:10:33.398655655 -0800 ++++ libvirt-0.7.4-patched/daemon/libvirtd.conf 2009-11-23 03:09:37.831189671 -0800 +@@ -78,14 +78,14 @@ + # without becoming root. + # + # This is restricted to 'root' by default. +-#unix_sock_group = "libvirt" ++unix_sock_group = "libvirt" + + # Set the UNIX socket permissions for the R/O socket. This is used + # for monitoring VM status only + # + # Default allows any user. If setting group ownership may want to + # restrict this to: +-#unix_sock_ro_perms = "0777" ++unix_sock_ro_perms = "0770" + + # Set the UNIX socket permissions for the R/W socket. This is used + # for full management of VMs +@@ -95,7 +95,7 @@ + # + # If not using PolicyKit and setting group ownership for access + # control then you may want to relax this to: +-#unix_sock_rw_perms = "0770" ++unix_sock_rw_perms = "0770" + + # Set the name of the directory in which sockets will be found/created. + #unix_sock_dir = "/var/run/libvirt" +@@ -126,7 +126,7 @@ + # + # To restrict monitoring of domains you may wish to enable + # an authentication mechanism here +-#auth_unix_ro = "none" ++auth_unix_ro = "none" + + # Set an authentication scheme for UNIX read-write sockets + # By default socket permissions only allow root. If PolicyKit +@@ -135,7 +135,7 @@ + # + # If the unix_sock_rw_perms are changed you may wish to enable + # an authentication mechanism here +-#auth_unix_rw = "none" ++auth_unix_rw = "none" + + # Change the authentication scheme for TCP sockets. + # diff --git a/community-staging/libvirt/yajl-2.x.patch b/community-staging/libvirt/yajl-2.x.patch new file mode 100644 index 000000000..80d3edce0 --- /dev/null +++ b/community-staging/libvirt/yajl-2.x.patch @@ -0,0 +1,66 @@ +--- a/src/util/json.c 2011-03-24 03:10:26.000000000 -0400 ++++ b/src/util/json.c 2011-04-25 20:01:29.354939116 -0400 +@@ -709,7 +709,7 @@ + + static int virJSONParserHandleNumber(void * ctx, + const char * s, +- unsigned int l) ++ size_t l) + { + virJSONParserPtr parser = ctx; + char *str = strndup(s, l); +@@ -735,7 +735,7 @@ + + static int virJSONParserHandleString(void * ctx, + const unsigned char * stringVal, +- unsigned int stringLen) ++ size_t stringLen) + { + virJSONParserPtr parser = ctx; + virJSONValuePtr value = virJSONValueNewStringLen((const char *)stringVal, +@@ -756,7 +756,7 @@ + + static int virJSONParserHandleMapKey(void * ctx, + const unsigned char * stringVal, +- unsigned int stringLen) ++ size_t stringLen) + { + virJSONParserPtr parser = ctx; + virJSONParserStatePtr state; +@@ -894,14 +894,14 @@ + /* XXX add an incremental streaming parser - yajl trivially supports it */ + virJSONValuePtr virJSONValueFromString(const char *jsonstring) + { +- yajl_parser_config cfg = { 1, 1 }; + yajl_handle hand; + virJSONParser parser = { NULL, NULL, 0 }; + virJSONValuePtr ret = NULL; + + VIR_DEBUG("string=%s", jsonstring); + +- hand = yajl_alloc(&parserCallbacks, &cfg, NULL, &parser); ++ hand = yajl_alloc(&parserCallbacks, NULL, &parser); ++ yajl_config(hand, yajl_allow_comments, 1); + + if (yajl_parse(hand, + (const unsigned char *)jsonstring, +@@ -1002,15 +1002,16 @@ + + char *virJSONValueToString(virJSONValuePtr object) + { +- yajl_gen_config conf = { 0, " " }; /* Turns off pretty printing since QEMU can't cope */ + yajl_gen g; + const unsigned char *str; + char *ret = NULL; +- unsigned int len; ++ size_t len; + + VIR_DEBUG("object=%p", object); + +- g = yajl_gen_alloc(&conf, NULL); ++ g = yajl_gen_alloc(NULL); ++ yajl_gen_config(g, yajl_gen_beautify, 0); ++ yajl_gen_config(g, yajl_gen_indent_string, " "); + + if (virJSONValueToStringOne(object, g) < 0) { + virReportOOMError(); diff --git a/community-staging/lorcon/PKGBUILD b/community-staging/lorcon/PKGBUILD deleted file mode 100644 index 889a42d31..000000000 --- a/community-staging/lorcon/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 64207 2012-02-10 09:10:01Z ebelanger $ -# Maintainer: -# Contributor: Brad Fanella <bradfanella@archlinux.us> -# Contributor: fnord0 [fnord0 <AT> riseup <DOT> net] - -pkgname=lorcon-old-svn -pkgver=224 -pkgrel=2 -pkgdesc="Loss Of Radio CONnectivity: A generic library for injecting 802.11 frames" -url='http://802.11ninja.net' -license=('GPL') -arch=('i686' 'x86_64') -depends=('libnl1') -options=('!libtool') -source=("ftp://ftp.archlinux.org/other/community/lorcon-old/lorcon-old-${pkgver}.tar.bz2") -md5sums=('7a939cc8ec0d70d1b312b9fe9f0dfaf8') - -build() { - cd "${srcdir}/lorcon-old-${pkgver}" - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/lorcon-old-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/community-staging/netcf/PKGBUILD b/community-staging/netcf/PKGBUILD new file mode 100644 index 000000000..cf8d6f053 --- /dev/null +++ b/community-staging/netcf/PKGBUILD @@ -0,0 +1,30 @@ +# $Id: PKGBUILD 64466 2012-02-14 06:53:16Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Aurélien Wailly <aurelien.wailly@gmail.com> + +pkgname=netcf +pkgver=0.1.7 +pkgrel=3 +pkgdesc="A library for configuring network interfaces" +arch=('i686' 'x86_64') +license=('LGPL') +url="https://fedorahosted.org/netcf/" +depends=('augeas>=0.7.4' 'netcfg' 'libxslt' 'libxml2' 'libnl1') +makedepends=('gcc') +options=(!libtool) +source=("https://fedorahosted.org/released/netcf/$pkgname-$pkgver.tar.gz" + netcf-0.1.7.patch) +md5sums=('8e313b623c907eb035cf3948b71fecc2' + '0e88ee6813219e9e75a943444fe439f5') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i ${srcdir}/netcf-0.1.7.patch + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR=${pkgdir} install +} diff --git a/community-staging/netcf/netcf-0.1.7.patch b/community-staging/netcf/netcf-0.1.7.patch new file mode 100644 index 000000000..d4a4d31b7 --- /dev/null +++ b/community-staging/netcf/netcf-0.1.7.patch @@ -0,0 +1,426 @@ +diff -ur netcf-0.1.7.ori//data/xml/initscripts-get.xsl netcf-0.1.7/data/xml/initscripts-get.xsl +--- netcf-0.1.7.ori//data/xml/initscripts-get.xsl 2009-10-04 08:18:41.000000000 +0200 ++++ netcf-0.1.7/data/xml/initscripts-get.xsl 2010-12-08 14:54:28.891813397 +0100 +@@ -47,9 +47,12 @@ + <xsl:template name="vlan-interface-common"> + <xsl:variable name="iface" select="concat(vlan/interface/@name, '.', vlan/@tag)"/> + +- <xsl:attribute name="path">/files/etc/sysconfig/network-scripts/ifcfg-<xsl:value-of select="$iface"/></xsl:attribute> +- <node label="DEVICE" value="{$iface}"/> +- <node label="VLAN" value="yes"/> ++ <xsl:attribute name="path">/files/etc/network.d/ifcfg-<xsl:value-of select="$iface"/></xsl:attribute> ++ <node label="INTERFACE" value="{$iface}"/> ++ <node label="PHYS_INTERFACE" value="{vlan/interface/@name}"/> ++ <node label="VLAN" value="{vlan/@tag}"/> ++ <node label="CONNECTION" value="ethernet-iproute-vlan"/> ++ <node label="FLAG" value="false"/> + </xsl:template> + + <xsl:template name='bare-vlan-interface'> +@@ -68,6 +71,7 @@ + <xsl:call-template name="startmode"/> + <xsl:call-template name="mtu"/> + <node label="TYPE" value="Bridge"/> ++ <node label="CONNECTION" value="bridge"/> + <xsl:call-template name="interface-addressing"/> + <xsl:if test="bridge/@stp"> + <node label="STP" value="{bridge/@stp}"/> +@@ -75,7 +79,11 @@ + <xsl:if test="bridge/@delay"> + <node label="DELAY" value="{bridge/@delay}"/> + </xsl:if> ++ <node label="DHCP_TIMEOUT" value="0"/> ++ <!-- ++ We don't have to define interfaces separately + </tree> ++ + <xsl:for-each select='bridge/interface'> + <tree> + <xsl:if test="@type = 'ethernet'"> +@@ -87,12 +95,29 @@ + <xsl:if test="@type = 'bond'"> + <xsl:call-template name="bare-bond-interface"/> + </xsl:if> ++ ++ BRIDGE_INTERFACES= is defined with all interfaces + <node label="BRIDGE" value="{../../@name}"/> ++ ++ <xsl:variable name="bridgeifaces" select="concat($bridgeifaces, '.', @name)"/> + </tree> + <xsl:if test="@type = 'bond'"> + <xsl:call-template name="bond-slaves"/> + </xsl:if> + </xsl:for-each> ++ --> ++ <!-- <xsl:if test="count(ip) > 1"> --> ++ <node label="BRIDGE_INTERFACES"> ++ <xsl:attribute name="value"> ++ <xsl:text></xsl:text> ++ <xsl:for-each select="bridge/interface"> ++ <xsl:value-of select="@name"/><xsl:value-of select="string(' ')"/> ++ </xsl:for-each> ++ <xsl:text></xsl:text> ++ </xsl:attribute> ++ </node> ++ <!-- </xsl:if> --> ++ </tree> + </xsl:template> + + <!-- +@@ -138,8 +163,8 @@ + Named templates, following the Relax NG syntax + --> + <xsl:template name="name-attr"> +- <xsl:attribute name="path">/files/etc/sysconfig/network-scripts/ifcfg-<xsl:value-of select="@name"/></xsl:attribute> +- <node label="DEVICE" value="{@name}"/> ++ <xsl:attribute name="path">/files/etc/network.d/ifcfg-<xsl:value-of select="@name"/></xsl:attribute> ++ <node label="INTERFACE" value="{@name}"/> + </xsl:template> + + <xsl:template name="mtu"> +@@ -153,6 +178,7 @@ + <xsl:if test="mac"> + <node label="HWADDR" value="{mac/@address}"/> + </xsl:if> ++ <node label="CONNECTION" value="{@type}"/> + <xsl:call-template name="startmode"/> + <xsl:call-template name="mtu"/> + </xsl:template> +@@ -184,14 +210,14 @@ + <xsl:template name="protocol-ipv4"> + <xsl:choose> + <xsl:when test="dhcp"> +- <node label="BOOTPROTO" value="dhcp"/> ++ <node label="IP" value="dhcp"/> + <xsl:if test="dhcp/@peerdns"> + <node label="PEERDNS" value="{dhcp/@peerdns}"/> + </xsl:if> + </xsl:when> + <xsl:when test="ip"> +- <node label="BOOTPROTO" value="none"/> +- <node label="IPADDR" value="{ip/@address}"/> ++ <node label="IP" value="static"/> ++ <node label="ADDR" value="{ip/@address}"/> + <xsl:if test="ip/@prefix"> + <node label="NETMASK" value="{ipcalc:netmask(ip/@prefix)}"/> + </xsl:if> +diff -ur netcf-0.1.7.ori//data/xml/initscripts-put.xsl netcf-0.1.7/data/xml/initscripts-put.xsl +--- netcf-0.1.7.ori//data/xml/initscripts-put.xsl 2009-10-04 08:18:41.000000000 +0200 ++++ netcf-0.1.7/data/xml/initscripts-put.xsl 2010-11-26 10:44:46.133757628 +0100 +@@ -47,7 +47,7 @@ + </xsl:template> + + <xsl:template name="bare-vlan-interface"> +- <xsl:variable name="name" select="node[@label = 'DEVICE']/@value"/> ++ <xsl:variable name="name" select="node[@label = 'INTERFACE']/@value"/> + <interface type="vlan"> + <xsl:call-template name="name-attr"/> + <xsl:call-template name="vlan-device"/> +@@ -55,7 +55,7 @@ + </xsl:template> + + <xsl:template name="vlan-device"> +- <xsl:variable name="name" select="node[@label = 'DEVICE']/@value"/> ++ <xsl:variable name="name" select="node[@label = 'INTERFACE']/@value"/> + <xsl:variable name="device" select="substring-before($name, '.')"/> + <xsl:variable name="tag" select="substring-after($name, '.')"/> + <vlan tag="{$tag}"> +@@ -70,7 +70,7 @@ + match="tree[node[@label = 'TYPE' and @value = 'Bridge']]"> + <interface type="bridge"> + <!-- the bridge node itself --> +- <xsl:variable name="iface" select="node[@label= 'DEVICE']/@value"/> ++ <xsl:variable name="iface" select="node[@label= 'INTERFACE']/@value"/> + <xsl:call-template name="name-attr"/> + <xsl:call-template name="startmode"/> + <xsl:call-template name="mtu"/> +@@ -101,17 +101,17 @@ + Bond + --> + <xsl:template name="bond-element"> +- <xsl:variable name="iface" select="node[@label= 'DEVICE']/@value"/> ++ <xsl:variable name="iface" select="node[@label= 'INTERFACE']/@value"/> + <bond> + <xsl:variable name="opts" select="node[@label = 'BONDING_OPTS']/@value"/> + <xsl:call-template name="bonding-opts"> + <xsl:with-param name="opts" select="$opts"/> + </xsl:call-template> + <xsl:variable name="primary" select="bond:option($opts, 'primary')"/> +- <xsl:for-each select="/descendant-or-self::*[node[@label = 'MASTER' and @value = $iface]][node[@label = 'DEVICE' and @value = $primary]]"> ++ <xsl:for-each select="/descendant-or-self::*[node[@label = 'MASTER' and @value = $iface]][node[@label = 'INTERFACE' and @value = $primary]]"> + <xsl:call-template name='bare-ethernet-interface'/> + </xsl:for-each> +- <xsl:for-each select="/descendant-or-self::*[node[@label = 'MASTER' and @value = $iface]][node[@label = 'DEVICE' and @value != $primary]]"> ++ <xsl:for-each select="/descendant-or-self::*[node[@label = 'MASTER' and @value = $iface]][node[@label = 'INTERFACE' and @value != $primary]]"> + <xsl:call-template name='bare-ethernet-interface'/> + </xsl:for-each> + </bond> +@@ -125,7 +125,7 @@ + </xsl:template> + + <xsl:template name="bond-interface" +- match="tree[node[@label = 'DEVICE'][@value = //tree/node[@label = 'MASTER']/@value]][count(node[@label = 'BRIDGE']) = 0]"> ++ match="tree[node[@label = 'INTERFACE'][@value = //tree/node[@label = 'MASTER']/@value]][count(node[@label = 'BRIDGE']) = 0]"> + <interface type="bond"> + <xsl:call-template name="name-attr"/> + <xsl:call-template name="startmode"/> +@@ -154,7 +154,7 @@ + + <xsl:template name="name-attr"> + <xsl:attribute name="name"> +- <xsl:value-of select="node[@label= 'DEVICE']/@value"/> ++ <xsl:value-of select="node[@label= 'INTERFACE']/@value"/> + </xsl:attribute> + </xsl:template> + +@@ -173,7 +173,7 @@ + <xsl:variable name="uses_dhcp" + select="node[@label = 'BOOTPROTO']/@value = 'dhcp'"/> + <xsl:variable name="uses_static" +- select="count(node[@label = 'IPADDR']) > 0"/> ++ select="count(node[@label = 'ADDR']) > 0"/> + <xsl:variable name="uses_ipv4" select="$uses_dhcp or $uses_static"/> + <xsl:if test="$uses_ipv4"> + <protocol family="ipv4"> +@@ -186,7 +186,7 @@ + </dhcp> + </xsl:when> + <xsl:when test="$uses_static"> +- <ip address="{node[@label = 'IPADDR']/@value}"> ++ <ip address="{node[@label = 'ADDR']/@value}"> + <xsl:choose> + <xsl:when test="node[@label = 'PREFIX']"> + <xsl:attribute name="prefix"><xsl:value-of select="node[@label = 'PREFIX']/@value"/></xsl:attribute> +diff -ur netcf-0.1.7.ori//src/drv_initscripts.c netcf-0.1.7/src/drv_initscripts.c +--- netcf-0.1.7.ori//src/drv_initscripts.c 2010-09-23 14:13:13.000000000 +0200 ++++ netcf-0.1.7/src/drv_initscripts.c 2010-12-08 13:57:02.027361706 +0100 +@@ -49,17 +49,20 @@ + #include <libexslt/exslt.h> + + static const char *const network_scripts_path = +- "/files/etc/sysconfig/network-scripts"; ++ //"/files/etc/sysconfig/network-scripts"; ++ "/files/etc/network.d/*"; + + static const char *const ifcfg_path = +- "/files/etc/sysconfig/network-scripts/*"; ++ //"/files/etc/sysconfig/network-scripts/*"; ++ "/files/etc/network.d/*"; + + /* Augeas should only load the files we are interested in */ + static const struct augeas_pv augeas_xfm_common_pv[] = { + /* Ifcfg files */ + { "/augeas/load/Ifcfg/lens", "Sysconfig.lns" }, + { "/augeas/load/Ifcfg/incl", +- "/etc/sysconfig/network-scripts/ifcfg-*" }, ++ "/etc/network.d/ifcfg-*" }, ++ //"/etc/sysconfig/network-scripts/ifcfg-*" }, + { "/augeas/load/Ifcfg/excl[1]", "*~" }, + { "/augeas/load/Ifcfg/excl[2]", "*.bak" }, + { "/augeas/load/Ifcfg/excl[3]", "*.orig" }, +@@ -107,10 +110,10 @@ + int nmatches; + + nmatches = aug_fmt_match(ncf, NULL, +- "%s[ DEVICE = '%s'" ++ "%s[ INTERFACE = '%s'" + " or BRIDGE = '%s'" + " or MASTER = '%s'" +- " or MASTER = ../*[BRIDGE = '%s']/DEVICE ]/DEVICE", ++ " or MASTER = ../*[BRIDGE = '%s']/INTERFACE ]/INTERFACE", + ifcfg_path, name, name, name, name); + return nmatches > 0; + } +@@ -173,7 +176,7 @@ + aug = get_augeas(ncf); + ERR_BAIL(ncf); + +- ndevs = aug_fmt_match(ncf, &devs, "%s[DEVICE = '%s']", ++ ndevs = aug_fmt_match(ncf, &devs, "%s[INTERFACE = '%s']", + ifcfg_path, name); + ERR_COND_BAIL(ndevs < 0, ncf, EOTHER); + +@@ -296,7 +299,8 @@ + int result = 0, ndevs; + char **devs = NULL; + +- ndevs = aug_fmt_match(ncf, &devs, "%s/DEVICE", ifcfg_path); ++ ndevs = aug_fmt_match(ncf, &devs, "%s/INTERFACE", ifcfg_path); ++ printf("%i\n", ndevs); + ERR_COND_BAIL(ndevs < 0, ncf, EOTHER); + + result = uniq_ifcfg_paths(ncf, ndevs, devs, intf); +@@ -453,11 +457,11 @@ + + int drv_list_interfaces(struct netcf *ncf, int maxnames, char **names, + unsigned int flags) { +- return list_interface_ids(ncf, maxnames, names, flags, "DEVICE"); ++ return list_interface_ids(ncf, maxnames, names, flags, "INTERFACE"); + } + + int drv_num_of_interfaces(struct netcf *ncf, unsigned int flags) { +- return list_interface_ids(ncf, 0, NULL, flags, "DEVICE"); ++ return list_interface_ids(ncf, 0, NULL, flags, "INTERFACE"); + } + + struct netcf_if *drv_lookup_by_name(struct netcf *ncf, const char *name) { +@@ -599,8 +603,8 @@ + + ncf = nif->ncf; + ndevs = aug_fmt_match(ncf, &devs, +- "%s[ DEVICE = '%s' or BRIDGE = '%s' or MASTER = '%s'" +- " or MASTER = ../*[BRIDGE = '%s']/DEVICE ]/DEVICE", ++ "%s[ INTERFACE = '%s' or BRIDGE = '%s' or MASTER = '%s'" ++ " or MASTER = ../*[BRIDGE = '%s']/INTERFACE ]/INTERFACE", + ifcfg_path, nif->name, nif->name, nif->name, nif->name); + ERR_BAIL(ncf); + +@@ -745,7 +749,7 @@ + int nmatches = 0; + + nmatches = aug_fmt_match(ncf, NULL, +- "%s[ DEVICE = '%s' and TYPE = 'Bridge']", ++ "%s[ INTERFACE = '%s' and TYPE = 'Bridge']", + ifcfg_path, name); + return nmatches > 0; + } +@@ -758,7 +762,7 @@ + ERR_BAIL(ncf); + + nslaves = aug_fmt_match(ncf, slaves, +- "%s[ BRIDGE = '%s' ]/DEVICE", ifcfg_path, name); ++ "%s[ BRIDGE = '%s' ]/INTERFACE", ifcfg_path, name); + ERR_BAIL(ncf); + for (int i=0; i < nslaves; i++) { + char *p = (*slaves)[i]; +@@ -790,8 +794,8 @@ + /* The last or clause catches slaves of a bond that are enslaved to + * a bridge NAME */ + r = xasprintf(&path, +- "%s[ DEVICE = '%s' or BRIDGE = '%s' or MASTER = '%s' " +- " or MASTER = ../*[BRIDGE = '%s']/DEVICE ]", ++ "%s[ INTERFACE = '%s' or BRIDGE = '%s' or MASTER = '%s' " ++ " or MASTER = ../*[BRIDGE = '%s']/INTERFACE ]", + ifcfg_path, name, name, name, name); + ERR_NOMEM(r < 0, ncf); + +@@ -967,7 +971,7 @@ + for (int i = 0; i < nmatches; i++) { + if (!has_ifcfg_file(ncf, matches[i])) + continue; +- r = xasprintf(&ifcfg, "%s[DEVICE = '%s']", ifcfg_path, matches[i]); ++ r = xasprintf(&ifcfg, "%s[INTERFACE = '%s']", ifcfg_path, matches[i]); + ERR_NOMEM(r < 0, ncf); + + if (! is_slave(ncf, ifcfg)) +@@ -1023,7 +1027,10 @@ + */ + + int drv_if_up(struct netcf_if *nif) { +- static const char *const ifup = "ifup"; ++ //static const char *const ifup = "ifup"; ++ static const char *const ifup = "netcfg"; ++ static const char *const ifprefix = "ifcfg-"; ++ char ifname[strlen(nif->name) + sizeof(ifprefix)]; + struct netcf *ncf = nif->ncf; + char **slaves = NULL; + int nslaves = 0; +@@ -1035,11 +1042,24 @@ + ERR_BAIL(ncf); + + for (int i=0; i < nslaves; i++) { +- run1(ncf, ifup, slaves[i]); ++ //run1(ncf, ifup, slaves[i]); ++ const char *const argv[] = { ++ ifup, "-u", slaves[i], NULL ++ }; ++ ++ run_program(ncf, argv); + ERR_BAIL(ncf); + } + } +- run1(ncf, ifup, nif->name); ++ //run1(ncf, ifup, nif->name); ++ /* Interfaces name have to be equal to script under /etc/network.d */ ++ strcpy(ifname, ifprefix); ++ strcat(ifname, nif->name); ++ const char *const argv[] = { ++ ifup, "-u", ifname, NULL ++ }; ++ ++ run_program(ncf, argv); + ERR_BAIL(ncf); + result = 0; + error: +@@ -1048,13 +1068,23 @@ + } + + int drv_if_down(struct netcf_if *nif) { +- static const char *const ifdown = "ifdown"; ++ //static const char *const ifdown = "ifdown"; ++ static const char *const ifdown = "netcfg"; ++ static const char *const ifprefix = "ifcfg-"; ++ char ifname[strlen(nif->name) + sizeof(ifprefix)]; + struct netcf *ncf = nif->ncf; + char **slaves = NULL; + int nslaves = 0; + int result = -1; + +- run1(ncf, ifdown, nif->name); ++ //run1(ncf, ifdown, nif->name); ++ strcpy(ifname, ifprefix); ++ strcat(ifname, nif->name); ++ const char *const argv[] = { ++ ifdown, "-d", ifname, NULL ++ }; ++ ++ run_program(ncf, argv); + ERR_BAIL(ncf); + if (is_bridge(ncf, nif->name)) { + /* Bring up bridge slaves after the bridge */ +@@ -1062,7 +1092,12 @@ + ERR_BAIL(ncf); + + for (int i=0; i < nslaves; i++) { +- run1(ncf, ifdown, slaves[i]); ++ //run1(ncf, ifdown, slaves[i]); ++ const char *const argvs[] = { ++ ifdown, "-d", slaves[i], NULL ++ }; ++ ++ run_program(ncf, argvs); + ERR_BAIL(ncf); + } + } +diff -ur netcf-0.1.7.ori//tests/interface/bridge.xml~ netcf-0.1.7/tests/interface/bridge.xml~ +--- netcf-0.1.7.ori//tests/interface/bridge.xml~ 2009-10-13 19:14:53.000000000 +0200 ++++ netcf-0.1.7/tests/interface/bridge.xml~ 2009-10-14 05:09:05.000000000 +0200 +@@ -2,10 +2,12 @@ + <start mode="onboot"/> + <mtu size="1500"/> + <protocol family="ipv4"> +- <ip address="192.168.80.5" prefix="24"/> ++ <dhcp/> + </protocol> + <bridge stp="off" delay="0.01"> + <interface type="ethernet" name="eth0"> ++ <mac address="ab:bb:cc:dd:ee:ff"/> + </interface> ++ <interface type="ethernet" name="eth1"/> + </bridge> + </interface> +diff -ur netcf-0.1.7.ori//tests/interface/vlan.xml~ netcf-0.1.7/tests/interface/vlan.xml~ +--- netcf-0.1.7.ori//tests/interface/vlan.xml~ 2010-07-30 06:02:39.000000000 +0200 ++++ netcf-0.1.7/tests/interface/vlan.xml~ 2010-09-07 18:26:22.000000000 +0200 +@@ -1,9 +1,9 @@ +-<interface type="vlan" name="eth1.42"> ++<interface type="vlan" name="eth0.42"> + <start mode="onboot"/> + <protocol family="ipv4"> + <dhcp peerdns="no"/> + </protocol> + <vlan tag="42"> +- <interface name="eth1"/> ++ <interface name="eth0"/> + </vlan> + </interface> diff --git a/community/binutils-avr/PKGBUILD b/community/binutils-avr/PKGBUILD deleted file mode 100644 index d052033fd..000000000 --- a/community/binutils-avr/PKGBUILD +++ /dev/null @@ -1,72 +0,0 @@ -# $Id: PKGBUILD 60627 2011-12-15 18:55:59Z jelle $ -# Maintainer: Brad Fanella <bradfanella@archlinux.us> -# Contributor: Corrado Primier <bardo@aur.archlinux.org> -# Contributor: danst0 <danst0@west.de> - -pkgname=binutils-avr -pkgver=2.22 -pkgrel=1 -pkgdesc="A set of programs to assemble and manipulate binary and object files for the avr architecture" -arch=('i686' 'x86_64' 'mips64el') -url="http://www.gnu.org/software/binutils/" -license=('GPL') -depends=('glibc>=2.12-5' 'zlib') -options=('!libtool' '!distcc' '!ccache') -source=(http://ftp.gnu.org/gnu/${pkgname/-avr}/${pkgname/-avr}-${pkgver}.tar.bz2{,.sig}) -md5sums=('ee0f10756c84979622b992a4a61ea3f5' - '6aea2485019497583e5c3f5fc4a39cd5') - -build() { - cd ${srcdir}/${pkgname/-avr}-${pkgver} - - mkdir build - cd build - - CC="gcc -L$(pwd)/bfd/.libs/" - if [ "${CARCH}" = "x86_64" ]; then - ../configure --build=$(../config.guess) \ - --disable-multilib \ - --disable-nls \ - --enable-64-bit-bfd \ - --enable-install-libbfd \ - --includedir=/usr/$(../config.guess)/include \ - --infodir=/usr/share/info \ - --libdir=/usr/lib \ - --mandir=/usr/share/man \ - --prefix=/usr \ - --target=avr - else - ../configure --build=$(../config.guess) \ - --disable-nls \ - --enable-install-libbfd \ - --includedir=/usr/$(../config.guess)/include \ - --infodir=/usr/share/info \ - --libdir=/usr/lib \ - --mandir=/usr/share/man \ - --prefix=/usr \ - --target=avr - fi - - # This checks the host environment and makes sure all the necessary tools are available to compile Binutils. - make configure-host - - make tooldir=/usr -} - -package() { - cd ${srcdir}/${pkgname/-avr}-${pkgver} - - cd build - make DESTDIR=${pkgdir} tooldir=/usr install - - rm -f ${pkgdir}/usr/lib/libiberty.a - - for bin in addr2line ar as c++filt gprof ld nm objcopy objdump ranlib readelf size strings strip ; do - rm -f ${pkgdir}/usr/bin/${bin} || return 1 - done - - for info in as bfd binutils configure gprof ld standards; do - mv ${pkgdir}/usr/share/info/${info}.info ${pkgdir}/usr/share/info/avr-${info}.info - done -} - diff --git a/community/blender/PKGBUILD b/community/blender/PKGBUILD index 0f23b4ae5..824e25a61 100644 --- a/community/blender/PKGBUILD +++ b/community/blender/PKGBUILD @@ -14,7 +14,7 @@ _svn=false pkgname=blender pkgver=2.61 -pkgrel=4 +pkgrel=5 epoch=3 pkgdesc="A fully integrated 3D graphics creation suite" arch=('i686' 'x86_64') diff --git a/community/bti/PKGBUILD b/community/bti/PKGBUILD index c556df8d7..81efa2c3c 100644 --- a/community/bti/PKGBUILD +++ b/community/bti/PKGBUILD @@ -4,7 +4,7 @@ pkgname=bti pkgver=032 -pkgrel=1 +pkgrel=2 pkgdesc='Console client for Twitter and identi.ca' arch=('i686' 'x86_64' 'mips64el') url='http://gregkh.github.com/bti/' diff --git a/community/cclive/PKGBUILD b/community/cclive/PKGBUILD index dd09fa284..a7b45ed08 100644 --- a/community/cclive/PKGBUILD +++ b/community/cclive/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 60841 2011-12-19 01:09:02Z lfleischer $ +# $Id: PKGBUILD 64309 2012-02-11 23:19:16Z allan $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: joyfulgirl@archlinux.us # Contributor: nathan owe ndowens04 at gmail dot com pkgname=cclive pkgver=0.7.8 -pkgrel=1 +pkgrel=2 pkgdesc='Commandline downloader for popular video websites.' arch=('i686' 'x86_64' 'mips64el') url='http://cclive.sourceforge.net/' diff --git a/community/ccrtp/PKGBUILD b/community/ccrtp/PKGBUILD index e50fdefcc..25595a7d7 100644 --- a/community/ccrtp/PKGBUILD +++ b/community/ccrtp/PKGBUILD @@ -1,34 +1,41 @@ -# $Id: PKGBUILD 47033 2011-05-14 10:27:41Z jelle $ +# $Id: PKGBUILD 64382 2012-02-12 15:47:02Z arodseth $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: # Contributor: Jeff Mickey <jeff@archlinux.org> # Contributor: John Proctor <jproctor@prium.net> +# Contributor: Alexander Rødseth <rodseth@gmail.com> pkgname=ccrtp pkgver=1.8.0 -pkgrel=1 +pkgrel=2 pkgdesc="GNU ccRTP" -arch=('i686' 'x86_64' 'mips64el') -url="http://www.gnu.org/software/ccrtp" +arch=('x86_64' 'i686' 'mips64el') +url="http://www.gnu.org/software/ccrtp/" license=('GPL' 'custom') depends=('commoncpp2' 'zlib' 'libxml2' 'libgcrypt') options=('!libtool') -source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz gcc46.patch) -md5sums=('3410d2f43a6a28679bd091ed8b2ed228' - '17ce9c79c4518f35f484b539bcff570d') +install=$pkgname.install +source=("ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.gz" + 'gcc46.patch') +sha256sums=('365feddd276c78104600204ae6db4e76c66036df1e5b905e855239daac6a2473' + '4ac9385228dc8b8893e0868d5a06477e4009e9fb2dc191460406da58fc6a6fb3') build() { - cd ${srcdir}/${pkgname}-${pkgver} - patch -Np1 -i $srcdir/gcc46.patch + cd "$srcdir/$pkgname-$pkgver" + + patch -Np1 -i "$srcdir/gcc46.patch" # arch64 fix from Mandriva [ "$CARCH" == "x86_64" ] && export CXXFLAGS="$CXXFLAGS -fpermissive" - ./configure --prefix=/usr + export LDFLAGS="$LDFLAGS `pkg-config --libs libccgnu2`" + ./configure --prefix=/usr --mandir=/usr/share/man make } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -D -m644 COPYING.addendum ${pkgdir}/usr/share/licenses/$pkgname/LICENSE - rm -rf ${pkgdir}/usr/share/info/dir + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + install -Dm644 COPYING.addendum "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + #rm -rf "$pkgdir/usr/share/info/dir" } + +# vim:set ts=2 sw=2 et: diff --git a/community/ccrtp/ccrtp.install b/community/ccrtp/ccrtp.install new file mode 100644 index 000000000..51b971c5c --- /dev/null +++ b/community/ccrtp/ccrtp.install @@ -0,0 +1,22 @@ +infodir=usr/share/info +filelist=(ccrtp.info) + +post_install() { + [[ -x usr/bin/install-info ]] || return 0 + for file in "${filelist[@]}"; do + install-info "$infodir/$file.gz" "$infodir/dir" 2> /dev/null + done +} + +post_upgrade() { + post_install "$1" +} + +pre_remove() { + [[ -x usr/bin/install-info ]] || return 0 + for file in "${filelist[@]}"; do + install-info --delete "$infodir/$file.gz" "$infodir/dir" 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/community/ccze/PKGBUILD b/community/ccze/PKGBUILD index 160886073..4ec9de259 100644 --- a/community/ccze/PKGBUILD +++ b/community/ccze/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 24887 2010-08-29 16:28:18Z jlichtblau $ +# $Id: PKGBUILD 64311 2012-02-11 23:19:24Z allan $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> pkgname=ccze pkgver=0.2.1 -pkgrel=5.1 +pkgrel=6 pkgdesc="Robust and modular log colorizer with many plugins" arch=('i686' 'x86_64' 'mips64el') url="http://freshmeat.net/projects/ccze/" diff --git a/community/cegui/PKGBUILD b/community/cegui/PKGBUILD index 8087bcef1..f8cf2d474 100644 --- a/community/cegui/PKGBUILD +++ b/community/cegui/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 62687 2012-01-24 14:37:57Z svenstaro $ +# $Id: PKGBUILD 64313 2012-02-11 23:19:28Z allan $ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Juergen Hoetzel <juergen@archlinux.org> # Contributor: William Rea <sillywilly@gmail.com>, @@ -6,7 +6,7 @@ pkgname=cegui pkgver=0.7.6 -pkgrel=1 +pkgrel=2 pkgdesc="A free library providing windowing and widgets for graphics APIs/engines" arch=('i686' 'x86_64' 'mips64el') url="http://crayzedsgui.sourceforge.net" diff --git a/community/cherokee/PKGBUILD b/community/cherokee/PKGBUILD index 3e509e4bc..e9b627cda 100644 --- a/community/cherokee/PKGBUILD +++ b/community/cherokee/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 58385 2011-11-12 17:16:09Z ibiru $ +# $Id: PKGBUILD 64315 2012-02-11 23:19:41Z allan $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Link Dupont <link@subpop.net> pkgname=cherokee pkgver=1.2.101 -pkgrel=2 +pkgrel=3 pkgdesc="A very fast, flexible and easy to configure Web Server" arch=('i686' 'x86_64' 'mips64el') url="http://www.cherokee-project.com/" diff --git a/community/commoncpp2/PKGBUILD b/community/commoncpp2/PKGBUILD index 5eedfa17a..9714ebb61 100644 --- a/community/commoncpp2/PKGBUILD +++ b/community/commoncpp2/PKGBUILD @@ -1,36 +1,38 @@ -# $Id: PKGBUILD 32643 2010-11-16 09:56:02Z spupykin $ +# $Id: PKGBUILD 64380 2012-02-12 11:04:24Z arodseth $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Mantainer: Franco Tortoriello <franco.tortoriello@gmail.com> +# Contributor: Franco Tortoriello <franco.tortoriello@gmail.com> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Jeff Mickey <jeff@archlinux.org> # Contributor: John Proctor <jproctor@prium.net> +# Contributor: Alexander Rødseth <rodseth@gmail.com> pkgname=commoncpp2 pkgver=1.8.1 -pkgrel=2 +pkgrel=3 pkgdesc="GNU Common C++ 2" -arch=('i686' 'x86_64' 'mips64el') +arch=('x86_64' 'i686' 'mips64el') url='http://www.gnu.org/software/commoncpp/' license=('GPL' 'custom') depends=('gcc-libs' 'zlib' 'sh') options=('!libtool' '!makeflags') -source=("http://ftp.gnu.org/pub/gnu/commoncpp/${pkgname}-${pkgver}.tar.gz") -md5sums=('4804b184e609154ba2bc0aa9f61dc6ef') -md5sums=('4804b184e609154ba2bc0aa9f61dc6ef') +install=$pkgname.install +source=("http://ftp.gnu.org/pub/gnu/commoncpp/$pkgname-$pkgver.tar.gz") +sha256sums=('53ced4aff74e28a1d8018eb2b4974519028db3c12471ab6dff1c873578c9af4e') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "$srcdir/$pkgname-$pkgver" + sed -i -e '50 a\#include <sys/stat.h>' inc/cc++/applog.h - ./configure --prefix=/usr + ./configure --prefix=/usr --mandir=/usr/share/man make } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - - gzip -9 ${pkgdir}/usr/share/info/commoncpp2.info - rm ${pkgdir}/usr/share/info/dir + cd "$srcdir/$pkgname-$pkgver" - install -D -m644 COPYING.addendum ${pkgdir}/usr/share/licenses/$pkgname/LICENSE + make DESTDIR="$pkgdir" install + install -Dm644 COPYING.addendum \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } + +# vim:set ts=2 sw=2 et: diff --git a/community/commoncpp2/commoncpp2.install b/community/commoncpp2/commoncpp2.install new file mode 100644 index 000000000..762cdfb8e --- /dev/null +++ b/community/commoncpp2/commoncpp2.install @@ -0,0 +1,22 @@ +infodir=usr/share/info +filelist=(commoncpp2.info) + +post_install() { + [[ -x usr/bin/install-info ]] || return 0 + for file in "${filelist[@]}"; do + install-info "$infodir/$file.gz" "$infodir/dir" 2> /dev/null + done +} + +post_upgrade() { + post_install "$1" +} + +pre_remove() { + [[ -x usr/bin/install-info ]] || return 0 + for file in "${filelist[@]}"; do + install-info --delete "$infodir/$file.gz" "$infodir/dir" 2> /dev/null + done +} + +# vim:set ts=2 sw=2 et: diff --git a/community/courier-maildrop/PKGBUILD b/community/courier-maildrop/PKGBUILD index 8988afeee..3cf8dd0ee 100644 --- a/community/courier-maildrop/PKGBUILD +++ b/community/courier-maildrop/PKGBUILD @@ -6,7 +6,7 @@ pkgname=courier-maildrop _srcname=maildrop pkgver=2.5.5 -pkgrel=1 +pkgrel=2 pkgdesc="mail delivery agent - procmail like but nicer syntax" arch=('i686' 'x86_64' 'mips64el') license=('GPL2') diff --git a/community/courier-mta/PKGBUILD b/community/courier-mta/PKGBUILD index 45249a6f8..8d0a03833 100644 --- a/community/courier-mta/PKGBUILD +++ b/community/courier-mta/PKGBUILD @@ -8,7 +8,7 @@ pkgname=courier-mta pkgver=0.67.0 -pkgrel=1 +pkgrel=2 pkgdesc="IMAP(s)/POP3(s) and SMTP Server with ML-manager, webmail and webconfig" arch=(i686 x86_64 'mips64el') license=('GPL2') @@ -23,7 +23,7 @@ backup=('etc/courier/imapd.cnf' 'etc/courier/pop3d.cnf' \ url="http://courier-mta.org" depends=('courier-authlib>=0.63.0' 'gamin' 'gcc-libs' 'gdbm' 'pcre' 'mime-types' 'ca-certificates') optdepends=('libldap') -makedepends=('apache>=2.2.9-3' 'pam>=1.0.1-2' 'expect' 'gnupg' 'libldap' 'gamin') +makedepends=('apache' 'pam' 'expect' 'gnupg' 'libldap' 'gamin') provides=('smtp-server' 'smtp-forwarder' 'imap-server' 'pop3-server' 'courier-imap' 'courier-maildrop') conflicts=('courier-imap' 'smtp-forwarder' 'smtp-server' 'imap-server' 'courier-maildrop' 'ucspi-tcp') options=('!libtool') @@ -65,6 +65,8 @@ build() { 's|--with-authchangepwdir=/var/tmp/dev/null|--with-authchangepwdir=$libexecdir/authlib|' \ configure && chmod 755 configure + LDFLAGS+=",-L /usr/lib/courier-authlib -lcourierauth" + echo $LDFLAGS # courier is more about configuring than compiling :-), lets start the mess ./configure --prefix=/usr \ --sysconfdir=/etc/courier \ diff --git a/community/courier-mta/courier-mta.install b/community/courier-mta/courier-mta.install index e835e3efd..b0d827e43 100644 --- a/community/courier-mta/courier-mta.install +++ b/community/courier-mta/courier-mta.install @@ -20,7 +20,7 @@ post_upgrade() { post_install $1 echo "Please migrate to the new daemon format:" echo "/etc/rc.d/courier-imap has been split into separate daemons:" - echo " imapd, imads-ssl, pop3d, pop3d-ssl" + echo " imapd, imapd-ssl, pop3d, pop3d-ssl" echo "This elimates the need for /etc/conf.d/courier-imap" echo "Update your /etc/rc.conf and manually add the desired daemons. Make sure" echo "you first start authdaemond before any other of these daemons." diff --git a/community/cuda-toolkit/PKGBUILD b/community/cuda-toolkit/PKGBUILD deleted file mode 100644 index e886b8a88..000000000 --- a/community/cuda-toolkit/PKGBUILD +++ /dev/null @@ -1,50 +0,0 @@ -# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> -pkgname=cuda-toolkit -pkgver=4.1.28 -pkgrel=2 -_fedver=14 -pkgdesc="NVIDIA's GPU programming toolkit" -arch=('i686' 'x86_64') - -url="http://www.nvidia.com/object/cuda_home.html" -license=('custom') -depends=('gcc-libs' 'opencl-nvidia') -optdepends=('gdb: for cuda-gdb') -if [ "$CARCH" = "i686" ]; then - _arch=32 - md5sums=('835d403e86f4b014b348c587ffb23c0d' - '5af5226b36cd3f9993f762f85b5d236a' - 'c0781c63e726eaf03e10135b42b85729') -else - _arch=64 - md5sums=('c82103da07d0e96f3d65d7b308b74446' - '5af5226b36cd3f9993f762f85b5d236a' - 'c0781c63e726eaf03e10135b42b85729') -fi - -install=cuda-toolkit.install -source=(http://developer.download.nvidia.com/compute/cuda/4_1/rel/toolkit/cudatoolkit_${pkgver}_linux_${_arch}_fedora${_fedver}.run - cuda-toolkit.sh - cuda-toolkit.conf) - -build() { - cd "$srcdir" -} - -package() { - cd "$srcdir" - - mkdir -p $pkgdir/opt/cuda-toolkit - sh cudatoolkit_${pkgver}_linux_${_arch}_fedora${_fedver}.run --keep -- --prefix=$pkgdir/opt/cuda-toolkit - - sed -i "/unsupported GNU/d" $pkgdir/opt/cuda-toolkit/include/host_config.h - sed -i "s|/build/pkg||g" $pkgdir/opt/cuda-toolkit/bin/nvvp - - install -Dm755 cuda-toolkit.sh $pkgdir/etc/profile.d/cuda-toolkit.sh - install -Dm644 cuda-toolkit.conf $pkgdir/etc/ld.so.conf.d/cuda-toolkit.conf - install -Dm644 $pkgdir/opt/cuda-toolkit/doc/EULA.txt $pkgdir/usr/share/licenses/$pkgname/LICENSE - - mkdir -p $pkgdir/usr/lib - cd $pkgdir/usr/lib - ln -s /usr/lib/libncurses.so.5 libtinfo.so.5 -} diff --git a/community/cuda-toolkit/cuda-toolkit.conf b/community/cuda-toolkit/cuda-toolkit.conf deleted file mode 100644 index 0f55b39a7..000000000 --- a/community/cuda-toolkit/cuda-toolkit.conf +++ /dev/null @@ -1,2 +0,0 @@ -/opt/cuda-toolkit/lib64 -/opt/cuda-toolkit/lib diff --git a/community/cuda-toolkit/cuda-toolkit.install b/community/cuda-toolkit/cuda-toolkit.install deleted file mode 100644 index 4e1a1a6b7..000000000 --- a/community/cuda-toolkit/cuda-toolkit.install +++ /dev/null @@ -1,8 +0,0 @@ -post_install() { - echo "You need to relogin in order for the cuda-toolkit binaries to appear in your path." - post_upgrade -} - -post_upgrade() { - ldconfig -r . -} diff --git a/community/cuda-toolkit/cuda-toolkit.sh b/community/cuda-toolkit/cuda-toolkit.sh deleted file mode 100755 index 737eb1d3e..000000000 --- a/community/cuda-toolkit/cuda-toolkit.sh +++ /dev/null @@ -1 +0,0 @@ -export PATH=$PATH:/opt/cuda-toolkit/bin diff --git a/community/dante/PKGBUILD b/community/dante/PKGBUILD index f073ceb5f..b3328db88 100644 --- a/community/dante/PKGBUILD +++ b/community/dante/PKGBUILD @@ -4,7 +4,7 @@ pkgname=dante pkgver=1.3.2 -pkgrel=1 +pkgrel=1.1 pkgdesc="SOCKS v4 and v5 compatible proxy server and client" url="http://www.inet.no/dante" arch=(i686 x86_64 'mips64el') diff --git a/community/desmume/PKGBUILD b/community/desmume/PKGBUILD new file mode 100644 index 000000000..65a01fb7d --- /dev/null +++ b/community/desmume/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 38953 2011-02-03 21:59:54Z bfanella $ +# Maintainer: Jonathan Conder <jonno dot conder at gmail dot com> +# Maintainer: Brad Fanella <bradfanella@archlinux.us> +# Contributor: Arkham <arkham at archlinux dot us> +# Contributor: Nathan Jones <nathanj@insightbb.com> +# Contributor: Javier "Phrodo_00" Aravena <phrodo.00 at gmail dot com> +# Contributor: angvp <angvp at archlinux dot us> +# Contributor: Allan <mcrae_allan at hotmail dot com> +# Contributor: w0rm <w0rmtux at gmail dot com> +# Contributor: vEX <vex at niechift dot com> +# Contributor: Asher256 <achrafcherti at gmail dot com> + +pkgname=desmume +pkgver=0.9.7 +pkgrel=3 +pkgdesc="Nintendo DS emulator" +arch=('i686' 'x86_64') +url="http://desmume.org/" +license=('GPL') +depends=('agg' 'gtkglext' 'intltool' 'libgl' 'libglade' 'mesa') +replaces=('desmume-core' 'desmume-cli' 'desmume-gtk' 'desmume-glade') +source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") +sha256sums=('0a0f7ef3cc76ff0bbc6f3df47c3689653617074ea7ffc354e9fa1240c5336523') + +build() { + cd "$srcdir/$pkgname-$pkgver" + ./configure --prefix=/usr --enable-wifi + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir/" install +} diff --git a/community/esmtp/PKGBUILD b/community/esmtp/PKGBUILD index a29008e29..15d4bd89f 100644 --- a/community/esmtp/PKGBUILD +++ b/community/esmtp/PKGBUILD @@ -5,7 +5,7 @@ pkgname=esmtp pkgver=1.2 -pkgrel=4 +pkgrel=4.1 pkgdesc="An easy SMTP forwarder." arch=('i686' 'x86_64' 'mips64el') url='http://esmtp.sourceforge.net' diff --git a/community/espeakup/PKGBUILD b/community/espeakup/PKGBUILD index 2345d7f6c..e94580430 100644 --- a/community/espeakup/PKGBUILD +++ b/community/espeakup/PKGBUILD @@ -2,7 +2,7 @@ # Contributor: Chris Brannon <cmbrannon@cox.net> pkgname=espeakup pkgver=0.71 -pkgrel=3 +pkgrel=3.1 pkgdesc='Allows the Speakup screen review system to use the ESpeak synthesizer.' arch=('i686' 'x86_64' 'mips64el') url="http://github.com/williamh/espeakup" diff --git a/community/exim/PKGBUILD b/community/exim/PKGBUILD index 2f7851f25..d0dcb993b 100644 --- a/community/exim/PKGBUILD +++ b/community/exim/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 61949 2012-01-11 15:21:55Z stephane $ +# $Id: PKGBUILD 64321 2012-02-11 23:20:47Z allan $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Maintainer: judd <jvinet@zeroflux.org> pkgname=exim pkgver=4.77 -pkgrel=2 +pkgrel=3 pkgdesc="Message Transfer Agent" arch=(i686 x86_64 'mips64el') url="http://www.exim.org/" @@ -16,7 +16,7 @@ depends=('db' 'pcre' 'pam' 'openssl' 'libldap') provides=('smtp-server') conflicts=('smtp-server') options=('!makeflags') -source=("ftp://mirrors.24-7-solutions.net/pub/exim/ftp/exim/exim4/exim-$pkgver.tar.bz2" +source=("http://mirror.switch.ch/ftp/mirror/exim/exim/exim4/exim-$pkgver.tar.bz2" aliases exim exim.logrotate diff --git a/community/extremetuxracer/libpng14.patch b/community/extremetuxracer/libpng14.patch deleted file mode 100644 index 5c9999857..000000000 --- a/community/extremetuxracer/libpng14.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -Nur extremetuxracer-0.4.orig/src/ppgltk/images/png_reader.cpp extremetuxracer-0.4/src/ppgltk/images/png_reader.cpp ---- extremetuxracer-0.4.orig/src/ppgltk/images/png_reader.cpp 2007-09-01 19:38:12.000000000 +0300 -+++ extremetuxracer-0.4/src/ppgltk/images/png_reader.cpp 2010-01-25 03:47:21.000000000 +0200 -@@ -53,7 +53,7 @@ - if (!info_ptr) - { - png_destroy_read_struct(&png_ptr, -- (png_infopp)NULL, (png_infopp)NULL); -+ NULL, NULL); - fclose(fp); - return; - } -@@ -62,7 +62,7 @@ - if (!end_info) - { - png_destroy_read_struct(&png_ptr, &info_ptr, -- (png_infopp)NULL); -+ NULL); - fclose(fp); - return; - } -@@ -77,7 +77,7 @@ - - - png_get_IHDR(png_ptr, info_ptr, &width, &height, -- &bit_depth, &color_type, &interlace_type,int_p_NULL, int_p_NULL); -+ &bit_depth, &color_type, &interlace_type, NULL, NULL); - - if(bit_depth == 16) - png_set_strip_16(png_ptr); -@@ -88,7 +88,7 @@ - png_set_expand(png_ptr); - png_read_update_info(png_ptr, info_ptr); - png_get_IHDR(png_ptr, info_ptr, &width, &height, -- &bit_depth, &color_type, &interlace_type,int_p_NULL, int_p_NULL); -+ &bit_depth, &color_type, &interlace_type, NULL, NULL); - } - - if( color_type == PNG_COLOR_TYPE_GRAY || -@@ -96,7 +96,7 @@ - png_set_gray_to_rgb(png_ptr); - png_read_update_info(png_ptr, info_ptr); - png_get_IHDR(png_ptr, info_ptr, &width, &height, -- &bit_depth, &color_type, &interlace_type,int_p_NULL, int_p_NULL); -+ &bit_depth, &color_type, &interlace_type, NULL, NULL); - } - - this->width=width; -@@ -114,7 +114,7 @@ - } - - png_read_end(png_ptr, info_ptr); -- png_destroy_read_struct(&png_ptr, &info_ptr, png_infopp_NULL); -+ png_destroy_read_struct(&png_ptr, &info_ptr, NULL); - fclose(fp); - } - diff --git a/community/fb-client/PKGBUILD b/community/fb-client/PKGBUILD index 26dfe6bc5..cc6f726d1 100644 --- a/community/fb-client/PKGBUILD +++ b/community/fb-client/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Florian "Bluewind" Pritz <flo@xssn.at> pkgname=fb-client pkgver=0.9.1 -pkgrel=1 +pkgrel=1.1 pkgdesc="Client for paste.xinu.at" arch=('i686' 'x86_64' 'mips64el') url="http://paste.xinu.at" diff --git a/community/fbdump/PKGBUILD b/community/fbdump/PKGBUILD index 9fece9574..cef123993 100644 --- a/community/fbdump/PKGBUILD +++ b/community/fbdump/PKGBUILD @@ -3,7 +3,7 @@ pkgname=fbdump pkgver=0.4.2 -pkgrel=2 +pkgrel=2.1 pkgdesc="captures the contents of the visible portion of the Linux framebuffer to stdout" arch=('i686' 'x86_64' 'mips64el') url="http://www.rcdrummond.net/fbdump/" diff --git a/community/fcrackzip/PKGBUILD b/community/fcrackzip/PKGBUILD index 745b6f4fa..96e6accbe 100644 --- a/community/fcrackzip/PKGBUILD +++ b/community/fcrackzip/PKGBUILD @@ -3,7 +3,7 @@ pkgname=fcrackzip pkgver=1.0 -pkgrel=2 +pkgrel=2.1 pkgdesc="A zip file password cracker" arch=('i686' 'x86_64' 'mips64el') url="http://www.goof.com/pcg/marc/$pkgname.html" diff --git a/community/fdm/PKGBUILD b/community/fdm/PKGBUILD index bf8c6bad6..a0bf2a771 100644 --- a/community/fdm/PKGBUILD +++ b/community/fdm/PKGBUILD @@ -5,7 +5,7 @@ pkgname=fdm pkgver=1.6 -pkgrel=3 +pkgrel=3.1 pkgdesc='Program to fetch and deliver mail' url='http://fdm.sourceforge.net/' license=('BSD') @@ -20,6 +20,7 @@ sha1sums=('fb8042f2355062848ff142c9604069b6657e6a82' build() { cd "${srcdir}/${pkgname}-${pkgver}" patch -p1 -i ../GNUmakefile.patch + sed -i 's/LIBS+= -lssl -ltdb -lz/LIBS+= -lssl -lcrypto -ltdb -lz/' GNUmakefile make } diff --git a/community/fdupes/PKGBUILD b/community/fdupes/PKGBUILD index 00e0bf8f0..cf5ee6b63 100644 --- a/community/fdupes/PKGBUILD +++ b/community/fdupes/PKGBUILD @@ -4,7 +4,7 @@ pkgname=fdupes pkgver=1.40 -pkgrel=5 +pkgrel=5.1 pkgdesc="a program for identifying or deleting duplicate files residing within specified directories" arch=('i686' 'x86_64' 'mips64el') url="http://premium.caribe.net/~adrian2/fdupes.html" diff --git a/community/flac123/PKGBUILD b/community/flac123/PKGBUILD index 1f79c330c..1e1e98153 100644 --- a/community/flac123/PKGBUILD +++ b/community/flac123/PKGBUILD @@ -5,7 +5,7 @@ pkgname=flac123 pkgver=0.0.11 -pkgrel=3 +pkgrel=3.1 arch=('i686' 'x86_64' 'mips64el') license=('GPL2') pkgdesc="A command-line program for playing FLAC audio files" diff --git a/community/fldiff/PKGBUILD b/community/fldiff/PKGBUILD index a61574824..029a0f57b 100644 --- a/community/fldiff/PKGBUILD +++ b/community/fldiff/PKGBUILD @@ -5,7 +5,7 @@ pkgname=fldiff pkgver=1.1 -pkgrel=6 +pkgrel=6.1 pkgdesc="graphical diff program" arch=(i686 x86_64 'mips64el') url="http://www.easysw.com/~mike/fldiff/" diff --git a/community/flobopuyo/PKGBUILD b/community/flobopuyo/PKGBUILD index bafe5e88d..96d10aa38 100644 --- a/community/flobopuyo/PKGBUILD +++ b/community/flobopuyo/PKGBUILD @@ -5,7 +5,7 @@ pkgname=flobopuyo pkgver=0.20 -pkgrel=5 +pkgrel=5.1 pkgdesc="Clone of the famous PuyoPuyo" arch=('i686' 'x86_64' 'mips64el') url="http://freshmeat.net/projects/$pkgname/" diff --git a/community/fltk2/libpng14.patch b/community/fltk2/libpng14.patch deleted file mode 100644 index f6c49228e..000000000 --- a/community/fltk2/libpng14.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -upr fltk-2.0.x-r6829.orig/images/fl_png.cxx fltk-2.0.x-r6829/images/fl_png.cxx ---- fltk-2.0.x-r6829.orig/images/fl_png.cxx 2010-01-23 04:42:12.000000000 +0200 -+++ fltk-2.0.x-r6829/images/fl_png.cxx 2010-01-23 04:58:31.000000000 +0200 -@@ -62,7 +62,7 @@ bool pngImage::test(const uchar* datas, - #if !HAVE_LIBPNG - return 0; - #else -- return png_check_sig((png_byte*)datas, (int)size)!=0; -+ return png_sig_cmp((png_byte*)datas, 0, (int)size)==0; - #endif - } - diff --git a/community/fonteditfs/PKGBUILD b/community/fonteditfs/PKGBUILD index b0f6d74fd..162d2c5d6 100644 --- a/community/fonteditfs/PKGBUILD +++ b/community/fonteditfs/PKGBUILD @@ -4,7 +4,7 @@ pkgname=fonteditfs pkgver=1.2 -pkgrel=2 +pkgrel=2.1 pkgdesc="console font editor" arch=('i686' 'x86_64' 'mips64el') url="http://fonteditfs.sourceforge.net/" diff --git a/community/freecol/PKGBUILD b/community/freecol/PKGBUILD deleted file mode 100644 index a3dcccc95..000000000 --- a/community/freecol/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 56049 2011-09-29 16:29:17Z svenstaro $ -# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> -# Contributor: TDY <tdy@gmx.com> -# Contributor: Nelson Menon <nelsonmenon@gmail.com insanatorium.wordpress.com> - -pkgname=freecol -pkgver=0.10.3 -pkgrel=1 -pkgdesc="A turn-based strategy game based on Colonization" -arch=('i686' 'x86_64' 'mips64el') -url="http://www.freecol.org/" -license=('GPL') -depends=('java-runtime') -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.zip - fc.desktop fc.sh) -md5sums=('9aafa286247470831cd322e688ed5103' - '55594d770904af3e3e3852d375085357' - 'ae473cd1d86f8f764250ee00b6fda90b') - -build() { - cd "$srcdir/$pkgname" -} - -package() { - cd "$srcdir/$pkgname" - - install -Dm644 FreeCol.jar "$pkgdir/usr/share/java/$pkgname/FreeCol.jar" - install -Dm644 FreeCol.pdf "$pkgdir/usr/share/doc/$pkgname/FreeCol.pdf" - install -Dm644 $pkgname.xpm "$pkgdir/usr/share/pixmaps/$pkgname.xpm" - install -Dm644 ../fc.desktop "$pkgdir/usr/share/applications/$pkgname.desktop" - install -Dm755 ../fc.sh "$pkgdir/usr/bin/$pkgname" - - cp -r data jars "$pkgdir/usr/share/java/$pkgname/" - find "$pkgdir/usr/share/java/$pkgname" -type d -exec chmod 755 '{}' \; - find "$pkgdir/usr/share/java/$pkgname" -type f -exec chmod 644 '{}' \; -} diff --git a/community/freecol/fc.desktop b/community/freecol/fc.desktop deleted file mode 100644 index 83ed6a97d..000000000 --- a/community/freecol/fc.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Version=1.0 -Type=Application -Name=FreeCol -GenericName=Strategy Game -Comment=A free Colonization clone -TryExec=/usr/bin/freecol -Exec=freecol -Icon=/usr/share/pixmaps/freecol.xpm -Categories=Game;StrategyGame; diff --git a/community/freecol/fc.sh b/community/freecol/fc.sh deleted file mode 100644 index 0ce3dac3a..000000000 --- a/community/freecol/fc.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -FC_PATH=/usr/share/java/freecol -LOG_PATH=/tmp/freecol - -[ ! -d "$LOG_PATH" ] && install -dm755 $LOG_PATH -cd $LOG_PATH -java -Xmx256M -jar $FC_PATH/FreeCol.jar "$@" --freecol-data $FC_PATH/data \ - &> ./messages.log diff --git a/community/freedroid/PKGBUILD b/community/freedroid/PKGBUILD index cb0fb2e7b..96df08516 100644 --- a/community/freedroid/PKGBUILD +++ b/community/freedroid/PKGBUILD @@ -3,7 +3,7 @@ pkgname=freedroid pkgver=1.0.2 -pkgrel=5 +pkgrel=5.1 pkgdesc="a clone of the classic game 'Paradroid' on Commodore 64" arch=('i686' 'x86_64' 'mips64el') url="http://freedroid.sourceforge.net/" diff --git a/community/freehdl/PKGBUILD b/community/freehdl/PKGBUILD index 028b94e54..a66406cec 100644 --- a/community/freehdl/PKGBUILD +++ b/community/freehdl/PKGBUILD @@ -6,7 +6,7 @@ pkgname=freehdl pkgver=0.0.8 _qucsver=0.0.16 -pkgrel=1 +pkgrel=1.1 pkgdesc='An open-source (C++ generating) VHDL simulator' arch=('i686' 'x86_64' 'mips64el') url='http://freehdl.seul.org' diff --git a/community/freemat/PKGBUILD b/community/freemat/PKGBUILD index 67a1fa216..6110b2aea 100644 --- a/community/freemat/PKGBUILD +++ b/community/freemat/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 62525 2012-01-20 17:49:51Z spupykin $ +# $Id: PKGBUILD 64323 2012-02-11 23:21:03Z allan $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: William Rea <sillywilly@gmail.com> pkgname=freemat pkgver=4.1 -pkgrel=1 +pkgrel=2 pkgdesc="A free environment for rapid engineering, scientific prototyping and data processing" arch=('i686' 'x86_64' 'mips64el') url="http://freemat.sourceforge.net" @@ -34,6 +34,10 @@ build() { -DPYTHON_EXECUTABLE=/usr/bin/python2 \ . make +} +package() { + cd $srcdir/FreeMat-$pkgver-Source + make DESTDIR=$pkgdir install sed -i "s|/FreeMat-.*/|/FreeMat-$pkgver/|g" $startdir/freemat.install rm $pkgdir/usr/bin/blas.ini diff --git a/community/freerdp/PKGBUILD b/community/freerdp/PKGBUILD index 9a22f7aa4..76227e5ca 100644 --- a/community/freerdp/PKGBUILD +++ b/community/freerdp/PKGBUILD @@ -1,30 +1,30 @@ -# $Id: PKGBUILD 54447 2011-08-18 15:06:31Z bluewind $ +# $Id: PKGBUILD 64460 2012-02-14 00:48:20Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Stijn Segers <francesco dot borromini at gmail dot com> pkgname=freerdp -pkgver=0.8.2 +pkgver=1.0.1 pkgrel=3 pkgdesc="Free RDP client" arch=('i686' 'x86_64' 'mips64el') url="http://freerdp.sourceforge.net" license=('GPL') -depends=('openssl' 'libxcursor' 'libcups' 'alsa-lib') -makedepends=('krb5') +depends=('openssl' 'libxcursor' 'libcups' 'alsa-lib' 'libxext' 'libxdamage' + 'ffmpeg' 'libxkbfile' 'libxinerama' 'libxv') +makedepends=('krb5' 'cmake' 'damageproto' 'xmlto' 'docbook-xsl') conflicts=('freerdp-git') changelog=${pkgname}.changelog options=('!libtool') -source=(http://downloads.sourceforge.net/project/freerdp/${pkgver%.*}/${pkgname}-${pkgver}.tar.gz) -md5sums=('cde590336292c977dfc1b4b7badf24d2') +source=(https://github.com/downloads/FreeRDP/FreeRDP/FreeRDP-$pkgver.tar.gz) +md5sums=('1282189a87893bf196da20382e45f6c1') build() { - cd `find ${srcdir}/ -type d -name freerdp-\*` - [ -x configure ] || sh ./autogen.sh - ./configure --prefix=/usr + cd `find ${srcdir}/ -type d -name FreeRDP-\*` + cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib . make } package() { - cd `find ${srcdir}/ -type d -name freerdp-\*` + cd `find ${srcdir}/ -type d -name FreeRDP-\*` make DESTDIR="${pkgdir}" install } diff --git a/community/gambas2/PKGBUILD b/community/gambas2/PKGBUILD index b4fb28737..bbe551098 100644 --- a/community/gambas2/PKGBUILD +++ b/community/gambas2/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 63574 2012-02-05 11:57:16Z ibiru $ +# $Id: PKGBUILD 64325 2012-02-11 23:21:25Z allan $ # Maintainer : Laurent Carlier <lordheavym@gmail.com> # Contributor: Biru Ionut <ionut@archlinux.ro> # Contributor: Andrea Scarpino <andrea@archlinux.org> @@ -20,12 +20,12 @@ pkgname=('gambas2-meta' 'gambas2-runtime' 'gambas2-devel' 'gambas2-ide' 'gambas2 'gambas2-gb-sdl-sound' 'gambas2-gb-settings' 'gambas2-gb-v4l' 'gambas2-gb-vb' 'gambas2-gb-web' 'gambas2-gb-xml' 'gambas2-gb-xml-rpc' 'gambas2-gb-xml-xslt') pkgver=2.23.1 -pkgrel=7 +pkgrel=8 pkgdesc="A free development environment based on a Basic interpreter." arch=('i686' 'x86_64') url="http://gambas.sourceforge.net" depends=('libffi' 'bzip2' 'libfbclient' 'zlib' 'kdelibs3' 'libgl' 'gtk2' 'librsvg' 'xdg-utils' - 'postgresql-libs>=8.4.1' 'libmysqlclient' 'unixodbc' 'sqlite2' 'sqlite3' + 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite2' 'sqlite3' 'curl' 'poppler-glib' 'sdl_mixer' 'sdl_image' 'libxtst' 'pcre' 'omniorb' 'libxft' 'libxcursor' 'libsm') makedepends=('intltool' 'mysql' 'postgresql') diff --git a/community/gambas3/PKGBUILD b/community/gambas3/PKGBUILD index d90ebafb5..aacb56848 100644 --- a/community/gambas3/PKGBUILD +++ b/community/gambas3/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 63866 2012-02-06 12:50:38Z lcarlier $ +# $Id: PKGBUILD 64327 2012-02-11 23:21:36Z allan $ # Maintainer: Laurent Carlier <lordheavym@gmail.com> pkgbase=gambas3 @@ -13,7 +13,7 @@ pkgname=('gambas3-runtime' 'gambas3-devel' 'gambas3-ide' 'gambas3-script' 'gamba 'gambas3-gb-report' 'gambas3-gb-sdl' 'gambas3-gb-sdl-sound' 'gambas3-gb-settings' 'gambas3-gb-signal' 'gambas3-gb-v4l' 'gambas3-gb-vb' 'gambas3-gb-xml' 'gambas3-gb-xml-rpc' 'gambas3-gb-xml-xslt' 'gambas3-gb-web') pkgver=3.0.0 -pkgrel=4 +pkgrel=5 pkgdesc="A free development environment based on a Basic interpreter." arch=('i686' 'x86_64' 'mips64el') url="http://gambas.sourceforge.net/" diff --git a/community/gcc-avr/PKGBUILD b/community/gcc-avr/PKGBUILD deleted file mode 100644 index 045c1f17f..000000000 --- a/community/gcc-avr/PKGBUILD +++ /dev/null @@ -1,59 +0,0 @@ -# $Id: PKGBUILD 57845 2011-11-03 12:26:59Z jelle $ -# Maintainer: Brad Fanella <bradfanella@archlinux.us> -# Contributor: Corrado Primier <bardo@aur.archlinux.org> -# Contributor: danst0 <danst0@west.de> - -pkgname=gcc-avr -pkgver=4.6.2 -pkgrel=1 -pkgdesc="The GNU avr Compiler Collection" -arch=('i686' 'x86_64' 'mips64el') -license=('GPL' 'LGPL' 'custom') -url="http://gcc.gnu.org/" -depends=('binutils-avr>=2.21' 'cloog' 'ppl' 'gcc-libs>=4.6.0' 'libmpc') -options=('!ccache' '!distcc' '!emptydirs' '!libtool' '!strip') -source=(http://ftp.gnu.org/gnu/gcc/${pkgname/-avr}-${pkgver}/gcc-{core,g++}-${pkgver}.tar.bz2) -md5sums=('0c0e7e35d2215e19de9c97efba507553' - '0d75ca7ca35b1e7f252223f9d23a6ad1') - -build() { - export CFLAGS="-O2 -pipe" - export CXXFLAGS="-O2 -pipe" - - cd "${srcdir}/${pkgname/-avr}-${pkgver}" - - mkdir build - cd build - ../configure --disable-libssp \ - --disable-nls \ - --enable-languages=c,c++ \ - --infodir=/usr/share/info \ - --libdir=/usr/lib \ - --libexecdir=/usr/lib \ - --mandir=/usr/share/man \ - --prefix=/usr \ - --target=avr \ - --with-gnu-as \ - --with-gnu-ld \ - --with-as=/usr/bin/avr-as \ - --with-ld=/usr/bin/avr-ld - - make -} - -package() { - cd "${srcdir}/${pkgname/-avr}-${pkgver}" - - cd build - make -j1 DESTDIR=${pkgdir} install - - install -Dm644 "${srcdir}/${pkgname/-avr}-${pkgver}/COPYING.RUNTIME" \ - "${pkgdir}/usr/share/licenses/${pkgname}/RUNTIME.LIBRARY.EXCEPTION" - - rm -f ${pkgdir}/usr/lib/libiberty.a - rm -rf ${pkgdir}/usr/share/man/man7 - rm -rf ${pkgdir}/usr/share/info -} - -md5sums=('780f614ab18c7a9066dec6387d7490b2' - '87ecd60431e41096419dd8a10f76e46b') diff --git a/community/geos/geos.changelog b/community/geos/geos.changelog deleted file mode 100644 index d0a376568..000000000 --- a/community/geos/geos.changelog +++ /dev/null @@ -1,5 +0,0 @@ -2010-11-14 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 3.2.2 - -2010-04-04 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 3.2.1 diff --git a/community/glpng/libglpng-1.45-debian.patch b/community/glpng/libglpng-1.45-debian.patch deleted file mode 100644 index 062bf6364..000000000 --- a/community/glpng/libglpng-1.45-debian.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -up libglpng-1.45.orig libglpng-1.45 -diff -up libglpng-1.45.orig/src/glpng.c.orig libglpng-1.45.orig/src/glpng.c ---- libglpng-1.45.orig/src/glpng.c.orig 2000-07-10 21:27:10.000000000 +0200 -+++ libglpng-1.45.orig/src/glpng.c 2009-05-17 23:02:38.000000000 +0200 -@@ -29,7 +29,7 @@ - #include <GL/gl.h>
- #include <stdlib.h> - #include <math.h> --#include "png/png.h" -+#include <png.h> -
- /* Used to decide if GL/gl.h supports the paletted extension */
- #ifdef GL_COLOR_INDEX1_EXT
-@@ -113,6 +113,7 @@ static void Resize(int components, const - } - } -
-+#ifdef _WIN32 - static int ExtSupported(const char *x) { - static const GLubyte *ext = NULL; - const char *c; -@@ -129,6 +130,7 @@ static int ExtSupported(const char *x) { - - return 0; - } -+#endif
-
- #define GET(o) ((int)*(data + (o)))
-
diff --git a/community/glpng/libpng14.patch b/community/glpng/libpng14.patch deleted file mode 100644 index b9fae8c2d..000000000 --- a/community/glpng/libpng14.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur libglpng-1.45.orig-old/src/glpng.c libglpng-1.45.orig/src/glpng.c ---- libglpng-1.45.orig-old/src/glpng.c 2000-07-11 05:27:10.000000000 +1000 -+++ libglpng-1.45.orig/src/glpng.c 2010-02-13 22:53:53.000000000 +1000 -@@ -269,7 +269,7 @@ - if (pinfo == NULL) return 0; - - fread(header, 1, 8, fp); -- if (!png_check_sig(header, 8)) return 0; -+ if (png_sig_cmp(header, 0, 8)) return 0; - - png = png_create_read_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); - info = png_create_info_struct(png); -@@ -373,7 +373,7 @@ - png_uint_32 i; - - fread(header, 1, 8, fp); -- if (!png_check_sig(header, 8)) return 0; -+ if (png_sig_cmp(header, 0, 8)) return 0; - - png = png_create_read_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); - info = png_create_info_struct(png); diff --git a/community/gnote/PKGBUILD b/community/gnote/PKGBUILD index eed8cc5e4..b245f93cc 100644 --- a/community/gnote/PKGBUILD +++ b/community/gnote/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 60974 2011-12-19 21:58:11Z ibiru $ +# $Id: PKGBUILD 64329 2012-02-11 23:21:43Z allan $ # Maintainer: Ionut Biru <ibiru@archlinux.org> # Contributor: uastasi <uastasi@archlinux.us> pkgname=gnote pkgver=0.8.2 -pkgrel=1 +pkgrel=2 pkgdesc="A note taking application." arch=('i686' 'x86_64' 'mips64el') url="http://live.gnome.org/Gnote" diff --git a/community/gource/PKGBUILD b/community/gource/PKGBUILD index b69c85d59..4a2a82d58 100644 --- a/community/gource/PKGBUILD +++ b/community/gource/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 55965 2011-09-27 03:33:41Z svenstaro $ +# $Id: PKGBUILD 64331 2012-02-11 23:21:51Z allan $ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Jose Valecillos <valecillosjg (at) gmail (dot) com> # Contributor: Olivier Ramonat <olivier at ramonat dot fr> pkgname=gource pkgver=0.37 -pkgrel=1 +pkgrel=2 pkgdesc="software version control visualization" license=(GPL3) arch=(i686 x86_64 'mips64el') diff --git a/community/gpicview/PKGBUILD b/community/gpicview/PKGBUILD index 080e5ba07..f1bc12e0c 100644 --- a/community/gpicview/PKGBUILD +++ b/community/gpicview/PKGBUILD @@ -3,7 +3,7 @@ # Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr> pkgname=gpicview pkgver=0.2.2 -pkgrel=1 +pkgrel=1.1 pkgdesc="Picture viewer of the LXDE Desktop" arch=('i686' 'x86_64' 'mips64el') license=('GPL2') @@ -17,6 +17,7 @@ md5sums=('943da9f4a23541accd5acdd4fb69966f') build() { cd "$srcdir/$pkgname-$pkgver" + sed -ri 's/^(gpicview_LDADD = .+)/\1 -lm/' src/Makefile.in ./configure --sysconfdir=/etc --prefix=/usr make } diff --git a/community/gsmartcontrol/PKGBUILD b/community/gsmartcontrol/PKGBUILD index d38635150..7f5e1cc78 100644 --- a/community/gsmartcontrol/PKGBUILD +++ b/community/gsmartcontrol/PKGBUILD @@ -2,7 +2,7 @@ pkgname=gsmartcontrol pkgver=0.8.6 -pkgrel=2 +pkgrel=3 pkgdesc="A graphical user interface for the smartctl hard disk drive health inspection tool." arch=('i686' 'x86_64' 'mips64el') url="http://gsmartcontrol.berlios.de/home/index.php/en/Home" diff --git a/community/gsoap/PKGBUILD b/community/gsoap/PKGBUILD index cbb837564..8ff73274b 100644 --- a/community/gsoap/PKGBUILD +++ b/community/gsoap/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 60745 2011-12-17 14:07:20Z spupykin $ +# $Id: PKGBUILD 64430 2012-02-13 06:18:52Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Tor Krill <tor@krill.nu> # Contributor: Lee.MaRS <leemars@gmail.com> pkgname=gsoap -pkgver=2.8.6 +pkgver=2.8.7 pkgrel=1 pkgdesc="Offers an XML language binding to ease the development of SOAP/XML Web services in C and C/C++" url="http://www.cs.fsu.edu/~engelen/soap.html" @@ -14,7 +14,7 @@ depends=('openssl' 'zlib' 'gcc-libs') makedepends=('autoconf' 'automake') source=(http://prdownloads.sourceforge.net/gsoap2/${pkgname}_${pkgver}.zip LICENSE) -md5sums=('c0b962c6216bcf59255dc4288783252f' +md5sums=('48a8dfddffd8f10b3ca82a6a9583e206' '27aaa3f5166db94d44044c11a7b2c37b') build() { diff --git a/community/hping/PKGBUILD b/community/hping/PKGBUILD index 7c9e8e04e..a37160586 100644 --- a/community/hping/PKGBUILD +++ b/community/hping/PKGBUILD @@ -4,7 +4,7 @@ pkgname=hping pkgver=3.0.0 -pkgrel=2 +pkgrel=2.1 pkgdesc='A command-line oriented TCP/IP packet assembler/analyzer.' arch=('i686' 'x86_64' 'mips64el') url='http://www.hping.org' diff --git a/community/i3-wm/PKGBUILD b/community/i3-wm/PKGBUILD index 4351de66b..927d9ba4c 100644 --- a/community/i3-wm/PKGBUILD +++ b/community/i3-wm/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 63859 2012-02-06 10:27:05Z ttopper $ +# $Id: PKGBUILD 64335 2012-02-11 23:22:02Z allan $ # Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de> pkgname=i3-wm _pkgsourcename=i3 pkgver=4.1.2 -pkgrel=3 +pkgrel=4 pkgdesc="An improved dynamic tiling window manager" arch=('i686' 'x86_64' 'mips64el') url="http://i3wm.org/" diff --git a/community/leafnode/PKGBUILD b/community/leafnode/PKGBUILD index 7afa1252e..1eb7bf8fb 100644 --- a/community/leafnode/PKGBUILD +++ b/community/leafnode/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 59410 2011-11-24 15:33:29Z spupykin $ +# $Id: PKGBUILD 64337 2012-02-11 23:22:13Z allan $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=leafnode pkgver=1.11.8 -pkgrel=4 +pkgrel=5 pkgdesc="implements a store & forward NNTP proxy (client and server) with IPv4 and IPv6" arch=('i686' 'x86_64' 'mips64el') url="http://leafnode.sourceforge.net/" @@ -25,6 +25,9 @@ build() { sed -i 's|#define NEWS_USER .*|#define NEWS_USER "news"|' config.h sed -i 's|#define NEWS_GROUP .*|#define NEWS_GROUP "news"|' config.h make +} +package() { + cd $srcdir/$pkgname-$pkgver make DESTDIR=$pkgdir install chown -R root.root $pkgdir install -D -m0644 $srcdir/leafnode.xinetd $pkgdir/etc/xinetd.d/leafnode diff --git a/community/lightspark/PKGBUILD b/community/lightspark/PKGBUILD deleted file mode 100644 index a49e2aa10..000000000 --- a/community/lightspark/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# Maintainer: Thomas Dziedzic < gostrc at gmail > -# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> - -pkgname=lightspark -pkgver=0.5.4 -pkgrel=1 -pkgdesc='An alternative Flash Player for Linux.' -arch=('i686' 'x86_64' 'mips64el') -url='http://lightspark.sourceforge.net' -license=('LGPL3') -conflicts=('lightspark-git') -depends=('mesa' 'ftgl' 'sdl' 'gtk2' 'curl' 'zlib' 'ffmpeg' 'glew' 'pcre' 'libpulse' 'libffi' 'boost-libs' 'glibmm' 'gtkglext' 'desktop-file-utils' 'libxml++' 'libxml2') -makedepends=('cmake' 'nasm' 'xulrunner' 'llvm' 'glproto' 'boost' 'fontconfig') -optdepends=('gnash-gtk: fallback support') -install="lightspark.install" -source=("http://launchpad.net/lightspark/trunk/lightspark-${pkgver}/+download/lightspark-${pkgver}.tar.gz" - 'llvm29.diff') -md5sums=('1101e1d1cb1b55b84b9214ef02217ec3' - '5f717d1d9ead478184ca68f6ac068099') - -build() { - #cd lightspark-${pkgver} - #patch -Np0 -i ${srcdir}/llvm29.diff - cd ${srcdir} - - rm -rf build - mkdir build - cd build - - cmake \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCOMPILE_PLUGIN=1 \ - -DCMAKE_BUILD_TYPE=Release \ - -DGNASH_EXE_PATH=/usr/bin/gtk-gnash \ - ../lightspark-${pkgver} - - make -} - -package() { - cd build - - make DESTDIR=${pkgdir} install -} diff --git a/community/lightspark/llvm29.diff b/community/lightspark/llvm29.diff deleted file mode 100644 index f859852af..000000000 --- a/community/lightspark/llvm29.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- CMakeLists.txt.old 2011-11-01 22:07:52.475608726 +0000 -+++ CMakeLists.txt 2011-11-01 22:08:52.046241925 +0000 -@@ -152,7 +152,8 @@ - MESSAGE(FATAL_ERROR "LLVM >=2.8 is required!") - ENDIF(${LLVM_STRING_VERSION} VERSION_LESS 2.8) - IF(${LLVM_STRING_VERSION} VERSION_EQUAL 2.9) -- MESSAGE(FATAL_ERROR "LLVM !=2.9 is required!") -+ #MESSAGE(FATAL_ERROR "LLVM !=2.9 is required!") -+ ADD_DEFINITIONS(-DLLVM_29) - ENDIF(${LLVM_STRING_VERSION} VERSION_EQUAL 2.9) - IF(${LLVM_STRING_VERSION} VERSION_EQUAL 2.8) - ADD_DEFINITIONS(-DLLVM_28) diff --git a/community/lorcon-old-svn/PKGBUILD b/community/lorcon-old-svn/PKGBUILD deleted file mode 100644 index 0a9fb9e0b..000000000 --- a/community/lorcon-old-svn/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 60383 2011-12-12 18:03:48Z andrea $ -# Maintainer: -# Contributor: Brad Fanella <bradfanella@archlinux.us> -# Contributor: fnord0 [fnord0 <AT> riseup <DOT> net] - -pkgname=lorcon-old-svn -pkgver=224 -pkgrel=1 -pkgdesc="Loss Of Radio CONnectivity: A generic library for injecting 802.11 frames" -url='http://802.11ninja.net' -license=('GPL') -arch=('i686' 'x86_64' 'mips64el') -depends=('libnl') -options=('!libtool') -source=("ftp://ftp.archlinux.org/other/community/lorcon-old/lorcon-old-${pkgver}.tar.bz2") -md5sums=('7a939cc8ec0d70d1b312b9fe9f0dfaf8') - -build() { - cd "${srcdir}/lorcon-old-${pkgver}" - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/lorcon-old-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/community/lorcon/PKGBUILD b/community/lorcon/PKGBUILD index 21645c76e..3f821cb23 100644 --- a/community/lorcon/PKGBUILD +++ b/community/lorcon/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 64224 2012-02-10 23:08:10Z arodseth $ +# $Id: PKGBUILD 64291 2012-02-11 15:46:46Z arodseth $ # Maintainer: Alexander Rødseth <rodseth@gmail.com> # Contributor: Brad Fanella <bradfanella@archlinux.us> # Contributor: fnord0 [fnord0 <AT> riseup <DOT> net] @@ -6,14 +6,14 @@ pkgname=lorcon pkgver=224 -pkgrel=1 +pkgrel=2 pkgdesc="Loss Of Radio CONnectivity: A generic library for injecting 802.11 frames" url='http://802.11ninja.net/' license=('GPL') arch=('x86_64' 'i686') depends=('libpcap') makedepends=('subversion') -provides=('lorcon-old-svn') +replaces=('lorcon-old-svn') options=('!libtool') _svntrunk="http://802.11ninja.net/svn/lorcon/trunk" _svnrev=$pkgver diff --git a/community/mdf2iso/ChangeLog b/community/mdf2iso/ChangeLog deleted file mode 100644 index c206c3cde..000000000 --- a/community/mdf2iso/ChangeLog +++ /dev/null @@ -1,9 +0,0 @@ -2007-06-29 tardo <tardo@nagi-fanboi.net> -* Rebuilt with LFS patch - -2007-06-29 Georg Grabler (STiAT) <ggrabler@gmail.com> -* Added lfs.patch (long file system support) for images > 4GB - -2007-06-28 tardo <tardo@nagi-fanboi.net> -* Built for x86_64 - diff --git a/community/mdf2iso/PKGBUILD b/community/mdf2iso/PKGBUILD deleted file mode 100644 index 2c8decc4c..000000000 --- a/community/mdf2iso/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 25104 2010-08-30 23:20:53Z lcarlier $ -# Contributor: Jeff Mickey <j@codemac.net> -# Contributer: Henrik Ronellenfitsch <henrik at searinox dot de> -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> - -pkgname=mdf2iso -pkgver=0.3.0 -pkgrel=4 -pkgdesc="Converts Alcohol 120% .mdf files into .iso files" -arch=('i686' 'x86_64' 'mips64el') -url="http://mdf2iso.berlios.de" -license=('GPL') -depends=('glibc') -source=(http://download.berlios.de/mdf2iso/${pkgname}-${pkgver}-src.tar.bz2 lfs.patch) -md5sums=('a190625318476a196930ac66acd8fd07' 'a7510b8bc36d468ace80df3ecf55a3a3') - -build() { - cd ${srcdir}/${pkgname} - - patch -p1 < ../lfs.patch - ./configure --prefix=/usr - make || return 1 -} - -package() { - cd ${srcdir}/${pkgname} - - make DESTDIR=${pkgdir} install -} diff --git a/community/mdf2iso/lfs.patch b/community/mdf2iso/lfs.patch deleted file mode 100644 index 5ff62c0ba..000000000 --- a/community/mdf2iso/lfs.patch +++ /dev/null @@ -1,683 +0,0 @@ -Only in mdf2iso/src: .deps -Only in mdf2iso.new/src: .kdbgrc.mdf2iso -diff -bur mdf2iso/src/Makefile.am mdf2iso.new/src/Makefile.am ---- mdf2iso/src/Makefile.am 2005-05-19 11:24:11.000000000 +0200 -+++ mdf2iso.new/src/Makefile.am 2005-07-31 17:47:36.000000000 +0200 -@@ -1,2 +1,3 @@ - bin_PROGRAMS = mdf2iso - mdf2iso_SOURCES = mdf2iso.c -+AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -Wall -diff -bur mdf2iso/src/Makefile.in mdf2iso.new/src/Makefile.in ---- mdf2iso/src/Makefile.in 2005-05-22 21:42:09.000000000 +0200 -+++ mdf2iso.new/src/Makefile.in 2005-07-31 17:49:16.000000000 +0200 -@@ -136,6 +136,7 @@ - sysconfdir = @sysconfdir@ - target_alias = @target_alias@ - mdf2iso_SOURCES = mdf2iso.c -+AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -Wall - all: all-am - - .SUFFIXES: -@@ -149,9 +150,9 @@ - exit 1;; \ - esac; \ - done; \ -- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \ -+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \ - cd $(top_srcdir) && \ -- $(AUTOMAKE) --foreign src/Makefile -+ $(AUTOMAKE) --gnu src/Makefile - .PRECIOUS: Makefile - Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ -diff -bur mdf2iso/src/mdf2iso.c mdf2iso.new/src/mdf2iso.c ---- mdf2iso/src/mdf2iso.c 2005-05-22 21:52:08.000000000 +0200 -+++ mdf2iso.new/src/mdf2iso.c 2005-07-31 19:41:56.000000000 +0200 -@@ -1,4 +1,4 @@ -- /* $Id: mdf2iso.c, 22/05/05 -+/* $Id: mdf2iso.c, 22/05/05 - - Copyright (C) 2004,2005 Salvatore Santagati <salvatore.santagati@gmail.com> - -@@ -16,19 +16,14 @@ - along with this program; if not, write to the - Free Software Foundation, Inc., - 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -- */ -+*/ - - #include <stdio.h> - #include <stdlib.h> - #include <string.h> - #include <errno.h> - --#define VERSION "0.3.0" -- --/* Support Large File */ -- --#define _FILE_OFFSET_BITS 64 -- -+#define VERSION "0.3.1" - - - const char SYNC_HEADER[12] = { (char) 0x00, -@@ -83,14 +78,21 @@ - (char) 0x00 - }; - -+#define ISO9660 0 -+#define SYNC 1 -+#define SYNC_MDF 2 -+#define MDF_AUDIO 3 -+#define UNKNOWN -1 - --void --toc_file (char *destfilename, int sub) -+int toc_file (char *destfilename, int sub) - { -- char destfiletoc[1024], destfiledat[1024]; -+ int ret=0; -+ char *destfiletoc; -+ char *destfiledat; - FILE *ftoc; -- strcpy (destfiletoc, destfilename); -- strcpy (destfiledat, destfilename); -+ -+ destfiletoc=strdup(destfilename); -+ destfiledat=strdup(destfilename); - strcpy (destfiletoc + strlen (destfilename) - 4, ".toc"); - strcpy (destfiledat + strlen (destfilename) - 4, ".dat"); - -@@ -100,11 +102,8 @@ - fprintf (ftoc, "// Track 1\n"); - fprintf (ftoc, "TRACK MODE1_RAW"); - -- if (sub == 1) -- fprintf (ftoc, " RW_RAW\n"); -- -- else -- fprintf (ftoc, "\n"); -+ if (sub == 1) fprintf (ftoc, " RW_RAW\n"); -+ else fprintf (ftoc, "\n"); - - fprintf (ftoc, "NO COPY\n"); - fprintf (ftoc, "DATAFILE \"%s\"\n", destfiledat); -@@ -114,26 +113,27 @@ - } - else - { -- printf ("%s\n", strerror (errno)); -- exit (EXIT_FAILURE); -+ printf ("Error opening %s for output: %s\n",destfiletoc,strerror(errno)); -+ ret=-1; - }; -- -+ free(destfiletoc); -+ free(destfiledat); -+ return ret; - } - --int --number_file (char *destfilename) -+/* -+int number_file (char *destfilename) - { - int i = 1, test_mdf = 0; - int n_mdf; - char mdf[2], destfilemdf[2354]; - FILE *fsource; -+ - strcpy (destfilemdf, destfilename); - strcpy (destfilemdf + strlen (destfilename) - 1, ".0"); - for (i = 0; test_mdf == 0; i++) -- - { - if ((fsource = fopen (destfilemdf, "rb")) != NULL) -- - { - printf ("\nCheck : "); - sprintf (mdf, "md%d", i); -@@ -141,203 +141,219 @@ - printf ("%s, ", destfilemdf); - fclose (fsource); - } -- - else - { - test_mdf = 1; - } -- }; -+ } - printf ("\r \n"); - n_mdf = i - 1; - return (n_mdf); - } -+*/ - --void --cuesheets (char *destfilename) -+int cuesheets (char *destfilename) - { -- char destfilecue[1024], destfilebin[1024]; -+ int ret=0; -+ char *destfilecue; -+ char *destfilebin; - FILE *fcue; -- strcpy (destfilecue, destfilename); -- strcpy (destfilebin, destfilename); -+ -+ destfilecue=strdup(destfilename); -+ destfilebin=strdup(destfilename); - strcpy (destfilecue + strlen (destfilename) - 4, ".cue"); - strcpy (destfilebin + strlen (destfilename) - 4, ".bin"); -- fcue = fopen (destfilecue, "w"); -+ if ((fcue = fopen (destfilecue, "w"))!=NULL) -+ { - fprintf (fcue, "FILE \"%s\" BINARY\n", destfilebin); - fprintf (fcue, "TRACK 1 MODE1/2352\n"); - fprintf (fcue, "INDEX 1 00:00:00\n"); - rename (destfilename, destfilebin); - printf ("Create Cuesheets : %s\n", destfilecue); - fclose (fcue); -+ } -+ else -+ { -+ printf ("Error opening %s for output: %s\n",destfilecue,strerror(errno)); -+ ret=-1; -+ } -+ return ret; - } - --void --main_percent (int percent_bar) -+int previous_percent=-1; -+void main_percent (int percent_bar) -+// Prints a progress bar, takes a percentage as argument. - { -- int progress_bar, progress_space; -+ //int progress_bar, progress_space; -+ -+ if (percent_bar==previous_percent) return; // Nothing changed, don't waste CPU cycles. -+ -+ printf("%3d%% [:%.*s>%.*s:]\r",percent_bar,20-(percent_bar/5)," ", -+ percent_bar/5,"===================="); -+ /* - printf ("%d%% [:", percent_bar); -- for (progress_bar = 1; progress_bar <= (int) (percent_bar / 5); -- progress_bar++) -+ for (progress_bar = 1; progress_bar <= (int) (percent_bar / 5); progress_bar++) - printf ("="); - printf (">"); - -- for (progress_space = 0; progress_space < (20 - progress_bar); -- progress_space++) -- printf (" "); -+ for (; progress_bar <= 20; ++progress_bar) printf (" "); - printf (":]\r"); -+ */ - } - --void --usage () -+void usage () -+// Prints the command line syntax - { -- printf ("mdf2iso v%s by Salvatore Santagati\n", VERSION); -- printf ("Web : http//mdf2iso.berlios.de\n"); -- printf ("Email : salvatore.santagati@gmail.com\n"); -- printf ("Irc : irc.freenode.net #ignus\n"); -- printf ("Note : iodellavitanonhocapitouncazzo\n"); -- printf ("License : released under the GNU GPL v2 or later\n\n"); -+ printf (" Web : http//mdf2iso.berlios.de\n"); -+ printf (" Email : salvatore.santagati@gmail.com\n"); -+ printf (" Irc : irc.freenode.net #ignus\n"); -+ printf (" Note : iodellavitanonhocapitouncazzo\n\n"); - printf ("Usage :\n"); -- printf ("mdf2iso [OPTION] [BASENAME.MDF] [DESTINATION]\n\n"); -- printf ("OPTION\n"); -- printf ("\t--toc Generate toc file\n"); -- printf ("\t--cue Generate cue file\n"); -- printf ("\t--help display this notice\n\n"); -+ printf ("mdf2iso [--cue|--toc|--help] <sourcefile> [destfile]\n\n"); -+ printf ("Options:\n"); -+ printf (" --toc Generate toc/dat files\n"); -+ printf (" --cue Generate cue/bin files\n"); -+ printf (" --help Display this notice\n"); -+ printf (" sourcefile\tFilename of the .mdf file to be converted\n"); -+ printf (" destfile\tFilename of the target ISO9660 file.\n"\ -+ "\t\tIf none given, one is derived from sourcefile.\n\n"); - } - --int --main (int argc, char **argv) -+char mdftype(FILE *f) -+/* returns -+ -1 for unknown -+ 0 for ISO9660 -+ 1 for SYNC -+ 2 for SYNC MDF -+ 3 for MDF Audio -+ (see #defines above) -+*/ - { -- int seek_ecc, sector_size, seek_head, sector_data, n_mdf; -+ char buf[12]; -+ -+ fseek(f, 32768, SEEK_SET); -+ fread(buf, sizeof (char), 8, f); -+ if (!memcmp (ISO_9660, buf, 8)) return ISO9660; // File is ISO9660 -+ -+ fseek(f, 0L, SEEK_SET); -+ fread(buf, sizeof (char), 12, f); -+ -+ fseek (f, 2352, SEEK_SET); -+ -+ if (!memcmp (SYNC_HEADER, buf, 12)) // Has SYNC_HEADER -+ { -+ fread (buf, sizeof (char), 12, f); -+ if (!memcmp (SYNC_HEADER_MDF, buf, 12)) return SYNC_MDF; // File is SYNC MDF -+ if (!memcmp (SYNC_HEADER, buf, 12)) return SYNC; // File is SYNC -+ } -+ else // Does not have SYNC_HEADER -+ { -+ fread(buf, sizeof (char), 12, f); -+ if (!memcmp (SYNC_HEADER_MDF_AUDIO, buf, 12)) return MDF_AUDIO; // File is MDF Audio -+ } -+ -+ // Reached a point where nothing else matters. -+ return UNKNOWN; // Unknown format -+} -+ -+ -+// === Main program code === -+ -+int main (int argc, char **argv) -+{ -+ int seek_ecc, sector_size, seek_head, sector_data;//, n_mdf; - int cue = 0, cue_mode = 0, sub = 1, toc = 0, sub_toc = 0; - int opts = 0; -- double size_iso, write_iso; -- long percent = 0; -- long i, source_length, progressbar; -- char buf[2448], destfilename[2354]; -+ long i, source_length; -+ char buf[2448]; -+ char *destfilename=NULL; -+ char *basefilename=NULL; - FILE *fdest, *fsource; - -+ // Print identification -+ printf ("mdf2iso v%s by Salvatore Santagati\n", VERSION); -+ printf ("Licensed under GPL v2 or later\n"); - -- if (argc < 2) - -+ // *** Process command line options *** -+ -+ if (argc < 2) - { -- usage (); -- exit (EXIT_FAILURE); -+ // Not enough parameters; print help -+ usage(); -+ exit(EXIT_FAILURE); - } - -- else -- -- { -+ // Search for options --cue and --toc - for (i = 0; i < argc; i++) -- - { -- - if (!strcmp (argv[i], "--help")) -- - { - usage (); - exit (EXIT_SUCCESS); - } - if (!strcmp (argv[i], "--cue")) -- - { - cue = 1; - opts++; - } - if (!strcmp (argv[i], "--toc")) -- - { - toc = 1; - opts++; - } - } - -- if ((cue == 1) && (toc == 1)) -- -- { -- usage (); -- exit (EXIT_FAILURE); -- } -- if ((opts == 1) && (argc <= 2)) -- -+ // Catch impossible parameter combinations -+ if (((cue == 1) && (toc == 1)) || -+ ((opts == 1) && (argc <= 2))) - { -- usage (); -- exit (EXIT_FAILURE); -+ usage(); -+ exit(EXIT_FAILURE); - } - -+ // Get the base filename -+ basefilename=argv[1+opts]; // simple pointer, but makes life easier. - -+ // Get the destination filename - if (argc >= (3 + opts)) -- strcpy (destfilename, argv[2 + opts]); -- -- else -- -- { -- strcpy (destfilename, argv[1 + opts]); -- if (strlen (argv[1 + cue]) < 5 -- || strcmp (destfilename + strlen (argv[1 + opts]) - 4, ".mdf")) -- strcpy (destfilename + strlen (argv[1 + opts]), ".iso"); -- -+ // The destination filename is explicitly entered at the prompt -+ destfilename=strdup(argv[2 + opts]); - else -- strcpy (destfilename + strlen (argv[1 + opts]) - 4, ".iso"); -- } -- if ((fsource = fopen (argv[1 + opts], "rb")) != NULL) -- - { -- fseek (fsource, 32768, SEEK_CUR); -- fread (buf, sizeof (char), 8, fsource); -- if (memcmp (ISO_9660, buf, 8)) -- -+ // Derive destination filename from the basename: -+ // If basename is "*.mdf" use "*.iso" als destname -+ // otherwise simply append ".iso" to the basename to create destname. -+ destfilename=strdup(basefilename); -+ i=strlen(destfilename); // Reusing 'i' here as temporary variable -+ if (i < 5 || strcmp(destfilename + i - 4, ".mdf")) - { -- fseek (fsource, 0L, SEEK_SET); -- fread (buf, sizeof (char), 12, fsource); -- if (!memcmp (SYNC_HEADER, buf, 12)) -- -- { -- fseek (fsource, 0L, SEEK_SET); -- fseek (fsource, 2352, SEEK_CUR); -- fread (buf, sizeof (char), 12, fsource); -- if (!memcmp (SYNC_HEADER_MDF, buf, 12)) -- -- { -- if (cue == 1) -- { -- cue_mode = 1; -- -- /* BAD SECTOR TO NORMAL IMAGE */ -- seek_ecc = 96; -- sector_size = 2448; -- sector_data = 2352; -- seek_head = 0; -- } -- -- else if (toc == 0) -- -- { -- -- /*BAD SECTOR */ -- seek_ecc = 384; -- sector_size = 2448; -- sector_data = 2048; -- seek_head = 16; -+ destfilename=realloc(destfilename,i+5); -+ strcat(destfilename, ".iso"); - } -- - else -- -- { -- -- /*BAD SECTOR */ -- seek_ecc = 0; -- sector_size = 2448; -- sector_data = 2448; -- seek_head = 0; -- sub_toc = 1; -- } -+ strcpy(destfilename + i - 3, "iso"); - } - -- else -+ // *** Preprocess basefile *** - -+ // Try opening basefile -+ if ((fsource = fopen(basefilename, "rb")) == NULL) - { -- if (!memcmp (SYNC_HEADER, buf, 12)) -+ free(destfilename); -+ printf ("Could not open %s: %s\n", basefilename, strerror(errno)); -+ exit (EXIT_FAILURE); -+ } - -+ // Determine filetype & set some stuff accordingly (or exit) -+ switch (mdftype(fsource)) - { -+ case ISO9660: -+ printf("%s is already ISO9660.\n",basefilename); -+ fclose(fsource); -+ free(destfilename); -+ exit(EXIT_SUCCESS); -+ case SYNC: - if (cue == 1) - { - cue_mode = 1; -@@ -348,129 +364,134 @@ - seek_head = 0; - } - if (toc == 0) -- - { -- - /*NORMAL IMAGE */ - seek_ecc = 288; - sector_size = 2352; - sector_data = 2048; - seek_head = 16; - } -- - else -- - { - seek_ecc = 0; - sector_size = 2352; - sector_data = 2352; - seek_head = 0; - } -- } -- -- else -- -- { -- printf ("Sorry I don't know this format :(\n"); -- exit (EXIT_FAILURE); -- } -- } -- } -- -- else -- -+ break; -+ case SYNC_MDF: -+ if (cue == 1) - { -- fseek (fsource, 0L, SEEK_SET); -- fseek (fsource, 2352, SEEK_CUR); -- fread (buf, sizeof (char), 12, fsource); -- if (memcmp (SYNC_HEADER_MDF_AUDIO, buf, 12)) -+ cue_mode = 1; - -+ /* BAD SECTOR TO NORMAL IMAGE */ -+ seek_ecc = 96; -+ sector_size = 2448; -+ sector_data = 2352; -+ seek_head = 0; -+ } -+ else if (toc == 0) - { -- printf ("Sorry I don't know this format :(\n"); -- exit (EXIT_FAILURE); -+ /*BAD SECTOR */ -+ seek_ecc = 384; -+ sector_size = 2448; -+ sector_data = 2048; -+ seek_head = 16; - } -- - else -- - { -- -+ /*BAD SECTOR */ -+ seek_ecc = 0; -+ sector_size = 2448; -+ sector_data = 2448; -+ seek_head = 0; -+ sub_toc = 1; -+ } -+ break; -+ case MDF_AUDIO: - /*BAD SECTOR AUDIO */ - seek_head = 0; - sector_size = 2448; - seek_ecc = 96; - sector_data = 2352; - cue = 0; -+ break; -+ default:printf("Unknown format for %s.\n",basefilename); -+ fclose(fsource); -+ free(destfilename); -+ exit (EXIT_FAILURE); - } -- } -- if ((fdest = fopen (destfilename, "wb")) != NULL); - -- else -+ // *** Create destination file *** -+ -+ // Try opening the destination file for output -+ if ((fdest = fopen (destfilename, "wb")) == NULL) - { -- printf ("%s\n", strerror (errno)); -+ printf ("Unable to open %s for output: %s\n",destfilename,strerror(errno)); -+ free(destfilename); -+ fclose(fsource); - exit (EXIT_FAILURE); -- }; -+ } -+ -+ - fseek (fsource, 0L, SEEK_END); - source_length = ftell (fsource) / sector_size; -- size_iso = (int) (source_length * sector_data); -- progressbar = 100 / source_length; - fseek (fsource, 0L, SEEK_SET); -- - { - for (i = 0; i < source_length; i++) -- - { - fseek (fsource, seek_head, SEEK_CUR); -- if (fread (buf, sizeof (char), sector_data, fsource)); -- -- else -+ if (fread(buf, sizeof (char), sector_data, fsource)!=sector_data) - { -- printf ("%s\n", strerror (errno)); -+ printf ("Error reading from %s: %s\n",basefilename, strerror (errno)); -+ fclose(fsource); -+ fclose(fdest); -+ remove(destfilename); -+ free(destfilename); - exit (EXIT_FAILURE); -- }; -- if (fwrite (buf, sizeof (char), sector_data, fdest)); -- -- else -+ } -+ if (fwrite (buf, sizeof (char), sector_data, fdest)!=sector_data) - { -- printf ("%s\n", strerror (errno)); -+ printf ("Error writing to %s: %s\n",destfilename, strerror (errno)); -+ fclose(fsource); -+ fclose(fdest); -+ remove(destfilename); -+ free(destfilename); - exit (EXIT_FAILURE); -- }; -+ } - fseek (fsource, seek_ecc, SEEK_CUR); -- write_iso = (int) (sector_data * i); -- if (i != 0) -- percent = (int) (write_iso * 100 / size_iso); -- main_percent (percent); -- }} printf ("100%%[:====================:]\n"); -+ main_percent(i*100/source_length); -+ } -+ } printf ("100%% [:=====================:]\n"); - - fclose (fsource); - fclose (fdest); - -- if (cue == 1) -- cuesheets (destfilename); -- if (toc == 1) -- toc_file (destfilename, sub_toc); -+ // *** create Toc or Cue file is requested *** -+ if (cue == 1) if (cuesheets(destfilename)) -+ { -+ free(destfilename); -+ exit(EXIT_FAILURE); -+ } -+ if (toc == 1) if (toc_file(destfilename, sub_toc)) -+ { -+ free(destfilename); -+ exit(EXIT_FAILURE); -+ } - if ((toc == 0) && (cue == 0)) -- printf ("Create iso9660: %s\n", destfilename); -+ printf("Created iso9660: %s\n", destfilename); -+ -+ free(destfilename); - - exit (EXIT_SUCCESS); -- } - -- else -- printf ("This is file iso9660 ;)\n"); -+/* - n_mdf = number_file (destfilename) - 1; -- /* if (n_mdf > 1) -- -+ / * if (n_mdf > 1) - { - printf ("\rDetect %d md* file and now emerge this\n", n_mdf); - } -- */ -+ * / - fclose (fsource); -- exit (EXIT_SUCCESS); -- } -- -- else -- { -- printf ("%s\n", strerror (errno)); -- exit (EXIT_FAILURE); -- }; -- } -+ exit (EXIT_SUCCESS);*/ - } diff --git a/community/megaglest/megaglest.sh b/community/megaglest/megaglest.sh deleted file mode 100644 index 571a01be7..000000000 --- a/community/megaglest/megaglest.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh - # Wrapper script for Megaglest. - - MAINDIR=/usr/share/megaglest - BASEDIR="$HOME/.config" - DIR="$BASEDIR/megaglest" - if [ ! -d "$DIR" ]; then - mkdir -p $DIR - fi - cd $DIR - [ -f glest.ini ] || cp /usr/share/megaglest/glest.ini . - [ -h megaglest ] || ln -s /usr/share/megaglest/megaglest . - [ -f servers.ini ] || cp $MAINDIR/servers.ini . - [ -f glestkeys.ini ] || cp $MAINDIR/glestkeys.ini . - for i in data scenarios techs tilesets tutorials; do - [ -h $i ] || ln -s $MAINDIR/$i . - done - [ -d maps ] || mkdir maps - [ -d screens ] || mkdir screens - cd maps - for i in $MAINDIR/maps/*; do - [ -h `basename $i` ] || ln -s $i . - done - cd .. - - exec ./megaglest
\ No newline at end of file diff --git a/community/menu-cache/PKGBUILD b/community/menu-cache/PKGBUILD index 74749321c..59e8be63a 100644 --- a/community/menu-cache/PKGBUILD +++ b/community/menu-cache/PKGBUILD @@ -4,7 +4,7 @@ pkgname=menu-cache pkgver=0.3.2 -pkgrel=1 +pkgrel=1.1 pkgdesc="Caches to speed up freedesktop.org's application menus use." arch=('i686' 'x86_64' 'mips64el') license=('GPL2') diff --git a/community/mtpaint/libpng14.patch b/community/mtpaint/libpng14.patch deleted file mode 100644 index 7df3b2127..000000000 --- a/community/mtpaint/libpng14.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -upr mtpaint-3.31.orig/src/png.c mtpaint-3.31/src/png.c ---- mtpaint-3.31.orig/src/png.c 2010-01-25 00:43:07.000000000 +0200 -+++ mtpaint-3.31/src/png.c 2010-01-25 00:43:39.000000000 +0200 -@@ -539,7 +539,7 @@ static int load_png(char *file_name, ls_ - if (settings->bpp == 3) - { - png_set_strip_16(png_ptr); -- png_set_gray_1_2_4_to_8(png_ptr); -+ png_set_expand_gray_1_2_4_to_8(png_ptr); - png_set_palette_to_rgb(png_ptr); - png_set_gray_to_rgb(png_ptr); - -@@ -644,7 +644,7 @@ static int load_png(char *file_name, ls_ - png_set_strip_alpha(png_ptr); - png_set_packing(png_ptr); - if ((color_type == PNG_COLOR_TYPE_GRAY) && (bit_depth < 8)) -- png_set_gray_1_2_4_to_8(png_ptr); -+ png_set_expand_gray_1_2_4_to_8(png_ptr); - for (i = 0; i < height; i++) - { - row_pointers[i] = settings->img[CHN_IMAGE] + i * width; diff --git a/community/nginx/PKGBUILD b/community/nginx/PKGBUILD index d0ccddf3d..abe5654fe 100644 --- a/community/nginx/PKGBUILD +++ b/community/nginx/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 60863 2011-12-19 16:15:47Z bpiotrowski $ +# $Id: PKGBUILD 64420 2012-02-13 04:03:13Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Bartłomiej Piotrowski <barthalion@gmal.com> # Contributor: Miroslaw Szot <mss@czlug.icis.pcz.pl> pkgname=nginx -pkgver=1.0.11 +pkgver=1.0.12 pkgrel=1 pkgdesc="lightweight HTTP server and IMAP/POP3 proxy server" arch=('i686' 'x86_64' 'mips64el') @@ -36,6 +36,8 @@ _tmp_path=/var/spool/nginx _log_path=/var/log/nginx _user=http _group=http +md5sums=('d0ceefeb2a68ecb19e78ee894a5b52a3' + '0e8032d3ba26c3276e8c7c30588d375f') build() { cd "$srcdir/nginx-${pkgver}" diff --git a/community/ngrep/PKGBUILD b/community/ngrep/PKGBUILD index f10f7054c..72e0d4131 100644 --- a/community/ngrep/PKGBUILD +++ b/community/ngrep/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 59191 2011-11-21 14:35:44Z lfleischer $ +# $Id: PKGBUILD 64341 2012-02-11 23:22:31Z allan $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Eric Belanger <eric@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> pkgname=ngrep pkgver=1.45 -pkgrel=7 +pkgrel=8 pkgdesc='A grep-like utility that allows you to search for network packets on an interface.' arch=('i686' 'x86_64' 'mips64el') url='http://ngrep.sourceforge.net/' @@ -13,11 +13,13 @@ license=('custom') depends=('libpcap>=1.0.0') # Fix build failure when using "-j" (FS#27091). options=(!makeflags) -source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -md5sums=('bc8150331601f3b869549c94866b4f1c') +source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2" "ngrep-fix-ipv6-support.patch") +md5sums=('bc8150331601f3b869549c94866b4f1c' '90e6dfb335bccf12615d3c468ceeb60f') +# Added patch for broken ipv6 support (FS#27225) build() { cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i $srcdir/ngrep-fix-ipv6-support.patch ./configure --prefix=/usr --with-pcap-includes=/usr/include/pcap --enable-ipv6 make diff --git a/community/ngrep/ngrep-fix-ipv6-support.patch b/community/ngrep/ngrep-fix-ipv6-support.patch new file mode 100644 index 000000000..9a07d7d38 --- /dev/null +++ b/community/ngrep/ngrep-fix-ipv6-support.patch @@ -0,0 +1,107 @@ +diff -rupN trunk/ngrep-fix-ipv6-support.patch trunk.notarch/ngrep-fix-ipv6-support.patch +--- trunk/ngrep-fix-ipv6-support.patch 1970-01-01 01:00:00.000000000 +0100 ++++ trunk.notarch/ngrep-fix-ipv6-support.patch 2011-11-30 05:12:48.068790633 +0100 +@@ -0,0 +1,40 @@ ++--- ngrep-1.45.ds2/ngrep.c 2010-04-21 12:16:52.000000000 +0200 +++++ ngrep-1.45.ds2-ipv6-patch/ngrep.c 2010-04-21 12:11:49.581088102 +0200 ++@@ -711,10 +711,12 @@ void process(u_char *d, struct pcap_pkth ++ data = (unsigned char *)(tcp_pkt) + tcphdr_offset; ++ len -= link_offset + ip_hl + tcphdr_offset; ++ +++/* ++ #if USE_IPv6 ++ if (ip_ver == 6) ++ len -= ntohs(ip6_pkt->ip6_plen); ++-#endif +++#endif +++*/ ++ ++ if ((int32_t)len < 0) ++ len = 0; ++@@ -731,11 +733,12 @@ void process(u_char *d, struct pcap_pkth ++ data = (unsigned char *)(udp_pkt) + udphdr_offset; ++ len -= link_offset + ip_hl + udphdr_offset; ++ +++/* ++ #if USE_IPv6 ++ if (ip_ver == 6) ++ len -= ntohs(ip6_pkt->ip6_plen); ++ #endif ++- +++*/ ++ if ((int32_t)len < 0) ++ len = 0; ++ ++@@ -769,7 +772,7 @@ void process(u_char *d, struct pcap_pkth ++ uint16_t icmp6hdr_offset = (frag_offset) ? 0 : 4; ++ ++ data = (unsigned char *)(icmp6_pkt) + icmp6hdr_offset; ++- len -= link_offset + ip_hl + ntohs(ip6_pkt->ip6_plen) + icmp6hdr_offset; +++ len -= link_offset + ip_hl + icmp6hdr_offset; ++ ++ if ((int32_t)len < 0) ++ len = 0; ++ +diff -rupN trunk/ngrep-system-pcre.patch trunk.notarch/ngrep-system-pcre.patch +--- trunk/ngrep-system-pcre.patch 1970-01-01 01:00:00.000000000 +0100 ++++ trunk.notarch/ngrep-system-pcre.patch 2011-11-30 05:12:48.068790633 +0100 +@@ -0,0 +1,59 @@ ++diff -urN ngrep-1.45/configure.in ngrep-1.45-patched/configure.in ++--- ngrep-1.45/configure.in 2006-11-14 21:43:56.000000000 -0600 +++++ ngrep-1.45-patched/configure.in 2006-11-29 10:34:48.000000000 -0600 ++@@ -28,8 +28,8 @@ ++ dnl ++ ++ EXTRA_DEFINES="" ++-EXTRA_INCLUDES="" ++-EXTRA_LIBS="" +++EXTRA_INCLUDES="$EXTRA_INCLUDES" +++EXTRA_LIBS="$EXTRA_LIBS" ++ ++ ++ dnl ++@@ -130,8 +130,8 @@ ++ echo 'Configuring Perl-Compatible Regular Expression (PCRE) library ...' ++ echo ++ ++- REGEX_DIR='pcre-5.0' ++- REGEX_OBJS="$REGEX_DIR/pcre.o $REGEX_DIR/study.o" +++# REGEX_DIR='pcre-5.0' +++# REGEX_OBJS="$REGEX_DIR/pcre.o $REGEX_DIR/study.o" ++ USE_PCRE="1" ++ ++ else ++@@ -146,7 +146,7 @@ ++ ++ fi ++ ++-( cd $REGEX_DIR && ./configure ) +++#( cd $REGEX_DIR && ./configure ) ++ ++ AC_SUBST(REGEX_DIR) ++ AC_SUBST(REGEX_OBJS) ++diff -urN ngrep-1.45/Makefile.in ngrep-1.45-patched/Makefile.in ++--- ngrep-1.45/Makefile.in 2006-11-28 07:35:37.000000000 -0600 +++++ ngrep-1.45-patched/Makefile.in 2006-11-29 08:20:32.000000000 -0600 ++@@ -38,7 +38,7 @@ ++ ++ all: $(TARGET) ++ ++-$(TARGET): $(REGEX_OBJS) $(OBJS) +++$(TARGET): $(OBJS) ++ $(CC) $(CFLAGS) $(LDFLAGS) $(STRIPFLAG) -o $(TARGET) $(OBJS) $(REGEX_OBJS) $(LIBS) ++ ++ debug: $(REGEX_OBJS) $(OBJS) ++diff -urN ngrep-1.45/ngrep.c ngrep-1.45-patched/ngrep.c ++--- ngrep-1.45/ngrep.c 2006-11-28 07:38:43.000000000 -0600 +++++ ngrep-1.45-patched/ngrep.c 2006-11-29 08:10:48.000000000 -0600 ++@@ -92,7 +92,7 @@ ++ #endif ++ ++ #if USE_PCRE ++-#include "pcre-5.0/pcre.h" +++#include "pcre.h" ++ #else ++ #include "regex-0.12/regex.h" ++ #endif ++ diff --git a/community/ngspice/PKGBUILD b/community/ngspice/PKGBUILD index 54acc8f53..4e6fe8694 100644 --- a/community/ngspice/PKGBUILD +++ b/community/ngspice/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 49542 2011-06-18 04:13:44Z kkeen $ +# $Id: PKGBUILD 64464 2012-02-14 05:45:33Z kkeen $ # Maintainer: Kyle Keen <keenerd@gmail.com> # Contributor: Abhishek Dasgupta <abhidg@gmail.com> # Contributor: Jason Taylor <jftaylor21@gmail.com> pkgname=ngspice -pkgver=23 +pkgver=24 pkgrel=1 pkgdesc='Mixed-level/Mixed-signal circuit simulator based on Spice3f5, Ciber1b1, and Xspice.' url='http://ngspice.sourceforge.net' @@ -12,7 +12,7 @@ license=('BSD') arch=('i686' 'x86_64' 'mips64el') depends=('libxaw' 'libedit') source=("http://downloads.sourceforge.net/$pkgname/$pkgver/ngspice-$pkgver.tar.gz") -sha1sums=('65fa23d1168cb3af7651b990344f763c77bf6132') +sha1sums=('a6bb0e65c1c07d48f1d3e4df44fc17f6262952eb') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/opencollada/PKGBUILD b/community/opencollada/PKGBUILD index 7a94ea7c1..2e08bdaba 100644 --- a/community/opencollada/PKGBUILD +++ b/community/opencollada/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Liganic <liganic-aur@gmx.net> pkgname=opencollada -pkgver=864 +pkgver=867 pkgrel=1 pkgdesc="Stream based reader and writer library for COLLADA files" arch=(i686 x86_64) diff --git a/community/p3scan/PKGBUILD b/community/p3scan/PKGBUILD index 21ed7fa99..9ce420845 100644 --- a/community/p3scan/PKGBUILD +++ b/community/p3scan/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 59176 2011-11-21 13:12:02Z spupykin $ +# $Id: PKGBUILD 64345 2012-02-11 23:22:52Z allan $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: v01d <phreakuencies@gmail.com> pkgname=p3scan pkgver=2.3.2 -pkgrel=5 +pkgrel=6 pkgdesc="Fully transparent POP3/SMTP proxy with Anti-Virus and SPAM protection" arch=('i686' 'x86_64' 'mips64el') url="http://p3scan.sourceforge.net/" @@ -25,6 +25,10 @@ build() { sed -ri 's|^LOCATION=.+$|LOCATION=/usr|' ripmime/Makefile sed -ri 's|\$\(SYSINS\) -v -m 550 --strip p3scan \$\(PREFIX\)/sbin/|$(SYSINS) -D -v -m 550 --strip p3scan $(DESTDIR)/usr/sbin/|' Makefile make +} + +package() { + cd $srcdir/$pkgname-$pkgver # Create base dirs, the Makefile assumes they're there install -d $pkgdir/usr/sbin $pkgdir/etc/rc.d $pkgdir/usr/man/man8 diff --git a/community/pari/PKGBUILD b/community/pari/PKGBUILD index 01d2fc6d9..f635331b3 100644 --- a/community/pari/PKGBUILD +++ b/community/pari/PKGBUILD @@ -1,18 +1,18 @@ -# $Id: PKGBUILD 56828 2011-10-14 00:16:01Z bisson $ +# $Id: PKGBUILD 64451 2012-02-13 22:53:47Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> pkgname=pari -pkgver=2.5.0 -pkgrel=2 +pkgver=2.5.1 +pkgrel=1 pkgdesc='Computer algebra system designed for fast computations in number theory' -arch=('i686' 'x86_64' 'mips64el') url='http://pari.math.u-bordeaux.fr/' license=('GPL') +arch=('i686' 'x86_64' 'mips64el') depends=('gmp' 'readline' 'libx11') makedepends=('perl' 'texlive-core') optdepends=('perl: gphelp, tex2mail') source=("${url}pub/pari/unix/${pkgname}-${pkgver}.tar.gz") -sha1sums=('d96250cd8b3e426f548a832f2f44fdfd30fd32b6') +sha1sums=('c83314bb993161a60e1e46ae7616072858414354') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/pcmanfm/PKGBUILD b/community/pcmanfm/PKGBUILD index 1880c5743..2b507cd72 100644 --- a/community/pcmanfm/PKGBUILD +++ b/community/pcmanfm/PKGBUILD @@ -4,7 +4,7 @@ pkgname=pcmanfm pkgver=0.9.10 -pkgrel=1 +pkgrel=1.1 pkgdesc="File manager of the LXDE Desktop" arch=('i686' 'x86_64' 'mips64el') url="http://pcmanfm.sourceforge.net/" @@ -17,6 +17,7 @@ md5sums=('d34a3530a6c5dcd674d23021d71c3e95') build() { cd "$srcdir/$pkgname-$pkgver" + sed -ri 's/^(pcmanfm_LDADD = )/\1 -lm/' src/Makefile.in ./configure --sysconfdir=/etc --prefix=/usr make } diff --git a/community/pidgin-musictracker/PKGBUILD b/community/pidgin-musictracker/PKGBUILD index 058d7b42d..5194f814b 100644 --- a/community/pidgin-musictracker/PKGBUILD +++ b/community/pidgin-musictracker/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 57892 2011-11-04 08:42:55Z lfleischer $ +# $Id: PKGBUILD 64347 2012-02-11 23:23:00Z allan $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Angel Velasquez <angvp@archlinux.org> # Contributor: Ionut Biru <ionut@archlinux.ro> @@ -6,7 +6,7 @@ pkgname=pidgin-musictracker pkgver=0.4.22 -pkgrel=2 +pkgrel=3 pkgdesc="A plugin for Pidgin which displays the music track currently playing." url='http://code.google.com/p/pidgin-musictracker' license=('GPL2') diff --git a/community/pigeonhole/PKGBUILD b/community/pigeonhole/PKGBUILD index ee664488b..f94cfaa42 100644 --- a/community/pigeonhole/PKGBUILD +++ b/community/pigeonhole/PKGBUILD @@ -4,12 +4,12 @@ # This must be built against the version of dovecot being used, # else mail delivery will fail. # Specify the version of dovecot to be used here: -_dcpkgver=2.0.17 +_dcpkgver=2.0.18 # Make sure to bump pkgrel if changing this. pkgname=pigeonhole -pkgver=0.2.5 -pkgrel=2 +pkgver=0.2.6 +pkgrel=1 pkgdesc="Fully rewritten Sieve implementation for Dovecot v2.0" arch=('i686' 'x86_64' 'mips64el') url="http://pigeonhole.dovecot.org/" @@ -18,10 +18,10 @@ depends=('dovecot='$_dcpkgver) makedepends=() conflicts=('dovecot-sieve' 'pigeonhole-hg') source=("http://www.rename-it.nl/dovecot/2.0/dovecot-2.0-$pkgname-$pkgver.tar.gz" - "dovecot.conf") + "dovecot.conf") options=('!libtool') -md5sums=('f50151dd20eb5acbac2b546e586f2d43' - '564b771c339f69a477c06babf53e11c2') +sha256sums=('49829e4aed763848b63b2bf9e288d4bc94020c924ce0621bc850e0a4bf4821ab' + 'a457a1691cfa82495fc0503bfa4b61e54b149e63400fe0f568dff2c24a3f7858') build() { cd "$srcdir/dovecot-2.0-$pkgname-$pkgver" @@ -32,9 +32,9 @@ build() { package() { cd "$srcdir/dovecot-2.0-$pkgname-$pkgver" - + make DESTDIR="$pkgdir/" install install -m 644 -D "$srcdir/dovecot.conf" "$pkgdir/etc/ld.so.conf.d/dovecot.conf" -} +} diff --git a/community/pkgtools/PKGBUILD b/community/pkgtools/PKGBUILD index 5988a08f9..b2dcf35bf 100644 --- a/community/pkgtools/PKGBUILD +++ b/community/pkgtools/PKGBUILD @@ -2,7 +2,7 @@ # Contributor: Daenyth <Daenyth+Arch AT gmail DOT com> pkgname=pkgtools pkgver=23 -pkgrel=3 +pkgrel=4 pkgdesc="A collection of scripts for Arch Linux packages" arch=('i686' 'x86_64' 'mips64el') url="http://bbs.archlinux.org/viewtopic.php?pid=384196" diff --git a/community/pound/PKGBUILD b/community/pound/PKGBUILD index 98d2af3dc..2c0dcf5c3 100644 --- a/community/pound/PKGBUILD +++ b/community/pound/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 24210 2010-08-23 09:28:35Z spupykin $ +# $Id: PKGBUILD 64351 2012-02-11 23:23:24Z allan $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Douglas Soares de Andrade <dsa@aur.archlinux.org> # Contributor: Roberto Alsina <ralsina@kde.org> pkgname=pound -pkgver=2.5 -pkgrel=2 +pkgver=2.6 +pkgrel=1 pkgdesc="A reverse proxy, load balancer, and SSL wrapper" arch=('i686' 'x86_64' 'mips64el') url="http://www.apsis.ch/pound/index_html" @@ -17,7 +17,7 @@ source=(http://www.apsis.ch/pound/Pound-$pkgver.tgz pound.runit pound.cfg pound-2.5-openssl.patch) -md5sums=('8a39f5902094619afcda7d12d9d8342c' +md5sums=('8c913b527332694943c4c67c8f152071' '4df8548f106fca08323e8e4071beaa43' '716cc0bf334b594751bece24c7d1df2d' '8937808acd22c6391ebe4340af8df854' @@ -26,11 +26,14 @@ md5sums=('8a39f5902094619afcda7d12d9d8342c' build() { cd $srcdir/Pound-$pkgver # Patch to build against OpenSSL 1.0.0 (Thanks Fedora!) - patch -p1 -i $srcdir/pound-2.5-openssl.patch || return 1 +# patch -p1 -i $srcdir/pound-2.5-openssl.patch || return 1 ./configure --prefix=/usr --sysconfdir=/etc/pound - make || return 1 + make +} +package() { + cd $srcdir/Pound-$pkgver install -d $pkgdir/usr/sbin - make DESTDIR=$pkgdir install || return 1 + make DESTDIR=$pkgdir install chown root.root -R $pkgdir/usr install -d $pkgdir/etc/rc.d install -m0755 $srcdir/pound.init $pkgdir/etc/rc.d/pound diff --git a/community/privoxy/PKGBUILD b/community/privoxy/PKGBUILD index 97626639c..278491ba3 100644 --- a/community/privoxy/PKGBUILD +++ b/community/privoxy/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 61278 2011-12-28 01:38:00Z seblu $ +# $Id: PKGBUILD 64353 2012-02-11 23:23:45Z allan $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Juergen Hoetzel <juergen@hoetzel.info> # Contributor: basilburn (basilburn), Paul Bredbury (brebs) pkgname=privoxy pkgver=3.0.19 -pkgrel=1 +pkgrel=2 pkgdesc='A web proxy with advanced filtering capabilities.' arch=('i686' 'x86_64' 'mips64el') url='http://www.privoxy.org' diff --git a/community/pylorcon/PKGBUILD b/community/pylorcon/PKGBUILD deleted file mode 100644 index 55866fb71..000000000 --- a/community/pylorcon/PKGBUILD +++ /dev/null @@ -1,18 +0,0 @@ -# Maintainer: Brad Fanella <bradfanella@archlinux.us> -# Contributer: fnord0 <fnord0 AT riseup DOT net> - -pkgname=pylorcon -pkgver=3 -pkgrel=4 -pkgdesc="Python wrapper for the C LORCON (Loss Of Radio CONnectivity) library" -arch=('i686' 'x86_64' 'mips64el') -url="http://code.google.com/p/pylorcon/" -license=('GPLv2') -depends=('python2' 'lorcon-old-svn') -source="http://pylorcon.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2" -md5sums=('214d97bdf84e47131f8b55445fea1def') - -package() { - cd ${srcdir}/${pkgname} - python2 setup.py install --root=${pkgdir} --optimize=1 -} diff --git a/community/python-bsddb/db_5.3.patch b/community/python-bsddb/db_5.3.patch deleted file mode 100644 index 6ea4d18bb..000000000 --- a/community/python-bsddb/db_5.3.patch +++ /dev/null @@ -1,20 +0,0 @@ -# HG changeset patch -# User Jesus Cea <jcea@jcea.es> -# Date 1324876054 -3600 -# Node ID b9ff8f6918a383ed4985e4a09ca36ed1776dba12 -# Parent 670b1ec4472908a9dc745a338a9f595f92aba667 -Support Berkeley DB 5.3.x - -diff -r 670b1ec44729 -r b9ff8f6918a3 setup2.py ---- a/setup2.py Mon Dec 26 06:04:34 2011 +0100 -+++ b/setup2.py Mon Dec 26 06:07:34 2011 +0100 -@@ -128,7 +128,7 @@ - incdir = libdir = None - if not BERKELEYDB_DIR and not BERKELEYDB_LIBDIR and not BERKELEYDB_INCDIR: - # Supported Berkeley DB versions, in order of preference. -- db_ver_list = ((5, 2), (5, 1), (5, 0), -+ db_ver_list = ((5, 3), (5, 2), (5, 1), (5, 0), - (4, 8), (4, 7), (4, 6), (4, 5), (4, 4), (4, 3), (4, 2)) - - # construct a list of paths to look for the header file in on - diff --git a/community/python2-pycuda/PKGBUILD b/community/python2-pycuda/PKGBUILD deleted file mode 100644 index 37049dea1..000000000 --- a/community/python2-pycuda/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 62828 2012-01-27 14:09:50Z stephane $ -# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> -pkgname=python2-pycuda -pkgver=2011.2.2 -pkgrel=1 -pkgdesc="Python wrapper for Nvidia CUDA" -arch=('i686' 'x86_64') -url="http://mathema.tician.de/software/pycuda" -license=('MIT/X Consortium') -source=(http://pypi.python.org/packages/source/p/pycuda/pycuda-${pkgver}.tar.gz) -depends=('cuda-toolkit' 'python2-numpy' 'python2-pytools' 'python2') -optdepends=('python2-pytest') -makedepends=('ctags' 'python2-distribute' 'mesa') -provides=('pycuda') -replaces=('pycuda') -conflicts=('pycuda') -sha1sums=('026ca33f66d35c82a087a5ef3f8e0f213575059b') - -build() { - cd "${srcdir}/pycuda-${pkgver}" - python2 ./configure.py \ - --cuda-root=/opt/cuda-toolkit \ - --boost-compiler=gcc \ - --cuda-enable-gl \ - --cuda-inc-dir=/opt/cuda-toolkit/include \ - --cudadrv-lib-dir=/opt/cuda-toolkit/lib \ - --cudart-lib-dir=/opt/cuda-toolkit/lib - - make -} - -package() { - cd "${srcdir}/pycuda-${pkgver}" - python2 setup.py install --prefix=/usr --root="${pkgdir}" --skip-build --optimize=1 -} diff --git a/community/qbittorrent/PKGBUILD b/community/qbittorrent/PKGBUILD deleted file mode 100644 index 73858f5e8..000000000 --- a/community/qbittorrent/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# Maintainer: Thomas Dziedzic < gostrc at gmail > -# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> -# Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr> - -pkgname=qbittorrent -pkgver=2.9.3 -pkgrel=1 -pkgdesc="A bittorrent client written in C++ / Qt4 using the good libtorrent library" -arch=('i686' 'x86_64' 'mips64el') -url="http://www.qbittorrent.org/" -license=('GPL') -depends=('qt' 'libtorrent-rasterbar' 'xdg-utils') -makedepends=('boost' 'geoip') -optdepends=('python: needed for search' - 'geoip: improves peer country resolution') -install='qbittorrent.install' -source=("http://downloads.sourceforge.net/sourceforge/qbittorrent/qbittorrent-${pkgver}.tar.gz") -md5sums=('bd35950260f633215db8acd7c22317dc') - -build() { - tar xf qbittorrent-${pkgver}.tar.gz - - cd qbittorrent-${pkgver} - - ./configure \ - --prefix=/usr - - make -} - -package() { - cd qbittorrent-${pkgver} - - make INSTALL_ROOT=${pkgdir} install -} diff --git a/community/qbittorrent/qbittorrent.install b/community/qbittorrent/qbittorrent.install deleted file mode 100644 index e70c054ec..000000000 --- a/community/qbittorrent/qbittorrent.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - xdg-icon-resource forceupdate --theme hicolor &> /dev/null -} - -post_upgrade() { - post_install -} - -post_remove() { - post_install -} diff --git a/community/remind/PKGBUILD b/community/remind/PKGBUILD index 0927cd990..ccc4a8411 100644 --- a/community/remind/PKGBUILD +++ b/community/remind/PKGBUILD @@ -4,16 +4,17 @@ # Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=remind -pkgver=3.01.10 -pkgrel=2 -pkgdesc='A sophisticated calendar and alarm progam.' +pkgver=3.01.12 +pkgrel=1 +pkgdesc='A sophisticated calendar and alarm program.' arch=('i686' 'x86_64' 'mips64el') url='http://www.roaringpenguin.com/penguin/open_source_remind.php' license=('GPL') depends=('tk' 'tcllib') -source=("http://www.roaringpenguin.com/files/download/${pkgname}-0${pkgver}.tar.gz") +source=("http://www.roaringpenguin.com/files/download/${pkgname}-0${pkgver}.tar.gz"{,.sig}) options=('!emptydirs') -md5sums=('f6f7829d3ac92e0d6d463c59b5e6ce3f') +md5sums=('de16cbfc3ee94defcb1abdf78b2ebcd1' + '4be6e58ad5117fe2299489b01db45d48') build() { cd "${pkgname}-0${pkgver}" diff --git a/community/remmina-plugins/PKGBUILD b/community/remmina-plugins/PKGBUILD deleted file mode 100644 index df1f52521..000000000 --- a/community/remmina-plugins/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 63730 2012-02-05 12:09:50Z ibiru $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: Stijn Segers <francesco dot borromini at gmail dot com> - -pkgname=remmina-plugins -pkgver=0.9.2 -pkgrel=3 -pkgdesc="Remina plugins" -#"Remmina supports multiple network protocols in an integrated and consistant user interface. -# Currently RDP, VNC, XDMCP and SSH are supported." -arch=(i686 x86_64 'mips64el') -url="http://sourceforge.net/projects/remmina/" -license=('GPL') -conflicts=(remmina-plugins-svn) -depends=("remmina>=0.9.0" freerdp libxkbfile telepathy-glib) -makedepends=(intltool pkgconfig gettext perl avahi) -install=remmina-plugins.install -options=('!libtool') -source=(http://downloads.sourceforge.net/project/remmina/0.9/$pkgname-$pkgver.tar.gz) -md5sums=('6f6b7cb18f7604f3f17eeda5173ede6a') - -build() { - cd $srcdir/${pkgname}-${pkgver} - ./configure --prefix=/usr --enable-ssh --enable-rdp \ - --enable-vnc --enable-xdmcp --enable-nx \ - --enable-telepathy - make - make DESTDIR=${pkgdir} install -} diff --git a/community/remmina/PKGBUILD b/community/remmina/PKGBUILD index b8f7dc5ed..2fb95b21b 100644 --- a/community/remmina/PKGBUILD +++ b/community/remmina/PKGBUILD @@ -1,27 +1,28 @@ -# $Id: PKGBUILD 42194 2011-03-15 12:36:34Z spupykin $ +# $Id: PKGBUILD 64462 2012-02-14 00:49:08Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=remmina -pkgver=0.9.3 -pkgrel=1 +pkgver=1.0.0 +pkgrel=2 pkgdesc="Remmina is a remote desktop client written in GTK+. " arch=(i686 x86_64 'mips64el') url="http://sourceforge.net/projects/remmina/" license=('GPL') -provides=("grdc" "grdc=$pkgver") +depends=('gtk2' 'zlib' 'libjpeg' 'libssh' 'libunique' 'avahi' 'vte3' 'libgcrypt' 'libxdmcp' 'libgnome-keyring') +makedepends=('intltool' 'pkgconfig' 'cmake' + 'avahi' 'libxkbfile' 'freerdp' 'telepathy-glib') +optdepends=('avahi' 'libxkbfile' 'freerdp' 'telepathy-glib') +replaces=('remmina-plugins') +provides=("grdc" "grdc=$pkgver" 'remmina-plugins') conflicts=("grdc") -depends=('gtk2' 'zlib' 'libjpeg' 'libssh' 'libunique' 'avahi' 'vte' 'libgcrypt' 'libxdmcp') -makedepends=('intltool' 'pkgconfig') -optdepends=('remmina-plugins: Plugins for remmina, including xdmcp vnc telepathy rdp and nx') install=remmina.install -source=($pkgname-$pkgver.tar.gz::"http://downloads.sourceforge.net/project/remmina/0.9/$pkgname-$pkgver.tar.gz") -md5sums=('c87004a70ec62acbae732e8d47f71ba7') +source=(https://github.com/downloads/FreeRDP/Remmina/Remmina-$pkgver.tar.gz) +md5sums=('701c540acaab961bc3adf130a2ddb8b1') build() { - cd ${srcdir}/$pkgname-$pkgver - ./configure --prefix=/usr --enable-nls --disable-unique \ - --enable-avahi --enable-vte \ - --enable-vnc --enable-ssh --enable-gcrypt + cd ${srcdir}/FreeRDP-Remmina-*/ + export LDFLAGS="-lX11 -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lpthread" + cmake -DWITH_APPINDICATOR=OFF -DCMAKE_INSTALL_PREFIX=/usr . make make DESTDIR=${pkgdir} install } diff --git a/community/root/PKGBUILD b/community/root/PKGBUILD index 4c380c044..ac945a609 100644 --- a/community/root/PKGBUILD +++ b/community/root/PKGBUILD @@ -3,7 +3,7 @@ pkgname=root pkgver=5.32.00 -pkgrel=3 +pkgrel=4 pkgdesc='C++ data analysis framework and interpreter from CERN.' arch=('i686' 'x86_64' 'mips64el') url='http://root.cern.ch' diff --git a/community/setconf/PKGBUILD b/community/setconf/PKGBUILD index 7c1f188be..6783a0d0f 100644 --- a/community/setconf/PKGBUILD +++ b/community/setconf/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 62734 2012-01-25 13:50:09Z arodseth $ +# $Id: PKGBUILD 64357 2012-02-11 23:24:08Z allan $ # Maintainer: Alexander Rødseth <rodseth@gmail.com> pkgname=setconf pkgver=0.3.2 -pkgrel=3 +pkgrel=4 pkgdesc="Utility to easily change settings in Makefiles and configuration files" arch=('x86_64' 'i686') url="http://setconf.roboticoverlords.org/" diff --git a/community/slock/PKGBUILD b/community/slock/PKGBUILD index 2d338fabb..47d00b409 100644 --- a/community/slock/PKGBUILD +++ b/community/slock/PKGBUILD @@ -1,28 +1,26 @@ -# $Id: PKGBUILD 59019 2011-11-20 20:12:50Z spupykin $ +# $Id: PKGBUILD 64276 2012-02-11 10:23:57Z bluewind $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Sebastian A. Liem <sebastian at liem dot se> pkgname=slock -pkgver=0.9 -# Fix FS#21738 -_pkgver="4d3769ac5d02" -pkgrel=6 +pkgver=1.0 +pkgrel=1 pkgdesc="A simple screen locker for X" arch=('mips64el' 'i686' 'x86_64') url="http://tools.suckless.org/slock" license=('MIT') depends=('libxext') -#source=("http://dl.suckless.org/tools/$pkgname-$pkgver.tar.gz") -source=("slock-$pkgver.tar.bz2::http://hg.suckless.org/slock/archive/$_pkgver.tar.gz") -md5sums=('7d22a7435324f7c879b6e87054a32309') +source=("http://dl.suckless.org/tools/$pkgname-$pkgver.tar.gz") +#source=("slock-$pkgver.tar.bz2::http://hg.suckless.org/slock/archive/$_pkgver.tar.gz") +md5sums=('98503f0dae5acc15c90b81ffd423f987') build() { - cd "$srcdir/slock-$_pkgver" + cd "$srcdir/slock-$pkgver" make X11INC=/usr/include/X11 X11LIB=/usr/lib/X11 } package() { - cd "$srcdir/slock-$_pkgver" + cd "$srcdir/slock-$pkgver" make PREFIX=/usr DESTDIR="$pkgdir" install install -m644 -D LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" } diff --git a/community/snort/PKGBUILD b/community/snort/PKGBUILD index 178925eb6..ce0843262 100644 --- a/community/snort/PKGBUILD +++ b/community/snort/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 62466 2012-01-20 07:55:34Z lfleischer $ +# $Id: PKGBUILD 64359 2012-02-11 23:24:21Z allan $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Hugo Doria <hugo@archlinux.org> # Contributor: Kessia 'even' Pinheiro <kessiapinheiro at gmail.com> @@ -7,7 +7,7 @@ pkgname=snort pkgver=2.9.2.1 -pkgrel=1 +pkgrel=2 pkgdesc='A lightweight network intrusion detection system.' arch=('i686' 'x86_64' 'mips64el') url='http://www.snort.org' @@ -21,7 +21,7 @@ backup=('etc/conf.d/snort' 'etc/snort/classification.config') options=('!makeflags' '!libtool') install='snort.install' -source=('http://www.snort.org/downloads/1419' +source=('http://www.snort.org/downloads/1416' 'snort' 'snort.conf.d') md5sums=('2f3e2b6ee72adbdfac73cb1c6c14bd61' diff --git a/community/synfig/PKGBUILD b/community/synfig/PKGBUILD index 35c960862..5f1719a73 100644 --- a/community/synfig/PKGBUILD +++ b/community/synfig/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 63750 2012-02-05 12:11:41Z ibiru $ +# $Id: PKGBUILD 64414 2012-02-13 03:46:16Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Franco Iacomella <yaco@gnu.org> pkgname=synfig -pkgver=0.63.03 -pkgrel=2 +pkgver=0.63.04 +pkgrel=1 pkgdesc="Professional vector animation program (CLI renderer only)" arch=(i686 x86_64 'mips64el') url="http://synfig.org" @@ -18,7 +18,7 @@ options=(!libtool) source=(http://downloads.sourceforge.net/project/synfig/synfig/$pkgver/synfig-$pkgver.tar.gz build-fix.patch ffmpeg-0.8.patch) -md5sums=('9bd77cd2fc2381adfbd50a7b9c1c6e7c' +md5sums=('baa0df3a51d101600771e0d45fcc7d22' 'b5568b06fae1a7ee465b5380b1139b83' 'ebf41046097cfd778dee9a9854561dae') diff --git a/community/synfigstudio/PKGBUILD b/community/synfigstudio/PKGBUILD index 591c3d8d1..3f5f85d7e 100644 --- a/community/synfigstudio/PKGBUILD +++ b/community/synfigstudio/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 60377 2011-12-12 14:49:30Z spupykin $ +# $Id: PKGBUILD 64416 2012-02-13 03:47:06Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Franco Iacomella <yaco@gnu.org> pkgname=synfigstudio -pkgver=0.63.03 -pkgrel=2 +pkgver=0.63.04 +pkgrel=1 pkgdesc="Professional vector animation program (GUI)" arch=(i686 x86_64 'mips64el') url="http://synfig.org" @@ -15,7 +15,7 @@ makedepends=('openexr' 'imagemagick' 'xorg-fonts-100dpi' 'xorg-fonts-75dpi' install=synfigstudio.install options=('!libtool') source=(http://downloads.sourceforge.net/project/synfig/synfigstudio/$pkgver/synfigstudio-$pkgver.tar.gz) -md5sums=('a166ff4917b0e058cae96e51aa273080') +md5sums=('6bc0d5410df032df6c518adca824ddb6') build() { cd $srcdir/synfigstudio-$pkgver diff --git a/community/synfigstudio/synfigstudio.install b/community/synfigstudio/synfigstudio.install index b95cc069d..6110a6f18 100644 --- a/community/synfigstudio/synfigstudio.install +++ b/community/synfigstudio/synfigstudio.install @@ -1,4 +1,5 @@ post_install() { + update-mime-database usr/share/mime || true which xdg-icon-resource 1>/dev/null 2>/dev/null && xdg-icon-resource forceupdate || true } diff --git a/community/systemd/systemctl-completion.patch b/community/systemd/systemctl-completion.patch deleted file mode 100644 index afa1ae73f..000000000 --- a/community/systemd/systemctl-completion.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 255e63837bc985ce6f3c3b5ce5d2856e2240138b Mon Sep 17 00:00:00 2001 -From: Dave Reisner <dreisner@archlinux.org> -Date: Tue, 11 Oct 2011 20:53:05 -0400 -Subject: [PATCH] systemctl-completion: always invoke with --no-legend - -In the case of completion for the 'restart' verb, passing the invalid -unit name (the colums header) causes completion to cease functioning -entirely, with the error: - - Failed to issue method call: Unit name UNIT is not valid. - -This adds a small wrapper function for systemctl which can have common -options added to it. - ---- - src/systemctl-bash-completion.sh | 20 ++++++++++++-------- - 1 files changed, 12 insertions(+), 8 deletions(-) - -diff --git a/src/systemctl-bash-completion.sh b/src/systemctl-bash-completion.sh -index 6369a6c..6ebb792 100644 ---- a/src/systemctl-bash-completion.sh -+++ b/src/systemctl-bash-completion.sh -@@ -15,6 +15,10 @@ - # You should have received a copy of the GNU General Public License - # along with systemd; If not, see <http://www.gnu.org/licenses/>. - -+__systemctl() { -+ systemctl --no-legend "$@" -+} -+ - __contains_word () { - local word=$1; shift - for w in $*; do [[ $w = $word ]] && return 0; done -@@ -24,7 +28,7 @@ __contains_word () { - __filter_units_by_property () { - local property=$1 value=$2 ; shift ; shift - local -a units=( $* ) -- local -a props=( $(systemctl show --property "$property" -- ${units[*]} | grep -v ^$) ) -+ local -a props=( $(__systemctl show --property "$property" -- ${units[*]} | grep -v ^$) ) - for ((i=0; $i < ${#units[*]}; i++)); do - if [[ "${props[i]}" = "$property=$value" ]]; then - echo "${units[i]}" -@@ -32,10 +36,10 @@ __filter_units_by_property () { - done - } - --__get_all_units () { systemctl list-units --full --all | awk ' {print $1}' ; } --__get_active_units () { systemctl list-units --full | awk ' {print $1}' ; } --__get_inactive_units () { systemctl list-units --full --all | awk '$3 == "inactive" {print $1}' ; } --__get_failed_units () { systemctl list-units --full | awk '$3 == "failed" {print $1}' ; } -+__get_all_units () { __systemctl list-units --full --all | awk ' {print $1}' ; } -+__get_active_units () { __systemctl list-units --full | awk ' {print $1}' ; } -+__get_inactive_units () { __systemctl list-units --full --all | awk '$3 == "inactive" {print $1}' ; } -+__get_failed_units () { __systemctl list-units --full | awk '$3 == "failed" {print $1}' ; } - - _systemctl () { - local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} -@@ -134,13 +138,13 @@ _systemctl () { - comps='' - - elif __contains_word "$verb" ${VERBS[JOBS]}; then -- comps=$( systemctl list-jobs | awk '{print $1}' ) -+ comps=$( __systemctl list-jobs | awk '{print $1}' ) - - elif __contains_word "$verb" ${VERBS[SNAPSHOTS]}; then -- comps=$( systemctl list-units --type snapshot --full --all | awk '{print $1}' ) -+ comps=$( __systemctl list-units --type snapshot --full --all | awk '{print $1}' ) - - elif __contains_word "$verb" ${VERBS[ENVS]}; then -- comps=$( systemctl show-environment | sed 's_\([^=]\+=\).*_\1_' ) -+ comps=$( __systemctl show-environment | sed 's_\([^=]\+=\).*_\1_' ) - compopt -o nospace - fi - --- -1.7.7 - diff --git a/community/ted/PKGBUILD b/community/ted/PKGBUILD index 8394534d1..d6dede015 100644 --- a/community/ted/PKGBUILD +++ b/community/ted/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 63752 2012-02-05 12:11:51Z ibiru $ +# $Id: PKGBUILD 64361 2012-02-11 23:24:27Z allan $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=ted pkgver=2.21 -pkgrel=4 +pkgrel=5 pkgdesc="An easy rich text processor (with footnote support)" arch=('i686' 'x86_64' 'mips64el') url="http://www.nllgg.nl/Ted/" diff --git a/community/texmaker/PKGBUILD b/community/texmaker/PKGBUILD deleted file mode 100644 index ce71432bb..000000000 --- a/community/texmaker/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# Maintainer: Thomas Dziedzic < gostrc at gmail > -# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> -# Contributor: furester <xfurester@hotmail.com> -# Contributor: Firmicus <firmicus gmx net> -# Contributor: Paulo Matias <matiasΘarchlinux-br·org> - -pkgname=texmaker -pkgver=3.2.2 -pkgrel=1 -pkgdesc='Free cross-platform latex editor' -arch=('i686' 'x86_64' 'mips64el') -url="http://www.xm1math.net/texmaker/index.html" -license=('GPL') -install='texmaker.install' -depends=('poppler-qt' 'ghostscript' 'qtwebkit') -source=("http://www.xm1math.net/texmaker/texmaker-${pkgver}.tar.bz2") -md5sums=('aa04c37a0117a6f924c0f7eed5732fe2') - -build() { - cd texmaker-${pkgver} - - export INSTALL_ROOT=${pkgdir} - - qmake -unix PREFIX=//usr texmaker.pro - - make -} - -package() { - cd texmaker-${pkgver} - - export INSTALL_PATH=${pkgdir} - - make install -} diff --git a/community/texmaker/texmaker.install b/community/texmaker/texmaker.install deleted file mode 100644 index 9591f6c5d..000000000 --- a/community/texmaker/texmaker.install +++ /dev/null @@ -1,7 +0,0 @@ -post_install() { - update-desktop-database -q -} - -post_remove() { - update-desktop-database -q -} diff --git a/community/tuxpaint/desktop.patch b/community/tuxpaint/desktop.patch deleted file mode 100644 index 78d2ed397..000000000 --- a/community/tuxpaint/desktop.patch +++ /dev/null @@ -1,7 +0,0 @@ ---- tuxpaint.desktop2 2008-03-20 15:45:22.000000000 +0100 -+++ tuxpaint.desktop 2008-03-20 15:56:33.000000000 +0100 -@@ -205,3 +205,4 @@ - Comment[zh_cn]=孩子的绘图程序。 - Comment[zh_tw]=適合兒童的畫圖程式 - Comment[zw]=Diif program paar keé men Dibuj paar biét biss -+Categories=Game;KidsGame;Graphics;RasterGraphics; diff --git a/community/twinkle/PKGBUILD b/community/twinkle/PKGBUILD index 5d64f1bc1..7088849a9 100644 --- a/community/twinkle/PKGBUILD +++ b/community/twinkle/PKGBUILD @@ -1,34 +1,44 @@ -# $Id: PKGBUILD 62127 2012-01-16 09:29:34Z spupykin $ +# $Id: PKGBUILD 64393 2012-02-12 19:27:33Z arodseth $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Jeff Mickey <jeff@archlinux.org> # Contributor: Alexander Baldeck <alexander@archlinux.org> # Contributor: Federico Quagliata (quaqo) <quaqo@despammed.com> +# Contributor: Alexander Rødseth <rodseth@gmail.com> pkgname=twinkle pkgver=1.4.2 -pkgrel=13 -pkgdesc="A softphone for voice over IP and instant messaging communications using the SIP protocol" -arch=('i686' 'x86_64') +pkgrel=14 +pkgdesc="Softphone for voice over IP and IM communication using SIP" +arch=('x86_64' 'i686') url="http://www.twinklephone.com/" license=('GPL') -depends=('file' 'speex' 'boost-libs' 'libsndfile' 'commoncpp2' 'libxml2' 'libx11' - 'qt3' 'libzrtpcpp') +depends=('file' 'speex' 'boost-libs' 'libsndfile' 'qt3' 'libzrtpcpp') makedepends=('pkg-config' 'boost') -source=(http://www.xs4all.nl/~mfnboer/${pkgname}/download/${pkgname}-${pkgver}.tar.gz) -md5sums=('d70c8972f296ffd998c7fb698774705b') +source=("http://www.xs4all.nl/~mfnboer/$pkgname/download/$pkgname-$pkgver.tar.gz" + "twinkle.desktop") +sha256sums=('807686c7ac1b54bb0ea27ff4be362db6926d1d3d6f1802f6d359a353157e89a5' + '88578b314f434d88ef387ee8bf541dcdd4dfeffba161c1c66e43ac54103b3862') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "$srcdir/$pkgname-$pkgver" + . /etc/profile.d/qt3.sh ./configure --prefix=/usr \ --without-kde \ --with-speex \ - --without-ilbc + --without-ilbc \ + --mandir=/usr/share/man make } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -D -m644 twinkle.desktop ${pkgdir}/usr/share/applications/twinkle.desktop + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir" install + install -Dm644 "$pkgdir/usr/share/twinkle/twinkle48.png" \ + "$pkgdir/usr/share/pixmaps/twinkle.png" + install -Dm644 twinkle.desktop \ + "$pkgdir/usr/share/applications/twinkle.desktop" } + +# vim:set ts=2 sw=2 et: diff --git a/community/twinkle/twinkle.desktop b/community/twinkle/twinkle.desktop index e85a32e51..60688b5fe 100644 --- a/community/twinkle/twinkle.desktop +++ b/community/twinkle/twinkle.desktop @@ -1,7 +1,7 @@ [Desktop Entry] Name=Twinkle -Comment=A SIP softphone for Qt -Icon=/usr/share/twinkle/twinkle48.png +Comment=SIP softphone for Qt +Icon=twinkle.png Exec=twinkle Terminal=false Type=Application diff --git a/community/unclutter/PKGBUILD b/community/unclutter/PKGBUILD index aad154b49..3d3fae2bc 100644 --- a/community/unclutter/PKGBUILD +++ b/community/unclutter/PKGBUILD @@ -6,7 +6,7 @@ pkgname=unclutter pkgver=8 -pkgrel=6 +pkgrel=6.1 pkgdesc="A small program for hiding the mouse cursor" url="http://ftp.x.org/contrib/utilities/unclutter-8.README" arch=('i686' 'x86_64' 'mips64el') diff --git a/community/unpaper/PKGBUILD b/community/unpaper/PKGBUILD index 52b0a52ed..b9bd738d3 100644 --- a/community/unpaper/PKGBUILD +++ b/community/unpaper/PKGBUILD @@ -4,7 +4,7 @@ pkgname=unpaper pkgver=0.3 -pkgrel=2 +pkgrel=2.1 pkgdesc="post-processing tool for scanned sheets of paper" arch=('i686' 'x86_64' 'mips64el') url="http://$pkgname.berlios.de/" diff --git a/community/virtviewer/PKGBUILD b/community/virtviewer/PKGBUILD index b1c3873be..2fb6b0fc3 100644 --- a/community/virtviewer/PKGBUILD +++ b/community/virtviewer/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 63765 2012-02-05 12:13:04Z ibiru $ +# $Id: PKGBUILD 64445 2012-02-13 15:08:55Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Jonathan Wiersma <archaur at jonw dot org> pkgname=virtviewer -pkgver=0.4.1 -pkgrel=2 +pkgver=0.4.2 +pkgrel=1 pkgdesc="A lightweight interface for interacting with the graphical display of virtualized guest OS." depends=('gtk-vnc' 'libglade>=2.6.0' 'libvirt') makedepends=('intltool') @@ -12,7 +12,7 @@ url="http://virt-manager.et.redhat.com" arch=('i686' 'x86_64' 'mips64el') license=('GPL') source=("http://virt-manager.et.redhat.com/download/sources/virt-viewer/virt-viewer-$pkgver.tar.gz") -md5sums=('1cc86ed3fbbe37a56faa6476b2e6dbcd') +md5sums=('4fc003cb655aa45b77c9f2ee45ba6d4f') build() { cd $srcdir/virt-viewer-$pkgver diff --git a/community/volumeicon/PKGBUILD b/community/volumeicon/PKGBUILD new file mode 100644 index 000000000..daa61ed5d --- /dev/null +++ b/community/volumeicon/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 64486 2012-02-14 08:50:43Z arodseth $ +# Maintainer: Alexander Rødseth <rodseth@gmail.com> +# Contributor: Maato <maato softwarebakery com> + +pkgname=volumeicon +pkgver=0.4.6 +pkgrel=3 +pkgdesc="Volume control for your system tray" +arch=('x86_64' 'i686') +url="http://softwarebakery.com/maato/volumeicon.html" +license=('GPL3') +depends=('gtk2>=2.16.0' 'alsa-lib') +source=("http://softwarebakery.com/maato/files/volumeicon/$pkgname-$pkgver.tar.gz") +sha256sums=('32f94adc5f346404ae564405dd483ae4bd04212df08e46f18d369b4ba2cb6590') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + ./configure --prefix=/usr + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir/" install +} + +# vim:set ts=2 sw=2 et: diff --git a/community/wesnoth/wesnoth-1.8.6-boost-foreach.patch b/community/wesnoth/wesnoth-1.8.6-boost-foreach.patch deleted file mode 100644 index 5aee3118c..000000000 --- a/community/wesnoth/wesnoth-1.8.6-boost-foreach.patch +++ /dev/null @@ -1,70 +0,0 @@ ---- wesnoth-1.8.6/src/gui/widgets/tree_view_node.cpp~ 2011-07-21 23:05:56.594879049 +0200 -+++ wesnoth-1.8.6/src/gui/widgets/tree_view_node.cpp 2011-07-21 23:28:07.540358742 +0200 -@@ -238,6 +238,17 @@ void ttree_view_node::clear() - - struct ttree_view_node_implementation - { -+ template<class W, class It> -+ static W* find_at_aux(It begin, It end, -+ const tpoint& coordinate, const bool must_be_active) { -+ for (It it = begin; it != end; ++it) { -+ if(W* widget = it->find_at(coordinate, must_be_active)) { -+ return widget; -+ } -+ } -+ return NULL; -+ } -+ - template<class W> - static W* find_at( - typename tconst_duplicator<W, ttree_view_node>::type& -@@ -255,13 +266,9 @@ struct ttree_view_node_implementation - } - - typedef typename tconst_duplicator<W, ttree_view_node>::type thack; -- foreach(thack& node, tree_view_node.children_) { -- if(W* widget = node.find_at(coordinate, must_be_active)) { -- return widget; -- } -- } -- -- return NULL; -+ return find_at_aux<W>(tree_view_node.children_.begin(), -+ tree_view_node.children_.end(), -+ coordinate, must_be_active); - } - }; - -@@ -313,7 +320,9 @@ tpoint ttree_view_node::get_current_size - return size; - } - -- foreach(const ttree_view_node& node, children_) { -+ for (boost::ptr_vector<ttree_view_node>::const_iterator it -+ = children_.begin (); it != children_.end (); ++it) { -+ const ttree_view_node& node = *it; - - if(node.grid_.get_visible() == twidget::INVISIBLE) { - continue; -@@ -344,7 +353,9 @@ tpoint ttree_view_node::get_unfolded_siz - size.x += (get_indention_level() - 1) * tree_view().indention_step_size_; - } - -- foreach(const ttree_view_node& node, children_) { -+ for (boost::ptr_vector<ttree_view_node>::const_iterator it -+ = children_.begin (); it != children_.end (); ++it) { -+ const ttree_view_node& node = *it; - - if(node.grid_.get_visible() == twidget::INVISIBLE) { - continue; -@@ -378,7 +389,9 @@ tpoint ttree_view_node::calculate_best_s - - DBG_GUI_L << LOG_HEADER << " own grid best size " << best_size << ".\n"; - -- foreach(const ttree_view_node& node, children_) { -+ for (boost::ptr_vector<ttree_view_node>::const_iterator it -+ = children_.begin (); it != children_.end (); ++it) { -+ const ttree_view_node& node = *it; - - if(node.grid_.get_visible() == twidget::INVISIBLE) { - continue; diff --git a/community/wesnoth/wesnoth-libpng-1.4.0.patch b/community/wesnoth/wesnoth-libpng-1.4.0.patch deleted file mode 100644 index 338f467af..000000000 --- a/community/wesnoth/wesnoth-libpng-1.4.0.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Nur wesnoth-1.8.orig/src/tools/exploder_utils.cpp wesnoth-1.8/src/tools/exploder_utils.cpp ---- wesnoth-1.8.orig/src/tools/exploder_utils.cpp 2010-01-01 15:16:49.000000000 +0200 -+++ wesnoth-1.8/src/tools/exploder_utils.cpp 2010-04-08 17:38:03.066201123 +0300 -@@ -174,8 +174,8 @@ - //TODO: review whether providing NULL error handlers is something - //sensible - png_struct* png_ptr = png_create_write_struct -- (PNG_LIBPNG_VER_STRING, reinterpret_cast<png_voidp>(png_voidp_NULL), -- png_error_ptr_NULL, png_error_ptr_NULL); -+ (PNG_LIBPNG_VER_STRING, reinterpret_cast<png_voidp>(NULL), -+ NULL, NULL); - if(!png_ptr) - throw exploder_failure("Unable to initialize the png write structure"); - ---- wesnoth-1.8.orig/src/tools/exploder_utils.cpp.libpng 2011-11-06 14:44:26.618711420 -0600 -+++ wesnoth-1.8/src/tools/exploder_utils.cpp 2011-11-06 14:57:12.150006511 -0600 -@@ -15,6 +15,7 @@ - #include "exploder_utils.hpp" - #include "game_config.hpp" - #include "serialization/string_utils.hpp" -+#include <zlib.h> - #include <png.h> - - exploder_point::exploder_point(const std::string &s) diff --git a/community/winefish/PKGBUILD b/community/winefish/PKGBUILD index 9ffbc3db8..1a098a70a 100644 --- a/community/winefish/PKGBUILD +++ b/community/winefish/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 60333 2011-12-11 17:42:32Z bpiotrowski $ +# $Id: PKGBUILD 64363 2012-02-11 23:24:33Z allan $ # Maintainer: Bartłomiej Piotrowski <barthalion@gmail.com> # Contributor: Allan McRae <allan@archlinux.org> # Contributor: Claudio Riva <firetux83@gmail.com> @@ -6,7 +6,7 @@ pkgname=winefish pkgver=1.3.3 -pkgrel=10 +pkgrel=11 pkgdesc="LaTeX editor based on Bluefish with auto-completion and syntax highlighting" url="http://winefish.berlios.de/" arch=('i686' 'x86_64' 'mips64el') diff --git a/community/xmms-imms/PKGBUILD b/community/xmms-imms/PKGBUILD index b07fd1af9..41c4ff9eb 100644 --- a/community/xmms-imms/PKGBUILD +++ b/community/xmms-imms/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 18268 2010-06-02 09:55:31Z spupykin $ +# $Id: PKGBUILD 64367 2012-02-11 23:25:01Z allan $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Kritoke <kritoke@nospam.gmail.com> # Contributor: Kritoke <kritoke@nospam.gmail.com> pkgname=xmms-imms pkgver=3.1.0_rc8 -pkgrel=2 +pkgrel=3 pkgdesc="An intelligent playlist plug-in for XMMS that tracks your listening patterns and dynamically adapts to your taste." arch=(i686 x86_64 'mips64el') license=("GPL") diff --git a/core/btrfs-progs/PKGBUILD b/core/btrfs-progs/PKGBUILD index 343cb55c3..ab848570a 100644 --- a/core/btrfs-progs/PKGBUILD +++ b/core/btrfs-progs/PKGBUILD @@ -5,7 +5,7 @@ pkgname=btrfs-progs pkgver=0.19.20120110 pkgrel=2 pkgdesc="btrfs filesystem utilities" -arch=(i686 x86_64) +arch=(i686 x86_64 mips64el) depends=('glibc' 'e2fsprogs') source=(ftp://ftp.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.xz) url="http://btrfs.wiki.kernel.org/" diff --git a/core/dhcpcd/PKGBUILD b/core/dhcpcd/PKGBUILD index 75477bfeb..817f7c7d7 100644 --- a/core/dhcpcd/PKGBUILD +++ b/core/dhcpcd/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 142553 2011-11-12 07:19:26Z allan $ +# $Id: PKGBUILD 150154 2012-02-13 15:50:03Z ronald $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: Tom Killian <tom.archlinux.org> # Contributor: Judd Vinet <jvinet.zeroflux.org> pkgname=dhcpcd -pkgver=5.2.12 -pkgrel=4 +pkgver=5.5.4 +pkgrel=1 pkgdesc="RFC2131 compliant DHCP client daemon" url="http://roy.marples.name/dhcpcd/" arch=('i686' 'x86_64' 'mips64el') @@ -17,7 +17,7 @@ options=('emptydirs') # We Need the Empty /var/lib/dhcpcd Directory source=("http://roy.marples.name/downloads/$pkgname/$pkgname-$pkgver.tar.bz2" \ 'dhcpcd.conf.d' '0001-Set-hostname-via-proc-if-file-is-available.patch' \ '0001-set-MTU-via-sysfs-if-file-is-available.patch') -sha1sums=('27378a251705c7888332e6d60eea7805d1f8aeb5' +sha1sums=('8aa42abd28d49cce5b179998490c36f6c490e338' 'b67b9ce6a2faaca75fea356966a16be2283b7db0' 'ee85adac972a8172a9d9b3a1bdd46e0430301582' 'afbed18dc5544f7d0b81e2266b322ca12becf9a4') @@ -30,7 +30,8 @@ build() { patch -Np1 -i ${srcdir}/0001-set-MTU-via-sysfs-if-file-is-available.patch # configure variables - ./configure --libexecdir=/usr/lib/dhcpcd --dbdir=/var/lib/dhcpcd + ./configure --libexecdir=/usr/lib/dhcpcd --dbdir=/var/lib/dhcpcd \ + --rundir=/run # Build make diff --git a/core/gcc/PKGBUILD b/core/gcc/PKGBUILD index f1bf35876..5ea4f6637 100644 --- a/core/gcc/PKGBUILD +++ b/core/gcc/PKGBUILD @@ -31,6 +31,12 @@ source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2 gcc_mips64el_lib.patch gcc-hash-style-both.patch gcc-4.6.2-cloog-0.17.patch) +md5sums=('f7ca5d9f7a07216577f81318b7cf56ef' + '450772ce32daed97d7383199f8797f33' + '4030ee1c08dd1e843c0225b772360e76' + '67e337993d821d72fccacbed52d48c34' + '4df25b623799b148a0703eaeec8fdf3f' + '6d9939a2e667376031679ac9f9c49263') if [ -n "${_snapshot}" ]; then _basedir="${srcdir}/gcc-${_snapshot}" diff --git a/core/gcc/gcc-libs.install b/core/gcc/gcc-libs.install index a880434ae..a6ac198f2 100644 --- a/core/gcc/gcc-libs.install +++ b/core/gcc/gcc-libs.install @@ -4,13 +4,13 @@ filelist=(libgomp.info libquadmath.info) post_upgrade() { [ -x usr/bin/install-info ] || return 0 for file in ${filelist[@]}; do - [ -f $infodir/$file.gz ] && install-info $infodir/$file.gz $infodir/dir 2> /dev/null + [ -f $infodir/$file.gz ] && install-info $infodir/$file.gz $infodir/dir 2> /dev/null || true done } pre_remove() { [ -x usr/bin/install-info ] || return 0 for file in ${filelist[@]}; do - [ -f $infodir/$file.gz ] && install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null + [ -f $infodir/$file.gz ] && install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null || true done } diff --git a/core/glib2/PKGBUILD b/core/glib2/PKGBUILD index 075b45073..01c980695 100644 --- a/core/glib2/PKGBUILD +++ b/core/glib2/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 142720 2011-11-13 20:52:32Z ibiru $ +# $Id: PKGBUILD 149930 2012-02-11 23:29:30Z allan $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=glib2 pkgver=2.30.2 -pkgrel=1 +pkgrel=2 pkgdesc="Common C routines used by GTK+ and other libs" url="http://www.gtk.org/" arch=(i686 x86_64 'mips64el') diff --git a/core/glibc/PKGBUILD b/core/glibc/PKGBUILD index 5e4442ba0..020907346 100644 --- a/core/glibc/PKGBUILD +++ b/core/glibc/PKGBUILD @@ -65,7 +65,6 @@ md5sums=('6ffdf5832192b92f98bdd125317c0dfc' '07ac979b6ab5eeb778d55f041529d623' '476e9113489f93b348b21e144b6a8fcf') - mksource() { git clone http://sourceware.org/git/glibc.git pushd glibc @@ -267,19 +266,3 @@ package() { lib/{libmemusage,libpcprofile,libSegFault}.so \ usr/lib/{pt_chown,{audit,gconv}/*.so} } -md5sums=('6ffdf5832192b92f98bdd125317c0dfc' - 'a006504b83553d0b554cf8badff005b6' - '4dadb9203b69a3210d53514bb46f41c3' - '0c5540efc51c0b93996c51b57a8540ae' - '40cd342e21f71f5e49e32622b25acc52' - 'b042647ea7d6f22ad319e12e796bd13e' - '6970bcfeb3bf88913436d5112d16f588' - '7da8c554a3b591c7401d7023b1928afc' - 'c5de2a946215d647c8af5432ec4b0da0' - '55febbb72139ac7b65757df085024b83' - '3c219ddfb619b6df903cac4cc42c611d' - '7ae3e426251ae33e73dbad71f9c91378' - 'dc7550e659ddd685bd78a930d15a01f2' - 'b587ee3a70c9b3713099295609afde49' - '07ac979b6ab5eeb778d55f041529d623' - '476e9113489f93b348b21e144b6a8fcf') diff --git a/core/gnupg/PKGBUILD b/core/gnupg/PKGBUILD index b6419c832..d3c490d20 100644 --- a/core/gnupg/PKGBUILD +++ b/core/gnupg/PKGBUILD @@ -5,7 +5,7 @@ pkgname=gnupg pkgver=1.4.12 pkgrel=1 pkgdesc="GNU Privacy Guard - a PGP replacement tool" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'mips64el') license=('GPL3') depends=('zlib' 'bzip2' 'libldap>=2.4.18' 'libusb-compat' 'curl>=7.16.2' 'readline>=6.0.00') source=(ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/gnupg/$pkgname-$pkgver.tar.bz2) diff --git a/core/gpgme/PKGBUILD b/core/gpgme/PKGBUILD index 830d06cc3..76e2dc8a8 100644 --- a/core/gpgme/PKGBUILD +++ b/core/gpgme/PKGBUILD @@ -7,7 +7,7 @@ pkgname=gpgme pkgver=1.3.1 pkgrel=2 pkgdesc="A C wrapper library for GnuPG" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'mips64el') url="http://www.gnupg.org/related_software/gpgme/" license=('GPL') depends=('libgpg-error' 'pth' 'gnupg' 'gnupg2') diff --git a/core/grep/PKGBUILD b/core/grep/PKGBUILD index 5cd2533f6..0a727b140 100644 --- a/core/grep/PKGBUILD +++ b/core/grep/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 143252 2011-11-24 01:36:25Z allan $ +# $Id: PKGBUILD 149932 2012-02-11 23:29:33Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgname=grep pkgver=2.10 -pkgrel=1 +pkgrel=2 pkgdesc="A string search utility" arch=('i686' 'x86_64' 'mips64el') license=('GPL3') @@ -19,7 +19,7 @@ md5sums=('709915434d09f5db655e5ebd7fd6bb7f' build() { cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --bindir=/bin --without-included-regex + ./configure --prefix=/usr --without-included-regex make } diff --git a/core/iw/PKGBUILD b/core/iw/PKGBUILD index 260ec0c2e..dd1cc2b0a 100644 --- a/core/iw/PKGBUILD +++ b/core/iw/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 135527 2011-08-14 20:37:21Z thomas $ +# $Id: PKGBUILD 149926 2012-02-11 23:08:41Z thomas $ # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=iw -pkgver=3.0 -pkgrel=1.1 +pkgver=3.3 +pkgrel=1 pkgdesc="nl80211 based CLI configuration utility for wireless devices" arch=("i686" "x86_64" 'mips64el') url="http://wireless.kernel.org/en/users/Documentation/iw" @@ -11,7 +11,7 @@ license=("GPL") depends=("libnl") makedepends=("linux-api-headers" "pkg-config") source=(http://wireless.kernel.org/download/$pkgname/$pkgname-$pkgver.tar.bz2) -sha256sums=('a0ccbf1ce71ae4bdb05495ca18ab00a87c06dce2c3bf8b8358c615e60c4632fb') +sha256sums=('567f0d389dd7c9919832101aaa8e3863a463cb505545534eb46b4ddab4400e60') build() { cd "$srcdir"/$pkgname-$pkgver diff --git a/testing/kmod/0001-libkmod-module-probe-Fix-ignore-loaded-flag-not-bein.patch b/core/kmod/0001-libkmod-module-probe-Fix-ignore-loaded-flag-not-bein.patch index 4ffc3e53b..4ffc3e53b 100644 --- a/testing/kmod/0001-libkmod-module-probe-Fix-ignore-loaded-flag-not-bein.patch +++ b/core/kmod/0001-libkmod-module-probe-Fix-ignore-loaded-flag-not-bein.patch diff --git a/core/kmod/0001-partially-fix-parsing-of-alias-with-dots.patch b/core/kmod/0001-partially-fix-parsing-of-alias-with-dots.patch deleted file mode 100644 index b69d095d3..000000000 --- a/core/kmod/0001-partially-fix-parsing-of-alias-with-dots.patch +++ /dev/null @@ -1,34 +0,0 @@ -From cdaf4b2f3ef60365c6b8006a63410368a7b38f39 Mon Sep 17 00:00:00 2001 -From: Dave Reisner <dreisner@archlinux.org> -Date: Tue, 31 Jan 2012 00:12:32 -0500 -Subject: [PATCH 1/4] partially fix parsing of alias with dots - ---- - libkmod/libkmod-util.c | 4 +--- - 1 files changed, 1 insertions(+), 3 deletions(-) - -diff --git a/libkmod/libkmod-util.c b/libkmod/libkmod-util.c -index 7c2611b..6a9f697 100644 ---- a/libkmod/libkmod-util.c -+++ b/libkmod/libkmod-util.c -@@ -134,8 +134,7 @@ inline int alias_normalize(const char *alias, char buf[PATH_MAX], size_t *len) - case ']': - return -EINVAL; - case '[': -- while (alias[s] != ']' && -- alias[s] != '.' && alias[s] != '\0') -+ while (alias[s] != ']' && alias[s] != '\0') - s++; - - if (alias[s] != ']') -@@ -144,7 +143,6 @@ inline int alias_normalize(const char *alias, char buf[PATH_MAX], size_t *len) - s++; - break; - case '\0': -- case '.': - goto finish; - default: - buf[s] = c; --- -1.7.9 - diff --git a/core/kmod/0002-libkmod-module-used-shared-code-in-module-creation.patch b/core/kmod/0002-libkmod-module-used-shared-code-in-module-creation.patch deleted file mode 100644 index 76cc35049..000000000 --- a/core/kmod/0002-libkmod-module-used-shared-code-in-module-creation.patch +++ /dev/null @@ -1,196 +0,0 @@ -From 1d2f64689b2456ade81d6d489c4f5bfb5fdb92fd Mon Sep 17 00:00:00 2001 -From: Dave Reisner <dreisner@archlinux.org> -Date: Tue, 31 Jan 2012 00:13:43 -0500 -Subject: [PATCH 2/4] libkmod-module: used shared code in module creation - ---- - libkmod/libkmod-module.c | 135 ++++++++++++++++++++++++++------------------- - 1 files changed, 78 insertions(+), 57 deletions(-) - -diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c -index 47b1709..48e4aa1 100644 ---- a/libkmod/libkmod-module.c -+++ b/libkmod/libkmod-module.c -@@ -162,6 +162,76 @@ fail: - return err; - } - -+/* -+ * Memory layout with alias: -+ * -+ * struct kmod_module { -+ * hashkey -----. -+ * alias -----. | -+ * name ----. | | -+ * } | | | -+ * name <----------' | | -+ * alias <-----------' | -+ * name\alias <--------' -+ * -+ * Memory layout without alias: -+ * -+ * struct kmod_module { -+ * hashkey ---. -+ * alias -----|----> NULL -+ * name ----. | -+ * } | | -+ * name <----------'-' -+ * -+ * @key is "name\alias" or "name" (in which case alias == NULL) -+ */ -+static int kmod_module_new(struct kmod_ctx *ctx, const char *key, -+ const char *name, size_t namelen, -+ const char *alias, size_t aliaslen, -+ struct kmod_module **mod) -+{ -+ struct kmod_module *m; -+ size_t keylen; -+ -+ m = kmod_pool_get_module(ctx, key); -+ if (m != NULL) { -+ *mod = kmod_module_ref(m); -+ return 0; -+ } -+ -+ if (alias == NULL) -+ keylen = namelen; -+ else -+ keylen = namelen + aliaslen + 1; -+ -+ m = malloc(sizeof(*m) + (alias == NULL ? 1 : 2) * (keylen + 1)); -+ if (m == NULL) { -+ free(m); -+ return -ENOMEM; -+ } -+ -+ memset(m, 0, sizeof(*m)); -+ -+ m->ctx = kmod_ref(ctx); -+ m->name = (char *)m + sizeof(*m); -+ memcpy(m->name, key, keylen + 1); -+ if (alias == NULL) { -+ m->hashkey = m->name; -+ m->alias = NULL; -+ } else { -+ m->name[namelen] = '\0'; -+ m->alias = m->name + namelen + 1; -+ m->hashkey = m->name + keylen + 1; -+ memcpy(m->hashkey, key, keylen + 1); -+ } -+ -+ m->refcount = 1; -+ kmod_pool_add_module(ctx, m, m->hashkey); -+ *mod = m; -+ -+ return 0; -+} -+ - /** - * kmod_module_new_from_name: - * @ctx: kmod library context -@@ -188,54 +258,15 @@ KMOD_EXPORT int kmod_module_new_from_name(struct kmod_ctx *ctx, - const char *name, - struct kmod_module **mod) - { -- struct kmod_module *m; - size_t namelen; - char name_norm[PATH_MAX]; -- char *namesep; - - if (ctx == NULL || name == NULL || mod == NULL) - return -ENOENT; - -- if (alias_normalize(name, name_norm, &namelen) < 0) { -- DBG(ctx, "invalid alias: %s\n", name); -- return -EINVAL; -- } -+ modname_normalize(name, name_norm, &namelen); - -- m = kmod_pool_get_module(ctx, name_norm); -- if (m != NULL) { -- *mod = kmod_module_ref(m); -- return 0; -- } -- -- namesep = strchr(name_norm, '/'); -- m = malloc(sizeof(*m) + (namesep == NULL ? 1 : 2) * namelen + 2); -- if (m == NULL) { -- free(m); -- return -ENOMEM; -- } -- -- memset(m, 0, sizeof(*m)); -- -- m->ctx = kmod_ref(ctx); -- m->name = (char *)m + sizeof(*m); -- memcpy(m->name, name_norm, namelen + 1); -- -- if (namesep) { -- size_t len = namesep - name_norm; -- -- m->name[len] = '\0'; -- m->alias = m->name + len + 1; -- m->hashkey = m->name + namelen + 1; -- memcpy(m->hashkey, name_norm, namelen + 1); -- } else { -- m->hashkey = m->name; -- } -- -- m->refcount = 1; -- kmod_pool_add_module(ctx, m, m->hashkey); -- *mod = m; -- -- return 0; -+ return kmod_module_new(ctx, name_norm, name_norm, namelen, NULL, 0, mod); - } - - int kmod_module_new_from_alias(struct kmod_ctx *ctx, const char *alias, -@@ -251,9 +282,9 @@ int kmod_module_new_from_alias(struct kmod_ctx *ctx, const char *alias, - - memcpy(key, name, namelen); - memcpy(key + namelen + 1, alias, aliaslen + 1); -- key[namelen] = '/'; -+ key[namelen] = '\\'; - -- err = kmod_module_new_from_name(ctx, key, mod); -+ err = kmod_module_new(ctx, key, name, namelen, alias, aliaslen, mod); - if (err < 0) - return err; - -@@ -323,7 +354,7 @@ KMOD_EXPORT int kmod_module_new_from_path(struct kmod_ctx *ctx, - free(abspath); - else { - ERR(ctx, "kmod_module '%s' already exists with different path: new-path='%s' old-path='%s'\n", -- name, abspath, m->path); -+ name, abspath, m->path); - free(abspath); - return -EEXIST; - } -@@ -332,21 +363,11 @@ KMOD_EXPORT int kmod_module_new_from_path(struct kmod_ctx *ctx, - return 0; - } - -- m = malloc(sizeof(*m) + namelen + 1); -- if (m == NULL) -- return -errno; -- -- memset(m, 0, sizeof(*m)); -+ err = kmod_module_new(ctx, name, name, namelen, NULL, 0, &m); -+ if (err < 0) -+ return err; - -- m->ctx = kmod_ref(ctx); -- m->name = (char *)m + sizeof(*m); -- memcpy(m->name, name, namelen + 1); - m->path = abspath; -- m->hashkey = m->name; -- m->refcount = 1; -- -- kmod_pool_add_module(ctx, m, m->hashkey); -- - *mod = m; - - return 0; --- -1.7.9 - diff --git a/core/kmod/0003-modprobe-handle-all-error-returns-from-init_module.patch b/core/kmod/0003-modprobe-handle-all-error-returns-from-init_module.patch deleted file mode 100644 index 5bbc93a90..000000000 --- a/core/kmod/0003-modprobe-handle-all-error-returns-from-init_module.patch +++ /dev/null @@ -1,34 +0,0 @@ -From fdf78d80d298353c29e1fe8c00602669dd9662bb Mon Sep 17 00:00:00 2001 -From: Dave Reisner <dreisner@archlinux.org> -Date: Mon, 30 Jan 2012 23:05:26 -0500 -Subject: [PATCH 3/4] modprobe: handle all error returns from init_module - ---- - tools/kmod-modprobe.c | 4 +++- - 1 files changed, 3 insertions(+), 1 deletions(-) - -diff --git a/tools/kmod-modprobe.c b/tools/kmod-modprobe.c -index 3e51506..c882856 100644 ---- a/tools/kmod-modprobe.c -+++ b/tools/kmod-modprobe.c -@@ -551,6 +551,8 @@ static int insmod_do_insert_module(struct kmod_module *mod, const char *opts) - - err = kmod_module_insert_module(mod, flags, opts); - switch (err) { -+ case 0: -+ break; - case -EEXIST: - /* - * We checked for EEXIST with an earlier call to -@@ -564,7 +566,7 @@ static int insmod_do_insert_module(struct kmod_module *mod, const char *opts) - ERR("Module %s already in kernel.\n", - kmod_module_get_name(mod)); - break; -- case -EPERM: -+ default: - ERR("could not insert '%s': %s\n", kmod_module_get_name(mod), - strerror(-err)); - break; --- -1.7.9 - diff --git a/core/kmod/0004-modprobe-remove-0-refcnt-deps.patch b/core/kmod/0004-modprobe-remove-0-refcnt-deps.patch deleted file mode 100644 index 80cc73130..000000000 --- a/core/kmod/0004-modprobe-remove-0-refcnt-deps.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 4e3dd21aff55b5bbaa08b037fc2a5625bfffc0a5 Mon Sep 17 00:00:00 2001 -From: Dave Reisner <dreisner@archlinux.org> -Date: Mon, 30 Jan 2012 23:39:30 -0500 -Subject: [PATCH 4/4] modprobe: remove 0 refcnt deps - ---- - tools/kmod-modprobe.c | 15 +++++++++++++-- - 1 files changed, 13 insertions(+), 2 deletions(-) - -diff --git a/tools/kmod-modprobe.c b/tools/kmod-modprobe.c -index c882856..bd991a5 100644 ---- a/tools/kmod-modprobe.c -+++ b/tools/kmod-modprobe.c -@@ -381,7 +381,7 @@ static int rmmod_do_deps_list(struct kmod_list *list, bool stop_on_errors) - static int rmmod_do_module(struct kmod_module *mod, bool do_dependencies) - { - const char *modname = kmod_module_get_name(mod); -- struct kmod_list *pre = NULL, *post = NULL; -+ struct kmod_list *pre = NULL, *post = NULL, *deps, *itr; - const char *cmd = NULL; - int err; - -@@ -422,7 +422,7 @@ static int rmmod_do_module(struct kmod_module *mod, bool do_dependencies) - rmmod_do_deps_list(post, false); - - if (do_dependencies && remove_dependencies) { -- struct kmod_list *deps = kmod_module_get_dependencies(mod); -+ deps = kmod_module_get_dependencies(mod); - - err = rmmod_do_deps_list(deps, true); - if (err < 0) -@@ -451,6 +451,17 @@ static int rmmod_do_module(struct kmod_module *mod, bool do_dependencies) - - rmmod_do_deps_list(pre, false); - -+ deps = kmod_module_get_dependencies(mod); -+ if (deps != NULL) { -+ kmod_list_foreach_reverse(itr, deps) { -+ struct kmod_module *dep = kmod_module_get_module(itr); -+ if (kmod_module_get_refcnt(dep) == 0) -+ rmmod_do_remove_module(dep); -+ kmod_module_unref(dep); -+ } -+ kmod_module_unref_list(deps); -+ } -+ - error: - kmod_module_unref_list(pre); - kmod_module_unref_list(post); --- -1.7.9 - diff --git a/core/kmod/PKGBUILD b/core/kmod/PKGBUILD index 06275f062..85d74af1f 100644 --- a/core/kmod/PKGBUILD +++ b/core/kmod/PKGBUILD @@ -1,41 +1,32 @@ -# $Id: PKGBUILD 148463 2012-02-01 13:16:33Z dreisner $ +# $Id: PKGBUILD 150108 2012-02-12 15:37:16Z dreisner $ # Maintainer: Dave Reisner <dreisner@archlinux.org> pkgname=kmod -pkgver=4 +pkgver=5 pkgrel=2 pkgdesc="Linux kernel module handling" arch=('i686' 'x86_64' 'mips64el') url="http://git.profusion.mobi/cgit.cgi/kmod.git" license=('GPL2') depends=('glibc' 'zlib') -makedepends=('docbook2x') options=('!libtool') provides=('module-init-tools=3.16') conflicts=('module-init-tools') replaces=('module-init-tools') source=("http://packages.profusion.mobi/$pkgname/$pkgname-$pkgver.tar.xz" - 0001-partially-fix-parsing-of-alias-with-dots.patch - 0002-libkmod-module-used-shared-code-in-module-creation.patch - 0003-modprobe-handle-all-error-returns-from-init_module.patch - 0004-modprobe-remove-0-refcnt-deps.patch + '0001-libkmod-module-probe-Fix-ignore-loaded-flag-not-bein.patch' "depmod-search.conf") -md5sums=('e14450a066a48accd0af1995b3c0232d' - '5f497ab3466ee1a616b6e6c97b330706' - '23a9257a152862753ce4c4ee7287761a' - '3a57671b0f37b1203b207f35a4442ae3' - '1fe88eee9302104b179124ce6bfc55d2' +md5sums=('b271c2ec54aba1c67bda63c8579d8c15' + '81545a1509b43008f85c03fb980f0e86' '4b8cbcbc54b9029c99fd730e257d4436') build() { cd "$pkgname-$pkgver" - patch -Np1 <"$srcdir/0001-partially-fix-parsing-of-alias-with-dots.patch" - patch -Np1 <"$srcdir/0002-libkmod-module-used-shared-code-in-module-creation.patch" - patch -Np1 <"$srcdir/0003-modprobe-handle-all-error-returns-from-init_module.patch" - patch -Np1 <"$srcdir/0004-modprobe-remove-0-refcnt-deps.patch" + # fix modprobe --show-depends failures on loaded modules + patch -Np1 <"$srcdir/0001-libkmod-module-probe-Fix-ignore-loaded-flag-not-bein.patch" - ./configure \ + CFLAGS+=' -g -O0' ./configure \ --sysconfdir=/etc \ --with-rootprefix= \ --with-zlib @@ -50,16 +41,13 @@ check() { package() { make -C "$pkgname-$pkgver" DESTDIR="$pkgdir" install - # binary directories - install -dm755 "$pkgdir"/{,s}bin - - # configuration directories - install -dm755 "$pkgdir"/{etc,lib}/{depmod,modprobe}.d + # extra directories + install -dm755 "$pkgdir"/{etc,lib}/{depmod,modprobe}.d "$pkgdir/sbin" # add symlinks to kmod - ln -s /usr/bin/kmod "$pkgdir/bin/lsmod" - for tool in {ins,rm,dep}mod mod{info,probe}; do - ln -s ../usr/bin/kmod "$pkgdir/sbin/$tool" + ln -s ../usr/bin/kmod "$pkgdir/sbin/modprobe" + for tool in {dep,ins,ls,rm}mod modinfo; do + ln -s kmod "$pkgdir/usr/bin/$tool" done # install depmod.d file for search/ dir diff --git a/core/less/PKGBUILD b/core/less/PKGBUILD index 5edb5273f..884fd549e 100644 --- a/core/less/PKGBUILD +++ b/core/less/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 142066 2011-11-04 23:35:58Z allan $ +# $Id: PKGBUILD 149934 2012-02-11 23:29:36Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgname=less pkgver=444 -pkgrel=2.1 +pkgrel=3.1 pkgdesc="A terminal based program for viewing text files" license=('GPL3') arch=('i686' 'x86_64' 'mips64el') @@ -26,6 +26,4 @@ package() { cd "${srcdir}/${pkgname}-${pkgver}" make prefix="${pkgdir}"/usr install - install -dm755 "${pkgdir}"/bin - mv "${pkgdir}"/usr/bin/${pkgname} "${pkgdir}"/bin } diff --git a/core/libassuan/PKGBUILD b/core/libassuan/PKGBUILD index 12e79ce0e..2ba5063e8 100644 --- a/core/libassuan/PKGBUILD +++ b/core/libassuan/PKGBUILD @@ -5,7 +5,7 @@ pkgname=libassuan pkgver=2.0.3 pkgrel=1 pkgdesc="A IPC library used by some GnuPG related software" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'mips64el') license=('GPL') url="http://www.gnupg.org/related_software/libassuan" depends=('libgpg-error') diff --git a/core/libksba/PKGBUILD b/core/libksba/PKGBUILD index ccc897c8b..505a60633 100644 --- a/core/libksba/PKGBUILD +++ b/core/libksba/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 146743 2012-01-16 22:52:50Z dreisner $ +# $Id: PKGBUILD 149815 2012-02-11 07:14:25Z tpowa $ # Maintainer: damir <damir@archlinux.org> # Contributor: Damir Perisa <damir.perisa@bluewin.ch> pkgname=libksba pkgver=1.2.0 -pkgrel=1 +pkgrel=2 pkgdesc="A CMS and X.509 access library" arch=(i686 x86_64) license=('GPL') @@ -15,9 +15,18 @@ options=(!libtool) install=libksba.install build() { - cd $startdir/src/$pkgname-$pkgver + cd $srcdir/$pkgname-$pkgver ./configure --prefix=/usr make - make DESTDIR=$startdir/pkg install +} + +check() { + cd $srcdir/$pkgname-$pkgver + make check +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install } md5sums=('e797f370b69b4dc776499d6a071ae137') diff --git a/core/libtool/PKGBUILD b/core/libtool/PKGBUILD index dd52c6771..65dc24970 100644 --- a/core/libtool/PKGBUILD +++ b/core/libtool/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 141370 2011-10-30 06:46:45Z allan $ +# $Id: PKGBUILD 149936 2012-02-11 23:29:39Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> @@ -6,7 +6,7 @@ pkgname=('libtool' 'libltdl') pkgver=2.4.2 -pkgrel=2 +pkgrel=4 pkgdesc="A generic library support script" arch=('i686' 'x86_64' 'mips64el') url="http://www.gnu.org/software/libtool" diff --git a/core/ncurses/PKGBUILD b/core/ncurses/PKGBUILD index 4c816ce0b..866b1f3fd 100644 --- a/core/ncurses/PKGBUILD +++ b/core/ncurses/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 142072 2011-11-04 23:36:06Z allan $ +# $Id: PKGBUILD 150103 2012-02-12 13:47:59Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgname=ncurses pkgver=5.9 -pkgrel=2.1 +pkgrel=3 pkgdesc="System V Release 4.0 curses emulation library" arch=('i686' 'x86_64' 'mips64el') url="http://www.gnu.org/software/ncurses/" @@ -21,7 +21,8 @@ build() { cd ${srcdir}/ncursesw-build ../${pkgname}-${pkgver}/configure --prefix=/usr --mandir=/usr/share/man \ --with-shared --with-normal --without-debug --without-ada \ - --with-install-prefix=${pkgdir} --enable-widec + --with-install-prefix=${pkgdir} --enable-widec \ + --enable-pc-files # add --enable-ext-colors with next soname bump make @@ -38,34 +39,27 @@ package() { cd ${srcdir}/ncursesw-build make install - # move libraries needed for boot to /lib (we call tput in initscripts) - install -dm755 ${pkgdir}/lib - mv ${pkgdir}/usr/lib/libncursesw.so.5* ${pkgdir}/lib - ln -sf ../../lib/libncursesw.so.5 ${pkgdir}/usr/lib/libncursesw.so - # Fool packages looking to link to non-wide-character ncurses libraries - for lib in curses ncurses form panel menu; do - rm -f ${pkgdir}/usr/lib/lib${lib}.so + for lib in ncurses form panel menu; do echo "INPUT(-l${lib}w)" >${pkgdir}/usr/lib/lib${lib}.so - ln -sf lib${lib}w.a ${pkgdir}/usr/lib/lib${lib}.a + ln -s lib${lib}w.a ${pkgdir}/usr/lib/lib${lib}.a done - ln -sf libncurses++w.a ${pkgdir}/usr/lib/libncurses++.a + ln -s libncurses++w.a ${pkgdir}/usr/lib/libncurses++.a - # install tput to /bin - install -dm755 ${pkgdir}/bin/ - mv ${pkgdir}/usr/bin/tput ${pkgdir}/bin/tput + for lib in ncurses ncurses++ form panel menu; do + ln -s ${lib}w.pc ${pkgdir}/usr/lib/pkgconfig/${lib}.pc + done # Some packages look for -lcurses during build - rm -f ${pkgdir}/usr/lib/libcursesw.so echo "INPUT(-lncursesw)" >${pkgdir}/usr/lib/libcursesw.so - ln -sf libncurses.so ${pkgdir}/usr/lib/libcurses.so - ln -sf libncursesw.a ${pkgdir}/usr/lib/libcursesw.a - ln -sf libncurses.a ${pkgdir}/usr/lib/libcurses.a + ln -s libncurses.so ${pkgdir}/usr/lib/libcurses.so + ln -s libncursesw.a ${pkgdir}/usr/lib/libcursesw.a + ln -s libncurses.a ${pkgdir}/usr/lib/libcurses.a # non-widec compatibility library cd ${srcdir}/ncurses-build install -Dm755 lib/libncurses.so.${pkgver} ${pkgdir}/usr/lib/libncurses.so.${pkgver} - ln -sf libncurses.so.${pkgver} ${pkgdir}/usr/lib/libncurses.so.5 + ln -s libncurses.so.${pkgver} ${pkgdir}/usr/lib/libncurses.so.5 # install license, rip it from the readme cd ${srcdir}/${pkgname}-${pkgver} diff --git a/core/pcre/PKGBUILD b/core/pcre/PKGBUILD index d828db0a9..3d97ae554 100644 --- a/core/pcre/PKGBUILD +++ b/core/pcre/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 145006 2011-12-13 23:40:35Z allan $ +# $Id: PKGBUILD 149938 2012-02-11 23:29:42Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: Eric Belanger <eric@archlinux.org> # Contributor: John Proctor <jproctor@prium.net> pkgname=pcre -pkgver=8.21 +pkgver=8.30 pkgrel=1 pkgdesc="A library that implements Perl 5-style regular expressions" arch=('i686' 'x86_64' 'mips64el') @@ -13,14 +13,14 @@ license=('BSD') depends=('gcc-libs') options=('!libtool') source=(ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${pkgname}-${pkgver}.tar.bz2{,.sig}) -md5sums=('0a7b592bea64b7aa7f4011fc7171a730' - '4768871445dff956e620a9e902b4db55') +md5sums=('98e8928cccc945d04279581e778fbdff' + '01eee0333fa71687e0b6756db77f94ad') build() { cd "${srcdir}"/${pkgname}-${pkgver} [ "${CARCH}" = "x86_64" ] && export CFLAGS="${CFLAGS} -fPIC" - ./configure --prefix=/usr --enable-jit \ + ./configure --prefix=/usr --enable-pcre16 --enable-jit \ --enable-utf8 --enable-unicode-properties make } @@ -34,10 +34,5 @@ package() { cd "${srcdir}"/${pkgname}-${pkgver} make DESTDIR="${pkgdir}" install - # grep uses pcre, so we need the libs in /lib - install -dm755 "${pkgdir}"/lib - mv "${pkgdir}"/usr/lib/libpcre.so.* "${pkgdir}"/lib/ - ln -sf /lib/libpcre.so.0 "${pkgdir}"/usr/lib/libpcre.so - install -Dm644 LICENCE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE } diff --git a/core/pinentry/PKGBUILD b/core/pinentry/PKGBUILD index c94625d29..ca098263f 100644 --- a/core/pinentry/PKGBUILD +++ b/core/pinentry/PKGBUILD @@ -4,7 +4,7 @@ pkgname=pinentry pkgver=0.8.1 pkgrel=3 pkgdesc="a collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'mips64el') license=('GPL') url="http://www.gnupg.org/aegypten2" depends=('ncurses' 'libcap>=2.16') @@ -16,7 +16,7 @@ source=(ftp://ftp.gnupg.org/gcrypt/$pkgname/$pkgname-$pkgver.tar.gz install=pinentry.install build() { - cd $startdir/src/$pkgname-$pkgver + cd $srcdir/$pkgname-$pkgver for file in qt4/*.moc; do /usr/bin/moc ${file/.moc/.h} > ${file} done diff --git a/core/procinfo-ng/PKGBUILD b/core/procinfo-ng/PKGBUILD index 45fa85e68..8444232b0 100644 --- a/core/procinfo-ng/PKGBUILD +++ b/core/procinfo-ng/PKGBUILD @@ -4,7 +4,7 @@ pkgname=procinfo-ng pkgver=2.0.304 -pkgrel=3 +pkgrel=3.1 pkgdesc="Displays useful information from /proc" arch=('i686' 'x86_64' 'mips64el') url="http://procinfo-ng.sourceforge.net/" diff --git a/core/udev/PKGBUILD b/core/udev/PKGBUILD index efe9f4fa4..80bd4b804 100644 --- a/core/udev/PKGBUILD +++ b/core/udev/PKGBUILD @@ -1,30 +1,33 @@ -# $Id: PKGBUILD 148430 2012-01-31 19:55:52Z tomegun $ +# $Id: PKGBUILD 150105 2012-02-12 15:37:11Z dreisner $ # Maintainer: Tom Gundersen <teg@jklm.no> # Contributor: Aaron Griffin <aaron@archlinux.org> # Contributor: Tobias Powalowski <tpowa@archlinux.org> # Contributor: Thomas Bächler <thomas@archlinux.org> -pkgbase="udev" -pkgname=('udev' 'udev-compat') -pkgver=180 -pkgrel=1 +pkgname=udev +pkgver=181 +pkgrel=2 +pkgdesc="The userspace dev tools (udev)" +depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'pciutils') +install=udev.install arch=(i686 x86_64 mips64el) -url="http://git.kernel.org/?p=linux/hotplug/udev.git;a=summary" license=('GPL') +makedepends=('gobject-introspection' 'gperf' 'libxslt' 'usbutils' 'kmod') +source=(ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/$pkgname-$pkgver.tar.xz + initcpio-hooks-udev + initcpio-install-udev) +url="http://git.kernel.org/?p=linux/hotplug/udev.git;a=summary" +backup=(etc/udev/udev.conf) groups=('base') options=(!makeflags !libtool) -makedepends=('gobject-introspection' 'gperf' 'libxslt' 'usbutils' 'kmod') -source=(ftp://ftp.kernel.org/pub/linux/utils/kernel/hotplug/$pkgbase-$pkgver.tar.xz) build() { - cd $srcdir/$pkgbase-$pkgver + cd $srcdir/$pkgname-$pkgver ./configure --prefix=/usr \ --with-rootprefix= \ --sysconfdir=/etc \ - --bindir=/sbin \ --libdir=/usr/lib \ - --with-rootlibdir=/lib \ --libexecdir=/lib \ --with-systemdsystemunitdir=/lib/systemd/system \ --enable-udev_acl @@ -32,30 +35,19 @@ build() { make } -package_udev() { - pkgdesc="The userspace dev tools (udev)" - depends=('util-linux' 'libusb-compat' 'glib2' 'kmod' 'pciutils' 'usbutils' 'pciutils') - install=udev.install - backup=(etc/udev/udev.conf) - - cd $srcdir/$pkgbase-$pkgver +package() { + cd $srcdir/$pkgname-$pkgver make DESTDIR=${pkgdir} install - # create framebuffer blacklist - install -d -m755 ${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/lib/modprobe.d/framebuffer_blacklist.conf - # /dev/loop0 is created for convenience, to autoload the module if necessary # this is no longer needed when util-linux-2.21 is released as /dev/loop-control - # will be used instead. In that case move this to udev-compat + # will be used instead. Support for this will go away in a future version of udev install -d -m755 ${pkgdir}/lib/udev/devices/ mknod ${pkgdir}/lib/udev/devices/loop0 b 7 0 chgrp disk ${pkgdir}/lib/udev/devices/loop0 # udevd moved, symlink to make life easy for restarting udevd manually - ln -s /lib/udev/udevd ${pkgdir}/sbin/udevd + ln -s /lib/udev/udevd ${pkgdir}/usr/bin/udevd # Replace dialout/tape/cdrom group in rules with uucp/storage/optical group for i in $pkgdir/lib/udev/rules.d/*.rules; do @@ -63,40 +55,11 @@ package_udev() { 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=('') - install -d -m755 ${pkgdir}/lib/udev/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 nodes to be compatible with on-demand module - # loading in the most recent kernel - # - # the list of nodes is generated from /lib/modules/`most recent kernel`/modprobe.devname - # excluding any devices not included in the LTS kernel and any entries in the - # modprobe.devname file of the LTS kernel (if it exists). - install -d -m755 ${pkgdir}/lib/udev/devices - cd ${pkgdir}/lib/udev/devices - - install -d -m755 net - mknod net/tun c 10 200 - mknod ppp c 108 0 -# mknod loop-control c 10 237 -- does not exist in old kernels - mknod uinput c 10 223 - install -d -m755 mapper - mknod mapper/control c 10 236 - install -d -m755 snd - mknod snd/timer c 116 33 - mknod snd/seq c 116 1 - mknod btrfs-control c 10 234 - mknod autofs c 10 235 - mknod fuse c 10 229 - install -d -m755 cpu - mknod cpu/microcode c 10 184 - + # install the mkinitpcio hook + install -D -m644 ../initcpio-hooks-udev ${pkgdir}/lib/initcpio/hooks/udev + install -D -m644 ../initcpio-install-udev ${pkgdir}/lib/initcpio/install/udev } -md5sums=('1cf124ab5a124ea35d4748ea414926ec') +md5sums=('0d7af750702620a871b9f9b98d8ad859' + 'a4dd853050bf2e0ae6b2e3d2c75499c2' + 'ee0bfe91a20fff12cc25ab1d1e024853') diff --git a/core/udev/initcpio-hooks-udev b/core/udev/initcpio-hooks-udev new file mode 100644 index 000000000..87aa7960f --- /dev/null +++ b/core/udev/initcpio-hooks-udev @@ -0,0 +1,9 @@ +# vim: set ft=sh: +run_hook () +{ + msg -n ":: Triggering uevents..." + udevadm trigger --action=add --type=subsystems + udevadm trigger --action=add --type=devices + udevadm settle + msg "done." +} diff --git a/core/udev/initcpio-install-udev b/core/udev/initcpio-install-udev new file mode 100644 index 000000000..e7e2c0f60 --- /dev/null +++ b/core/udev/initcpio-install-udev @@ -0,0 +1,26 @@ +#!/bin/bash + +build() { + FILES="/etc/udev/udev.conf" + SCRIPT="udev" + + add_binary /lib/udev/udevd + add_binary /usr/bin/udevadm + + for rules in 50-udev-default.rules 60-persistent-storage.rules 80-drivers.rules; do + add_file "/lib/udev/rules.d/$rules" + done + for tool in ata_id scsi_id; do + add_file "/lib/udev/$tool" + done +} + +help() { + cat <<HELPEOF +This hook will use udev to create your root device node and detect the needed +modules for your root device. It is also required for firmware loading in +initramfs. It is recommended to use this hook. +HELPEOF +} + +# vim: set ft=sh ts=4 sw=4 et: diff --git a/core/udev/udev.install b/core/udev/udev.install index c49c5006f..7c866c2a3 100644 --- a/core/udev/udev.install +++ b/core/udev/udev.install @@ -2,7 +2,7 @@ # arg 2: the old package version post_upgrade() { - if [ "$(vercmp $2 175)" -lt 0 ]; then + if [ "$(vercmp $2 181)" -lt 0 ]; then echo "ATTENTION UDEV:" echo "----------" if [ "$(vercmp $2 168)" -lt 0 ]; then @@ -58,8 +58,16 @@ post_upgrade() { echo "where devtmpfs is not mounted by the kernel, this only affects fresh installs." echo " --" fi - echo "devtmpfs support is now a hard requirement. Users of the official Arch kernels" - echo "have this enabled." + if [ "$(vercmp $2 175)" -lt 0 ]; then + echo "devtmpfs support is now a hard requirement. Users of the official Arch kernels" + echo "have this enabled." + echo " --" + fi + echo "udev-compat has been removed, and should be uninstalled." + echo " --" + echo "Framebuffers are no longer blacklisted by default." + echo " --" + echo "binaries moved from /sbin to /usr/bin" echo "---------------" fi } diff --git a/extra/amule/PKGBUILD b/extra/amule/PKGBUILD index 29e066dae..c39f376ab 100644 --- a/extra/amule/PKGBUILD +++ b/extra/amule/PKGBUILD @@ -1,19 +1,19 @@ -# $Id: PKGBUILD 148674 2012-02-05 11:46:28Z ibiru $ +# $Id: PKGBUILD 149910 2012-02-11 17:42:56Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Henrik Ronellenfitsch <searinox@web.de> # Contributor: Alessio Sergi <sergi.alessio {at} gmail.com> # Contributor: Dario 'Dax' Vilardi <dax [at] deelab [dot] org> pkgname=amule -pkgver=10708 -pkgrel=2 +pkgver=10750 +pkgrel=1 pkgdesc="An eMule-like client for ed2k p2p network" arch=('i686' 'x86_64' 'mips64el') url="http://www.amule.org" license=('GPL') depends=('wxgtk' 'gd' 'geoip' 'libupnp' 'crypto++' 'libsm') source=("http://amule.sourceforge.net/tarballs/aMule-SVN-r${pkgver}.tar.bz2") -md5sums=('3c1c2a03b24c9ec7ba6fd675382f26a3') +md5sums=('997ec360385b7c44ca427f67e078835a') build() { cd "${srcdir}/aMule-SVN-r${pkgver}" diff --git a/extra/apache/PKGBUILD b/extra/apache/PKGBUILD index 113a15c07..5b41fe9ff 100644 --- a/extra/apache/PKGBUILD +++ b/extra/apache/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 149398 2012-02-07 13:58:02Z jgc $ +# $Id: PKGBUILD 149928 2012-02-11 23:28:51Z allan $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=apache pkgver=2.2.22 -pkgrel=2 +pkgrel=3 pkgdesc='A high performance Unix-based HTTP server' arch=('i686' 'x86_64' 'mips64el') options=('!libtool') @@ -54,12 +54,12 @@ md5sums=('9fe3093194c8a57f085ff7c3fc43715f' '6382331e9700ed9e8cc78ea51887b537' 'c7e300a287ef7e2e066ac7639536f87e' '3d659d41276ba3bfcb20c231eb254e0c' - 'f74652f3169baaae595026116ef54599') + 'fde5121e32b5aeef5a7eedb5a97009ff') build() { cd "${srcdir}/httpd-${pkgver}" - #patch -p1 -i "${srcdir}/pcre_info.patch" + patch -p1 -i "${srcdir}/pcre_info.patch" patch -Np0 -i "${srcdir}/apachectl-confd.patch" # set default user diff --git a/extra/apache/pcre_info.patch b/extra/apache/pcre_info.patch index f1774db63..906a3159e 100644 --- a/extra/apache/pcre_info.patch +++ b/extra/apache/pcre_info.patch @@ -1,11 +1,22 @@ ---- httpd-2.2.22/server/util_pcre.c 2005-11-11 01:20:05.000000000 +1000 -+++ httpd-2.2.22/server/util_pcre.c 2012-02-06 23:45:37.687946748 +1000 -@@ -137,7 +137,7 @@ +--- httpd-2.2.22/server/util_pcre.c 2005-11-10 16:20:05.000000000 +0100 ++++ httpd-2.2.22/server/util_pcre.c 2012-02-08 11:23:56.273855663 +0100 +@@ -128,6 +128,7 @@ + const char *errorptr; + int erroffset; + int options = 0; ++int nsub; - if (preg->re_pcre == NULL) return AP_REG_INVARG; + if ((cflags & AP_REG_ICASE) != 0) options |= PCRE_CASELESS; + if ((cflags & AP_REG_NEWLINE) != 0) options |= PCRE_MULTILINE; +@@ -136,8 +137,9 @@ + preg->re_erroffset = erroffset; + if (preg->re_pcre == NULL) return AP_REG_INVARG; +- -preg->re_nsub = pcre_info((const pcre *)preg->re_pcre, NULL, NULL); -+preg->re_nsub = pcre_fullinfo((const pcre *)preg->re_pcre, NULL, NULL, NULL); ++pcre_fullinfo((const pcre *)preg->re_pcre, NULL, ++ PCRE_INFO_CAPTURECOUNT, &nsub); ++preg->re_nsub = nsub; return 0; } diff --git a/extra/appmenu-qt/PKGBUILD b/extra/appmenu-qt/PKGBUILD new file mode 100644 index 000000000..b41471824 --- /dev/null +++ b/extra/appmenu-qt/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 149893 2012-02-11 12:05:06Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> + +pkgname=appmenu-qt +pkgver=0.2.4 +pkgrel=4 +pkgdesc="Allows Qt applications to export menus over DBus to a menu applet" +arch=('i686' 'x86_64') +url='https://launchpad.net/appmenu-qt' +license=('GPL') +depends=('libdbusmenu-qt') +makedepends=('cmake') +source=("http://launchpad.net/${pkgname}/trunk/${pkgver}/+download/${pkgname}-${pkgver}.tar.bz2") +md5sums=('5266d3e77e424bce19f4bcd8f4ffd4bf') + +build() { + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE="Release" + make +} + +package() { + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install +} diff --git a/extra/apr/PKGBUILD b/extra/apr/PKGBUILD index 78753328d..52e386797 100644 --- a/extra/apr/PKGBUILD +++ b/extra/apr/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 125814 2011-05-30 09:11:42Z jgc $ +# $Id: PKGBUILD 149942 2012-02-11 23:30:26Z allan $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=apr pkgver=1.4.5 -pkgrel=1 +pkgrel=2.1 pkgdesc="The Apache Portable Runtime" arch=('i686' 'x86_64' 'mips64el') url="http://apr.apache.org/" @@ -24,5 +24,14 @@ build() { --enable-nonportable-atomics \ --with-devrandom=/dev/urandom make +} + +check() { + cd "${srcdir}/apr-${pkgver}" + make -j1 check +} + +package() { + cd "${srcdir}/apr-${pkgver}" make DESTDIR="${pkgdir}" install } diff --git a/extra/basket/PKGBUILD b/extra/basket/PKGBUILD index f8f652191..adfb8d063 100644 --- a/extra/basket/PKGBUILD +++ b/extra/basket/PKGBUILD @@ -1,23 +1,23 @@ -# $Id: PKGBUILD 149623 2012-02-08 20:36:29Z pierre $ +# $Id: PKGBUILD 150150 2012-02-13 15:03:16Z ronald $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: James Rayner <james@archlinux.org> # Contributor: lucke <lucke at o2 dot pl> pkgname=basket pkgver=1.81 -pkgrel=2 +pkgrel=3 pkgdesc="All-purpose notes taker for KDE." arch=('i686' 'x86_64' 'mips64el') url="http://basket.kde.org/" -depends=('kdelibs' 'gpgme' 'qimageblitz' 'hicolor-icon-theme') +depends=('kdelibs' 'gpgme' 'qimageblitz' 'hicolor-icon-theme' 'kdebase-runtime') makedepends=('cmake' 'automoc4') install=$pkgname.install license=('GPL') source=(http://basket.kde.org/downloads/$pkgname-$pkgver.tar.bz2) -md5sums=('cbb1bc5ca7c2ad1485c433c00a8f65a1') +sha1sums=('209d92048523f341259d79510fa56977690e5dfc') build() { - cd $srcdir/$pkgname-$pkgver + cd ${srcdir}/${pkgname}-${pkgver} cmake ../${pkgbase}-${pkgver} \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_SKIP_RPATH=ON \ @@ -27,6 +27,6 @@ build() { } package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$startdir/pkg install + cd $srcdir/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install } diff --git a/extra/basket/basket.install b/extra/basket/basket.install index 3e1f2f1f5..2308e6e3e 100644 --- a/extra/basket/basket.install +++ b/extra/basket/basket.install @@ -1,5 +1,6 @@ post_install() { xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q } post_upgrade() { diff --git a/extra/brltty/PKGBUILD b/extra/brltty/PKGBUILD index 3a6e3f964..fdcc7fc9e 100644 --- a/extra/brltty/PKGBUILD +++ b/extra/brltty/PKGBUILD @@ -1,49 +1,47 @@ -# $Id: PKGBUILD 142442 2011-11-09 21:20:39Z guillaume $ +# $Id: PKGBUILD 150160 2012-02-13 19:59:22Z ibiru $ # Maintainer: # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Giovanni Scafora <giovanni@archlinux.org> pkgname=brltty pkgver=4.3 -pkgrel=1 +pkgrel=4 pkgdesc="Braille display driver for Linux/Unix" arch=('i686' 'x86_64' 'mips64el') url="http://mielke.cc/brltty" license=('GPL' 'LGPL') -depends=('libxaw' 'at-spi' 'gpm' 'icu' 'python2' 'tcl' 'atk' 'libxtst') -makedepends=('pyrex' 'bluez') +depends=('libxaw' 'at-spi2-core' 'gpm' 'icu' 'python2' 'tcl' 'atk' 'libxtst' 'pyrex') +makedepends=('bluez') optdepends=('bluez: bluetooth support') backup=(etc/brltty.conf etc/conf.d/brltty.conf) options=('!makeflags' '!emptydirs') -source=(http://mielke.cc/${pkgname}/releases/${pkgname}-${pkgver}.tar.gz +install=brltty.install +source=(http://mielke.cc/$pkgname/releases/$pkgname-$pkgver.tar.gz 'brltty' 'brltty.conf') -# 'brltty-4.2-S_ISCHR.patch' md5sums=('5ada573f88df32b6150db3b9a620e20b' '831ebaf0c56091702929c68805d20c4f' 'a8ab8b3dd059e96e1734bc9cdcf844fc') -# '5954b289efaf2ff17676d06de9a88854' build() { - cd "${srcdir}/${pkgname}-${pkgver}" - CFLAGS+="${CFLAGS} -D_GNU_SOURCE" \ + cd "$srcdir/$pkgname-$pkgver" ./configure --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --localstatedir=/var \ + --with-screen-driver=a2 \ --enable-gpm \ --disable-java-bindings \ --disable-caml-bindings \ PYTHON=/usr/bin/python2 -# patch -Np1 -i ${srcdir}/brltty-4.2-S_ISCHR.patch make } package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make INSTALL_ROOT="${pkgdir}" install - install -D -m755 ${srcdir}/brltty ${pkgdir}/etc/rc.d/brltty - install -D -m644 ${srcdir}/brltty.conf ${pkgdir}/etc/conf.d/brltty.conf - install -D -m644 Documents/brltty.conf ${pkgdir}/etc/brltty.conf + cd "$srcdir/$pkgname-$pkgver" + make INSTALL_ROOT="$pkgdir" install + install -D -m755 "$srcdir/brltty" "$pkgdir/etc/rc.d/brltty" + install -D -m644 "$srcdir/brltty.conf" "$pkgdir/etc/conf.d/brltty.conf" + install -D -m644 Documents/brltty.conf "$pkgdir/etc/brltty.conf" } diff --git a/extra/brltty/brltty-4.2-S_ISCHR.patch b/extra/brltty/brltty-4.2-S_ISCHR.patch deleted file mode 100644 index eddac9616..000000000 --- a/extra/brltty/brltty-4.2-S_ISCHR.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up brltty-4.2/Programs/sys_linux.c.BAD brltty-4.2/Programs/sys_linux.c ---- brltty-4.2/Programs/sys_linux.c.BAD 2010-05-21 09:04:10.003122084 -0400 -+++ brltty-4.2/Programs/sys_linux.c 2010-05-21 09:04:19.376198268 -0400 -@@ -23,6 +23,7 @@ - #include <errno.h> - #include <fcntl.h> - #include <sys/ioctl.h> -+#include <sys/stat.h> - #include <linux/kd.h> - - #ifdef HAVE_LINUX_INPUT_H diff --git a/extra/brltty/brltty.install b/extra/brltty/brltty.install new file mode 100644 index 000000000..952ae58ff --- /dev/null +++ b/extra/brltty/brltty.install @@ -0,0 +1,20 @@ +post_install () { + getent group brlapi &>/dev/null || groupadd -r brlapi + if [ ! -e /etc/brlapi.key ]; then + mcookie >/etc/brlapi.key + chmod 0640 /etc/brlapi.key + chgrp brlapi /etc/brlapi.key + echo "Please add your user to the brlapi group." + fi +} + +post_upgrade () { + post_install +} + +post_remove () { + getent group brlapi >/dev/null 2>&1 && groupdel brlapi + if [ -e /etc/brlapi.key ]; then + rm -f /etc/brlapi.key + fi +} diff --git a/extra/conky/PKGBUILD b/extra/conky/PKGBUILD index f96f8c71b..fa5098c03 100644 --- a/extra/conky/PKGBUILD +++ b/extra/conky/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 142242 2011-11-07 05:35:59Z bisson $ +# $Id: PKGBUILD 150215 2012-02-15 03:04:18Z bisson $ # Contributor: Giovanni Scafora <giovanni@archlinux.org> # Contributor: James Rayner <james@archlinux.org> # Contributor: Partha Chowdhury <kira.laucas@gmail.com> @@ -6,7 +6,7 @@ pkgname=conky pkgver=1.8.2git20111107 -pkgrel=1 +pkgrel=2 pkgdesc='Lightweight system monitor for X' url='http://conky.sourceforge.net/' license=('BSD' 'GPL') @@ -44,5 +44,7 @@ build() { package() { cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" install - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + install -Dm644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim + install -Dm644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim } diff --git a/extra/conky/PKGBUILD.cmake b/extra/conky/PKGBUILD.cmake index 7f980868f..a4d50d737 100644 --- a/extra/conky/PKGBUILD.cmake +++ b/extra/conky/PKGBUILD.cmake @@ -44,4 +44,6 @@ package() { make DESTDIR="${pkgdir}" install install -d "${pkgdir}/usr/share/licenses/${pkgname}" install -m644 ../conky/{COPYING,LICENSE}* "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm644 extras/vim/syntax/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/syntax/conkyrc.vim + install -Dm644 extras/vim/ftdetect/conkyrc.vim "${pkgdir}"/usr/share/vim/vimfiles/ftdetect/conkyrc.vim } diff --git a/extra/dansguardian/PKGBUILD b/extra/dansguardian/PKGBUILD index 75314e45e..41ec639e9 100644 --- a/extra/dansguardian/PKGBUILD +++ b/extra/dansguardian/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 70467 2010-02-26 21:24:54Z dgriffiths $ +# $Id: PKGBUILD 149944 2012-02-11 23:30:32Z allan $ # Maintainer: Kevin Piche <kevin@archlinux.org> # Contributor: Manolis Tzanidakis pkgname=dansguardian pkgver=2.10.1.1 -pkgrel=2 +pkgrel=3 pkgdesc="Squid plugin for web content filtering." url="http://dansguardian.org" arch=('i686' 'x86_64' 'mips64el') @@ -12,8 +12,10 @@ license=('GPL2') depends=('squid' 'pcre' 'zlib') install=${pkgname}.install source=(http://dansguardian.org/downloads/2/Stable/${pkgname}-${pkgver}.tar.gz -dansguardian dg2.10.1.1-missing.stdio.patch) -md5sums=('0987a1c9bfbdf398118386f10279611a' 'a65a2cb6309670ad8978f1544907d290' + dansguardian + dg2.10.1.1-missing.stdio.patch) +md5sums=('0987a1c9bfbdf398118386f10279611a' + 'a65a2cb6309670ad8978f1544907d290' '3444718c00cc17337cba711ceaa1c0e5') build() { @@ -21,7 +23,11 @@ build() { patch -Np0 -i ${srcdir}/dg2.10.1.1-missing.stdio.patch ./configure --prefix="/usr" --with-proxyuser=proxy --with-proxygroup=proxy \ --sysconfdir=/etc --localstatedir=/var --enable-email - make || return 1 + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} make DESTDIR=${pkgdir} install install -D data/scripts/dansguardian ${pkgdir}/etc/logrotate.d/dansguardian diff --git a/extra/davfs2/PKGBUILD b/extra/davfs2/PKGBUILD index cf1503d61..9a54c27ef 100644 --- a/extra/davfs2/PKGBUILD +++ b/extra/davfs2/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 111470 2011-02-27 10:09:32Z thomas $ +# $Id: PKGBUILD 149924 2012-02-11 22:48:34Z thomas $ # Maintainer: Thomas Baechler <thomas@archlinux.org> pkgname=davfs2 pkgver=1.4.6 -pkgrel=1 -pkgdesc="File system driver that allows you to mount a WebDAV server as a local disk drive." +pkgrel=2 +pkgdesc="File system driver that allows you to mount a WebDAV folder" arch=(i686 x86_64 'mips64el') url="http://savannah.nongnu.org/projects/davfs2" license=('GPL') diff --git a/extra/ddd/ChangeLog b/extra/ddd/ChangeLog deleted file mode 100644 index b3d8b00af..000000000 --- a/extra/ddd/ChangeLog +++ /dev/null @@ -1,19 +0,0 @@ -2010-08-11 Eric Belanger <eric@archlinux.org> - - * ddd 3.3.12-2 - * Built against elfutils - * Added gcc build patch - * Fixed install script - -2009-03-22 Eric Belanger <eric@archlinux.org> - - * ddd 3.3.12-1 - * Upstream update - * Updated license - -2008-11-11 Eric Belanger <eric@archlinux.org> - - * ddd 3.3.11-5 - * Rebuilt against libxaw 1.0.5 (close FS#12074) - * Added info file support - * Added ChangeLog diff --git a/extra/dovecot/PKGBUILD b/extra/dovecot/PKGBUILD index d54633b23..e1c39c45e 100644 --- a/extra/dovecot/PKGBUILD +++ b/extra/dovecot/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 146277 2012-01-07 21:39:13Z andyrtr $ +# $Id: PKGBUILD 150139 2012-02-13 12:13:16Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: Paul Mattal <paul@mattal.com> # Contributor: Federico Quagliata (quaqo) <quaqo@despammed.com> # Contributor: GARETTE Emmanuel <gnunux at laposte dot net> pkgname=dovecot -pkgver=2.0.17 +pkgver=2.0.18 pkgrel=1 pkgdesc="An IMAP and POP3 server written with security primarily in mind" arch=('i686' 'x86_64' 'mips64el') @@ -24,8 +24,9 @@ backup=(etc/dovecot/dovecot.conf etc/dovecot/conf.d/auth-{checkpassword,deny,ldap,master,passwdfile,sql,static,system,vpopmail}.conf.ext etc/ssl/dovecot-openssl.cnf) install=$pkgname.install -source=(http://dovecot.org/releases/2.0/${pkgname}-${pkgver}.tar.gz dovecot.sh) -md5sums=('41c10dffa56e228b9176833db2efaac5' +source=(http://dovecot.org/releases/2.0/${pkgname}-${pkgver}.tar.gz{,.sig} dovecot.sh) +md5sums=('4fdee96b390a287d75b51ffcf6abe30f' + 'c317125fd613a6ed207fbaf7d7543163' '587159e84e2da6f83d70b3c706ba87cc') build() { diff --git a/extra/ecasound/ecasound.changelog b/extra/ecasound/ecasound.changelog deleted file mode 100644 index a735f70c1..000000000 --- a/extra/ecasound/ecasound.changelog +++ /dev/null @@ -1,49 +0,0 @@ -2011-05-14 Ray Rashif <schiv@archlinux.org> - - * ecasound 2.8.0 - * upstream release - -2010-08-22 Ray Rashif <schiv@archlinux.org> - - * ecasound 2.7.2-1 - * python(3) rebuild - * python(2) is optional [1] - * added new liboil depend [2] - * added some optdepends [1] - - [1] http://eca.cx/ecasound/README (or see source archive) - [2] http://eca.cx/relnotes/ecasound_v2_7_2_relnotes.txt - -2010-07-10 Ray Rashif <schiv@archlinux.org> - - * ecasound 2.7.1-2 - * added jack support [1] - * added OSC (liblo) support - - [1] http://bugs.archlinux.org/task/20113 - -2010-02-21 Eric Belanger <eric@archlinux.org> - - * ecasound 2.7.1-1 - * Upstream update - * Improved description - -2010-01-23 Eric Belanger <eric@archlinux.org> - - * ecasound 2.7.0-1 - * Upstream update - -2009-06-18 Eric Belanger <eric@archlinux.org> - - * ecasound 2.6.0-1 - * Upstream update - * Built against readline 6.0.00 - -2009-01-14 Eric Belanger <eric@archlinux.org> - - * ecasound 2.5.2-1 - * Upstream update - * Enabled alsa support - * Added ruby makedepends - * Corrected license - * Added ChangeLog diff --git a/extra/ettercap/PKGBUILD b/extra/ettercap/PKGBUILD index fb5f7afb0..58e67d2af 100644 --- a/extra/ettercap/PKGBUILD +++ b/extra/ettercap/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 144996 2011-12-13 22:16:57Z eric $ +# $Id: PKGBUILD 149946 2012-02-11 23:30:37Z allan $ # Maintainer: # Contributor: Tom Newsom <Jeepster@gmx.co.uk> @@ -6,7 +6,7 @@ pkgbase=ettercap pkgname=('ettercap' 'ettercap-gtk') pkgver=NG_0.7.4.2 _origver=${pkgver/_/-} -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64' 'mips64el') url="http://ettercap.sourceforge.net/" license=('GPL') diff --git a/extra/garcon/PKGBUILD b/extra/garcon/PKGBUILD index 4badc4ab2..98c07df7c 100644 --- a/extra/garcon/PKGBUILD +++ b/extra/garcon/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 143709 2011-11-28 15:22:07Z foutrelis $ +# $Id: PKGBUILD 150129 2012-02-13 08:08:25Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Xavier Devlamynck <magicrhesus@ouranos.be> pkgname=garcon -pkgver=0.1.9 +pkgver=0.1.10 pkgrel=1 pkgdesc="Implementation of the freedesktop.org menu specification" arch=('i686' 'x86_64' 'mips64el') @@ -15,7 +15,7 @@ makedepends=('pkgconfig' 'intltool' 'xfce4-dev-tools') replaces=('libxfce4menu') options=('!libtool' '!makeflags') source=(http://archive.xfce.org/src/xfce/garcon/0.1/garcon-$pkgver.tar.bz2) -sha256sums=('485e23c8ec1af0d3af423aa244e05467dd2f96afbb66efc70ca7689222cf31d5') +sha256sums=('c2497a2991101fc1e621dc712ef72aba7c238f6e5f5a1733c9572f9b23761316') build() { cd "$srcdir/garcon-$pkgver" diff --git a/extra/gcin/PKGBUILD b/extra/gcin/PKGBUILD index 31f32a86b..351938883 100644 --- a/extra/gcin/PKGBUILD +++ b/extra/gcin/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 148586 2012-02-04 00:07:32Z bisson $ +# $Id: PKGBUILD 149828 2012-02-11 09:25:31Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Andreas Radke <andyrtr@archlinux.org> # Contributor: damir <damir@archlinux.org> pkgname=gcin -pkgver=2.7.2 +pkgver=2.7.3 pkgrel=1 pkgdesc='Input method server supporting various input methods' url='http://hyperrate.com/dir.php?eid=67' @@ -18,7 +18,7 @@ optdepends=('qt: support for qt4 input method' 'libchewing: support for chewing input method') source=("http://www.csie.nctu.edu.tw/~cp76/gcin/download/${pkgname}-${pkgver}.tar.xz" 'qt4-lib64.patch') -sha1sums=('f5b4468d8696af114fa95f46a680bee0182ae1ec' +sha1sums=('d27a236f7d3a3cf54a688ecaeb576325dca4f89f' '3d1b769dcd8820c8351f239ec32ee5bcd9d98b70') install=install diff --git a/extra/gimp-gap/PKGBUILD b/extra/gimp-gap/PKGBUILD index 41f576c52..4e1226000 100644 --- a/extra/gimp-gap/PKGBUILD +++ b/extra/gimp-gap/PKGBUILD @@ -4,7 +4,7 @@ pkgname=gimp-gap pkgver=2.6.0 -pkgrel=3 +pkgrel=3.1 pkgdesc="A Plug-In collection to edit and create animations for the Gimp" arch=('i686' 'x86_64' 'mips64el') license=('GPL') @@ -17,7 +17,8 @@ md5sums=('249ed829de8b78675c0fe4ef4212089f') build() { cd "$srcdir/$pkgname-$pkgver" - [ "$CARCH" = "x86_64" ] && CFLAGS+="-fPIC" + [ "$CARCH" != "i686" ] && CFLAGS+=" -fPIC" + sed -ri 's/^gap_(plugins|morph)_LDADD .+$/& -lm/' gap/Makefile.in ./configure --prefix=/usr make } diff --git a/extra/gimp/gimp-poppler-0.18.patch b/extra/gimp/gimp-poppler-0.18.patch deleted file mode 100644 index 0715460bc..000000000 --- a/extra/gimp/gimp-poppler-0.18.patch +++ /dev/null @@ -1,476 +0,0 @@ -From 69f69eed816b89be9a01a48a1f0643d1fd496118 Mon Sep 17 00:00:00 2001 -From: Nils Philippsen <nils@redhat.com> -Date: Fri, 6 May 2011 11:58:44 +0200 -Subject: [PATCH] patch: poppler-0.17 - -Squashed commit of the following: - -commit 529d940222dfc352d41fbf72de29134421aa4002 -Author: Nils Philippsen <nils@redhat.com> -Date: Fri May 6 11:50:30 2011 +0200 - - use code based on pixbufs instead of cairo surfaces - - this is done to avoid adding to libgimp, thanks to Mukund Sivaraman for - hints how to do this - -commit f8671d8767d4cdab830dc06310e96c63a88ec0fd -Author: Mukund Sivaraman <muks@banu.com> -Date: Thu Apr 21 13:57:13 2011 +0530 - - file-pdf-load: Update attribution, removing bogus copyright - (cherry picked from commit e999122e0b20b6ccd6bde3ce039bb64068fc0019) - -commit 89a78f2590d298dac2f42e6d9a3016fc5d672c70 -Author: Nils Philippsen <nils@redhat.com> -Date: Thu Apr 21 13:52:18 2011 +0200 - - file-pdf-load: Use better API + cleanups - - * fixes issues with poppler 0.17 completely - * uses new libgimp API to pass surfaces instead of pixbufs - * uses GTK+ 3 API to convert surfaces to pixbufs where available - (backported from commit 7bdadd80ba479d6ff904e276d805e16f6b940ee2) - -commit 4e92302c4a14a961f112587a0ad86696c88da2f8 -Author: Nils Philippsen <nils@redhat.com> -Date: Thu Apr 21 13:38:08 2011 +0200 - - file-pdf-load: Don't use deprecated API (bug #646947) - - (cherry picked from commit 9b3e1c91fd2eac69da6947ec9c7fbf10096ba237) - - Conflicts: - - plug-ins/common/file-pdf.c ---- - plug-ins/common/file-pdf.c | 323 ++++++++++++++++++++++++++++++++++++++------ - 1 files changed, 283 insertions(+), 40 deletions(-) - -diff --git a/plug-ins/common/file-pdf.c b/plug-ins/common/file-pdf.c -index a43b459..43c2b7d 100644 ---- a/plug-ins/common/file-pdf.c -+++ b/plug-ins/common/file-pdf.c -@@ -4,6 +4,9 @@ - * - * Copyright (C) 2005 Nathan Summers - * -+ * Some code in render_page_to_surface() borrowed from -+ * poppler.git/glib/poppler-page.cc. -+ * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or -@@ -80,16 +83,20 @@ static gboolean load_dialog (PopplerDocument *doc, - static PopplerDocument * open_document (const gchar *filename, - GError **error); - --static GdkPixbuf * get_thumbnail (PopplerDocument *doc, -+static cairo_surface_t * get_thumb_surface (PopplerDocument *doc, -+ gint page, -+ gint preferred_size); -+ -+static GdkPixbuf * get_thumb_pixbuf (PopplerDocument *doc, - gint page, - gint preferred_size); - - static gint32 layer_from_pixbuf (gint32 image, -- const gchar *layer_name, -- gint position, -- GdkPixbuf *buf, -- gdouble progress_start, -- gdouble progress_scale); -+ const gchar *layer_name, -+ gint position, -+ GdkPixbuf *pixbuf, -+ gdouble progress_start, -+ gdouble progress_scale); - - /** - ** the following was formerly part of -@@ -433,11 +440,12 @@ run (const gchar *name, - } - else - { -- gdouble width = 0; -- gdouble height = 0; -- gdouble scale; -- gint32 image = -1; -- GdkPixbuf *pixbuf = NULL; -+ gdouble width = 0; -+ gdouble height = 0; -+ gdouble scale; -+ gint32 image = -1; -+ gint num_pages = 0; -+ GdkPixbuf *pixbuf = NULL; - - /* Possibly retrieve last settings */ - gimp_get_data (LOAD_PROC, &loadvals); -@@ -455,7 +463,10 @@ run (const gchar *name, - g_object_unref (page); - } - -- pixbuf = get_thumbnail (doc, 0, param[1].data.d_int32); -+ num_pages = poppler_document_get_n_pages (doc); -+ -+ pixbuf = get_thumb_pixbuf (doc, 0, param[1].data.d_int32); -+ - g_object_unref (doc); - } - -@@ -548,6 +559,187 @@ open_document (const gchar *filename, - return doc; - } - -+/* FIXME: Remove this someday when we depend fully on GTK+ >= 3 */ -+ -+#if (!GTK_CHECK_VERSION (3, 0, 0)) -+ -+static cairo_format_t -+gdk_cairo_format_for_content (cairo_content_t content) -+{ -+ switch (content) -+ { -+ case CAIRO_CONTENT_COLOR: -+ return CAIRO_FORMAT_RGB24; -+ case CAIRO_CONTENT_ALPHA: -+ return CAIRO_FORMAT_A8; -+ case CAIRO_CONTENT_COLOR_ALPHA: -+ default: -+ return CAIRO_FORMAT_ARGB32; -+ } -+} -+ -+static cairo_surface_t * -+gdk_cairo_surface_coerce_to_image (cairo_surface_t *surface, -+ cairo_content_t content, -+ int src_x, -+ int src_y, -+ int width, -+ int height) -+{ -+ cairo_surface_t *copy; -+ cairo_t *cr; -+ -+ copy = cairo_image_surface_create (gdk_cairo_format_for_content (content), -+ width, -+ height); -+ -+ cr = cairo_create (copy); -+ cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE); -+ cairo_set_source_surface (cr, surface, -src_x, -src_y); -+ cairo_paint (cr); -+ cairo_destroy (cr); -+ -+ return copy; -+} -+ -+static void -+convert_alpha (guchar *dest_data, -+ int dest_stride, -+ guchar *src_data, -+ int src_stride, -+ int src_x, -+ int src_y, -+ int width, -+ int height) -+{ -+ int x, y; -+ -+ src_data += src_stride * src_y + src_x * 4; -+ -+ for (y = 0; y < height; y++) { -+ guint32 *src = (guint32 *) src_data; -+ -+ for (x = 0; x < width; x++) { -+ guint alpha = src[x] >> 24; -+ -+ if (alpha == 0) -+ { -+ dest_data[x * 4 + 0] = 0; -+ dest_data[x * 4 + 1] = 0; -+ dest_data[x * 4 + 2] = 0; -+ } -+ else -+ { -+ dest_data[x * 4 + 0] = (((src[x] & 0xff0000) >> 16) * 255 + alpha / 2) / alpha; -+ dest_data[x * 4 + 1] = (((src[x] & 0x00ff00) >> 8) * 255 + alpha / 2) / alpha; -+ dest_data[x * 4 + 2] = (((src[x] & 0x0000ff) >> 0) * 255 + alpha / 2) / alpha; -+ } -+ dest_data[x * 4 + 3] = alpha; -+ } -+ -+ src_data += src_stride; -+ dest_data += dest_stride; -+ } -+} -+ -+static void -+convert_no_alpha (guchar *dest_data, -+ int dest_stride, -+ guchar *src_data, -+ int src_stride, -+ int src_x, -+ int src_y, -+ int width, -+ int height) -+{ -+ int x, y; -+ -+ src_data += src_stride * src_y + src_x * 4; -+ -+ for (y = 0; y < height; y++) { -+ guint32 *src = (guint32 *) src_data; -+ -+ for (x = 0; x < width; x++) { -+ dest_data[x * 3 + 0] = src[x] >> 16; -+ dest_data[x * 3 + 1] = src[x] >> 8; -+ dest_data[x * 3 + 2] = src[x]; -+ } -+ -+ src_data += src_stride; -+ dest_data += dest_stride; -+ } -+} -+ -+/** -+ * gdk_pixbuf_get_from_surface: -+ * @surface: surface to copy from -+ * @src_x: Source X coordinate within @surface -+ * @src_y: Source Y coordinate within @surface -+ * @width: Width in pixels of region to get -+ * @height: Height in pixels of region to get -+ * -+ * Transfers image data from a #cairo_surface_t and converts it to an RGB(A) -+ * representation inside a #GdkPixbuf. This allows you to efficiently read -+ * individual pixels from cairo surfaces. For #GdkWindows, use -+ * gdk_pixbuf_get_from_window() instead. -+ * -+ * This function will create an RGB pixbuf with 8 bits per channel. -+ * The pixbuf will contain an alpha channel if the @surface contains one. -+ * -+ * Return value: (transfer full): A newly-created pixbuf with a reference -+ * count of 1, or %NULL on error -+ */ -+static GdkPixbuf * -+gdk_pixbuf_get_from_surface (cairo_surface_t *surface, -+ gint src_x, -+ gint src_y, -+ gint width, -+ gint height) -+{ -+ cairo_content_t content; -+ GdkPixbuf *dest; -+ -+ /* General sanity checks */ -+ g_return_val_if_fail (surface != NULL, NULL); -+ g_return_val_if_fail (width > 0 && height > 0, NULL); -+ -+ content = cairo_surface_get_content (surface) | CAIRO_CONTENT_COLOR; -+ dest = gdk_pixbuf_new (GDK_COLORSPACE_RGB, -+ !!(content & CAIRO_CONTENT_ALPHA), -+ 8, -+ width, height); -+ -+ surface = gdk_cairo_surface_coerce_to_image (surface, content, -+ src_x, src_y, -+ width, height); -+ cairo_surface_flush (surface); -+ if (cairo_surface_status (surface) || dest == NULL) -+ { -+ cairo_surface_destroy (surface); -+ return NULL; -+ } -+ -+ if (gdk_pixbuf_get_has_alpha (dest)) -+ convert_alpha (gdk_pixbuf_get_pixels (dest), -+ gdk_pixbuf_get_rowstride (dest), -+ cairo_image_surface_get_data (surface), -+ cairo_image_surface_get_stride (surface), -+ 0, 0, -+ width, height); -+ else -+ convert_no_alpha (gdk_pixbuf_get_pixels (dest), -+ gdk_pixbuf_get_rowstride (dest), -+ cairo_image_surface_get_data (surface), -+ cairo_image_surface_get_stride (surface), -+ 0, 0, -+ width, height); -+ -+ cairo_surface_destroy (surface); -+ return dest; -+} -+ -+#endif -+ - static gint32 - layer_from_pixbuf (gint32 image, - const gchar *layer_name, -@@ -566,6 +758,54 @@ layer_from_pixbuf (gint32 image, - return layer; - } - -+static cairo_surface_t * -+render_page_to_surface (PopplerPage *page, -+ int width, -+ int height, -+ double scale) -+{ -+ cairo_surface_t *surface; -+ cairo_t *cr; -+ -+ surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, width, height); -+ cr = cairo_create (surface); -+ -+ cairo_save (cr); -+ cairo_translate (cr, 0.0, 0.0); -+ -+ if (scale != 1.0) -+ cairo_scale (cr, scale, scale); -+ -+ poppler_page_render (page, cr); -+ cairo_restore (cr); -+ -+ cairo_set_operator (cr, CAIRO_OPERATOR_DEST_OVER); -+ cairo_set_source_rgb (cr, 1.0, 1.0, 1.0); -+ cairo_paint (cr); -+ -+ cairo_destroy (cr); -+ -+ return surface; -+} -+ -+static GdkPixbuf * -+render_page_to_pixbuf (PopplerPage *page, -+ int width, -+ int height, -+ double scale) -+{ -+ GdkPixbuf *pixbuf; -+ cairo_surface_t *surface; -+ -+ surface = render_page_to_surface (page, width, height, scale); -+ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0, -+ cairo_image_surface_get_width (surface), -+ cairo_image_surface_get_height (surface)); -+ cairo_surface_destroy (surface); -+ -+ return pixbuf; -+} -+ - static gint32 - load_image (PopplerDocument *doc, - const gchar *filename, -@@ -597,7 +837,7 @@ load_image (PopplerDocument *doc, - gdouble page_width; - gdouble page_height; - -- GdkPixbuf *buf; -+ GdkPixbuf *pixbuf; - gint width; - gint height; - -@@ -627,15 +867,13 @@ load_image (PopplerDocument *doc, - gimp_image_set_resolution (image_ID, resolution, resolution); - } - -- buf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, width, height); -- -- poppler_page_render_to_pixbuf (page, 0, 0, width, height, scale, 0, buf); -+ pixbuf = render_page_to_pixbuf (page, width, height, scale); - -- layer_from_pixbuf (image_ID, page_label, i, buf, -+ layer_from_pixbuf (image_ID, page_label, i, pixbuf, - doc_progress, 1.0 / pages->n_pages); - - g_free (page_label); -- g_object_unref (buf); -+ g_object_unref(pixbuf); - - doc_progress = (double) (i + 1) / pages->n_pages; - gimp_progress_update (doc_progress); -@@ -676,30 +914,22 @@ load_image (PopplerDocument *doc, - return image_ID; - } - --static GdkPixbuf * --get_thumbnail (PopplerDocument *doc, -- gint page_num, -- gint preferred_size) -+static cairo_surface_t * -+get_thumb_surface (PopplerDocument *doc, -+ gint page_num, -+ gint preferred_size) - { - PopplerPage *page; -- GdkPixbuf *pixbuf; -+ cairo_surface_t *surface; - - page = poppler_document_get_page (doc, page_num); - - if (! page) - return NULL; - -- /* XXX: Remove conditional when we depend on poppler 0.8.0, but also -- * add configure check to make sure POPPLER_WITH_GDK is enabled! -- */ --#ifdef POPPLER_WITH_GDK -- pixbuf = poppler_page_get_thumbnail_pixbuf (page); --#else -- pixbuf = poppler_page_get_thumbnail (page); --#endif -- -+ surface = poppler_page_get_thumbnail (page); - -- if (! pixbuf) -+ if (! surface) - { - gdouble width; - gdouble height; -@@ -712,15 +942,28 @@ get_thumbnail (PopplerDocument *doc, - width *= scale; - height *= scale; - -- pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, -- width, height); -- -- poppler_page_render_to_pixbuf (page, -- 0, 0, width, height, scale, 0, pixbuf); -+ surface = render_page_to_surface (page, width, height, scale); - } - - g_object_unref (page); - -+ return surface; -+} -+ -+static GdkPixbuf * -+get_thumb_pixbuf (PopplerDocument *doc, -+ gint page_num, -+ gint preferred_size) -+{ -+ cairo_surface_t *surface; -+ GdkPixbuf *pixbuf; -+ -+ surface = get_thumb_surface (doc, page_num, preferred_size); -+ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0, -+ cairo_image_surface_get_width (surface), -+ cairo_image_surface_get_height (surface)); -+ cairo_surface_destroy (surface); -+ - return pixbuf; - } - -@@ -769,8 +1012,8 @@ thumbnail_thread (gpointer data) - idle_data->page_no = i; - - /* FIXME get preferred size from somewhere? */ -- idle_data->pixbuf = get_thumbnail (thread_data->document, i, -- THUMBNAIL_SIZE); -+ idle_data->pixbuf = get_thumb_pixbuf (thread_data->document, i, -+ THUMBNAIL_SIZE); - - g_idle_add (idle_set_thumbnail, idle_data); - --- -1.7.5 diff --git a/extra/git/PKGBUILD b/extra/git/PKGBUILD index 4bf9b096d..be706a15c 100644 --- a/extra/git/PKGBUILD +++ b/extra/git/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 148010 2012-01-29 20:12:07Z dan $ +# $Id: PKGBUILD 150206 2012-02-14 20:14:21Z dan $ # Maintainer: Dan McGee <dan@archlinux.org> pkgname=git -pkgver=1.7.9 +pkgver=1.7.9.1 pkgrel=1 pkgdesc="the fast distributed version control system" arch=(i686 x86_64 'mips64el') @@ -22,8 +22,6 @@ optdepends=('tk: gitk and git gui' replaces=('git-core') provides=('git-core') backup=('etc/conf.d/git-daemon.conf') -#source=("http://kernel.org/pub/software/scm/git/${pkgname}-${pkgver}.tar.bz2" -# "http://kernel.org/pub/software/scm/git/git-manpages-$pkgver.tar.bz2" source=("http://git-core.googlecode.com/files/git-$pkgver.tar.gz" "http://git-core.googlecode.com/files/git-manpages-$pkgver.tar.gz" git-daemon @@ -80,7 +78,7 @@ package() { install -D -m644 "$srcdir"/git-daemon.conf "$pkgdir"/etc/conf.d/git-daemon.conf } -sha1sums=('ed51ef5ef250daaa6e98515cf2641820cd268d4c' - '1ca1fc430b2814f9e9cf82ec3bf7f2eaf5209b7a' +sha1sums=('bd85327627f96c4e98071a4d1d32c30f210aa54a' + '8c6ee031b39da5c5e53f927952838796e0959ce9' 'f2b41828bd912b72e2cb3e14677739c4f370de66' '149e2da1ecb48872ddb31c0945afeaad1f9653d7') diff --git a/extra/gmime/PKGBUILD b/extra/gmime/PKGBUILD index 32ac50fb7..7740d1fae 100644 --- a/extra/gmime/PKGBUILD +++ b/extra/gmime/PKGBUILD @@ -12,7 +12,7 @@ url="http://spruce.sourceforge.net/gmime/" depends=('glib2' 'gpgme' 'zlib') makedepends=('gtk-sharp-2' 'pkgconfig') [ "$CARCH" = "mips64el" ] && \ -unset makedepend +unset makedepends options=('!libtool') source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) sha256sums=('2e85076c223fe8bf1392a7c1affa4454cb3bb6dec83016ad6e3230c65533f163') diff --git a/extra/gnome-online-accounts/PKGBUILD b/extra/gnome-online-accounts/PKGBUILD index 7edd769fe..fcb4433af 100644 --- a/extra/gnome-online-accounts/PKGBUILD +++ b/extra/gnome-online-accounts/PKGBUILD @@ -5,7 +5,7 @@ pkgname=gnome-online-accounts pkgver=3.2.1 pkgrel=1 pkgdesc="GNOME service to access online accounts" -arch=(i686 x86_64) +arch=(i686 x86_64 mips64el) url="http://www.gnome.org" license=('GPL') depends=('libwebkit3' 'json-glib' 'libnotify' 'rest' 'hicolor-icon-theme') diff --git a/extra/gnome-power-manager/PKGBUILD b/extra/gnome-power-manager/PKGBUILD index 0d91ed969..7a8dd4f77 100644 --- a/extra/gnome-power-manager/PKGBUILD +++ b/extra/gnome-power-manager/PKGBUILD @@ -3,7 +3,7 @@ pkgname=gnome-power-manager pkgver=3.2.1 -pkgrel=1 +pkgrel=1.1 pkgdesc="Power management tools." arch=(i686 x86_64 'mips64el') url="http://www.gnome.org/projects/gnome-power-manager/" diff --git a/extra/gnugo/gnugo.install b/extra/gnugo/gnugo.install deleted file mode 100644 index b0271070c..000000000 --- a/extra/gnugo/gnugo.install +++ /dev/null @@ -1,18 +0,0 @@ -infodir=/usr/share/info -filelist=(gnugo.info.gz gnugo.info-1.gz gnugo.info-2.gz gnugo.info-3.gz) - -post_install() { - for file in ${filelist[@]}; do - install-info $infodir/$file $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done -} diff --git a/extra/gpsd/PKGBUILD b/extra/gpsd/PKGBUILD index 6a15d34cf..295bf5e8a 100644 --- a/extra/gpsd/PKGBUILD +++ b/extra/gpsd/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 142040 2011-11-04 20:43:48Z andrea $ +# $Id: PKGBUILD 150180 2012-02-14 08:19:26Z andrea $ # Maintainer: # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Giacomo Rizzo <alt@free-os.it> pkgname=gpsd -pkgver=3.3 +pkgver=3.4 pkgrel=1 pkgdesc="GPS daemon and library to support USB/serial GPS devices" arch=('i686' 'x86_64' 'mips64el') @@ -21,8 +21,8 @@ options=('!libtool') install="${pkgname}.install" source=("http://download.savannah.gnu.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz"{,.sig} 'gpsd' 'gpsd.conf.d') -md5sums=('4cfdcfd88e925f4d0d6c2272fc573ab5' - '90086315ed6f266748b9acb338b903a5' +md5sums=('c01353459faa68834309109d4e868460' + '8aea27e1b0c23f254f94861f7d898106' '1f3402f8e33a7032b9ae6dfd077234f7' '3e963df3f9f7ef3572ecc648ae829315') diff --git a/extra/gstreamer0.10-base/PKGBUILD b/extra/gstreamer0.10-base/PKGBUILD index d88467e7b..96937b678 100644 --- a/extra/gstreamer0.10-base/PKGBUILD +++ b/extra/gstreamer0.10-base/PKGBUILD @@ -4,7 +4,7 @@ pkgbase=('gstreamer0.10-base') pkgname=('gstreamer0.10-base' 'gstreamer0.10-base-plugins') pkgver=0.10.35 -pkgrel=1 +pkgrel=1.1 arch=('i686' 'x86_64' 'mips64el') license=('LGPL') makedepends=('pkgconfig' 'gstreamer0.10>=0.10.35' 'orc' 'libxv' 'alsa-lib' 'cdparanoia' 'libvisual' 'libvorbis' 'libtheora' 'pango' 'gobject-introspection') diff --git a/extra/gtk-xfce-engine/PKGBUILD b/extra/gtk-xfce-engine/PKGBUILD index f6277c090..87c77013a 100644 --- a/extra/gtk-xfce-engine/PKGBUILD +++ b/extra/gtk-xfce-engine/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 147260 2012-01-25 08:34:39Z foutrelis $ +# $Id: PKGBUILD 149817 2012-02-11 08:22:29Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: tobias <tobias funnychar archlinux.org> pkgbase=gtk-xfce-engine pkgname=('gtk2-xfce-engine' 'gtk3-xfce-engine') -pkgver=2.99.0 -pkgrel=2 +pkgver=2.99.1 +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://www.xfce.org/" license=('GPL2') @@ -13,7 +13,7 @@ groups=('xfce4') makedepends=('gtk2' 'gtk3') options=('!libtool') source=(http://archive.xfce.org/src/xfce/$pkgbase/2.99/$pkgbase-$pkgver.tar.bz2) -sha256sums=('27bee5a68527d214cfda9b99d4ba68d39b6d341202bc728d0ddd170a73cde154') +sha256sums=('077a3d68bb560371af902d4aa35ad949c70974e923ecdf2ec946801a480dece2') build() { cd "$srcdir/$pkgbase-$pkgver" diff --git a/extra/gtk2/cups-custom-print.patch b/extra/gtk2/cups-custom-print.patch deleted file mode 100644 index ffc89aa32..000000000 --- a/extra/gtk2/cups-custom-print.patch +++ /dev/null @@ -1,104 +0,0 @@ -From 8170436e61ea68c713d75ad374d22c3261be9203 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg <benjamin@sipsolutions.net> -Date: Sat, 24 Dec 2011 16:26:32 +0000 -Subject: Set cups Custom print options correctly (bug #543520, patch by Marek Kašík) - -This patch fixes the cups print backend to pass Custom options with -the "Custom." prefix to cups if neccessary. ---- -diff --git a/modules/printbackends/cups/gtkprintbackendcups.c b/modules/printbackends/cups/gtkprintbackendcups.c -index 14a1b5d..2751ee4 100644 ---- a/modules/printbackends/cups/gtkprintbackendcups.c -+++ b/modules/printbackends/cups/gtkprintbackendcups.c -@@ -483,22 +483,44 @@ cups_print_cb (GtkPrintBackendCups *print_backend, - GDK_THREADS_LEAVE (); - } - -+typedef struct { -+ GtkCupsRequest *request; -+ GtkPrinterOptionSet *options; -+} CupsOptionsData; -+ - static void - add_cups_options (const gchar *key, - const gchar *value, - gpointer user_data) - { -- GtkCupsRequest *request = user_data; -+ CupsOptionsData *data = (CupsOptionsData *) user_data; -+ GtkCupsRequest *request = data->request; -+ GtkPrinterOptionSet *options = data->options; -+ GtkPrinterOption *option = NULL; -+ gchar *new_value = NULL; - - if (!g_str_has_prefix (key, "cups-")) - return; - - if (strcmp (value, "gtk-ignore-value") == 0) - return; -+ -+ option = gtk_printer_option_set_lookup (options, key); - - key = key + strlen ("cups-"); - -- gtk_cups_request_encode_option (request, key, value); -+ /* Add "Custom." prefix to custom values */ -+ if (value && option && -+ !gtk_printer_option_has_choice (option, value)) -+ new_value = g_strdup_printf ("Custom.%s", value); -+ -+ if (new_value) -+ { -+ gtk_cups_request_encode_option (request, key, new_value); -+ g_free (new_value); -+ } -+ else -+ gtk_cups_request_encode_option (request, key, value); - } - - static void -@@ -511,8 +533,12 @@ gtk_print_backend_cups_print_stream (GtkPrintBackend *print_backend, - { - GtkPrinterCups *cups_printer; - CupsPrintStreamData *ps; -+ CupsOptionsData *options_data; - GtkCupsRequest *request; - GtkPrintSettings *settings; -+ GtkPrinterOptionSet *options; -+ GtkPrintCapabilities capabilities; -+ GtkPageSetup *page_setup; - const gchar *title; - char printer_absolute_uri[HTTP_MAX_URI]; - -@@ -521,6 +547,8 @@ gtk_print_backend_cups_print_stream (GtkPrintBackend *print_backend, - - cups_printer = GTK_PRINTER_CUPS (gtk_print_job_get_printer (job)); - settings = gtk_print_job_get_settings (job); -+ capabilities = cups_printer_get_capabilities (GTK_PRINTER (cups_printer)); -+ page_setup = gtk_printer_get_default_page_size (GTK_PRINTER (cups_printer)); - - request = gtk_cups_request_new_with_username (NULL, - GTK_CUPS_POST, -@@ -558,8 +586,18 @@ gtk_print_backend_cups_print_stream (GtkPrintBackend *print_backend, - IPP_TAG_NAME, "job-name", - NULL, title); - -- gtk_print_settings_foreach (settings, add_cups_options, request); -- -+ options = cups_printer_get_options (GTK_PRINTER (cups_printer), settings, page_setup, capabilities); -+ -+ options_data = g_new0 (CupsOptionsData, 1); -+ options_data->request = request; -+ options_data->options = options; -+ -+ gtk_print_settings_foreach (settings, add_cups_options, options_data); -+ -+ g_object_unref (page_setup); -+ g_object_unref (options); -+ g_free (options_data); -+ - ps = g_new0 (CupsPrintStreamData, 1); - ps->callback = callback; - ps->user_data = user_data; --- -cgit v0.9.0.2 diff --git a/extra/imagemagick/PKGBUILD b/extra/imagemagick/PKGBUILD index a428719fc..df7da3c71 100644 --- a/extra/imagemagick/PKGBUILD +++ b/extra/imagemagick/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 149151 2012-02-06 00:39:05Z eric $ +# $Id: PKGBUILD 149825 2012-02-11 09:11:58Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgbase=imagemagick @@ -12,6 +12,8 @@ depends=('perl' 'libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'libjpeg-turbo' makedepends=('ghostscript' 'openexr' 'libwmf' 'librsvg' 'libxml2' 'jasper' 'libpng') source=(ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz \ perlmagick.rpath.patch) +sha1sums=('b6cee59cb380f38572ec40769c438901dcc7500e' + '23405f80904b1de94ebd7bd6fe2a332471b8c283') build() { cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.} @@ -80,5 +82,3 @@ package_imagemagick-doc() { install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/imagemagick-doc/LICENSE" install -Dm644 NOTICE "${pkgdir}/usr/share/licenses/imagemagick-doc/NOTICE" } -md5sums=('86a82ccb7907aecfc1e8cf5203e07048' - 'ff9974decbfe9846f8e347239d87e4eb') diff --git a/extra/imlib/libpng14.patch b/extra/imlib/libpng14.patch deleted file mode 100644 index 2cc174e29..000000000 --- a/extra/imlib/libpng14.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur imlib-1.9.15-orig/Imlib/load.c imlib-1.9.15/Imlib/load.c ---- imlib-1.9.15-orig/Imlib/load.c 2010-01-18 20:58:27.000000000 -0500 -+++ imlib-1.9.15/Imlib/load.c 2010-01-18 21:02:04.000000000 -0500 -@@ -1619,7 +1619,7 @@ - return 0; - fread(buf, 1, 8, f); - rewind(f); -- return (int)png_check_sig(buf, 8); -+ return (int)png_sig_cmp(buf, 0, 8)==0; - #else - return 0; - #endif diff --git a/extra/kdebindings-python/PKGBUILD b/extra/kdebindings-python/PKGBUILD index f3f0e26c6..979641624 100644 --- a/extra/kdebindings-python/PKGBUILD +++ b/extra/kdebindings-python/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 147780 2012-01-28 10:32:45Z andrea $ +# $Id: PKGBUILD 150178 2012-02-14 07:57:40Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> pkgname=kdebindings-python pkgver=4.8.0 -pkgrel=1 +pkgrel=2 pkgdesc="KDE bindings for Python" url="http://kde.org/" arch=('i686' 'x86_64' 'mips64el') diff --git a/extra/kdelibs3/PKGBUILD b/extra/kdelibs3/PKGBUILD index 4b1862b2f..888aa10f3 100644 --- a/extra/kdelibs3/PKGBUILD +++ b/extra/kdelibs3/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 148802 2012-02-05 11:51:08Z ibiru $ +# $Id: PKGBUILD 149952 2012-02-11 23:30:53Z allan $ # Maintainer: Eric Bélanger <eric@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> # Contributor: Tobias Powalowski <tpowa@archlinux.org> pkgname=kdelibs3 pkgver=3.5.10 -pkgrel=12 +pkgrel=13 pkgdesc='KDE3 Core Libraries' arch=('i686' 'x86_64') url='http://www.kde.org' diff --git a/extra/kismet/PKGBUILD b/extra/kismet/PKGBUILD index edd6adaf0..4239608af 100644 --- a/extra/kismet/PKGBUILD +++ b/extra/kismet/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 123234 2011-05-09 12:19:16Z angvp $ +# $Id: PKGBUILD 149954 2012-02-11 23:30:59Z allan $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Jason Chu <jason@archlinux.org> # Contributor: Juergen Hoetzel <jason@archlinux.org> @@ -6,7 +6,7 @@ pkgname=kismet pkgver=2011_03_R2 _realver="${pkgver//_/-}" -pkgrel=2.1 +pkgrel=3 pkgdesc="802.11 layer2 wireless network detector, sniffer, and intrusion detection system" arch=('i686' 'x86_64' 'mips64el') url="http://www.kismetwireless.net/" @@ -14,15 +14,14 @@ license=('GPL') depends=('libcap' 'libnl' 'pcre' 'ncurses' 'libpcap>=1.0.0' 'bluez' 'openssl') # already in core: ('linux-api-headers' 'glibc' 'libusb' 'libusb-compat') makedepends=() # already in core: ('grep' 'gcc-libs') optdepends=('gpsd: log coordinates of detected networks' - 'wireshark: provide OUI files used to determine device manufacturer' - 'wireshark: mergecap, to merge multiple capture files' + 'wireshark-cli: provide OUI files used to determine device manufacturer' + 'wireshark-cli: mergecap, to merge multiple capture files' 'sox: provide the default kismet sound playback binary' 'festival: text-to-speech support' 'flite: alternative/lightweight text-to-speech support' 'mac80211-driver: full rfmon support' 'ruby: ruby interface') backup=('etc/kismet.conf' 'etc/kismet_drone.conf') -options=() install=kismet.install changelog=kismet.changelog source=("http://www.kismetwireless.net/code/${pkgname}-${_realver}.tar.gz") @@ -57,4 +56,3 @@ package() { # Our own suid-install, first half (see kismet.install) install -o "root" -g "root" -m 4550 kismet_capture "${pkgdir}/usr/bin/" } - diff --git a/extra/ksensors/PKGBUILD b/extra/ksensors/PKGBUILD deleted file mode 100644 index 6db8e7e85..000000000 --- a/extra/ksensors/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: PKGBUILD 64746 2010-01-22 03:14:29Z eric $ -# Contributor: Torsten Evers <tevers@onlinehome.de> -# Maintainer: Thomas Baechler <thomas@archlinux.org> -pkgname=ksensors -pkgver=0.7.3 -pkgrel=5 -pkgdesc="ksensors is nice lm_sensors frontend for KDE" -arch=('i686' 'x86_64') -url="http://ksensors.sourceforge.net/" -license=("GPL") -depends=("lm_sensors>=3.0.0" 'kdelibs3') -source=(#http://mesh.dl.sourceforge.net/sourceforge/ksensors/$pkgname-$pkgver.tar.gz \ - http://people.atrpms.net/~hdegoede/ksensors-0.7.3-fedora-14.tar.gz) -md5sums=('7c64a2ef836c13d72b5711791819072e') - -build() { - cd $startdir/src/$pkgname-$pkgver - . /etc/profile.d/qt3.sh - . /etc/profile.d/kde3.sh - ./configure --prefix=/opt/kde --without-arts - make || return 1 - make DESTDIR=$startdir/pkg install -} diff --git a/extra/ksensors/ksensors.patch b/extra/ksensors/ksensors.patch deleted file mode 100644 index 299458f0d..000000000 --- a/extra/ksensors/ksensors.patch +++ /dev/null @@ -1,79 +0,0 @@ ---- admin/cvs.sh 2003-07-11 23:00:30.000000000 +0800 -+++ admin/cvs.sh 2006-08-28 14:54:23.000000000 +0800 -@@ -29,7 +29,7 @@ - { - AUTOCONF_VERSION=`$AUTOCONF --version | head -n 1` - case $AUTOCONF_VERSION in -- Autoconf*2.5* | autoconf*2.5* ) : ;; -+ Autoconf*2.[56]* | autoconf*2.[56]* ) : ;; - "" ) - echo "*** AUTOCONF NOT FOUND!." - echo "*** KDE requires autoconf 2.52, 2.53 or 2.54" -@@ -44,7 +44,7 @@ - - AUTOHEADER_VERSION=`$AUTOHEADER --version | head -n 1` - case $AUTOHEADER_VERSION in -- Autoconf*2.5* | autoheader*2.5* ) : ;; -+ Autoconf*2.[56]* | autoheader*2.[56]* ) : ;; - "" ) - echo "*** AUTOHEADER NOT FOUND!." - echo "*** KDE requires autoheader 2.52 or 2.53 (part of autoconf)" ---- src/hdsensorslist.cpp 2004-08-09 02:30:05.000000000 +0800 -+++ src/hdsensorslist.cpp 2006-08-28 15:27:02.000000000 +0800 -@@ -206,13 +206,17 @@ - - bool HDSensorsList::getDisks(QStringList &disks ) - { -- DIR *dir= opendir("/proc/ide"); -- if(!dir) return false; -+ DIR *dir; -+ -+ /* Get a listing of the hard drives looking under sysfs first before falling back to /proc/ide */ -+ if((dir = opendir ("/sys/block")) == NULL) -+ if ((dir = opendir ("/proc/ide")) == NULL) -+ return false; - QString str; - struct dirent *ptr; - while((ptr= readdir(dir))) { -- if(ptr->d_name[0]=='h' && ptr->d_name[1]=='d') { -- str.sprintf("/dev/hd%c",ptr->d_name[2]); -+ if((ptr->d_name[0] == 'h' || ptr->d_name[0] == 's') && ptr->d_name[1] == 'd') { -+ str.sprintf("/dev/%s", ptr->d_name); - disks << str; - } - } ---- src/lmsensorscfgdesign.ui 2004-08-11 22:36:54.000000000 +0800 -+++ src/lmsensorscfgdesign.ui 2006-08-28 14:54:23.000000000 +0800 -@@ -748,29 +748,13 @@ - <property name="name"> - <cstring>unnamed</cstring> - </property> -- <widget class="QLabel"> -+ <widget class="QButtonGroup"> - <property name="name"> -- <cstring>TextLabel1_3_2_2_2_2</cstring> -+ <cstring>ButtonGroup9</cstring> - </property> -- <property name="text"> -+ <property name="title"> - <string>On reach alarm value:</string> - </property> -- </widget> -- <widget class="QFrame"> -- <property name="name"> -- <cstring>Frame11_2_2_2</cstring> -- </property> -- <property name="frameShape"> -- <enum>HLine</enum> -- </property> -- <property name="frameShadow"> -- <enum>Sunken</enum> -- </property> -- </widget> -- <widget class="QLayoutWidget"> -- <property name="name"> -- <cstring>layout9</cstring> -- </property> - <grid> - <property name="name"> - <cstring>unnamed</cstring> diff --git a/extra/leafpad/PKGBUILD b/extra/leafpad/PKGBUILD index 67317dd6a..14873c3be 100644 --- a/extra/leafpad/PKGBUILD +++ b/extra/leafpad/PKGBUILD @@ -4,7 +4,7 @@ pkgname=leafpad pkgver=0.8.18.1 -pkgrel=2 +pkgrel=3 pkgdesc="A notepad clone for GTK+ 2.0" arch=('i686' 'x86_64' 'mips64el') url="http://tarot.freeshell.org/leafpad/" diff --git a/extra/libdrm/PKGBUILD b/extra/libdrm/PKGBUILD index 097bf9798..cef678c8a 100644 --- a/extra/libdrm/PKGBUILD +++ b/extra/libdrm/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 146314 2012-01-09 15:57:26Z andyrtr $ +# $Id: PKGBUILD 149819 2012-02-11 08:51:30Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libdrm -pkgver=2.4.30 +pkgver=2.4.31 pkgrel=1 pkgdesc="Userspace interface to kernel DRM services" arch=(i686 x86_64 'mips64el') @@ -16,7 +16,7 @@ source=(http://dri.freedesktop.org/${pkgname}/${pkgname}-${pkgver}.tar.bz2 COPYING # git_fixes.diff ) -md5sums=('9f57a68b2c0836b55ebcbc241f6ca175' +md5sums=('b8cf744ec113c6028fe0975b1133b649' 'fb8a15bf4aff5646c517373e8277f440' 'ba65e71c481b94ef0fb6c23c7f21ffa1') diff --git a/extra/libglade/PKGBUILD b/extra/libglade/PKGBUILD index e1c71bf59..53dce90a0 100644 --- a/extra/libglade/PKGBUILD +++ b/extra/libglade/PKGBUILD @@ -3,7 +3,7 @@ pkgname=libglade pkgver=2.6.4 -pkgrel=2 +pkgrel=2.1 pkgdesc="Allows you to load glade interface files in a program at runtime" arch=(i686 x86_64 'mips64el') license=('LGPL') diff --git a/extra/libjpeg-turbo/PKGBUILD b/extra/libjpeg-turbo/PKGBUILD index 8a601edea..db1519a42 100644 --- a/extra/libjpeg-turbo/PKGBUILD +++ b/extra/libjpeg-turbo/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 145273 2011-12-21 01:12:32Z allan $ +# $Id: PKGBUILD 149986 2012-02-12 02:54:27Z allan $ # Maintainer: Allan McRae <allan@archlinux.org> # Contributor: Simone Sclavi 'Ito' <darkhado@gmail.com> pkgname=libjpeg-turbo -pkgver=1.1.1 -pkgrel=4 +pkgver=1.2.0 +pkgrel=1 pkgdesc="libjpeg derivative with accelerated baseline JPEG compression and decompression" arch=('i686' 'x86_64' 'mips64el') url="http://libjpeg-turbo.virtualgl.org/" @@ -16,11 +16,15 @@ conflicts=('libjpeg') replaces=('libjpeg') options=('!libtool') source=(http://sourceforge.net/projects/$pkgname/files/$pkgver/$pkgname-$pkgver.tar.gz) -md5sums=('03b9c1406c7bfdc204313c2917ce6962') +md5sums=('5329fa80953938cb4f097afae55059e2') build() { cd $srcdir/$pkgname-$pkgver + # put documentation in a reasonable directory... + sed -i "/docdir = /s#/doc#/doc/libjpeg-turbo#" Makefile.in + sed -i "/exampledir = /s#/doc#/doc/libjpeg-turbo#" Makefile.in + ./configure --prefix=/usr --with-jpeg8 --mandir=/usr/share/man make } @@ -42,7 +46,10 @@ package() { # do not distributre libturbojpeg as it is unversioned rm $pkgdir/usr/lib/libturbojpeg.{so,a} rm $pkgdir/usr/include/turbojpeg.h - rm $pkgdir/usr/bin/jpgtest - install -Dm644 LICENSE.txt $pkgdir/usr/share/licenses/libjpeg-turbo/LICENSE + install -dm755 $pkgdir/usr/share/licenses/libjpeg-turbo/ + ln -s ../../doc/libjpeg-turbo/README \ + $pkgdir/usr/share/licenses/libjpeg-turbo/README + ln -s ../../doc/libjpeg-turbo/README-turbo.txt \ + $pkgdir/usr/share/licenses/libjpeg-turbo/README-turbo.txt } diff --git a/extra/libksba/PKGBUILD b/extra/libksba/PKGBUILD deleted file mode 100644 index 20179c686..000000000 --- a/extra/libksba/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 149501 2012-02-08 10:55:32Z tpowa $ -# Maintainer: damir <damir@archlinux.org> -# Contributor: Damir Perisa <damir.perisa@bluewin.ch> - -pkgname=libksba -pkgver=1.2.0 -pkgrel=2 -pkgdesc="A CMS and X.509 access library" -arch=(i686 x86_64) -license=('GPL') -url="ftp://ftp.gnupg.org/gcrypt/alpha/libksba" -depends=('bash' 'libgpg-error' 'glibc') -source=(ftp://ftp.gnupg.org/gcrypt/$pkgname/$pkgname-$pkgver.tar.bz2) -options=(!libtool) -install=libksba.install - -build() { - cd $srcdir/$pkgname-$pkgver - ./configure --prefix=/usr - make -} - -check() { - cd $srcdir/$pkgname-$pkgver - make check -} - -package() { - cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install -} -md5sums=('e797f370b69b4dc776499d6a071ae137') diff --git a/extra/libksba/libksba.install b/extra/libksba/libksba.install deleted file mode 100644 index 3715b8960..000000000 --- a/extra/libksba/libksba.install +++ /dev/null @@ -1,20 +0,0 @@ -infodir=usr/share/info -filelist=(ksba.info) - -post_install() { - [ -x usr/bin/install-info ] || return 0 - for file in ${filelist[@]}; do - install-info $infodir/$file.gz $infodir/dir 2> /dev/null - done -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - [ -x usr/bin/install-info ] || return 0 - for file in ${filelist[@]}; do - install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null - done -} diff --git a/extra/libmp3splt/PKGBUILD b/extra/libmp3splt/PKGBUILD index af01492ea..ea9597c88 100644 --- a/extra/libmp3splt/PKGBUILD +++ b/extra/libmp3splt/PKGBUILD @@ -1,17 +1,18 @@ -# $Id: PKGBUILD 131866 2011-07-16 10:20:18Z tpowa $ +# $Id: PKGBUILD 149956 2012-02-11 23:31:02Z allan $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> pkgname=libmp3splt pkgver=0.7 -pkgrel=1 -arch=('i686' 'x86_64' 'mips64el') +pkgrel=2 pkgdesc="Library for splitting mp3 and ogg files without decoding" -license=('GPL') +arch=('i686' 'x86_64' 'mips64el') url="http://mp3splt.sourceforge.net" -makedepends=('git') +license=('GPL') depends=('libmad' 'libvorbis' 'libid3tag' 'libtool') -source=(http://downloads.sourceforge.net/sourceforge/mp3splt/$pkgname-$pkgver.tar.gz) +makedepends=('git') options=(!libtool) +source=(http://downloads.sourceforge.net/sourceforge/mp3splt/$pkgname-$pkgver.tar.gz) +md5sums=('dadb166361e2a28955032a1b9f10ed38') build() { cd $srcdir/$pkgname-$pkgver @@ -20,8 +21,8 @@ build() { ./configure --prefix=/usr make } + package() { cd $srcdir/$pkgname-$pkgver make DESTDIR=$pkgdir/ install } -md5sums=('dadb166361e2a28955032a1b9f10ed38') diff --git a/extra/libwmf/libpng14.patch b/extra/libwmf/libpng14.patch deleted file mode 100644 index 3d38c717a..000000000 --- a/extra/libwmf/libpng14.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur libwmf-0.2.8.4.orig/src/extra/gd/gd_png.c libwmf-0.2.8.4/src/extra/gd/gd_png.c ---- libwmf-0.2.8.4.orig/src/extra/gd/gd_png.c 2005-07-27 23:35:06.000000000 +0300 -+++ libwmf-0.2.8.4/src/extra/gd/gd_png.c 2010-01-17 01:33:58.000000000 +0200 -@@ -136,7 +136,7 @@ - /* first do a quick check that the file really is a PNG image; could - * have used slightly more general png_sig_cmp() function instead */ - gdGetBuf (sig, 8, infile); -- if (!png_check_sig (sig, 8)) -+ if (png_sig_cmp (sig, 0, 8)) - return NULL; /* bad signature */ - - #ifndef PNG_SETJMP_NOT_SUPPORTED diff --git a/extra/lighttpd/PKGBUILD b/extra/lighttpd/PKGBUILD index ecc76df56..951320590 100644 --- a/extra/lighttpd/PKGBUILD +++ b/extra/lighttpd/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 146963 2012-01-19 18:03:44Z pierre $ +# $Id: PKGBUILD 149958 2012-02-11 23:31:05Z allan $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=lighttpd pkgver=1.4.30 -pkgrel=2 +pkgrel=3 pkgdesc='a secure, fast, compliant and very flexible web-server' license=('custom') arch=('i686' 'x86_64' 'mips64el') diff --git a/extra/maxima/PKGBUILD b/extra/maxima/PKGBUILD index 8d63f8280..71595ad27 100644 --- a/extra/maxima/PKGBUILD +++ b/extra/maxima/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 144879 2011-12-08 21:06:55Z juergen $ +# $Id: PKGBUILD 150146 2012-02-13 14:36:40Z ronald $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: Damir Perisa <damir@archlinux.org> pkgname=maxima -pkgver=5.25.1 -pkgrel=3 +pkgver=5.26.0 +pkgrel=1 pkgdesc="Maxima - a sophisticated computer algebra system" arch=('i686' 'x86_64' 'mips64el') license=('GPL') @@ -21,7 +21,7 @@ optdepends=('gnuplot: plotting capabilities' 'rlwrap: readline support via /usr/ options=('!makeflags' '!zipman') # don't zip info pages or they won't work inside maxima install=maxima.install source=("http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz" "$pkgname.desktop") -sha1sums=('9c9ea66434c9ca96549092c3640c3ba5a4fba44b' +sha1sums=('bc7448486478b217c333605c6d8f6c0bbdd3526c' '4398ebb1ec85ccfa12f37516a56d60c26f74b18b') build() { diff --git a/extra/metalog/PKGBUILD b/extra/metalog/PKGBUILD index ec87ecba0..427a66794 100644 --- a/extra/metalog/PKGBUILD +++ b/extra/metalog/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 137711 2011-09-10 13:12:33Z pierre $ +# $Id: PKGBUILD 150210 2012-02-14 21:34:23Z juergen $ # Maintainer: juergen <juergen@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=metalog -pkgver=1.0 -pkgrel=2 +pkgver=2.0 +pkgrel=1 pkgdesc="Metalog is a modern replacement for syslogd and klogd" url="http://metalog.sourceforge.net" license=('GPL') @@ -12,20 +12,19 @@ arch=('i686' 'x86_64' 'mips64el') depends=('pcre') provides=('logger') backup=('etc/metalog.conf' 'etc/conf.d/metalog') -source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-1.tar.lzma" - 'metalog' 'metalog.confd') -md5sums=('df4ec89f6a0df24a43f9592ee80ab6be' +source=("http://sourceforge.net/projects/metalog/files/metalog-2.tar.xz/download" 'metalog' 'metalog.confd') +md5sums=('e948d10d780205eae17645c89aee1361' 'cdd1d34eedbfbc2d9e659bf0a0f58f56' '86bccd5a02996921e29eff8a0394d11f') build() { - cd $srcdir/$pkgname-1 + cd $srcdir/$pkgname-2 ./configure --prefix=/usr --sysconfdir=/etc make } package() { - cd $srcdir/$pkgname-1 + cd $srcdir/$pkgname-2 make DESTDIR=$pkgdir install install -D -m755 $srcdir/metalog $pkgdir/etc/rc.d/metalog install -D -m644 $srcdir/metalog.confd $pkgdir/etc/conf.d/metalog diff --git a/extra/mono/PKGBUILD b/extra/mono/PKGBUILD index 336f59ca1..9a83fc925 100644 --- a/extra/mono/PKGBUILD +++ b/extra/mono/PKGBUILD @@ -6,7 +6,7 @@ pkgname=mono pkgver=2.10.8 pkgrel=1 pkgdesc="Free implementation of the .NET platform including runtime and compiler" -arch=(i686 x86_64 'mips64el') +arch=(i686 x86_64) license=('GPL' 'LGPL2' 'MPL' 'custom:MITX11') url="http://www.mono-project.com/" depends=('zlib' 'libgdiplus>=2.10' 'sh') diff --git a/extra/mpd/ChangeLog b/extra/mpd/ChangeLog index b22d95f8d..7e174cfb4 100644 --- a/extra/mpd/ChangeLog +++ b/extra/mpd/ChangeLog @@ -1,3 +1,6 @@ +2012-02-11 Angel Velasquez <angvp@archlinux.org> + * Version bump to 0.16.7 + 2011-12-05 Angel Velasquez <angvp@archlinux.org> * Version bump to 0.16.6 diff --git a/extra/mpd/PKGBUILD b/extra/mpd/PKGBUILD index 7ce8be828..f7cd9d8df 100644 --- a/extra/mpd/PKGBUILD +++ b/extra/mpd/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 148654 2012-02-05 10:51:32Z bisson $ +# $Id: PKGBUILD 149829 2012-02-11 09:25:31Z angvp $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Damir Perisa <damir.perisa@bluewin.ch> # Contributor: Ben <ben@benmazer.net> pkgname=mpd -pkgver=0.16.6 -pkgrel=2 +pkgver=0.16.7 +pkgrel=1 pkgdesc="Music daemon that plays MP3, FLAC, and Ogg Vorbis files" arch=('i686' 'x86_64' 'mips64el') license=('GPL') @@ -19,7 +19,7 @@ install=${pkgname}.install changelog=ChangeLog source=("http://downloads.sourceforge.net/musicpd/$pkgname-$pkgver.tar.bz2" 'mpd') -md5sums=('5489dd327fba12c67f01558d2cfa6d57' +md5sums=('3d0e7c36646e80386b32966bd4268e8d' 'e5669c2bff4031928531e52475addeb1') build() { diff --git a/extra/netpbm/libpng-1.4.patch b/extra/netpbm/libpng-1.4.patch deleted file mode 100644 index c02ded734..000000000 --- a/extra/netpbm/libpng-1.4.patch +++ /dev/null @@ -1,59 +0,0 @@ -diff -Naur netpbm-orig/converter/other/pnmtopng.c netpbm/converter/other/pnmtopng.c ---- netpbm-orig/converter/other/pnmtopng.c 2010-01-22 00:13:48.000000000 -0500 -+++ netpbm/converter/other/pnmtopng.c 2010-01-22 00:21:33.000000000 -0500 -@@ -2641,7 +2641,7 @@ - info_ptr->color_type == PNG_COLOR_TYPE_RGB) { - if (transparent > 0) { - info_ptr->valid |= PNG_INFO_tRNS; -- info_ptr->trans_values = -+ info_ptr->trans_color = - xelToPngColor_16(transcolor, maxval, png_maxval); - } - } else { -@@ -2653,10 +2653,10 @@ - if (info_ptr->valid && PNG_INFO_tRNS) - pm_message("Transparent color {gray, red, green, blue} = " - "{%d, %d, %d, %d}", -- info_ptr->trans_values.gray, -- info_ptr->trans_values.red, -- info_ptr->trans_values.green, -- info_ptr->trans_values.blue); -+ info_ptr->trans_color.gray, -+ info_ptr->trans_color.red, -+ info_ptr->trans_color.green, -+ info_ptr->trans_color.blue); - else - pm_message("No transparent color"); - } -diff -Naur netpbm-orig/converter/other/pngtopnm.c netpbm/converter/other/pngtopnm.c ---- netpbm-orig/converter/other/pngtopnm.c 2010-01-22 00:33:25.000000000 -0500 -+++ netpbm/converter/other/pngtopnm.c 2010-01-22 00:39:21.000000000 -0500 -@@ -569,8 +569,8 @@ - for (i = 0, foundGray = FALSE; - i < info_ptr->num_trans && !foundGray; - ++i) { -- if (info_ptr->trans[i] != 0 && -- info_ptr->trans[i] != maxval) { -+ if (info_ptr->trans_alpha[i] != 0 && -+ info_ptr->trans_alpha[i] != maxval) { - foundGray = TRUE; - } - } -@@ -641,7 +641,7 @@ - unsigned int i; - trans_mix = TRUE; - for (i = 0; i < info_ptr->num_trans; ++i) -- if (info_ptr->trans[i] != 0 && info_ptr->trans[i] != 255) { -+ if (info_ptr->trans_alpha[i] != 0 && info_ptr->trans_alpha[i] != 255) { - trans_mix = FALSE; - break; - } -@@ -1061,7 +1061,7 @@ - setXel(&xelrow[col], fgColor, bgColor, alphaHandling, - (pngxP->info_ptr->valid & PNG_INFO_tRNS) && - index < pngxP->info_ptr->num_trans ? -- pngxP->info_ptr->trans[index] : maxval); -+ pngxP->info_ptr->trans_alpha[index] : maxval); - } - break; - diff --git a/extra/nmap/PKGBUILD b/extra/nmap/PKGBUILD index 606fe34d5..bee773096 100644 --- a/extra/nmap/PKGBUILD +++ b/extra/nmap/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 110262 2011-02-18 15:25:57Z angvp $ +# $Id: PKGBUILD 149962 2012-02-11 23:31:11Z allan $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Hugo Doria <hugo@archlinux.org> pkgname=nmap pkgver=5.51 -pkgrel=1 +pkgrel=3 pkgdesc="A network exploration tool and security/port scanner" arch=('i686' 'x86_64' 'mips64el') url="http://nmap.org" @@ -15,6 +15,7 @@ makedepends=('python2') optdepends=('pygtk: gui for nmap') options=('!makeflags') source=(http://nmap.org/dist/${pkgname}-${pkgver}.tar.bz2) +md5sums=('0b80d2cb92ace5ebba8095a4c2850275') build() { cd ${srcdir}/${pkgname}-${pkgver} @@ -22,6 +23,11 @@ build() { echo "TryExec=/usr/bin/pygtk-demo" >> zenmap/install_scripts/unix/zenmap.desktop echo "TryExec=/usr/bin/pygtk-demo" >> zenmap/install_scripts/unix/zenmap-root.desktop + # Force usage of external libpcap + # OSX bug check fails because of missing types + # autoreconf fails because our autotools are too new (?) + sed -i 's/have_libpcap=no/have_libpcap=yes/g' {.,ncat,nping}/configure + ./configure --prefix=/usr --mandir=/usr/share/man \ --libexecdir=/usr/lib make @@ -37,4 +43,3 @@ package() { # install custom GPL2 license install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE } -md5sums=('0b80d2cb92ace5ebba8095a4c2850275') diff --git a/extra/ntfs-3g_ntfsprogs/25-ntfs-config-write-policy.fdi b/extra/ntfs-3g_ntfsprogs/25-ntfs-config-write-policy.fdi deleted file mode 100644 index 54195d8b3..000000000 --- a/extra/ntfs-3g_ntfsprogs/25-ntfs-config-write-policy.fdi +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<deviceinfo version="0.2"> - <device> - <match key="volume.fstype" string="ntfs"> - <append key="volume.fstype.alternative" type="copy_property">volume.fstype</append> - <merge key="volume.mount.ntfs.valid_options" type="copy_property">volume.mount.valid_options</merge> - <merge key="volume.unmount.ntfs.valid_options" type="copy_property">volume.unmount.valid_options</merge> - <merge key="volume.fstype" type="string">ntfs-3g</merge> - <merge key="volume.mount.valid_options" type="strlist">ro</merge> - <append key="volume.mount.valid_options" type="strlist">atime</append> - <append key="volume.mount.valid_options" type="strlist">noatime</append> - <append key="volume.mount.valid_options" type="strlist">relatime</append> - <append key="volume.mount.valid_options" type="strlist">fake_rw</append> - <append key="volume.mount.valid_options" type="strlist">no_def_opts</append> - <append key="volume.mount.valid_options" type="strlist">default_permissions</append> - <append key="volume.mount.valid_options" type="strlist">umask=</append> - <append key="volume.mount.valid_options" type="strlist">fmask=</append> - <append key="volume.mount.valid_options" type="strlist">dmask=</append> - <append key="volume.mount.valid_options" type="strlist">uid=</append> - <append key="volume.mount.valid_options" type="strlist">gid=</append> - <append key="volume.mount.valid_options" type="strlist">show_sys_files</append> - <append key="volume.mount.valid_options" type="strlist">silent</append> - <append key="volume.mount.valid_options" type="strlist">force</append> - <append key="volume.mount.valid_options" type="strlist">remove_hiberfile</append> - <append key="volume.mount.valid_options" type="strlist">locale=</append> - <append key="volume.mount.valid_options" type="strlist">streams_interface=</append> - <append key="volume.mount.valid_options" type="strlist">debug</append> - <append key="volume.mount.valid_options" type="strlist">no_detatch</append> - <append key="volume.mount.valid_options" type="strlist">sync</append> - <append key="volume.mount.valid_options" type="strlist">dirsync</append> - <append key="volume.mount.valid_options" type="strlist">nodiratime</append> - <append key="volume.mount.valid_options" type="strlist">noexec</append> - <append key="volume.mount.valid_options" type="strlist">quiet</append> - <append key="volume.mount.valid_options" type="strlist">remount</append> - <append key="volume.mount.valid_options" type="strlist">exec</append> - <append key="volume.mount.valid_options" type="strlist">recover</append> - <append key="volume.mount.valid_options" type="strlist">norecover</append> - <merge key="volume.unmount.valid_options" type="strlist">lazy</merge> - <merge key="volume.policy.mount_filesystem" type="string">ntfs-3g</merge> - </match> - </device> -</deviceinfo> diff --git a/extra/ntrack/dead-loop-fix.patch b/extra/ntrack/dead-loop-fix.patch deleted file mode 100644 index 133bb4ace..000000000 --- a/extra/ntrack/dead-loop-fix.patch +++ /dev/null @@ -1,14 +0,0 @@ -=== modified file 'modules/ntrack-libnl.c' ---- modules/ntrack-libnl.c 2011-04-25 16:28:19 +0000 -+++ modules/ntrack-libnl.c 2011-04-25 17:25:24 +0000 -@@ -394,6 +394,9 @@ - if (rtnl_link_get_ifindex(link) > iindex) - break; - i = i->next; -+ -+ if (i == linklist) -+ break; - } - return result; - } - diff --git a/extra/octave/PKGBUILD b/extra/octave/PKGBUILD index 8f94e064b..3ed70cd8f 100644 --- a/extra/octave/PKGBUILD +++ b/extra/octave/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 141254 2011-10-27 14:28:28Z ronald $ +# $Id: PKGBUILD 150143 2012-02-13 14:12:46Z ronald $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor : shining <shiningxc.at.gmail.com> # Contributor : cyberdune <cyberdune@gmail.com> pkgname=octave -pkgver=3.4.3 +pkgver=3.6.0 pkgrel=1 pkgdesc="A high-level language, primarily intended for numerical computations." arch=('i686' 'x86_64' 'mips64el') @@ -19,7 +19,7 @@ optdepends=('texinfo: for help-support in octave' source=("ftp://ftp.gnu.org/gnu/octave/octave-$pkgver.tar.bz2") options=('!emptydirs') install=octave.install -sha1sums=('fe622c28a38f8730c59e46211bc7b18e7f51a679') +sha1sums=('62116e090d257a601e9d605f969dd87b7de1ffce') build() { cd ${srcdir}/${pkgname}-${pkgver} diff --git a/extra/openjdk6/glibc2_15.diff b/extra/openjdk6/glibc2_15.diff deleted file mode 100644 index 8fe1b077a..000000000 --- a/extra/openjdk6/glibc2_15.diff +++ /dev/null @@ -1,236 +0,0 @@ -# HG changeset patch -# User never -# Date 1319555835 25200 -# Node ID a6eef545f1a2ceca6aeadf688a965df600ffef28 -# Parent 2ec638646e86e455978c31a9d47fc0ec271ed926 -7103224: collision between __LEAF define in interfaceSupport.hpp and /usr/include/sys/cdefs.h with gcc -Reviewed-by: never -Contributed-by: Omair Majid <omajid@redhat.com> - -diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/opto/addnode.cpp ---- openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 04:07:20 2011 -0700 -+++ openjdk/hotspot/src/share/vm/opto/addnode.cpp Tue Oct 25 08:17:15 2011 -0700 -@@ -34,8 +34,6 @@ - - // Portions of code courtesy of Clifford Click - --#define MAXFLOAT ((float)3.40282346638528860e+38) -- - // Classic Add functionality. This covers all the usual 'add' behaviors for - // an algebraic ring. Add-integer, add-float, add-double, and binary-or are - // all inherited from this class. The various identity values are supplied -diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jniCheck.cpp ---- openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 04:07:20 2011 -0700 -+++ openjdk/hotspot/src/share/vm/prims/jniCheck.cpp Tue Oct 25 08:17:15 2011 -0700 -@@ -107,7 +107,7 @@ - if (env != xenv) { \ - NativeReportJNIFatalError(thr, warn_wrong_jnienv); \ - } \ -- __ENTRY(result_type, header, thr) -+ VM_ENTRY_BASE(result_type, header, thr) - - - #define UNCHECKED() (unchecked_jni_NativeInterface) -diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnter.xsl ---- openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 04:07:20 2011 -0700 -+++ openjdk/hotspot/src/share/vm/prims/jvmtiEnter.xsl Tue Oct 25 08:17:15 2011 -0700 -@@ -426,7 +426,7 @@ - <xsl:value-of select="$space"/> - <xsl:text>ThreadInVMfromNative __tiv(current_thread);</xsl:text> - <xsl:value-of select="$space"/> -- <xsl:text>__ENTRY(jvmtiError, </xsl:text> -+ <xsl:text>VM_ENTRY_BASE(jvmtiError, </xsl:text> - <xsl:apply-templates select="." mode="functionid"/> - <xsl:text> , current_thread)</xsl:text> - <xsl:value-of select="$space"/> -diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiEnv.cpp ---- openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 04:07:20 2011 -0700 -+++ openjdk/hotspot/src/share/vm/prims/jvmtiEnv.cpp Tue Oct 25 08:17:15 2011 -0700 -@@ -173,7 +173,7 @@ - // from native so as to resolve the jthread. - - ThreadInVMfromNative __tiv(current_thread); -- __ENTRY(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread) -+ VM_ENTRY_BASE(jvmtiError, JvmtiEnv::GetThreadLocalStorage , current_thread) - debug_only(VMNativeEntryWrapper __vew;) - - oop thread_oop = JNIHandles::resolve_external_guard(thread); -diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/prims/jvmtiExport.cpp ---- openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 04:07:20 2011 -0700 -+++ openjdk/hotspot/src/share/vm/prims/jvmtiExport.cpp Tue Oct 25 08:17:15 2011 -0700 -@@ -373,7 +373,7 @@ - JavaThread* current_thread = (JavaThread*) ThreadLocalStorage::thread(); - // transition code: native to VM - ThreadInVMfromNative __tiv(current_thread); -- __ENTRY(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread) -+ VM_ENTRY_BASE(jvmtiEnv*, JvmtiExport::get_jvmti_interface, current_thread) - debug_only(VMNativeEntryWrapper __vew;) - - JvmtiEnv *jvmti_env = JvmtiEnv::create_a_jvmti(version); -diff -r 2ec638646e86 -r a6eef545f1a2 src/share/vm/runtime/interfaceSupport.hpp ---- openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 04:07:20 2011 -0700 -+++ openjdk/hotspot/src/share/vm/runtime/interfaceSupport.hpp Tue Oct 25 08:17:15 2011 -0700 -@@ -72,9 +72,9 @@ - } - }; - --// InterfaceSupport provides functionality used by the __LEAF and __ENTRY --// macros. These macros are used to guard entry points into the VM and --// perform checks upon leave of the VM. -+// InterfaceSupport provides functionality used by the VM_LEAF_BASE and -+// VM_ENTRY_BASE macros. These macros are used to guard entry points into -+// the VM and perform checks upon leave of the VM. - - - class InterfaceSupport: AllStatic { -@@ -433,7 +433,7 @@ - - // LEAF routines do not lock, GC or throw exceptions - --#define __LEAF(result_type, header) \ -+#define VM_LEAF_BASE(result_type, header) \ - TRACE_CALL(result_type, header) \ - debug_only(NoHandleMark __hm;) \ - /* begin of body */ -@@ -441,7 +441,7 @@ - - // ENTRY routines may lock, GC and throw exceptions - --#define __ENTRY(result_type, header, thread) \ -+#define VM_ENTRY_BASE(result_type, header, thread) \ - TRACE_CALL(result_type, header) \ - HandleMarkCleaner __hm(thread); \ - Thread* THREAD = thread; \ -@@ -450,7 +450,7 @@ - - // QUICK_ENTRY routines behave like ENTRY but without a handle mark - --#define __QUICK_ENTRY(result_type, header, thread) \ -+#define VM_QUICK_ENTRY_BASE(result_type, header, thread) \ - TRACE_CALL(result_type, header) \ - debug_only(NoHandleMark __hm;) \ - Thread* THREAD = thread; \ -@@ -463,20 +463,20 @@ - #define IRT_ENTRY(result_type, header) \ - result_type header { \ - ThreadInVMfromJava __tiv(thread); \ -- __ENTRY(result_type, header, thread) \ -+ VM_ENTRY_BASE(result_type, header, thread) \ - debug_only(VMEntryWrapper __vew;) - - - #define IRT_LEAF(result_type, header) \ - result_type header { \ -- __LEAF(result_type, header) \ -+ VM_LEAF_BASE(result_type, header) \ - debug_only(No_Safepoint_Verifier __nspv(true);) - - - #define IRT_ENTRY_NO_ASYNC(result_type, header) \ - result_type header { \ - ThreadInVMfromJavaNoAsyncException __tiv(thread); \ -- __ENTRY(result_type, header, thread) \ -+ VM_ENTRY_BASE(result_type, header, thread) \ - debug_only(VMEntryWrapper __vew;) - - // Another special case for nmethod_entry_point so the nmethod that the -@@ -487,7 +487,7 @@ - result_type header { \ - nmethodLocker _nmlock(nm); \ - ThreadInVMfromJavaNoAsyncException __tiv(thread); \ -- __ENTRY(result_type, header, thread) -+ VM_ENTRY_BASE(result_type, header, thread) - - #define IRT_END } - -@@ -497,20 +497,20 @@ - #define JRT_ENTRY(result_type, header) \ - result_type header { \ - ThreadInVMfromJava __tiv(thread); \ -- __ENTRY(result_type, header, thread) \ -+ VM_ENTRY_BASE(result_type, header, thread) \ - debug_only(VMEntryWrapper __vew;) - - - #define JRT_LEAF(result_type, header) \ - result_type header { \ -- __LEAF(result_type, header) \ -+ VM_LEAF_BASE(result_type, header) \ - debug_only(JRT_Leaf_Verifier __jlv;) - - - #define JRT_ENTRY_NO_ASYNC(result_type, header) \ - result_type header { \ - ThreadInVMfromJavaNoAsyncException __tiv(thread); \ -- __ENTRY(result_type, header, thread) \ -+ VM_ENTRY_BASE(result_type, header, thread) \ - debug_only(VMEntryWrapper __vew;) - - // Same as JRT Entry but allows for return value after the safepoint -@@ -543,11 +543,11 @@ - assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \ - ThreadInVMfromNative __tiv(thread); \ - debug_only(VMNativeEntryWrapper __vew;) \ -- __ENTRY(result_type, header, thread) -+ VM_ENTRY_BASE(result_type, header, thread) - - - // Ensure that the VMNativeEntryWrapper constructor, which can cause --// a GC, is called outside the NoHandleMark (set via __QUICK_ENTRY). -+// a GC, is called outside the NoHandleMark (set via VM_QUICK_ENTRY_BASE). - #define JNI_QUICK_ENTRY(result_type, header) \ - extern "C" { \ - result_type JNICALL header { \ -@@ -555,7 +555,7 @@ - assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \ - ThreadInVMfromNative __tiv(thread); \ - debug_only(VMNativeEntryWrapper __vew;) \ -- __QUICK_ENTRY(result_type, header, thread) -+ VM_QUICK_ENTRY_BASE(result_type, header, thread) - - - #define JNI_LEAF(result_type, header) \ -@@ -563,7 +563,7 @@ - result_type JNICALL header { \ - JavaThread* thread=JavaThread::thread_from_jni_environment(env); \ - assert( !VerifyJNIEnvThread || (thread == Thread::current()), "JNIEnv is only valid in same thread"); \ -- __LEAF(result_type, header) -+ VM_LEAF_BASE(result_type, header) - - - // Close the routine and the extern "C" -@@ -579,7 +579,7 @@ - JavaThread* thread=JavaThread::thread_from_jni_environment(env); \ - ThreadInVMfromNative __tiv(thread); \ - debug_only(VMNativeEntryWrapper __vew;) \ -- __ENTRY(result_type, header, thread) -+ VM_ENTRY_BASE(result_type, header, thread) - - - #define JVM_ENTRY_NO_ENV(result_type, header) \ -@@ -588,7 +588,7 @@ - JavaThread* thread = (JavaThread*)ThreadLocalStorage::thread(); \ - ThreadInVMfromNative __tiv(thread); \ - debug_only(VMNativeEntryWrapper __vew;) \ -- __ENTRY(result_type, header, thread) -+ VM_ENTRY_BASE(result_type, header, thread) - - - #define JVM_QUICK_ENTRY(result_type, header) \ -@@ -597,14 +597,14 @@ - JavaThread* thread=JavaThread::thread_from_jni_environment(env); \ - ThreadInVMfromNative __tiv(thread); \ - debug_only(VMNativeEntryWrapper __vew;) \ -- __QUICK_ENTRY(result_type, header, thread) -+ VM_QUICK_ENTRY_BASE(result_type, header, thread) - - - #define JVM_LEAF(result_type, header) \ - extern "C" { \ - result_type JNICALL header { \ - VM_Exit::block_if_vm_exited(); \ -- __LEAF(result_type, header) -+ VM_LEAF_BASE(result_type, header) - - - #define JVM_END } }
\ No newline at end of file diff --git a/extra/pathological/ChangeLog b/extra/pathological/ChangeLog deleted file mode 100644 index 3cd114178..000000000 --- a/extra/pathological/ChangeLog +++ /dev/null @@ -1,14 +0,0 @@ -2010-08-24 Eric Belanger <eric@archlinux.org> - - * pathological 1.1.3-6 - * Rebuilt against python2 - -2009-07-10 Eric Belanger <eric@archlinux.org> - - * pathological 1.1.3-5 - * Removed binary from /usr/share (close FS#15302) - * Moved saved games to /var - * Fixed segmentation fault - * FHS man pages - * Added docs - * Added ChangeLog diff --git a/extra/php/PKGBUILD b/extra/php/PKGBUILD index b04762592..230fdc8e5 100644 --- a/extra/php/PKGBUILD +++ b/extra/php/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 148876 2012-02-05 11:53:48Z ibiru $ +# $Id: PKGBUILD 149966 2012-02-11 23:31:22Z allan $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgbase=php @@ -23,7 +23,7 @@ pkgname=('php' 'php-xsl') pkgver=5.3.10 _suhosinver=5.3.9-0.9.10 -pkgrel=2 +pkgrel=4 arch=('i686' 'x86_64' 'mips64el') license=('PHP') url='http://www.php.net' @@ -35,7 +35,7 @@ source=("http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.bz2" "http://download.suhosin.org/suhosin-patch-${_suhosinver}.patch.gz" "http://download.suhosin.org/suhosin-patch-${_suhosinver}.patch.gz.sig" 'php.ini.patch' 'apache.conf' 'rc.d.php-fpm' 'php-fpm.conf.in.patch' - 'logrotate.d.php-fpm') + 'logrotate.d.php-fpm' 'pcre_info.patch') md5sums=('816259e5ca7d0a7e943e56a3bb32b17f' 'c099b3d7eac95018ababd41ded7f3066' 'c15d18f846be1d69144a5d0056ee6506' @@ -43,7 +43,8 @@ md5sums=('816259e5ca7d0a7e943e56a3bb32b17f' 'dec2cbaad64e3abf4f0ec70e1de4e8e9' 'b01be5f816988fcee7e78225836e5e27' '740ec5fe2ecfd9d7febd4081c90ec65b' - '07c4e412909ac65a44ec90e7a2c4bade') + '07c4e412909ac65a44ec90e7a2c4bade' + '8d3806bbb19e390f9b32ccf21611d937') build() { phpconfig="--srcdir=../${pkgbase}-${pkgver} \ @@ -136,6 +137,8 @@ build() { cd ${srcdir}/${pkgbase}-${pkgver} + patch -p1 -i ${srcdir}/pcre_info.patch + # apply suhosin patch patch -p1 -i ${srcdir}/suhosin-patch-${_suhosinver}.patch diff --git a/extra/php/pcre_info.patch b/extra/php/pcre_info.patch new file mode 100644 index 000000000..e6d10df06 --- /dev/null +++ b/extra/php/pcre_info.patch @@ -0,0 +1,43 @@ +--- php-5.3.10/ext/pcre/php_pcre.c 2012-01-01 14:15:04.000000000 +0100 ++++ php-5.3.10/ext/pcre/php_pcre.c 2012-02-06 13:31:36.198935107 +0100 +@@ -241,6 +241,7 @@ + char *pattern; + int do_study = 0; + int poptions = 0; ++ int count = 0; + unsigned const char *tables = NULL; + #if HAVE_SETLOCALE + char *locale = setlocale(LC_CTYPE, NULL); +@@ -252,10 +252,10 @@ + back the compiled pattern, otherwise go on and compile it. */ + if (zend_hash_find(&PCRE_G(pcre_cache), regex, regex_len+1, (void **)&pce) == SUCCESS) { + /* +- * We use a quick pcre_info() check to see whether cache is corrupted, and if it ++ * We use a quick pcre_fullinfo() check to see whether cache is corrupted, and if it + * is, we flush it and compile the pattern from scratch. + */ +- if (pcre_info(pce->re, NULL, NULL) == PCRE_ERROR_BADMAGIC) { ++ if (pcre_fullinfo(pce->re, NULL, PCRE_INFO_CAPTURECOUNT, &count) == PCRE_ERROR_BADMAGIC) { + zend_hash_clean(&PCRE_G(pcre_cache)); + } else { + #if HAVE_SETLOCALE +--- php-5.3.10/ext/pcre/php_pcre.def 2009-01-11 14:59:00.000000000 +0100 ++++ php-5.3.10/ext/pcre/php_pcre.def 2012-02-06 13:31:47.775299315 +0100 +@@ -4,7 +4,6 @@ + php_pcre_exec + php_pcre_get_substring + php_pcre_get_substring_list +-php_pcre_info + php_pcre_maketables + php_pcre_study + php_pcre_version +--- php-5.3.10/main/php_compat.h 2012-01-01 14:15:04.000000000 +0100 ++++ php-5.3.10/main/php_compat.h 2012-02-06 13:26:59.272834580 +0100 +@@ -34,7 +34,6 @@ + #define pcre_exec php_pcre_exec + #define pcre_get_substring php_pcre_get_substring + #define pcre_get_substring_list php_pcre_get_substring_list +-#define pcre_info php_pcre_info + #define pcre_maketables php_pcre_maketables + #define pcre_study php_pcre_study + #define pcre_version php_pcre_version diff --git a/extra/postfix/PKGBUILD b/extra/postfix/PKGBUILD index a9b00ebe1..b8701ec9b 100644 --- a/extra/postfix/PKGBUILD +++ b/extra/postfix/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 148446 2012-02-01 03:47:09Z bisson $ +# $Id: PKGBUILD 149968 2012-02-11 23:31:26Z allan $ # Contributor: Jeff Brodnax <tullyarcher@bellsouth.net> # Contributor: Paul Mattal <paul@archlinux.org> # Maintainer: Gaetan Bisson <bisson@archlinux.org> pkgname=postfix pkgver=2.9.0 -pkgrel=1 +pkgrel=2 pkgdesc='Fast, easy to administer, secure mail server' url='http://www.postfix.org/' license=('custom') diff --git a/extra/pygobject/PKGBUILD b/extra/pygobject/PKGBUILD index 30d565001..cb09eccda 100644 --- a/extra/pygobject/PKGBUILD +++ b/extra/pygobject/PKGBUILD @@ -5,7 +5,7 @@ pkgbase=pygobject pkgname=(python-gobject python2-gobject pygobject-devel) pkgver=3.0.3 pkgrel=1 -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'mips64el') url="https://live.gnome.org/PyGObject" license=('LGPL') makedepends=('python' 'python2' 'python-cairo' 'python2-cairo' 'gobject-introspection') diff --git a/extra/pyqt/PKGBUILD b/extra/pyqt/PKGBUILD index e44555352..db25947aa 100644 --- a/extra/pyqt/PKGBUILD +++ b/extra/pyqt/PKGBUILD @@ -1,13 +1,12 @@ -# $Id: PKGBUILD 145605 2011-12-23 14:48:45Z andrea $ -# Maintainer: -# Contributor: Andrea Scarpino <andrea@archlinux.org> +# $Id: PKGBUILD 150176 2012-02-14 07:57:37Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> # Contributor: riai <riai@bigfoot.com> Ben <ben@benmazer.net> pkgbase=pyqt pkgname=('pyqt' 'python2-pyqt') -pkgver=4.9 -pkgrel=2 +pkgver=4.9.1 +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://riverbankcomputing.co.uk/software/pyqt/intro" license=('GPL') @@ -15,14 +14,15 @@ makedepends=('qt' 'python-sip' 'dbus-python' 'python2-sip' 'phonon' 'python-opengl' 'qt-assistant-compat' 'qtwebkit') source=("http://riverbankcomputing.co.uk/static/Downloads/PyQt4/PyQt-x11-gpl-${pkgver}.tar.gz" 'fix-qthelp-build.patch') -md5sums=('61619500d09d87b6c2a25bd3ea994504' - '356a453331a33c507b1baba4a9771764') +md5sums=('7f495dc49f71e3bfb64bf942e0d8bb3c' + '6acfe0a5a00779f946c29d5fac647ce1') build() { - cd "${srcdir}" - - patch -p0 -i "${srcdir}"/fix-qthelp-build.patch + # Build QtHelp (FS#27665) + cd "${srcdir}"/PyQt-x11-gpl-${pkgver} + patch -p1 -i "${srcdir}"/fix-qthelp-build.patch + cd "${srcdir}" cp -r PyQt-x11-gpl-${pkgver} Py2Qt-x11-gpl-${pkgver} cd "${srcdir}/PyQt-x11-gpl-${pkgver}" diff --git a/extra/pyqt/fix-qthelp-build.patch b/extra/pyqt/fix-qthelp-build.patch index cd565e646..6055f9f35 100644 --- a/extra/pyqt/fix-qthelp-build.patch +++ b/extra/pyqt/fix-qthelp-build.patch @@ -1,6 +1,6 @@ ---- PyQt-x11-gpl-4.9/configure.py~ 2011-12-23 14:53:07.981490550 +0100 -+++ PyQt-x11-gpl-4.9/configure.py 2011-12-23 14:52:38.384984221 +0100 -@@ -1264,7 +1264,7 @@ +--- PyQt-x11-gpl-4.9.1/configure.py~ 2012-02-13 20:16:11.418786488 +0000 ++++ PyQt-x11-gpl-4.9.1/configure.py 2012-02-13 20:16:50.561809527 +0000 +@@ -1261,7 +1261,7 @@ opengl = (mname == "QtOpenGL") qt = [mname] diff --git a/extra/qscintilla/PKGBUILD b/extra/qscintilla/PKGBUILD index 47e381721..9d424235f 100644 --- a/extra/qscintilla/PKGBUILD +++ b/extra/qscintilla/PKGBUILD @@ -1,22 +1,21 @@ -# $Id: PKGBUILD 145611 2011-12-23 20:54:15Z andrea $ +# $Id: PKGBUILD 150137 2012-02-13 11:40:55Z eric $ # Maintainer: # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org> pkgbase=qscintilla pkgname=('qscintilla' 'python-qscintilla' 'python2-qscintilla') -pkgver=2.6 -pkgrel=2 +pkgver=2.6.1 +pkgrel=1 license=('GPL') arch=('i686' 'x86_64' 'mips64el') url="http://www.riverbankcomputing.co.uk/software/qscintilla/intro" makedepends=('python2-pyqt' 'chrpath') source=("http://riverbankcomputing.com/static/Downloads/QScintilla2/QScintilla-gpl-${pkgver}.tar.gz" 'configure.py-objdir-support.diff') -md5sums=('0605a8006ea752ec2d1d7fc4791d1c75' +md5sums=('39a1d0567a20b416177eb1a8afe225a7' '8cf9c06252e2f11ab00e62848e322fd3') - build() { cd "${srcdir}/QScintilla-gpl-${pkgver}" patch -Np1 -i "${srcdir}/configure.py-objdir-support.diff" diff --git a/extra/qt3/mysql.patch b/extra/qt3/mysql.patch deleted file mode 100644 index 5f61edc67..000000000 --- a/extra/qt3/mysql.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- src/sql/drivers/mysql/qsql_mysql.cpp -+++ src/sql/drivers/mysql/qsql_mysql.cpp -@@ -37,7 +37,6 @@ - #include "qsql_mysql.h" - #include <private/qsqlextension_p.h> - --#include <qapplication.h> - #include <qdatetime.h> - #include <qvaluevector.h> - #include <qsqlrecord.h> -@@ -341,14 +340,6 @@ int QMYSQLResult::numRowsAffected() - } - - ///////////////////////////////////////////////////////// --static void qServerEnd() --{ --#ifndef Q_NO_MYSQL_EMBEDDED --# if MYSQL_VERSION_ID >= 40000 -- mysql_server_end(); --# endif // MYSQL_VERSION_ID --#endif // Q_NO_MYSQL_EMBEDDED --} - - static void qServerInit() - { -@@ -366,9 +357,7 @@ static void qServerInit() - qWarning( "QMYSQLDriver::qServerInit: unable to start server." ); - # endif - } -- qAddPostRoutine(qServerEnd); - init = TRUE; -- - # endif // MYSQL_VERSION_ID - #endif // Q_NO_MYSQL_EMBEDDED - } -@@ -411,6 +400,11 @@ QMYSQLDriver::~QMYSQLDriver() - QSqlOpenExtension *ext = qSqlOpenExtDict()->take( this ); - delete ext; - } -+#ifndef Q_NO_MYSQL_EMBEDDED -+# if MYSQL_VERSION_ID > 40000 -+ mysql_server_end(); -+# endif -+#endif - } - - bool QMYSQLDriver::hasFeature( DriverFeature f ) const diff --git a/extra/qt3/qt-font-default-subst.diff b/extra/qt3/qt-font-default-subst.diff deleted file mode 100644 index 3e286f74e..000000000 --- a/extra/qt3/qt-font-default-subst.diff +++ /dev/null @@ -1,77 +0,0 @@ ---- src/kernel/qfontdatabase_x11.cpp -+++ src/kernel/qfontdatabase_x11.cpp -@@ -1589,15 +1589,6 @@ QFontEngine *loadEngine( QFont::Script s - if (script == QFont::Latin) - // add Euro character - FcCharSetAddChar(cs, 0x20ac); -- if (script == QFont::Han_SimplifiedChinese) -- FcCharSetAddChar(cs, 0x3400); -- if (script == QFont::Han_TraditionalChinese){ -- FcCharSetAddChar(cs, 0x3435); -- FcCharSetAddChar(cs, 0xE000); -- FcCharSetAddChar(cs, 0xF6B1); -- } -- if (script == QFont::MiscellaneousSymbols) -- FcCharSetAddChar(cs, 0x2714); - FcPatternAddCharSet(pattern, FC_CHARSET, cs); - FcCharSetDestroy(cs); - } -@@ -1813,7 +1804,11 @@ static QFontEngine *loadFontConfigFont(c - FcPatternPrint(pattern); - #endif - -+ // XftFontMatch calls the right ConfigSubstitute variants, but as we use -+ // FcFontMatch/Sort here we have to do it manually. - FcConfigSubstitute(0, pattern, FcMatchPattern); -+ XftDefaultSubstitute(QPaintDevice::x11AppDisplay(), QPaintDevice::x11AppScreen(), pattern); -+ - // qDebug("1: pattern contains:"); - // FcPatternPrint(pattern); - -@@ -1847,10 +1842,6 @@ static QFontEngine *loadFontConfigFont(c - value.u.s = (const FcChar8 *)cs.data(); - FcPatternAddWeak(pattern, FC_FAMILY, value, FcTrue); - } --#ifdef FONT_MATCH_DEBUG -- printf("final pattern contains:\n"); -- FcPatternPrint(pattern); --#endif - } - - if (script != QFont::Unicode) { -@@ -1860,19 +1851,15 @@ static QFontEngine *loadFontConfigFont(c - if (script == QFont::Latin) - // add Euro character - FcCharSetAddChar(cs, 0x20ac); -- if (script == QFont::Han_SimplifiedChinese) -- FcCharSetAddChar(cs, 0x3400); -- if (script == QFont::Han_TraditionalChinese) { -- FcCharSetAddChar(cs, 0x3435); -- FcCharSetAddChar(cs, 0xE000); -- FcCharSetAddChar(cs, 0xF6B1); -- } -- if (script == QFont::MiscellaneousSymbols) -- FcCharSetAddChar(cs, 0x2714); - FcPatternAddCharSet(pattern, FC_CHARSET, cs); - FcCharSetDestroy(cs); - } - -+#ifdef FONT_MATCH_DEBUG -+ printf("final pattern contains:\n"); -+ FcPatternPrint(pattern); -+#endif -+ - QFontEngine *fe = 0; - - for( int jj = (FcGetVersion() >= 20392 ? 0 : 1); jj < 2; ++jj ) { ---- src/kernel/qfontdatabase.cpp -+++ src/kernel/qfontdatabase.cpp -@@ -554,7 +554,7 @@ static const unsigned short sample_chars - // GeometricSymbols, - { 0x2500, 0x0 }, - // MiscellaneousSymbols, -- { 0x2640, 0x0 }, -+ { 0x2640, 0x2714, 0x0 }, - // EnclosedAndSquare, - { 0x2460, 0x0 }, - // Braille, diff --git a/extra/qt3/qt3-png14.patch b/extra/qt3/qt3-png14.patch deleted file mode 100644 index e8a194529..000000000 --- a/extra/qt3/qt3-png14.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- src/kernel/qpngio.cpp.orig 2010-01-16 22:02:41.000000000 +0100 -+++ src/kernel/qpngio.cpp 2010-01-16 22:03:56.000000000 +0100 -@@ -159,7 +159,7 @@ - image.setColor( i, qRgba(c,c,c,0xff) ); - } - if ( png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS) ) { -- const int g = info_ptr->trans_values.gray; -+ const int g = info_ptr->trans_color.gray; - if (g < ncols) { - image.setAlphaBuffer(TRUE); - image.setColor(g, image.color(g) & RGB_MASK); -@@ -187,7 +187,7 @@ - info_ptr->palette[i].red, - info_ptr->palette[i].green, - info_ptr->palette[i].blue, -- info_ptr->trans[i] -+ info_ptr->trans_alpha[i] - ) - ); - i++; -@@ -321,9 +321,9 @@ - png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS) - if (image.depth()==32 && png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS)) { - QRgb trans = 0xFF000000 | qRgb( -- (info_ptr->trans_values.red << 8 >> bit_depth)&0xff, -- (info_ptr->trans_values.green << 8 >> bit_depth)&0xff, -- (info_ptr->trans_values.blue << 8 >> bit_depth)&0xff); -+ (info_ptr->trans_color.red << 8 >> bit_depth)&0xff, -+ (info_ptr->trans_color.green << 8 >> bit_depth)&0xff, -+ (info_ptr->trans_color.blue << 8 >> bit_depth)&0xff); - for (uint y=0; y<height; y++) { - for (uint x=0; x<info_ptr->width; x++) { - if (((uint**)jt)[y][x] == trans) { diff --git a/extra/qt3/utf8-bug-qt3.diff b/extra/qt3/utf8-bug-qt3.diff deleted file mode 100644 index 43e84a99f..000000000 --- a/extra/qt3/utf8-bug-qt3.diff +++ /dev/null @@ -1,101 +0,0 @@ ---- src/codecs/qutfcodec.cpp -+++ src/codecs/qutfcodec.cpp -@@ -154,6 +154,7 @@ - - class QUtf8Decoder : public QTextDecoder { - uint uc; -+ uint min_uc; - int need; - bool headerDone; - public: -@@ -167,8 +168,9 @@ - result.setLength( len ); // worst case - QChar *qch = (QChar *)result.unicode(); - uchar ch; -+ int error = -1; - for (int i=0; i<len; i++) { -- ch = *chars++; -+ ch = chars[i]; - if (need) { - if ( (ch&0xc0) == 0x80 ) { - uc = (uc << 6) | (ch & 0x3f); -@@ -182,6 +184,8 @@ - *qch++ = QChar(high); - *qch++ = QChar(low); - headerDone = TRUE; -+ } else if ((uc < min_uc) || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) { -+ *qch++ = QChar::replacement; - } else { - if (headerDone || QChar(uc) != QChar::byteOrderMark) - *qch++ = uc; -@@ -190,6 +194,7 @@ - } - } else { - // error -+ i = error; - *qch++ = QChar::replacement; - need = 0; - } -@@ -200,12 +205,21 @@ - } else if ((ch & 0xe0) == 0xc0) { - uc = ch & 0x1f; - need = 1; -+ error = i; -+ min_uc = 0x80; - } else if ((ch & 0xf0) == 0xe0) { - uc = ch & 0x0f; - need = 2; -+ error = i; -+ min_uc = 0x800; - } else if ((ch&0xf8) == 0xf0) { - uc = ch & 0x07; - need = 3; -+ error = i; -+ min_uc = 0x10000; -+ } else { -+ // error -+ *qch++ = QChar::replacement; - } - } - } ---- src/tools/qstring.cpp -+++ src/tools/qstring.cpp -@@ -5805,6 +5805,7 @@ - result.setLength( len ); // worst case - QChar *qch = (QChar *)result.unicode(); - uint uc = 0; -+ uint min_uc = 0; - int need = 0; - int error = -1; - uchar ch; -@@ -5822,6 +5823,12 @@ - unsigned short low = uc%0x400 + 0xdc00; - *qch++ = QChar(high); - *qch++ = QChar(low); -+ } else if (uc < min_uc || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) { -+ // overlong seqence, UTF16 surrogate or BOM -+ i = error; -+ qch = addOne(qch, result); -+ *qch++ = QChar(0xdbff); -+ *qch++ = QChar(0xde00+((uchar)utf8[i])); - } else { - *qch++ = uc; - } -@@ -5844,14 +5851,17 @@ - uc = ch & 0x1f; - need = 1; - error = i; -+ min_uc = 0x80; - } else if ((ch & 0xf0) == 0xe0) { - uc = ch & 0x0f; - need = 2; - error = i; -+ min_uc = 0x800; - } else if ((ch&0xf8) == 0xf0) { - uc = ch & 0x07; - need = 3; - error = i; -+ min_uc = 0x10000; - } else { - // Error - qch = addOne(qch, result); diff --git a/extra/rsync/PKGBUILD b/extra/rsync/PKGBUILD index 4805bafba..685558262 100644 --- a/extra/rsync/PKGBUILD +++ b/extra/rsync/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 138832 2011-09-28 19:15:53Z angvp $ +# $Id: PKGBUILD 149915 2012-02-11 20:09:00Z ibiru $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: Eric Belanger <eric@archlinux.org> # Contributor: Judd Vinet <jvinet@zeroflux.org> # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=rsync pkgver=3.0.9 -pkgrel=1 +pkgrel=2 pkgdesc="A file transfer program to keep remote files in sync" arch=('i686' 'x86_64' 'mips64el') url="http://samba.anu.edu.au/rsync/" @@ -13,7 +13,7 @@ license=('GPL3') depends=('acl') backup=('etc/rsyncd.conf' 'etc/xinetd.d/rsync') changelog=ChangeLog -source=(http://rsync.samba.org/ftp/rsync/${pkgname}-${pkgver}.tar.gz \ +source=(http://rsync.samba.org/ftp/rsync/$pkgname-$pkgver.tar.gz \ rsyncd.conf rsyncd rsync.xinetd) md5sums=('5ee72266fe2c1822333c407e1761b92b' '4395c0591638349b1a7aeaaa4da1f03a' @@ -25,17 +25,18 @@ sha1sums=('c64c8341984aea647506eb504496999fd968ddfc' 'fdb99785bc87ee13d77aa90dc1804f3f75dd7fc1') build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./prepare-source + cd "$srcdir/$pkgname-$pkgver" + ./prepare-source ./configure --prefix=/usr --with-included-popt \ - --enable-acl-support --enable-xattr-support - make + --enable-acl-support --enable-xattr-support + make } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -Dm755 ../rsyncd ${pkgdir}/etc/rc.d/rsyncd - install -Dm644 ../rsyncd.conf ${pkgdir}/etc/rsyncd.conf - install -Dm644 ../rsync.xinetd ${pkgdir}/etc/xinetd.d/rsync + cd "$srcdir/$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + install -Dm755 ../rsyncd "$pkgdir/etc/rc.d/rsyncd" + install -Dm644 ../rsyncd.conf "$pkgdir/etc/rsyncd.conf" + install -Dm644 ../rsync.xinetd "$pkgdir/etc/xinetd.d/rsync" + install -Dm755 support/rrsync "$pkgdir/usr/lib/rsync/rrsync" } diff --git a/extra/scim-pinyin/scim-pinyin-0.5.91-cannot-build-against-scim-1.4.7 b/extra/scim-pinyin/scim-pinyin-0.5.91-cannot-build-against-scim-1.4.7 deleted file mode 100644 index 30a556acf..000000000 --- a/extra/scim-pinyin/scim-pinyin-0.5.91-cannot-build-against-scim-1.4.7 +++ /dev/null @@ -1,3 +0,0 @@ -if /bin/sh ../libtool --silent --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I../src -I/opt/kde/include -I/opt/qt/include -I. -I/opt/kde/include/skim -I/usr/include/scim-1.0 -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -O2 -march=i686 -mtune=generic -O2 -pipe -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -MT smartpinyinui.lo -MD -MP -MF ".deps/smartpinyinui.Tpo" -c -o smartpinyinui.lo smartpinyinui.cpp; \ - then mv -f ".deps/smartpinyinui.Tpo" ".deps/smartpinyinui.Plo"; else rm -f ".deps/smartpinyinui.Tpo"; exit 1; fi -smartpinyinui.cpp:26:36: error: skimeditshortcutbutton.h: No such file or directory diff --git a/extra/scim-pinyin/scim-pinyin-0.5.91-gcc43.patch b/extra/scim-pinyin/scim-pinyin-0.5.91-gcc43.patch deleted file mode 100644 index 91a948d5d..000000000 --- a/extra/scim-pinyin/scim-pinyin-0.5.91-gcc43.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff -up scim-pinyin-0.5.91/src/scim_phrase.cpp.gcc43 scim-pinyin-0.5.91/src/scim_phrase.cpp ---- scim-pinyin-0.5.91/src/scim_phrase.cpp.gcc43 2008-02-25 16:27:05.000000000 +0800 -+++ scim-pinyin-0.5.91/src/scim_phrase.cpp 2008-02-25 16:26:41.000000000 +0800 -@@ -28,6 +28,7 @@ - #define SCIM_PHRASE_MAX_RELATION 1000 - - #include <scim.h> -+#include <cstring> - #include "scim_pinyin_private.h" - #include "scim_phrase.h" - -diff -up scim-pinyin-0.5.91/src/scim_special_table.cpp.gcc43 scim-pinyin-0.5.91/src/scim_special_table.cpp ---- scim-pinyin-0.5.91/src/scim_special_table.cpp.gcc43 2008-02-25 16:27:55.000000000 +0800 -+++ scim-pinyin-0.5.91/src/scim_special_table.cpp 2008-02-25 16:28:08.000000000 +0800 -@@ -22,6 +22,7 @@ - - #include <time.h> - #include <scim.h> -+#include <cstring> - #include "scim_pinyin_private.h" - #include "scim_special_table.h" - -diff -up scim-pinyin-0.5.91/src/scim_pinyin.cpp.gcc43 scim-pinyin-0.5.91/src/scim_pinyin.cpp ---- scim-pinyin-0.5.91/src/scim_pinyin.cpp.gcc43 2008-02-25 16:26:10.000000000 +0800 -+++ scim-pinyin-0.5.91/src/scim_pinyin.cpp 2008-02-25 16:26:26.000000000 +0800 -@@ -29,6 +29,7 @@ - #define Uses_SCIM_LOOKUP_TABLE - - #include <scim.h> -+#include <cstring> - #include "scim_pinyin.h" - - // Internal functions -diff -up scim-pinyin-0.5.91/src/scim_pinyin_phrase.cpp.gcc43 scim-pinyin-0.5.91/src/scim_pinyin_phrase.cpp ---- scim-pinyin-0.5.91/src/scim_pinyin_phrase.cpp.gcc43 2008-02-25 16:27:15.000000000 +0800 -+++ scim-pinyin-0.5.91/src/scim_pinyin_phrase.cpp 2008-02-25 16:27:28.000000000 +0800 -@@ -27,6 +27,7 @@ - #define Uses_SCIM_LOOKUP_TABLE - - #include <scim.h> -+#include <cstring> - #include "scim_pinyin_private.h" - #include "scim_phrase.h" - #include "scim_pinyin.h" diff --git a/extra/scim-uim/uim-1.5.5-header.diff b/extra/scim-uim/uim-1.5.5-header.diff deleted file mode 100644 index 0e6565827..000000000 --- a/extra/scim-uim/uim-1.5.5-header.diff +++ /dev/null @@ -1,13 +0,0 @@ ---- scim-uim-0.2.0.orig/src/scim_uim_imengine.cpp -+++ scim-uim-0.2.0/src/scim_uim_imengine.cpp -@@ -34,7 +34,8 @@ - - #include <scim.h> - #include "scim_uim_imengine.h" --#include <uim/uim-compat-scm.h> -+#include <uim/uim-scm.h> -+#include <uim/uim-util.h> - - #define scim_module_init uim_LTX_scim_module_init - #define scim_module_exit uim_LTX_scim_module_exit - diff --git a/extra/sdl_gfx/PKGBUILD b/extra/sdl_gfx/PKGBUILD index 5a72f859e..77343bc02 100644 --- a/extra/sdl_gfx/PKGBUILD +++ b/extra/sdl_gfx/PKGBUILD @@ -17,7 +17,7 @@ md5sums=('fcc3c4f2d1b4943409bf7e67dd65d03a') build() { cd ${srcdir}/SDL_gfx-${pkgver} - if [ "${CARCH}" == "x86_64" ]; then + if [ "${CARCH}" != "i686" ]; then ./configure --prefix=/usr --disable-mmx else ./configure --prefix=/usr diff --git a/extra/sip/PKGBUILD b/extra/sip/PKGBUILD index 9b061a986..0dd0920a3 100644 --- a/extra/sip/PKGBUILD +++ b/extra/sip/PKGBUILD @@ -1,19 +1,18 @@ -# $Id: PKGBUILD 145600 2011-12-23 10:58:52Z andrea $ -# Maintainer: -# Contributor: Andrea Scarpino <andrea@archlinux.org> +# $Id: PKGBUILD 150174 2012-02-14 07:57:34Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> # Contributor: riai <riai@bigfoot.com>, Ben <ben@benmazer.net> pkgbase=sip pkgname=('sip' 'python2-sip') -pkgver=4.13.1 +pkgver=4.13.2 pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://www.riverbankcomputing.com/software/sip/" license=('custom:"sip"') makedepends=('python' 'python2') source=("http://www.riverbankcomputing.com/static/Downloads/sip4/${pkgbase}-${pkgver}.tar.gz") -md5sums=('3f61fd39d5b0c8fa9e43b59af04de924') +md5sums=('5a12ea8e8a09b879ed2b3817e30fbc84') build() { cd "${srcdir}" diff --git a/extra/slang/PKGBUILD b/extra/slang/PKGBUILD index 12810e517..cdeeaf4d0 100644 --- a/extra/slang/PKGBUILD +++ b/extra/slang/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 120537 2011-04-25 07:37:13Z remy $ +# $Id: PKGBUILD 149970 2012-02-11 23:31:28Z allan $ # Maintainer: Eric Belanger <eric@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=slang pkgver=2.2.4 -pkgrel=1 +pkgrel=2 pkgdesc="S-Lang is a powerful interpreted language" arch=('i686' 'x86_64' 'mips64el') url="http://www.jedsoft.org/slang/" @@ -12,8 +12,9 @@ license=('GPL') depends=('glibc' 'pcre' 'zlib') backup=('etc/slsh.rc') options=('!makeflags') -source=(ftp://ftp.fu-berlin.de/pub/unix/misc/slang/v${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('7fcfd447e378f07dd0c0bae671fe6487') +source=(ftp://ftp.fu-berlin.de/pub/unix/misc/slang/v${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2{,.asc}) +md5sums=('7fcfd447e378f07dd0c0bae671fe6487' + '0e37091fe52b4ef609c3cee8eda0e101') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/slim/gcc44.patch b/extra/slim/gcc44.patch deleted file mode 100644 index 390ea8a86..000000000 --- a/extra/slim/gcc44.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -aur slim-1.3.2/switchuser.h slim-1.3.2.a/switchuser.h ---- slim-1.3.2/switchuser.h 2010-07-08 07:04:10.000000000 +0200 -+++ slim-1.3.2.a/switchuser.h 2010-08-21 15:10:34.306212393 +0200 -@@ -13,6 +13,7 @@ - #define _SWITCHUSER_H_ - - #include <stdlib.h> -+#include <stdio.h> /* remove */ - #include <unistd.h> - #include <string.h> - #include <pwd.h> diff --git a/extra/spassgen/PKGBUILD b/extra/spassgen/PKGBUILD deleted file mode 100644 index 653a51f57..000000000 --- a/extra/spassgen/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 77993 2010-04-19 08:07:51Z dgriffiths $ -# Maintainer : Tobias Powalowski <tpowa@archlinux.org> - -pkgname=spassgen -pkgver=1.5 -pkgrel=7 -pkgdesc="A small program that generates passwords" -arch=(i686 x86_64) -url="http://spassgen.sourceforge.net/" -license=('GPL2') -depends=('qt3') -options=('!makeflags') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('ed019dda56551fb860c74016baa91fa4') - -build() { - cd ${srcdir}/${pkgname} - . /etc/profile.d/qt3.sh - qmake -project spassgen.pro || return 1 - qmake || return 1 - make || return 1 - install -d ${pkgdir}/opt/kde/{bin,share/icons/crystalsvg} - install -m755 spassgen ${pkgdir}/opt/kde/bin/spassgen || return 1 - cd icons - cp -r * ${pkgdir}/opt/kde/share/icons/crystalsvg || return 1 - rm -r ${pkgdir}/opt/kde/share/icons/crystalsvg/16x16/.xvpics - } diff --git a/extra/ssmtp/PKGBUILD b/extra/ssmtp/PKGBUILD index c6268ad4e..88ddbe40e 100644 --- a/extra/ssmtp/PKGBUILD +++ b/extra/ssmtp/PKGBUILD @@ -3,7 +3,7 @@ pkgname=ssmtp pkgver=2.64 -pkgrel=2 +pkgrel=2.1 pkgdesc="Extremely simple MTA to get mail off the system to a mailhub" arch=('i686' 'x86_64' 'mips64el') license=('GPL') @@ -20,6 +20,7 @@ md5sums=('65b4e0df4934a6cd08c506cabcbe584f') build() { cd "${srcdir}/${pkgname}-${pkgver}" + sed -ri 's/-lssl/-lssl -lcrypto/' configure ./configure --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ diff --git a/extra/swig/PKGBUILD b/extra/swig/PKGBUILD index 24b3ea96f..660efcecc 100644 --- a/extra/swig/PKGBUILD +++ b/extra/swig/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 145878 2012-01-03 17:17:44Z stephane $ +# $Id: PKGBUILD 149972 2012-02-11 23:31:30Z allan $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=swig pkgver=2.0.4 -pkgrel=2 +pkgrel=3 pkgdesc="Generate scripting interfaces to C/C++ code" arch=('i686' 'x86_64' 'mips64el') url="http://www.swig.org/" diff --git a/community/systemd/PKGBUILD b/extra/systemd/PKGBUILD index 7ae0e15f8..7409bba10 100644 --- a/community/systemd/PKGBUILD +++ b/extra/systemd/PKGBUILD @@ -1,25 +1,22 @@ -# $Id: PKGBUILD 61447 2011-12-31 17:01:55Z dreisner $ +# $Id: PKGBUILD 150113 2012-02-12 16:04:12Z dreisner $ # Maintainer: Dave Reisner <dreisner@archlinux.org> pkgname=systemd -pkgver=37 -pkgrel=3 +pkgver=42 +pkgrel=1 pkgdesc="Session and Startup manager" -arch=('i686' 'x86_64' 'mips64el') +arch=('i686' 'x86_64') url="http://www.freedesktop.org/wiki/Software/systemd" license=('GPL2') -depends=('dbus-core' 'kbd' 'libcap' 'util-linux>=2.19' 'udev>=172') -makedepends=('gperf' 'cryptsetup' 'gtk2' 'intltool' 'libnotify' 'linux-api-headers') +depends=('acl' 'dbus-core' 'kbd' 'kmod' 'libcap' 'util-linux' 'udev' 'xz') +makedepends=('gperf' 'cryptsetup' 'docbook-xsl' 'intltool' 'libxslt' 'linux-api-headers') optdepends=('cryptsetup: required for encrypted block devices' 'dbus-python: systemd-analyze' - 'gtk2: systemadm' 'initscripts: legacy support for hostname and vconsole setup' 'initscripts-systemd: native boot and initialization scripts' - 'libnotify: systemadm' 'python2-cairo: systemd-analyze' 'systemd-arch-units: collection of native unit files for Arch daemon/init scripts') -groups=('systemd') -options=('!libtool' '!strip') +options=('!libtool') 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 @@ -27,32 +24,27 @@ backup=(etc/dbus-1/system.d/org.freedesktop.systemd1.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" - systemctl-completion.patch) -md5sums=('1435f23be79c8c38d1121c6b150510f3' - '752636def0db3c03f121f8b4f44a63cd' - '8acca6b7be4bfebe4174d89e4625b0ee') + etc/systemd/systemd-logind.conf + etc/systemd/systemd-journald.conf) +install="$pkgname.install" +source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" + "os-release") +md5sums=('7686b44e368d2523901d3e903ed4dcea' + '752636def0db3c03f121f8b4f44a63cd') build() { - cd "$srcdir/$pkgname-$pkgver" + cd "$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 - # fix bash completion - patch -Np1 < "$srcdir"/systemctl-completion.patch - - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --libexecdir=/usr/lib/systemd \ + ./configure --sysconfdir=/etc \ + --libexecdir=/usr/lib \ --libdir=/usr/lib \ --localstatedir=/var \ - --with-rootdir= \ + --with-rootprefix= \ --with-rootlibdir=/lib make @@ -63,19 +55,25 @@ build() { } package() { - cd "$srcdir/$pkgname-$pkgver" + cd "$pkgname-$pkgver" make DESTDIR="$pkgdir" install install -Dm644 "$srcdir/os-release" "$pkgdir/etc/os-release" printf "d /run/console 755 root root\n" > "$pkgdir/usr/lib/tmpfiles.d/console.conf" + # symlink to /bin/systemd for compat and sanity + ln -s ../lib/systemd/systemd "$pkgdir"/bin/systemd + # fix systemd-analyze for python2 sed -i '1s/python$/python2/' "$pkgdir/usr/bin/systemd-analyze" # rename man pages to avoid conflicts with sysvinit and initscripts cd "$pkgdir/usr/share/man" + # not building this with systemd + rm -f "man1/systemadm.1" + manpages=(man8/{telinit,halt,reboot,poweroff,runlevel,shutdown}.8 man5/{hostname,{vconsole,locale}.conf}.5) @@ -84,3 +82,5 @@ package() { mv "$manpage" "$section/systemd.$page" done } + +# vim: ft=sh syn=sh et diff --git a/community/systemd/os-release b/extra/systemd/os-release index 5e24a6031..5e24a6031 100644 --- a/community/systemd/os-release +++ b/extra/systemd/os-release diff --git a/community/systemd/systemd.install b/extra/systemd/systemd.install index 04b29688a..f31642e13 100644 --- a/community/systemd/systemd.install +++ b/extra/systemd/systemd.install @@ -1,8 +1,8 @@ #!/bin/sh checkgroups() { - if ! usr/bin/getent group lock >/dev/null; then - usr/sbin/groupadd -g 54 lock + if ! getent group lock >/dev/null; then + groupadd -g 54 lock fi } @@ -14,7 +14,7 @@ post_install() { checkgroups if [ ! -f etc/machine-id ]; then - bin/systemd-machine-id-setup + systemd-machine-id-setup fi echo "systemd has been installed to /bin/systemd. Please ensure you append" @@ -25,11 +25,11 @@ post_upgrade() { checkgroups if [ ! -f etc/machine-id ]; then - bin/systemd-machine-id-setup + systemd-machine-id-setup fi if sd_booted; then - bin/systemctl daemon-reexec >/dev/null + systemctl daemon-reexec >/dev/null fi newpkgver=${1%-*} @@ -39,14 +39,14 @@ post_upgrade() { 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 + systemctl try-restart systemd-logind.service fi fi } post_remove() { - if usr/bin/getent group lock >/dev/null; then - usr/sbin/groupdel lock + if getent group lock >/dev/null; then + groupdel lock fi } diff --git a/extra/thunar/PKGBUILD b/extra/thunar/PKGBUILD index 93b83d45a..cb0eab8ee 100644 --- a/extra/thunar/PKGBUILD +++ b/extra/thunar/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 143583 2011-11-26 17:25:12Z foutrelis $ +# $Id: PKGBUILD 149974 2012-02-11 23:31:34Z allan $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Andrew Simmons <andrew.simmons@gmail.com> pkgname=thunar pkgver=1.2.3 -pkgrel=3 +pkgrel=4 pkgdesc="Modern file manager for Xfce" arch=('i686' 'x86_64' 'mips64el') url="http://thunar.xfce.org" diff --git a/extra/transfig/ChangeLog b/extra/transfig/ChangeLog deleted file mode 100644 index c303c33c0..000000000 --- a/extra/transfig/ChangeLog +++ /dev/null @@ -1,36 +0,0 @@ -2010-05-26 Jan de Groot <jgc@archlinux.org> - * transfig 3.2.5c-3 - * Rebuilt for libpng 1.4.2, png_set_dither has been renamed - -2010-01-27 Eric Belanger <eric@archlinux.org> - - * transfig 3.2.5c-2 - * Rebuilt for libpng 1.4 and libjpeg 8 - -2010-01-11 Eric Belanger <eric@archlinux.org> - - * transfig 3.2.5c-1 - * Upstream update - * Removed force option - -2009-08-12 Eric Belanger <eric@archlinux.org> - - * transfig 3.2.5a-1 - * Upstream update - * Added force option - -2009-03-21 Eric Belanger <eric@archlinux.org> - - * transfig 3.2.5-2 - * Removed uneeded stderr message (close FS#13825) - -2008-12-14 Eric Belanger <eric@archlinux.org> - - * transfig 3.2.5-1 - * Upstream update - * Added arch tag - * Added license - * Added imake makedepends - * Added man pages - * Removed old patches - * Added ChangeLog diff --git a/extra/twisted/PKGBUILD b/extra/twisted/PKGBUILD index f42dd8ab0..22aec705e 100644 --- a/extra/twisted/PKGBUILD +++ b/extra/twisted/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 145135 2011-12-17 16:20:46Z ibiru $ +# $Id: PKGBUILD 150115 2012-02-12 18:51:16Z eric $ # Maintainer : Ionut Biru <ibiru@archlinux.org> # Contributor: Juergen Hoetzel <juergen@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> pkgname=twisted -pkgver=11.1.0 +pkgver=12.0.0 pkgrel=1 pkgdesc="Asynchronous networking framework written in Python." arch=('i686' 'x86_64' 'mips64el') @@ -12,10 +12,10 @@ url="http://twistedmatrix.com/" license=('MIT') depends=('python2' 'pycrypto' 'zope-interface') optdepends=('python2-pyopenssl' - 'python-soappy:for twisted.web.soap') + 'python-soappy: for twisted.web.soap') install=twisted.install source=(http://twistedmatrix.com/Releases/Twisted/${pkgver%.*}/Twisted-$pkgver.tar.bz2) -md5sums=('972f3497e6e19318c741bf2900ffe31c') +md5sums=('cf49a8676c21c50faf1b42b528049471') build() { cd "$srcdir/Twisted-$pkgver" diff --git a/extra/uim/PKGBUILD b/extra/uim/PKGBUILD index 5d26828ed..a15264513 100644 --- a/extra/uim/PKGBUILD +++ b/extra/uim/PKGBUILD @@ -1,14 +1,14 @@ -# $Id: PKGBUILD 146641 2012-01-15 08:38:24Z bisson $ +# $Id: PKGBUILD 150199 2012-02-14 13:39:03Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: damir <damir@archlinux.org> pkgname=uim -pkgver=1.7.2 +pkgver=1.7.3 pkgrel=1 pkgdesc='Multilingual input method library' -arch=('i686' 'x86_64' 'mips64el') url='http://code.google.com/p/uim/' license=('custom:BSD') +arch=('i686' 'x86_64' 'mips64el') depends=('libxft' 'libedit' 'anthy' 'm17n-lib') makedepends=('intltool' 'gettext' 'qt' 'gtk2' 'gtk3' 'gnome-panel') optdepends=('qt: immodule and helper applications' @@ -16,8 +16,8 @@ optdepends=('qt: immodule and helper applications' 'gtk3: immodules and helper applications' 'gnome-panel: gnome applet indicator') options=('!libtool') -source=("http://uim.googlecode.com/files/${pkgname}-${pkgver}.tar.bz2") -sha1sums=('4982178aca6ee1ae775fc2a9b4bbb7a66e97cbd4') +source=("http://uim.googlecode.com/files/${pkgname}-${pkgver}.tar.gz") +sha1sums=('1c7bb8c6c475dcbc4768bcabac540c42ccfd8185') install=install diff --git a/extra/varnish/PKGBUILD b/extra/varnish/PKGBUILD index a9292949c..4a411d6ca 100644 --- a/extra/varnish/PKGBUILD +++ b/extra/varnish/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 145793 2012-01-01 02:41:17Z dreisner $ +# $Id: PKGBUILD 149976 2012-02-11 23:31:36Z allan $ # Maintainer: Dave Reisner <dreisner@archlinux.org> # Contributor: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Douglas Soares de Andrade @@ -6,7 +6,7 @@ pkgname=varnish pkgver=3.0.2 -pkgrel=4 +pkgrel=5 pkgdesc="High-performance HTTP accelerator" arch=(mips64el) url="http://www.varnish-cache.org/" diff --git a/extra/vorbis-tools/ChangeLog b/extra/vorbis-tools/ChangeLog deleted file mode 100644 index 54e3adcb8..000000000 --- a/extra/vorbis-tools/ChangeLog +++ /dev/null @@ -1,26 +0,0 @@ -2010-04-10 Andrea Scarpino <andrea@archlinux.org> - - * vorbis-tools 1.4.0-2 - * libao 1.0 rebuild - -2010-04-10 Andrea Scarpino <andrea@archlinux.org> - - * vorbis-tools 1.4.0-1 - * Upstream release - -2009-10-04 Eric Belanger <eric@archlinux.org> - - * vorbis-tools 1.2.0-4 - * Added vcut tool (close FS#14749) - * Fixed license - -2008-03-15 Travis Willard <travis@archlinux.org> - - * vorbis-tools 1.2.0-3 - * Removed explicit /usr/man usage - -2008-03-15 Travis Willard <travis@archlinux.org> - - * vorbis-tools 1.2.0-1 - * New upstream release. - * Added ChangeLog diff --git a/extra/vte3/PKGBUILD b/extra/vte3/PKGBUILD index 8b2f70aed..1add7a362 100644 --- a/extra/vte3/PKGBUILD +++ b/extra/vte3/PKGBUILD @@ -6,7 +6,7 @@ pkgname=(vte3 vte-common) pkgver=0.30.1 pkgrel=2 pkgdesc="Virtual Terminal Emulator widget for use with GTK3" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64' 'mips64el') license=('LGPL') options=('!libtool' '!emptydirs') makedepends=('intltool' 'gobject-introspection' 'gtk3') diff --git a/extra/wesnoth/PKGBUILD b/extra/wesnoth/PKGBUILD deleted file mode 100644 index b8fc20c81..000000000 --- a/extra/wesnoth/PKGBUILD +++ /dev/null @@ -1,47 +0,0 @@ -# $Id: PKGBUILD 148958 2012-02-05 11:57:49Z ibiru $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Tobias Powalowski <tpowa@archlinux.org> -# Contributor: Jacobo Arvelo <unix4all@ya.com> -# Contributor: Douglas Soares de Andrade <douglas@archlinux.org> - -pkgname=wesnoth -pkgver=1.8.6 -pkgrel=4 -pkgdesc="A turn-based strategy game on a fantasy world" -arch=('i686' 'x86_64' 'mips64el') -license=('GPL') -url="http://www.wesnoth.org/" -depends=('sdl_ttf' 'sdl_net' 'sdl_mixer' 'sdl_image' 'fribidi' 'boost-libs' 'pango' 'lua' "wesnoth-data=${pkgver}" 'dbus-core' 'python2') -makedepends=('boost') -install=wesnoth.install -options=(!emptydirs) -source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2 - wesnoth-libpng-1.4.0.patch - wesnoth-1.8.6-boost-foreach.patch - wesnoth.tmpfiles.conf) -md5sums=('f1c3179869b01b61e253e74aeb241034' - '3b0d2edcb45e8ecc8c790f92bdcb0087' - 'dc414ab7e1334941548e9db6db9c2460' - 'b8122f5054e3895c9c054e87460869dc') - -build() { - cd "$srcdir/$pkgname-$pkgver" - patch -Np1 -i "$srcdir/wesnoth-libpng-1.4.0.patch" - patch -Np1 -i "$srcdir/wesnoth-1.8.6-boost-foreach.patch" - ./autogen.sh - ./configure --prefix=/usr --localstatedir=/var --enable-tools \ - --enable-editor --enable-server --with-fifodir=/run/wesnothd - make -} - -package() { - cd "$srcdir/$pkgname-$pkgver" - make DESTDIR="$pkgdir" install-exec - install -dm755 "$pkgdir/usr/lib/tmpfiles.d/" - install -m644 "$srcdir/wesnoth.tmpfiles.conf" "$pkgdir/usr/lib/tmpfiles.d/wesnoth.conf" - - sed -i "s|#!/usr/bin/env python|#!/usr/bin/env python2|" "$pkgdir/usr/bin/wesnoth_addon_manager" - sed -i "s|#!/usr/bin/env python|#!/usr/bin/env python2|" "$pkgdir/usr/bin/wmlindent" - sed -i "s|#!/usr/bin/env python|#!/usr/bin/env python2|" "$pkgdir/usr/bin/wmlscope" - sed -i "s|#!/usr/bin/env python|#!/usr/bin/env python2|" "$pkgdir/usr/bin/wmllint" -} diff --git a/extra/wesnoth/wesnoth-1.8.6-boost-foreach.patch b/extra/wesnoth/wesnoth-1.8.6-boost-foreach.patch deleted file mode 100644 index 5aee3118c..000000000 --- a/extra/wesnoth/wesnoth-1.8.6-boost-foreach.patch +++ /dev/null @@ -1,70 +0,0 @@ ---- wesnoth-1.8.6/src/gui/widgets/tree_view_node.cpp~ 2011-07-21 23:05:56.594879049 +0200 -+++ wesnoth-1.8.6/src/gui/widgets/tree_view_node.cpp 2011-07-21 23:28:07.540358742 +0200 -@@ -238,6 +238,17 @@ void ttree_view_node::clear() - - struct ttree_view_node_implementation - { -+ template<class W, class It> -+ static W* find_at_aux(It begin, It end, -+ const tpoint& coordinate, const bool must_be_active) { -+ for (It it = begin; it != end; ++it) { -+ if(W* widget = it->find_at(coordinate, must_be_active)) { -+ return widget; -+ } -+ } -+ return NULL; -+ } -+ - template<class W> - static W* find_at( - typename tconst_duplicator<W, ttree_view_node>::type& -@@ -255,13 +266,9 @@ struct ttree_view_node_implementation - } - - typedef typename tconst_duplicator<W, ttree_view_node>::type thack; -- foreach(thack& node, tree_view_node.children_) { -- if(W* widget = node.find_at(coordinate, must_be_active)) { -- return widget; -- } -- } -- -- return NULL; -+ return find_at_aux<W>(tree_view_node.children_.begin(), -+ tree_view_node.children_.end(), -+ coordinate, must_be_active); - } - }; - -@@ -313,7 +320,9 @@ tpoint ttree_view_node::get_current_size - return size; - } - -- foreach(const ttree_view_node& node, children_) { -+ for (boost::ptr_vector<ttree_view_node>::const_iterator it -+ = children_.begin (); it != children_.end (); ++it) { -+ const ttree_view_node& node = *it; - - if(node.grid_.get_visible() == twidget::INVISIBLE) { - continue; -@@ -344,7 +353,9 @@ tpoint ttree_view_node::get_unfolded_siz - size.x += (get_indention_level() - 1) * tree_view().indention_step_size_; - } - -- foreach(const ttree_view_node& node, children_) { -+ for (boost::ptr_vector<ttree_view_node>::const_iterator it -+ = children_.begin (); it != children_.end (); ++it) { -+ const ttree_view_node& node = *it; - - if(node.grid_.get_visible() == twidget::INVISIBLE) { - continue; -@@ -378,7 +389,9 @@ tpoint ttree_view_node::calculate_best_s - - DBG_GUI_L << LOG_HEADER << " own grid best size " << best_size << ".\n"; - -- foreach(const ttree_view_node& node, children_) { -+ for (boost::ptr_vector<ttree_view_node>::const_iterator it -+ = children_.begin (); it != children_.end (); ++it) { -+ const ttree_view_node& node = *it; - - if(node.grid_.get_visible() == twidget::INVISIBLE) { - continue; diff --git a/extra/wesnoth/wesnoth-libpng-1.4.0.patch b/extra/wesnoth/wesnoth-libpng-1.4.0.patch deleted file mode 100644 index 338f467af..000000000 --- a/extra/wesnoth/wesnoth-libpng-1.4.0.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Nur wesnoth-1.8.orig/src/tools/exploder_utils.cpp wesnoth-1.8/src/tools/exploder_utils.cpp ---- wesnoth-1.8.orig/src/tools/exploder_utils.cpp 2010-01-01 15:16:49.000000000 +0200 -+++ wesnoth-1.8/src/tools/exploder_utils.cpp 2010-04-08 17:38:03.066201123 +0300 -@@ -174,8 +174,8 @@ - //TODO: review whether providing NULL error handlers is something - //sensible - png_struct* png_ptr = png_create_write_struct -- (PNG_LIBPNG_VER_STRING, reinterpret_cast<png_voidp>(png_voidp_NULL), -- png_error_ptr_NULL, png_error_ptr_NULL); -+ (PNG_LIBPNG_VER_STRING, reinterpret_cast<png_voidp>(NULL), -+ NULL, NULL); - if(!png_ptr) - throw exploder_failure("Unable to initialize the png write structure"); - ---- wesnoth-1.8.orig/src/tools/exploder_utils.cpp.libpng 2011-11-06 14:44:26.618711420 -0600 -+++ wesnoth-1.8/src/tools/exploder_utils.cpp 2011-11-06 14:57:12.150006511 -0600 -@@ -15,6 +15,7 @@ - #include "exploder_utils.hpp" - #include "game_config.hpp" - #include "serialization/string_utils.hpp" -+#include <zlib.h> - #include <png.h> - - exploder_point::exploder_point(const std::string &s) diff --git a/extra/wesnoth/wesnoth.install b/extra/wesnoth/wesnoth.install deleted file mode 100644 index 4f1e419ae..000000000 --- a/extra/wesnoth/wesnoth.install +++ /dev/null @@ -1,9 +0,0 @@ -# arg 1: the new package version -post_install() { -cat << EOF -Note: -==> If you experience sound problems try setting your SDL_AUDIODRIVER environment variable to "dma" -==> eg. export SDL_AUDIODRIVER="dma" ; wesnoth -==> If "dma" doesn't work,other options are: dsp,alsa,artsc,esd,nas try to find the right output. -EOF -} diff --git a/extra/wesnoth/wesnoth.tmpfiles.conf b/extra/wesnoth/wesnoth.tmpfiles.conf deleted file mode 100644 index 3ec0f6013..000000000 --- a/extra/wesnoth/wesnoth.tmpfiles.conf +++ /dev/null @@ -1 +0,0 @@ -D /run/wesnothd 0700 root root - diff --git a/extra/windowmaker/PKGBUILD b/extra/windowmaker/PKGBUILD index 06f438f92..31389560e 100644 --- a/extra/windowmaker/PKGBUILD +++ b/extra/windowmaker/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 149306 2012-02-06 18:35:19Z daniel $ +# $Id: PKGBUILD 150208 2012-02-14 20:50:29Z daniel $ # Maintainer: Daniel Isenmann <daniel@archlinux.org> # Contributor: Judd Vinet <jvinet@zeroflux.org> pkgname=windowmaker -pkgver=0.95.1 +pkgver=0.95.2 pkgrel=1 pkgdesc="An X11 window manager with a NEXTSTEP look and feel" arch=(i686 x86_64 'mips64el') @@ -10,14 +10,13 @@ url="http://www.windowmaker.org/" license=('GPL' 'custom') depends=('libxinerama' 'libxrandr' 'libxmu' 'libpng' 'libxpm' 'libxft' 'libtiff' 'giflib') options=('!libtool') -source=(ftp://ftp.archlinux.org/other/windowmaker/windowmaker-$pkgver.tar.gz wmaker.desktop) -md5sums=('1b0d0aa2ac53a7a98ef80a35e507b082' +source=(http://windowmaker.org/pub/source/release/WindowMaker-$pkgver.tar.gz wmaker.desktop) +md5sums=('ae62bad9c4dee504066e0f172b565ff0' '2fba97bebfd691836b92b8f0db79ff13') build() { - cd $srcdir/windowmaker-$pkgver + cd $srcdir/WindowMaker-$pkgver [ -z "$LINGUAS" ] && export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`" - ./autogen.sh ./configure --prefix=/usr --sysconfdir=/etc --enable-xinerama \ --with-nlsdir=/usr/share/locale --with-gnustepdir=/usr/lib/GNUstep \ --enable-usermenu --enable-modelock --enable-xrandr @@ -25,7 +24,7 @@ build() { } package() { - cd $srcdir/windowmaker-$pkgver + cd $srcdir/WindowMaker-$pkgver make DESTDIR=$pkgdir install install -D -m644 COPYING.WTFPL $pkgdir/usr/share/licenses/$pkgname/COPYING.WTFPL diff --git a/extra/wpa_supplicant_gui/PKGBUILD b/extra/wpa_supplicant_gui/PKGBUILD index 2b38788de..510cb533c 100644 --- a/extra/wpa_supplicant_gui/PKGBUILD +++ b/extra/wpa_supplicant_gui/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 90602 2010-09-13 18:07:52Z thomas $ +# $Id: PKGBUILD 149922 2012-02-11 22:38:54Z thomas $ # Maintainer: Thomas Bächler <thomas@archlinux.org> pkgname=wpa_supplicant_gui pkgver=0.7.3 -pkgrel=1 +pkgrel=2 pkgdesc="A Qt frontend to wpa_supplicant" url="http://hostap.epitest.fi/wpa_supplicant" arch=('i686' 'x86_64' 'mips64el') diff --git a/extra/xaw3d/LICENSE b/extra/xaw3d/LICENSE deleted file mode 100644 index 395de2d9b..000000000 --- a/extra/xaw3d/LICENSE +++ /dev/null @@ -1,22 +0,0 @@ -Copyright (c) 1989 X Consortium - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of the X Consortium shall not be -used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from the X Consortium. diff --git a/extra/xaw3d/Xaw3d-1.5-box.c.patch b/extra/xaw3d/Xaw3d-1.5-box.c.patch deleted file mode 100644 index 252238af8..000000000 --- a/extra/xaw3d/Xaw3d-1.5-box.c.patch +++ /dev/null @@ -1,27 +0,0 @@ -#! /bin/sh /usr/share/dpatch/dpatch-run -## box.c.dpatch by Francesco Paolo Lovergine <frankie@debian.org> -## -## All lines beginning with `## DP:' are a description of the patch. -## DP: No description. - -@DPATCH@ -diff -urNad xaw3d-1.5+E~/lib/Xaw3d/Box.c xaw3d-1.5+E/lib/Xaw3d/Box.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/Box.c 1996-10-15 16:41:18.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/Box.c 2007-04-24 15:28:39.000000000 +0200 -@@ -353,8 +353,16 @@ - else { - width = preferred_width; - do { /* find some width big enough to stay within this height */ -+#if 0 - width *= 2; - if (width > constraint->width) width = constraint->width; -+#endif -+ if (width > constraint->width/2) { /* avoid short int overflow */ -+ width = constraint->width; -+ } -+ else { -+ width *= 2; -+ } - DoLayout(w, width, 0, &preferred_width, &preferred_height, FALSE); - } while (preferred_height > constraint->height && - width < constraint->width); diff --git a/extra/xaw3d/Xaw3d-1.5-debian-fixes.patch b/extra/xaw3d/Xaw3d-1.5-debian-fixes.patch deleted file mode 100644 index 5593f249b..000000000 --- a/extra/xaw3d/Xaw3d-1.5-debian-fixes.patch +++ /dev/null @@ -1,647 +0,0 @@ -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrc.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrc.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrc.c.debian 2000-11-27 14:19:36.000000000 +0100 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrc.c 2008-10-06 11:42:13.000000000 +0200 -@@ -51,11 +51,17 @@ in this Software without prior written a - #include <X11/Xaw3d/MultiSrcP.h> - #endif - -+#include <sys/types.h> -+#include <sys/stat.h> -+#include <fcntl.h> - - #if (defined(ASCII_STRING) || defined(ASCII_DISK)) - # include <X11/Xaw3d/AsciiText.h> /* for Widget Classes. */ - #endif - -+#include <sys/types.h> -+#include <sys/stat.h> -+#include <fcntl.h> - - /**************************************************************** - * -@@ -1007,7 +1013,9 @@ InitStringOrFile(src, newString) - AsciiSrcObject src; - Boolean newString; - { -- char * open_mode = NULL; -+ mode_t open_mode = 0; -+ const char *fdopen_mode = NULL; -+ int fd; - FILE * file; - char fileName[TMPSIZ]; - -@@ -1049,7 +1057,8 @@ Boolean newString; - XtErrorMsg("NoFile", "asciiSourceCreate", "XawError", - "Creating a read only disk widget and no file specified.", - NULL, 0); -- open_mode = "r"; -+ open_mode = O_RDONLY; -+ fdopen_mode = "r"; - break; - case XawtextAppend: - case XawtextEdit: -@@ -1057,9 +1066,17 @@ Boolean newString; - src->ascii_src.string = fileName; - (void) tmpnam(src->ascii_src.string); - src->ascii_src.is_tempfile = TRUE; -- open_mode = "w"; -- } else -- open_mode = "r+"; -+ open_mode = O_WRONLY | O_CREAT | O_EXCL; -+ fdopen_mode = "w"; -+ } else { -+/* O_NOFOLLOW is a BSD & Linux extension */ -+#ifdef O_NOFOLLOW -+ open_mode = O_RDWR | O_NOFOLLOW; -+#else -+ open_mode = O_RDWR; /* unsafe; subject to race conditions */ -+#endif -+ fdopen_mode = "r+"; -+ } - break; - default: - XtErrorMsg("badMode", "asciiSourceCreate", "XawError", -@@ -1078,11 +1095,14 @@ Boolean newString; - } - - if (!src->ascii_src.is_tempfile) { -- if ((file = fopen(src->ascii_src.string, open_mode)) != 0) { -- (void) fseek(file, (Off_t)0, 2); -- src->ascii_src.length = (XawTextPosition) ftell(file); -- return file; -- } else { -+ if ((fd = open(src->ascii_src.string, open_mode, 0666))) { -+ if ((file = fdopen(fd, fdopen_mode)) != NULL) { -+ (void)fseek(file, 0, SEEK_END); -+ src->ascii_src.length = (XawTextPosition)ftell(file); -+ return (file); -+ } -+ } -+ { - String params[2]; - Cardinal num_params = 2; - -@@ -1094,7 +1114,7 @@ Boolean newString; - } - } - src->ascii_src.length = 0; -- return((FILE *)NULL); -+ return(NULL); - } - - static void -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrcP.h.debian Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrcP.h ---- Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrcP.h.debian 1996-10-15 16:41:18.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/AsciiSrcP.h 2008-10-06 11:42:13.000000000 +0200 -@@ -85,7 +85,11 @@ SOFTWARE. - #ifdef L_tmpnam - #define TMPSIZ L_tmpnam - #else --#define TMPSIZ 32 /* bytes to allocate for tmpnam */ -+#ifdef PATH_MAX -+#define TMPSIZ PATH_MAX -+#else -+#define TMPSIZ 1024 /* bytes to allocate for tmpnam */ -+#endif - #endif - - #define MAGIC_VALUE ((XawTextPosition) -1) /* Magic value. */ -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/MenuButton.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/MenuButton.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/MenuButton.c.debian 1996-10-15 16:41:20.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/MenuButton.c 2008-10-06 11:42:13.000000000 +0200 -@@ -53,6 +53,8 @@ in this Software without prior written a - #include <X11/Xaw3d/XawInit.h> - #include <X11/Xaw3d/MenuButtoP.h> - -+#include "XawAlloc.h" -+ - static void ClassInitialize(); - static void PopupMenu(); - -@@ -179,9 +181,16 @@ Cardinal * num_params; - - if (menu == NULL) { - char error_buf[BUFSIZ]; -- (void) sprintf(error_buf, "MenuButton: %s %s.", -- "Could not find menu widget named", mbw->menu_button.menu_name); -- XtAppWarning(XtWidgetToApplicationContext(w), error_buf); -+ char *err1 = "MenuButton: Could not find menu widget named "; -+ char *perr; -+ int len; -+ -+ len = strlen(err1) + strlen(mbw->menu_button.menu_name) + 1 + 1; -+ perr = XtStackAlloc(len, error_buf); -+ if (perr == NULL) return; -+ sprintf(perr, "%s%s.", err1, mbw->menu_button.menu_name); -+ XtAppWarning(XtWidgetToApplicationContext(w), perr); -+ XtStackFree(perr, error_buf); - return; - } - if (!XtIsRealized(menu)) -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrc.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrc.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrc.c.debian 2008-10-06 11:42:13.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrc.c 2008-10-06 11:42:13.000000000 +0200 -@@ -74,6 +74,9 @@ in this Software without prior written a - #include <stdio.h> - #include <ctype.h> - #include <errno.h> -+#include <sys/types.h> -+#include <sys/stat.h> -+#include <fcntl.h> - - /**************************************************************** - * -@@ -1077,7 +1080,9 @@ InitStringOrFile(src, newString) - MultiSrcObject src; - Boolean newString; - { -- char * open_mode = NULL; -+ mode_t open_mode = 0; -+ const char *fdopen_mode = NULL; -+ int fd; - FILE * file; - char fileName[TMPSIZ]; - Display *d = XtDisplayOfObject((Widget)src); -@@ -1128,7 +1133,8 @@ InitStringOrFile(src, newString) - XtErrorMsg("NoFile", "multiSourceCreate", "XawError", - "Creating a read only disk widget and no file specified.", - NULL, 0); -- open_mode = "r"; -+ open_mode = O_RDONLY; -+ fdopen_mode = "r"; - break; - case XawtextAppend: - case XawtextEdit: -@@ -1141,9 +1147,17 @@ InitStringOrFile(src, newString) - - (void) tmpnam(src->multi_src.string); - src->multi_src.is_tempfile = TRUE; -- open_mode = "w"; -- } else -- open_mode = "r+"; -+ open_mode = O_WRONLY | O_CREAT | O_EXCL; -+ fdopen_mode = "w"; -+ } else { -+/* O_NOFOLLOW is a BSD & Linux extension */ -+#ifdef O_NOFOLLOW -+ open_mode = O_RDWR | O_NOFOLLOW; -+#else -+ open_mode = O_RDWR; /* unsafe; subject to race conditions */ -+#endif -+ fdopen_mode = "r+"; -+ } - break; - default: - XtErrorMsg("badMode", "multiSourceCreate", "XawError", -@@ -1162,11 +1176,14 @@ InitStringOrFile(src, newString) - } - - if (!src->multi_src.is_tempfile) { -- if ((file = fopen(src->multi_src.string, open_mode)) != 0) { -- (void) fseek(file, (Off_t)0, 2); -- src->multi_src.length = ftell (file); -- return file; -- } else { -+ if ((fd = open(src->multi_src.string, open_mode, 0666))) { -+ if ((file = fdopen(fd, fdopen_mode)) != NULL) { -+ (void)fseek(file, 0, SEEK_END); -+ src->multi_src.length = (XawTextPosition)ftell(file); -+ return (file); -+ } -+ } -+ { - String params[2]; - Cardinal num_params = 2; - -@@ -1178,7 +1195,7 @@ InitStringOrFile(src, newString) - } - } - src->multi_src.length = 0; -- return((FILE *)NULL); -+ return(NULL); - #undef StrLen - } - -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrcP.h.debian Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrcP.h ---- Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrcP.h.debian 1996-10-15 16:41:21.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrcP.h 2008-10-06 11:42:13.000000000 +0200 -@@ -113,7 +113,11 @@ SOFTWARE. - #ifdef L_tmpnam - #define TMPSIZ L_tmpnam - #else --#define TMPSIZ 32 /* bytes to allocate for tmpnam */ -+#ifdef PATH_MAX -+#define TMPSIZ PATH_MAX -+#else -+#define TMPSIZ 1024 /* bytes to allocate for tmpnam */ -+#endif - #endif - - #define MAGIC_VALUE ((XawTextPosition) -1) /* Magic value. */ -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/Simple.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/Simple.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/Simple.c.debian 2000-11-27 14:19:36.000000000 +0100 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/Simple.c 2008-10-06 11:42:13.000000000 +0200 -@@ -56,6 +56,8 @@ SOFTWARE. - #include <X11/Xaw3d/SimpleP.h> - #include <X11/Xmu/Drawing.h> - -+#include "XawAlloc.h" -+ - #define offset(field) XtOffsetOf(SimpleRec, simple.field) - - static XtResource resources[] = { -@@ -148,11 +150,17 @@ static void ClassPartInitialize(class) - - if (c->simple_class.change_sensitive == NULL) { - char buf[BUFSIZ]; -- -- (void) sprintf(buf, -- "%s Widget: The Simple Widget class method 'change_sensitive' is undefined.\nA function must be defined or inherited.", -- c->core_class.class_name); -- XtWarning(buf); -+ char *pbuf; -+ char *msg1 = " Widget: The Simple Widget class method 'change_sensitive' is undefined.\nA function must be defined or inherited."; -+ int len; -+ -+ len = strlen(msg1) + strlen(c->core_class.class_name) + 1; -+ pbuf = XtStackAlloc(len, buf); -+ if (pbuf != NULL) { -+ sprintf(pbuf, "%s%s", c->core_class.class_name, msg1); -+ XtWarning(pbuf); -+ XtStackFree(pbuf, buf); -+ } - c->simple_class.change_sensitive = ChangeSensitive; - } - -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/SimpleMenu.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/SimpleMenu.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/SimpleMenu.c.debian 2003-02-17 07:45:07.000000000 +0100 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/SimpleMenu.c 2008-10-06 11:42:13.000000000 +0200 -@@ -51,6 +51,8 @@ in this Software without prior written a - #include <X11/Xmu/Initer.h> - #include <X11/Xmu/CharSet.h> - -+#include "XawAlloc.h" -+ - #define streq(a, b) ( strcmp((a), (b)) == 0 ) - - #define offset(field) XtOffsetOf(SimpleMenuRec, simple_menu.field) -@@ -755,9 +757,17 @@ Cardinal * num_params; - - if ( (menu = FindMenu(w, params[0])) == NULL) { - char error_buf[BUFSIZ]; -- (void) sprintf(error_buf, "%s '%s'", -- "Xaw - SimpleMenuWidget: could not find menu named: ", params[0]); -- XtAppWarning(XtWidgetToApplicationContext(w), error_buf); -+ char *err1 = "Xaw - SimpleMenuWidget: could not find menu named: "; -+ char *perr; -+ int len; -+ -+ len = strlen(err1) + strlen(params[0]) + 2 + 1; -+ perr = XtStackAlloc(len, error_buf); -+ if (perr == NULL) -+ return; -+ sprintf(perr, "%s'%s'", err1, params[0]); -+ XtAppWarning(XtWidgetToApplicationContext(w), perr); -+ XtStackFree(perr, error_buf); - return; - } - -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/StripChart.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/StripChart.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/StripChart.c.debian 2003-02-10 18:18:00.000000000 +0100 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/StripChart.c 2008-10-06 11:42:13.000000000 +0200 -@@ -315,7 +315,15 @@ XtIntervalId *id; /* unused */ - if (w->strip_chart.points != NULL) { - w->strip_chart.points[0].x = w->strip_chart.interval + s; - XDrawPoints(XtDisplay(w), XtWindow(w), w->strip_chart.hiGC, -- w->strip_chart.points, w->strip_chart.scale, -+ /* -+ * patch: -+ * -+ * w->strip_chart.points, w->strip_chart.scale, -+ * -+ * this to avoid a subdle bug of extra spurios scan -+ * line in this widget. -+ */ -+ w->strip_chart.points, w->strip_chart.scale - 1, - CoordModePrevious); - } - -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/Text.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/Text.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/Text.c.debian 2008-10-06 11:42:13.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/Text.c 2008-10-06 11:43:16.000000000 +0200 -@@ -76,6 +76,8 @@ SOFTWARE. - #include <ctype.h> /* for isprint() */ - #include <stdlib.h> - -+#include "XawAlloc.h" -+ - #ifndef MAX_LEN_CT - #define MAX_LEN_CT 6 /* for sequence: ESC $ ( A \xx \xx */ - #endif -@@ -521,6 +523,8 @@ Cardinal *num_args; /* unused */ - TextWidget ctx = (TextWidget) new; - char error_buf[BUFSIZ]; - int s; -+ char *perr; /* frankie */ -+ size_t len; /* frankie */ - - ctx->text.threeD = XtVaCreateWidget("threeD", threeDWidgetClass, new, - XtNx, 0, XtNy, 0, -@@ -569,10 +573,17 @@ Cardinal *num_args; /* unused */ - if (ctx->text.scroll_vert != XawtextScrollNever) - if ( (ctx->text.resize == XawtextResizeHeight) || - (ctx->text.resize == XawtextResizeBoth) ) { -- (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name, -- "Vertical scrolling not allowed with height resize.\n", -- "Vertical scrolling has been DEACTIVATED."); -- XtAppWarning(XtWidgetToApplicationContext(new), error_buf); -+ char *err1 = "Xaw Text Widget "; -+ char *err2 = ":\nVertical scrolling not allowed with height resize.\n"; -+ char *err3 = "Vertical scrolling has been DEACTIVATED."; -+ len = strlen(err1) + strlen(err2) + strlen(err3) + -+ strlen(ctx->core.name) + 1; -+ perr = XtStackAlloc(len, error_buf); -+ if (perr != NULL) { -+ (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3); -+ XtAppWarning(XtWidgetToApplicationContext(new), perr); -+ XtStackFree(perr, error_buf); -+ } - ctx->text.scroll_vert = XawtextScrollNever; - } - else if (ctx->text.scroll_vert == XawtextScrollAlways) -@@ -580,18 +591,32 @@ Cardinal *num_args; /* unused */ - - if (ctx->text.scroll_horiz != XawtextScrollNever) - if (ctx->text.wrap != XawtextWrapNever) { -- (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name, -- "Horizontal scrolling not allowed with wrapping active.\n", -- "Horizontal scrolling has been DEACTIVATED."); -- XtAppWarning(XtWidgetToApplicationContext(new), error_buf); -+ char *err1 = "Xaw Text Widget "; -+ char *err2 = ":\nHorizontal scrolling not allowed with wrapping active."; -+ char *err3 = "\nHorizontal scrolling has been DEACTIVATED."; -+ len = strlen(err1) + strlen(err2) + strlen(err3) + -+ strlen(ctx->core.name) + 1; -+ perr = XtStackAlloc(len, error_buf); -+ if (perr != NULL) { -+ (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3); -+ XtAppWarning(XtWidgetToApplicationContext(new), perr); -+ XtStackFree(perr, error_buf); -+ } - ctx->text.scroll_horiz = XawtextScrollNever; - } - else if ( (ctx->text.resize == XawtextResizeWidth) || - (ctx->text.resize == XawtextResizeBoth) ) { -- (void) sprintf(error_buf, "Xaw Text Widget %s:\n %s %s.", ctx->core.name, -- "Horizontal scrolling not allowed with width resize.\n", -- "Horizontal scrolling has been DEACTIVATED."); -- XtAppWarning(XtWidgetToApplicationContext(new), error_buf); -+ char *err1 = "Xaw Text Widget "; -+ char *err2 = ":\nHorizontal scrolling not allowed with width resize.\n"; -+ char *err3 = "Horizontal scrolling has been DEACTIVATED."; -+ len = strlen(err1) + strlen(err2) + strlen(err3) + -+ strlen(ctx->core.name) + 1; -+ perr = XtStackAlloc(len, error_buf); -+ if (perr != NULL) { -+ (void) sprintf(perr, "%s%s%s%s", err1, ctx->core.name, err2, err3); -+ XtAppWarning(XtWidgetToApplicationContext(new), perr); -+ XtStackFree(perr, error_buf); -+ } - ctx->text.scroll_horiz = XawtextScrollNever; - } - else if (ctx->text.scroll_horiz == XawtextScrollAlways) -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/TextPop.c.debian Xaw3d-1.5E/xc/lib/Xaw3d/TextPop.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/TextPop.c.debian 2000-11-27 14:19:36.000000000 +0100 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/TextPop.c 2008-10-06 11:42:13.000000000 +0200 -@@ -66,6 +66,8 @@ in this Software without prior written a - #include <X11/Xos.h> /* for O_RDONLY */ - #include <errno.h> - -+#include "XawAlloc.h" -+ - #ifdef X_NOT_STDC_ENV - extern int errno; - #endif -@@ -809,6 +811,8 @@ DoSearch(search) - struct SearchAndReplace * search; - { - char msg[BUFSIZ]; -+ char *pmsg; -+ int len; - Widget tw = XtParent(search->search_popup); - XawTextPosition pos; - XawTextScanDirection dir; -@@ -835,9 +839,20 @@ struct SearchAndReplace * search; - /* The Raw string in find.ptr may be WC I can't use here, so I re - call - GetString to get a tame version. */ - -- if (pos == XawTextSearchError) -- (void) sprintf( msg, "Could not find string ``%s''.", GetString( search->search_text ) ); -- else { -+ if (pos == XawTextSearchError) { -+ char *msg1 = "Could not find string ``"; -+ char *msg2 = "''."; -+ len = strlen(msg1) + strlen(msg2) + -+ strlen(GetString( search->search_text )) + 1; -+ pmsg = XtStackAlloc(len, msg); -+ if (pmsg != NULL) { -+ (void) sprintf( pmsg, "%s%s%s", msg1, GetString( search->search_text ), -+ msg2); -+ } else { -+ pmsg = msg; -+ (void) sprintf( pmsg, "Could not find string"); -+ } -+ } else { - if (dir == XawsdRight) - XawTextSetInsertionPoint( tw, pos + text.length); - else -@@ -849,7 +864,8 @@ struct SearchAndReplace * search; - } - - XawTextUnsetSelection(tw); -- SetSearchLabels(search, msg, "", TRUE); -+ SetSearchLabels(search, pmsg, "", TRUE); -+ XtStackFree(pmsg, msg); - return(FALSE); - } - -@@ -982,13 +998,26 @@ Boolean once_only, show_current; - if ( (new_pos == XawTextSearchError) ) { - if (count == 0) { - char msg[BUFSIZ]; -+ char *pmsg; -+ int len; -+ char *msg1 = "*** Error: Could not find string ``"; -+ char *msg2 = "''. ***"; - - /* The Raw string in find.ptr may be WC I can't use here, - so I call GetString to get a tame version.*/ - -- (void) sprintf( msg, "%s %s %s", "*** Error: Could not find string ``", -- GetString( search->search_text ), "''. ***"); -- SetSearchLabels(search, msg, "", TRUE); -+ len = strlen(msg1) + strlen(msg2) + -+ strlen(GetString( search->search_text )) + 1; -+ pmsg = XtStackAlloc(len, msg); -+ if (pmsg != NULL) { -+ (void) sprintf( pmsg, "%s%s%s", msg1, -+ GetString( search->search_text ), msg2); -+ } else { -+ pmsg = msg; -+ (void) sprintf(pmsg, "*** Error: Could not find string ***"); -+ } -+ SetSearchLabels(search, pmsg, "", TRUE); -+ XtStackFree(pmsg, msg); - return(FALSE); - } - else -@@ -1011,9 +1040,22 @@ Boolean once_only, show_current; - - if (XawTextReplace(tw, pos, end_pos, &replace) != XawEditDone) { - char msg[BUFSIZ]; -- -- (void) sprintf( msg, "'%s' with '%s'. ***", find.ptr, replace.ptr); -+ char *pmsg; -+ int len; -+ char *msg1 = "' with '"; -+ char *msg2 = "'. ***"; -+ -+ len = 1 + strlen(msg1) + strlen(msg2) + strlen(find.ptr) + -+ strlen(replace.ptr) + 1; -+ pmsg = XtStackAlloc(len, msg); -+ if (pmsg != NULL) { -+ (void) sprintf( pmsg, "`%s%s%s%s", find.ptr, msg1, replace.ptr, msg2); -+ } else { -+ pmsg = msg; -+ (void) sprintf(pmsg, "string ***"); -+ } - SetSearchLabels(search, "*** Error while replacing", msg, TRUE); -+ XtStackFree(pmsg, msg); - return(FALSE); - } - -@@ -1164,13 +1206,20 @@ XtArgVal value; - { - Widget temp_widget; - char buf[BUFSIZ]; -+ char *pbuf; -+ int len; - -- (void) sprintf(buf, "%s.%s", FORM_NAME, name); -+ len = strlen(FORM_NAME) + strlen(name) + 2; -+ pbuf = XtStackAlloc(len, buf); -+ if (pbuf == NULL) return FALSE; -+ (void) sprintf(pbuf, "%s.%s", FORM_NAME, name); - -- if ( (temp_widget = XtNameToWidget(shell, buf)) != NULL) { -+ if ( (temp_widget = XtNameToWidget(shell, pbuf)) != NULL) { - SetResource(temp_widget, res_name, value); -+ XtStackFree(pbuf, buf); - return(TRUE); - } -+ XtStackFree(pbuf, buf); - return(FALSE); - } - -diff -up /dev/null Xaw3d-1.5E/xc/lib/Xaw3d/XawAlloc.h ---- /dev/null 2008-10-06 08:37:32.418005377 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/XawAlloc.h 2008-10-06 11:42:13.000000000 +0200 -@@ -0,0 +1,10 @@ -+/* $XFree86: xc/lib/Xaw/XawAlloc.h,v 1.1.2.1 1998/05/16 09:05:23 dawes Exp $ */ -+ -+#define XtStackAlloc(size, stack_cache_array) \ -+ ((size) <= sizeof(stack_cache_array) \ -+ ? (XtPointer)(stack_cache_array) \ -+ : XtMalloc((unsigned)(size))) -+ -+#define XtStackFree(pointer, stack_cache_array) \ -+ if ((pointer) != ((XtPointer)(stack_cache_array))) XtFree(pointer); else -+ ---- xaw3d-1.5e/xc/lib/Xaw3d/SmeBSB.c 2003-08-04 17:27:58.000000000 +0200 -+++ xaw3d-1.5e/xc/lib/Xaw3d/SmeBSB.c 2003-08-07 15:02:39.000000000 +0200 -@@ -52,6 +52,8 @@ - #include <X11/Xaw3d/Cardinals.h> - #include <stdio.h> - -+#include "XawAlloc.h" -+ - /* needed for abs() */ - #ifndef X_NOT_STDC_ENV - #include <stdlib.h> -@@ -712,6 +714,8 @@ - int x, y; - unsigned int width, height, bw; - char buf[BUFSIZ]; -+ char *pbuf; -+ int len; - - if (is_left) { - width = height = 0; -@@ -720,18 +724,24 @@ - if (!XGetGeometry(XtDisplayOfObject(w), - entry->sme_bsb.left_bitmap, &root, &x, &y, - &width, &height, &bw, &entry->sme_bsb.left_depth)) { -- (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".", -- "Could not get Left Bitmap", -- "geometry information for menu entry", -- XtName(w)); -- XtAppError(XtWidgetToApplicationContext(w), buf); -+ char *err1 = "Xaw SmeBSB Object: Could not get Left Bitmap geometry information for menu entry "; -+ len = strlen(err1) + strlen(XtName(w)) + 3 + 1; -+ pbuf = XtStackAlloc(len, buf); -+ if (pbuf == NULL) return; -+ sprintf(pbuf, "%s\"%s\".", err1, XtName(w)); -+ XtAppError(XtWidgetToApplicationContext(w), pbuf); -+ XtStackFree(pbuf, buf); - } - #ifdef NEVER - if (entry->sme_bsb.left_depth != 1) { -- (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.", -- "Left Bitmap of entry", XtName(w), -- "is not one bit deep"); -- XtAppError(XtWidgetToApplicationContext(w), buf); -+ char *err1 = "Xaw SmeBSB Object: Left Bitmap of entry "; -+ char *err2 = " is not one bit deep."; -+ len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1; -+ pbuf = XtStackAlloc(len, buf); -+ if (pbuf == NULL) return; -+ sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2); -+ XtAppError(XtWidgetToApplicationContext(w), pbuf); -+ XtStackFree(pbuf, buf); - } - #endif - } -@@ -745,18 +755,24 @@ - if (!XGetGeometry(XtDisplayOfObject(w), - entry->sme_bsb.right_bitmap, &root, &x, &y, - &width, &height, &bw, &entry->sme_bsb.right_depth)) { -- (void) sprintf(buf, "Xaw SmeBSB Object: %s %s \"%s\".", -- "Could not get Right Bitmap", -- "geometry information for menu entry", -- XtName(w)); -- XtAppError(XtWidgetToApplicationContext(w), buf); -+ char *err1 = "Xaw SmeBSB Object: Could not get Right Bitmap geometry information for menu entry "; -+ len = strlen(err1) + strlen(XtName(w)) + 3 + 1; -+ pbuf = XtStackAlloc(len, buf); -+ if (pbuf == NULL) return; -+ sprintf(pbuf, "%s\"%s\".", err1, XtName(w)); -+ XtAppError(XtWidgetToApplicationContext(w), pbuf); -+ XtStackFree(pbuf, buf); - } - #ifdef NEVER - if (entry->sme_bsb.right_depth != 1) { -- (void) sprintf(buf, "Xaw SmeBSB Object: %s \"%s\" %s.", -- "Right Bitmap of entry", XtName(w), -- "is not one bit deep"); -- XtAppError(XtWidgetToApplicationContext(w), buf); -+ char *err1 = "Xaw SmeBSB Object: Right Bitmap of entry "; -+ char *err2 = " is not one bit deep."; -+ len = strlen(err1) + strlen(err2) + strlen(XtName(w)) + 2 + 1; -+ pbuf = XtStackAlloc(len, buf); -+ if (pbuf == NULL) return; -+ sprintf(pbuf, "%s\"%s\"%s", err1, XtName(w), err2); -+ XtAppError(XtWidgetToApplicationContext(w), pbuf); -+ XtStackFree(pbuf, buf); - } - #endif - } diff --git a/extra/xaw3d/Xaw3d-1.5-i18n.patch b/extra/xaw3d/Xaw3d-1.5-i18n.patch deleted file mode 100644 index aa4730238..000000000 --- a/extra/xaw3d/Xaw3d-1.5-i18n.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- Xaw3d-1.5/xc/lib/Xaw3d/MultiSrc.c.orig Tue Aug 6 22:51:08 2002 -+++ Xaw3d-1.5/xc/lib/Xaw3d/MultiSrc.c Tue Aug 6 22:51:16 2002 -@@ -735,6 +735,7 @@ - - if ( string_set || (old_src->multi_src.type != src->multi_src.type) ) { - RemoveOldStringOrFile(old_src, string_set); -+ src->multi_src.allocated_string = old_src->multi_src.allocated_string; - file = InitStringOrFile(src, string_set); - - /* Load pieces does this logic for us, but it shouldn't. Its messy.*/ diff --git a/extra/xaw3d/Xaw3d-1.5E-warnings.patch b/extra/xaw3d/Xaw3d-1.5E-warnings.patch deleted file mode 100644 index 8ffa7f8f9..000000000 --- a/extra/xaw3d/Xaw3d-1.5E-warnings.patch +++ /dev/null @@ -1,114 +0,0 @@ ---- Xaw3d-1.5E/xc/lib/Xaw3d/MultiSrc.c 2009-03-15 17:04:35.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/MultiSrc.c 2009-03-15 14:22:05.000000000 +0100 -@@ -77,6 +77,7 @@ - #include <sys/types.h> - #include <sys/stat.h> - #include <fcntl.h> -+#include <wchar.h> - - /**************************************************************** - * ---- Xaw3d-1.5E/xc/lib/Xaw3d/Panner.c 2000-11-27 14:19:24.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/Panner.c 2009-03-15 13:50:40.000000000 +0100 -@@ -36,7 +36,7 @@ - #include <X11/Xmu/Misc.h> /* for Min */ - #include <X11/Xmu/Drawing.h> - #include <ctype.h> /* for isascii() etc. */ --#include <math.h> /* for atof() */ -+#include <stdlib.h> /* for atof() */ - - extern Bool XmuDistinguishablePixels(); /* not defined in any Xmu headers */ - ---- Xaw3d-1.5E/xc/lib/Xaw3d/Text.c 2009-03-15 17:04:35.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/Text.c 2009-03-15 13:54:10.000000000 +0100 -@@ -75,6 +75,7 @@ - #include <X11/Xfuncs.h> - #include <ctype.h> /* for isprint() */ - #include <stdlib.h> -+#include <wchar.h> - - #include "XawAlloc.h" - ---- Xaw3d-1.5E/xc/lib/Xaw3d/TextAction.c 2000-11-27 14:19:36.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/TextAction.c 2009-03-15 14:19:27.000000000 +0100 -@@ -45,7 +45,9 @@ - #include "XawI18n.h" - #endif - #include <stdio.h> -+#include <stdlib.h> - #include <ctype.h> -+#include <wchar.h> - - #define SrcScan XawTextSourceScan - #define FindDist XawTextSinkFindDistance ---- Xaw3d-1.5E/xc/lib/Xaw3d/TextPop.c 2009-03-15 17:04:35.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/TextPop.c 2009-03-15 14:19:44.000000000 +0100 -@@ -65,6 +65,7 @@ - #include <stdio.h> - #include <X11/Xos.h> /* for O_RDONLY */ - #include <errno.h> -+#include <wchar.h> - - #include "XawAlloc.h" - ---- Xaw3d-1.5E/xc/lib/Xaw3d/TextSrc.c 2000-11-27 14:19:36.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/TextSrc.c 2009-03-15 14:19:13.000000000 +0100 -@@ -49,6 +49,7 @@ - #endif - #include <stdio.h> - #include <ctype.h> -+#include <wchar.h> - - /**************************************************************** - * ---- Xaw3d-1.5E/xc/lib/Xaw3d/ThreeD.c 2003-02-11 12:41:56.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/ThreeD.c 2009-03-15 14:21:20.000000000 +0100 -@@ -39,6 +39,7 @@ - #include <X11/Xaw3d/XawInit.h> - #include <X11/Xaw3d/ThreeDP.h> - #include <X11/Xosdefs.h> -+#include <X11/Xmu/CharSet.h> - - /* Initialization of defaults */ - ---- Xaw3d-1.5E/xc/lib/Xaw3d/Tip.c 2003-03-09 01:31:49.000000000 +0100 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/Tip.c 2009-03-15 14:21:36.000000000 +0100 -@@ -41,6 +41,7 @@ - #include <X11/Xmu/Converters.h> - #include <X11/Xaw3d/TipP.h> - #include <X11/Xaw3d/XawInit.h> -+#include <stdlib.h> - - #define TIP_EVENT_MASK (ButtonPressMask | \ - ButtonReleaseMask | \ ---- Xaw3d-1.5E/xc/lib/Xaw3d/XawI18n.c 1996-10-15 16:41:25.000000000 +0200 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/XawI18n.c 2009-03-15 14:23:11.000000000 +0100 -@@ -55,6 +55,7 @@ - - */ - -+#include <stdlib.h> - #include <X11/IntrinsicP.h> - #include "XawI18n.h" - ---- Xaw3d-1.5E/xc/lib/Xaw3d/XawIm.c 1998-04-21 15:42:02.000000000 +0200 -+++ Xaw3d-1.5E.new/xc/lib/Xaw3d/XawIm.c 2009-03-15 14:22:41.000000000 +0100 -@@ -59,6 +59,7 @@ - #include <X11/Xos.h> - #include <X11/Xfuncs.h> - #include <X11/ShellP.h> -+#include <X11/ResourceI.h> - #include <X11/Xaw3d/TextP.h> - #include <X11/Xaw3d/MultiSrc.h> - #include <X11/Xaw3d/MultiSinkP.h> -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/XawI18n.h~ Xaw3d-1.5E/xc/lib/Xaw3d/XawI18n.h ---- Xaw3d-1.5E/xc/lib/Xaw3d/XawI18n.h~ 1996-10-15 16:41:26.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/XawI18n.h 2009-03-15 17:18:04.000000000 +0100 -@@ -72,7 +72,4 @@ extern wchar_t _Xaw_atowc ( - - #ifndef HAS_ISW_FUNCS - #include <ctype.h> --#ifndef iswspace --#define iswspace(c) (isascii(c) && isspace(toascii(c))) --#endif - #endif diff --git a/extra/xaw3d/Xaw3d-1.5E-xorg-imake.patch b/extra/xaw3d/Xaw3d-1.5E-xorg-imake.patch deleted file mode 100644 index 9d5312e33..000000000 --- a/extra/xaw3d/Xaw3d-1.5E-xorg-imake.patch +++ /dev/null @@ -1,35 +0,0 @@ ---- Imakefile.config 2003-03-08 15:55:18.000000000 +0100 -+++ Imakefile 2005-01-20 14:48:55.630795072 +0100 -@@ -5,24 +5,24 @@ - XCOMM Build options. Have you read the README.XAW3D file yet? - XCOMM - XCOMM For color pixmaps, define MULTIPLANE_PIXMAPS: --#undef MULTIPLANE_PIXMAPS -+#define MULTIPLANE_PIXMAPS - XCOMM For grayed stipple shadows, define GRAY_BLKWHT_STIPPLES: - #define GRAY_BLKWHT_STIPPLES - XCOMM For scrollbars with arrows, define ARROW_SCROLLBARS: --#undef ARROW_SCROLLBARS -+#define ARROW_SCROLLBARS - --#define DoNormalLib NormalLibXaw --#define DoSharedLib SharedLibXaw --#define DoDebugLib DebugLibXaw --#define DoProfileLib ProfileLibXaw -+#define DoNormalLib NormalLibXaw7 -+#define DoSharedLib SharedLibXaw7 -+#define DoDebugLib DebugLibXaw7 -+#define DoProfileLib ProfileLibXaw7 - #define HasSharedData YES - #define LibName Xaw3d --#define SoRev SOXAWREV -+#define SoRev SOXAW7REV - #define IncSubdir X11 - #define IncSubSubdir Xaw3d - - XCOMM When building outside an X11 source tree: --XCOMM EXTRA_INCLUDES = -I. -+EXTRA_INCLUDES = -I. - - #ifdef SharedXawReqs - REQUIREDLIBS = SharedXawReqs diff --git a/extra/xaw3d/Xaw3d-ia64.patch b/extra/xaw3d/Xaw3d-ia64.patch deleted file mode 100644 index 90ce711e9..000000000 --- a/extra/xaw3d/Xaw3d-ia64.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/List.c.prototypes Xaw3d-1.5E/xc/lib/Xaw3d/List.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/List.c.prototypes 2000-11-27 14:19:36.000000000 +0100 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/List.c 2008-10-06 10:11:28.000000000 +0200 -@@ -38,6 +38,7 @@ in this Software without prior written a - - #include "Xaw3dP.h" - #include <stdio.h> -+#include <stdlib.h> - #include <ctype.h> - #include <X11/IntrinsicP.h> - #include <X11/StringDefs.h> -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/MultiSink.c.prototypes Xaw3d-1.5E/xc/lib/Xaw3d/MultiSink.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/MultiSink.c.prototypes 1996-10-15 16:41:20.000000000 +0200 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/MultiSink.c 2008-10-06 10:10:37.000000000 +0200 -@@ -81,6 +81,7 @@ SOFTWARE. - #include <X11/Xaw3d/TextP.h> - #include "XawI18n.h" - #include <stdio.h> -+#include <stdlib.h> - #include <ctype.h> - - #ifdef GETLASTPOS -diff -up Xaw3d-1.5E/xc/lib/Xaw3d/Text.c.prototypes Xaw3d-1.5E/xc/lib/Xaw3d/Text.c ---- Xaw3d-1.5E/xc/lib/Xaw3d/Text.c.prototypes 2003-02-10 18:28:13.000000000 +0100 -+++ Xaw3d-1.5E/xc/lib/Xaw3d/Text.c 2008-10-06 10:11:11.000000000 +0200 -@@ -74,6 +74,7 @@ SOFTWARE. - #include <X11/Xaw3d/ThreeDP.h> - #include <X11/Xfuncs.h> - #include <ctype.h> /* for isprint() */ -+#include <stdlib.h> - - #ifndef MAX_LEN_CT - #define MAX_LEN_CT 6 /* for sequence: ESC $ ( A \xx \xx */ diff --git a/extra/xfce4-mpc-plugin/PKGBUILD b/extra/xfce4-mpc-plugin/PKGBUILD index ba710c5fd..51570bd6b 100644 --- a/extra/xfce4-mpc-plugin/PKGBUILD +++ b/extra/xfce4-mpc-plugin/PKGBUILD @@ -1,24 +1,24 @@ -# $Id: PKGBUILD 149252 2012-02-06 16:30:37Z foutrelis $ +# $Id: PKGBUILD 150133 2012-02-13 10:09:13Z eric $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: aurelien <aurelien@archlinux.org> # Contributor: Tobias Kieslich <tobias (at) archlinux.org> pkgname=xfce4-mpc-plugin -pkgver=0.3.6 -pkgrel=2 -pkgdesc="plugin to control the music player daemon from the xfce4-panel" -arch=(i686 x86_64 'mips64el') -license=('GPL2') +pkgver=0.4.0 +pkgrel=1 +pkgdesc="A plugin to control the music player daemon from the xfce4-panel" +arch=('i686' 'x86_64' 'mips64el') +license=('BSD') url="http://goodies.xfce.org/projects/panel-plugins/xfce4-mpc-plugin" groups=('xfce4-goodies') -depends=('xfce4-panel' 'libxfcegui4' 'libmpd>=0.16.1') +depends=('xfce4-panel' 'libmpd>=0.16.1') makedepends=('intltool') -options=(!libtool) -source=(http://archive.xfce.org/src/panel-plugins/${pkgname}/0.3/${pkgname}-${pkgver}.tar.bz2) -md5sums=('a6366662885d803dcebd82bbb91ed3c7') +options=('!libtool') +source=(http://archive.xfce.org/src/panel-plugins/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2) +md5sums=('ae9b285e24385e27cfd797ab605a1b7f') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr \ --sysconfdir=/etc \ --libexecdir=/usr/lib \ @@ -29,6 +29,7 @@ build() { } package(){ - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/extra/xfce4-session/PKGBUILD b/extra/xfce4-session/PKGBUILD index a385ea3a8..6cc9f2fd5 100644 --- a/extra/xfce4-session/PKGBUILD +++ b/extra/xfce4-session/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 141722 2011-11-02 15:10:56Z foutrelis $ +# $Id: PKGBUILD 150131 2012-02-13 08:12:40Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: tobias <tobias funnychar archlinux.org> pkgname=xfce4-session -pkgver=4.8.2 -pkgrel=3.1 +pkgver=4.8.3 +pkgrel=1 pkgdesc="A session manager for Xfce" arch=('i686' 'x86_64' 'mips64el') url="http://www.xfce.org/" @@ -20,7 +20,7 @@ replaces=('xfce4-toys') options=('!libtool') install=$pkgname.install source=(http://archive.xfce.org/src/xfce/$pkgname/4.8/$pkgname-$pkgver.tar.bz2) -sha256sums=('31bca2a559e05a8a859f150394a901517e5842414ef171a85c5da234e344c0d0') +sha256sums=('f0801b8c0ffa7e5d41b29b8df281ac127adf467bf50e8ded8aebe5a02bd99338') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/extra/xfce4-systemload-plugin/missing_tooltip.diff b/extra/xfce4-systemload-plugin/missing_tooltip.diff deleted file mode 100644 index 96f5c1714..000000000 --- a/extra/xfce4-systemload-plugin/missing_tooltip.diff +++ /dev/null @@ -1,21 +0,0 @@ ---- panel-plugin/systemload.c 2007-01-17 18:01:09.000000000 +0000 -+++ panel-plugin/systemload.c.new 2009-05-14 17:17:24.001076632 +0000 -@@ -315,11 +315,18 @@ - { - int count; - t_global_monitor *global; -+ GtkSettings *settings; - - tooltips = gtk_tooltips_new (); - g_object_ref (tooltips); - gtk_object_sink (GTK_OBJECT (tooltips)); - -+ /* reduce the default tooltip timeout to be smaller than the update interval otherwise -+ * we won't see tooltips on GTK 2.16 or newer */ -+ settings = gtk_settings_get_default(); -+ if (g_object_class_find_property(G_OBJECT_GET_CLASS(settings), "gtk-tooltip-timeout")) -+ g_object_set(settings, "gtk-tooltip-timeout", UPDATE_TIMEOUT - 10, NULL); -+ - global = g_new(t_global_monitor, 1); - global->plugin = plugin; - global->timeout_id = 0; diff --git a/extra/xfce4-timer-plugin/PKGBUILD b/extra/xfce4-timer-plugin/PKGBUILD index b60a1c6c4..56cece775 100644 --- a/extra/xfce4-timer-plugin/PKGBUILD +++ b/extra/xfce4-timer-plugin/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 149457 2012-02-08 03:29:26Z eric $ +# $Id: PKGBUILD 150121 2012-02-12 22:43:39Z eric $ # Maintainer: AndyRTR <andyrtr@archlinux.org> # Contributor: Tobias Kieslich <tobias (at) archlinux.org> pkgname=xfce4-timer-plugin -pkgver=0.6.2 +pkgver=0.6.4 pkgrel=1 pkgdesc="plugin to track time for the Xfce4 panel" arch=('i686' 'x86_64' 'mips64el') @@ -13,8 +13,9 @@ groups=('xfce4-goodies') depends=('xfce4-panel' 'libxfcegui4') makedepends=('intltool') options=('!libtool') -source=(http://archive.xfce.org/src/panel-plugins/${pkgname}/0.6/${pkgname}-${pkgver}.tar.bz2) -md5sums=('688fe2dde9645bee1855e6a6c9579161') +install=xfce4-timer-plugin.install +source=(http://archive.xfce.org/src/panel-plugins/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2) +md5sums=('c2f9e113dcda742cd1559129b79f609b') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/xfce4-timer-plugin/panel48.patch b/extra/xfce4-timer-plugin/panel48.patch deleted file mode 100644 index 056023712..000000000 --- a/extra/xfce4-timer-plugin/panel48.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 03ff202f818fe3f075a6c864ab688b57b1bb1cb4 Mon Sep 17 00:00:00 2001 -From: Nick Schermer <nick@xfce.org> -Date: Thu, 27 Jan 2011 21:18:45 +0000 -Subject: Fix segfault when creating plugin in 4.8 panel. - -Used invalid function type to construct the plugin. ---- -diff --git a/src/xfcetimer.c b/src/xfcetimer.c -index c27d37a..de7bd2b 100644 ---- a/src/xfcetimer.c -+++ b/src/xfcetimer.c -@@ -42,7 +42,7 @@ - - #include "xfcetimer.h" - --static gboolean create_plugin_control (XfcePanelPlugin *plugin); -+static void create_plugin_control (XfcePanelPlugin *plugin); - XFCE_PANEL_PLUGIN_REGISTER_EXTERNAL(create_plugin_control); - - void make_menu(plugin_data *pd); -@@ -1366,7 +1366,7 @@ static void plugin_create_options (XfcePanelPlugin *plugin,plugin_data *pd) { - * - * Returns %TRUE on success, %FALSE on failure. - **/ --static gboolean -+static void - create_plugin_control (XfcePanelPlugin *plugin) - { - -@@ -1461,7 +1461,6 @@ create_plugin_control (XfcePanelPlugin *plugin) - xfce_panel_plugin_menu_show_configure (plugin); - g_signal_connect (plugin, "configure-plugin", - G_CALLBACK (plugin_create_options), pd); -- return(TRUE); - } - - --- -cgit v0.8.3.4 diff --git a/community/remmina-plugins/remmina-plugins.install b/extra/xfce4-timer-plugin/xfce4-timer-plugin.install index 1a05f573e..17ca8f78a 100644 --- a/community/remmina-plugins/remmina-plugins.install +++ b/extra/xfce4-timer-plugin/xfce4-timer-plugin.install @@ -3,9 +3,9 @@ post_install() { } post_upgrade() { - post_install + post_install $1 } post_remove() { - post_install + post_install $1 } diff --git a/extra/xfce4-verve-plugin/PKGBUILD b/extra/xfce4-verve-plugin/PKGBUILD index afdfbe32c..3f1476451 100644 --- a/extra/xfce4-verve-plugin/PKGBUILD +++ b/extra/xfce4-verve-plugin/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 104787 2011-01-04 22:36:49Z andyrtr $ +# $Id: PKGBUILD 149978 2012-02-11 23:31:39Z allan $ # Maintainer: AndyRTR <andyrtr@archlinux.org> # Contributor: Tobias Kieslich <tobias (at) archlinux.org> pkgname=xfce4-verve-plugin pkgver=1.0.0 -pkgrel=1.1 +pkgrel=2 pkgdesc="command line plugin Xfce4 panel" arch=('i686' 'x86_64' 'mips64el') license=('GPL2') diff --git a/extra/xmlto/PKGBUILD b/extra/xmlto/PKGBUILD index d928fd237..48138ee3a 100644 --- a/extra/xmlto/PKGBUILD +++ b/extra/xmlto/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 146526 2012-01-12 12:28:33Z giovanni $ +# $Id: PKGBUILD 149980 2012-02-11 23:31:41Z allan $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Jan de Groot <jgc@archlinux.org> # Contributor: Sergej Pupykin <sergej@aur.archlinux.org> @@ -6,7 +6,7 @@ pkgname=xmlto pkgver=0.0.25 -pkgrel=1 +pkgrel=2 pkgdesc="Convert xml to many other formats" arch=('i686' 'x86_64' 'mips64el') url="http://cyberelk.net/tim/software/xmlto/" diff --git a/extra/xorg-mkfontscale/PKGBUILD b/extra/xorg-mkfontscale/PKGBUILD index 55bd8bf0f..ac672f598 100644 --- a/extra/xorg-mkfontscale/PKGBUILD +++ b/extra/xorg-mkfontscale/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 130725 2011-07-07 22:14:26Z andyrtr $ +# $Id: PKGBUILD 149834 2012-02-11 10:04:54Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=xorg-mkfontscale -pkgver=1.0.9 +pkgver=1.1.0 pkgrel=1 pkgdesc="Create an index of scalable font files for X" arch=(i686 x86_64 'mips64el') @@ -12,7 +12,7 @@ depends=('freetype2' 'libfontenc') makedepends=('xorg-util-macros' 'xproto') groups=('xorg-apps' 'xorg') source=(http://xorg.freedesktop.org/archive/individual/app/mkfontscale-${pkgver}.tar.bz2) -sha1sums=(''5a8ac438d6d6694dcf1314b74c4d9f029da4f486) +sha1sums=('ba021369ae3b364ba083b9eb5e570e54b21fd583') build() { cd "${srcdir}/mkfontscale-${pkgver}" diff --git a/extra/xorg-oclock/PKGBUILD b/extra/xorg-oclock/PKGBUILD index 0453c41e4..0a1f19efe 100644 --- a/extra/xorg-oclock/PKGBUILD +++ b/extra/xorg-oclock/PKGBUILD @@ -1,22 +1,26 @@ -# $Id: $ +# $Id: PKGBUILD 149836 2012-02-11 10:08:56Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=xorg-oclock -pkgver=1.0.2 +pkgver=1.0.3 pkgrel=1 pkgdesc="Round X clock" arch=(i686 x86_64 'mips64el') url="http://xorg.freedesktop.org/" license=('custom') -depends=('libx11' 'libxmu' 'libxext') +depends=('libx11' 'libxmu' 'libxext' 'libxkbfile') makedepends=('xorg-util-macros') source=(http://xorg.freedesktop.org/archive/individual/app/oclock-${pkgver}.tar.bz2) -sha1sums=('ba606d39fba6021c4db76d79751779f7b5c862e9') +sha1sums=('1aa05864019a55610aca5471c5206858dde9a34a') build() { cd "${srcdir}/oclock-${pkgver}" ./configure --prefix=/usr make +} + +package() { + cd "${srcdir}/oclock-${pkgver}" make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" diff --git a/extra/xorg-xclipboard/PKGBUILD b/extra/xorg-xclipboard/PKGBUILD index 60c4d624b..6685fdd9f 100644 --- a/extra/xorg-xclipboard/PKGBUILD +++ b/extra/xorg-xclipboard/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: $ +# $Id: PKGBUILD 149838 2012-02-11 10:11:10Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=xorg-xclipboard -pkgver=1.1.1 +pkgver=1.1.2 pkgrel=1 pkgdesc="X clipboard manager" arch=(i686 x86_64 'mips64el') @@ -11,12 +11,16 @@ license=('custom') depends=('libxaw' 'libxmu' 'libxt' 'libx11') makedepends=('xorg-util-macros') source=(http://xorg.freedesktop.org/archive/individual/app/xclipboard-${pkgver}.tar.bz2) -sha1sums=('922ddf89acd0781156e9ccdf191a3e0c6376415a') +sha1sums=('8dc77e1234c1c2853805124536676a4d5f7c7a3b') build() { cd "${srcdir}/xclipboard-${pkgver}" ./configure --prefix=/usr make +} + +package(){ + cd "${srcdir}/xclipboard-${pkgver}" make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" diff --git a/extra/xorg-xclock/PKGBUILD b/extra/xorg-xclock/PKGBUILD index f3d2ee24e..ca43b8811 100644 --- a/extra/xorg-xclock/PKGBUILD +++ b/extra/xorg-xclock/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: $ +# $Id: PKGBUILD 149840 2012-02-11 10:13:13Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=xorg-xclock -pkgver=1.0.5 +pkgver=1.0.6 pkgrel=1 pkgdesc="X clock" arch=(i686 x86_64 'mips64el') @@ -11,12 +11,16 @@ license=('custom') depends=('libx11' 'libxmu' 'libxaw' 'libxrender' 'libxft' 'libxkbfile') makedepends=('xorg-util-macros') source=(http://xorg.freedesktop.org/archive/individual/app/xclock-${pkgver}.tar.bz2) -sha1sums=('1651ac8961c0aa287a6a7412ee5e6d3bfc3bb3e2') +sha1sums=('993817c9e3cc2baaaebe52b29fa2ad26e58b124d') build() { cd "${srcdir}/xclock-${pkgver}" ./configure --prefix=/usr make +} + +package() { + cd "${srcdir}/xclock-${pkgver}" make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" diff --git a/extra/xorg-xinit/PKGBUILD b/extra/xorg-xinit/PKGBUILD index 982c75feb..8a9e5a7b2 100644 --- a/extra/xorg-xinit/PKGBUILD +++ b/extra/xorg-xinit/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 145242 2011-12-19 22:24:21Z jgc $ +# $Id: PKGBUILD 149821 2012-02-11 08:52:05Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Alexander Baldeck <alexander@archlinux.org> pkgname=xorg-xinit -pkgver=1.3.1 -pkgrel=2 +pkgver=1.3.2 +pkgrel=1 pkgdesc="X.Org initialisation program " arch=('i686' 'x86_64' 'mips64el') license=('custom') @@ -23,7 +23,7 @@ source=(${url}/releases/individual/app/xinit-${pkgver}.tar.bz2 xsession xserverrc) options=(!emptydirs) -md5sums=('ee234056d8a3dbf37b61b4bcb35b88e4' +md5sums=('9c0943cbd83e489ad1b05221b97efd44' 'abd072ec435ce084cf4e89c58f83d45c' '73a597d3fb7f5b9487318ac8cfd4bedf' 'c7b406c3c5c1e8011b3ac7d6b29c1a2c' diff --git a/extra/zsh/PKGBUILD b/extra/zsh/PKGBUILD index 628be7fe5..14af39a78 100644 --- a/extra/zsh/PKGBUILD +++ b/extra/zsh/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 145827 2012-01-02 12:43:36Z pierre $ +# $Id: PKGBUILD 149982 2012-02-11 23:31:46Z allan $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=zsh pkgver=4.3.15 -pkgrel=2 +pkgrel=3 pkgdesc='A very advanced and programmable command interpreter (shell) for UNIX' arch=('i686' 'x86_64' 'mips64el') url='http://www.zsh.org/' diff --git a/libre/cups-libre/cups-avahi.patch b/libre/cups-libre/cups-avahi.patch deleted file mode 100644 index 7e9c8ecea..000000000 --- a/libre/cups-libre/cups-avahi.patch +++ /dev/null @@ -1,3156 +0,0 @@ -Description: Avahi support -Bug: http://www.cups.org/str.php?L3066 -Author: Tim Waugh -Origin: git clone http://twaugh.fedorapeople.org/cups-avahi.git (Aug 11, 2011) - ---- a/backend/dnssd.c -+++ b/backend/dnssd.c -@@ -15,14 +15,21 @@ - * - * Contents: - * -+ * next_txt_record() - Get next TXT record from a cups_txt_records_t. -+ * parse_txt_record_pair() - Read key/value pair in cups_txt_records_t. - * main() - Browse for printers. - * browse_callback() - Browse devices. - * browse_local_callback() - Browse local devices. - * compare_devices() - Compare two devices. - * exec_backend() - Execute the backend that corresponds to the - * resolved service name. -+ * device_type() - Get DNS-SD type enumeration from string. - * get_device() - Create or update a device. - * query_callback() - Process query data. -+ * avahi_client_callback() - Avahi client callback function. -+ * avahi_query_callback() - Avahi query callback function. -+ * avahi_browse_callback() - Avahi browse callback function. -+ * find_device() - Find a device from its name and domain. - * sigterm_handler() - Handle termination signals... - * unquote() - Unquote a name string. - */ -@@ -33,7 +40,18 @@ - - #include "backend-private.h" - #include <cups/array.h> --#include <dns_sd.h> -+#ifdef HAVE_DNSSD -+# include <dns_sd.h> -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/lookup.h> -+# include <avahi-common/simple-watch.h> -+# include <avahi-common/domain.h> -+# include <avahi-common/error.h> -+# include <avahi-common/malloc.h> -+#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX -+#endif /* HAVE_AVAHI */ - - - /* -@@ -53,7 +71,12 @@ - - typedef struct - { -+#ifdef HAVE_DNSSD - DNSServiceRef ref; /* Service reference for resolve */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ int resolved; /* Did we resolve the device? */ -+#endif /* HAVE_AVAHI */ - char *name, /* Service name */ - *domain, /* Domain name */ - *fullName, /* Full name */ -@@ -65,6 +88,20 @@ - sent; /* Did we list the device? */ - } cups_device_t; - -+typedef struct -+{ -+ char key[256]; -+ char value[256]; -+ -+#ifdef HAVE_DNSSD -+ const uint8_t *data; -+ const uint8_t *datanext; -+ const uint8_t *dataend; -+#else /* HAVE_AVAHI */ -+ AvahiStringList *txt; -+#endif /* HAVE_DNSSD */ -+} cups_txt_records_t; -+ - - /* - * Local globals... -@@ -78,6 +115,7 @@ - * Local functions... - */ - -+#ifdef HAVE_DNSSD - static void browse_callback(DNSServiceRef sdRef, - DNSServiceFlags flags, - uint32_t interfaceIndex, -@@ -93,12 +131,6 @@ - const char *regtype, - const char *replyDomain, - void *context); --static int compare_devices(cups_device_t *a, cups_device_t *b); --static void exec_backend(char **argv); --static cups_device_t *get_device(cups_array_t *devices, -- const char *serviceName, -- const char *regtype, -- const char *replyDomain); - static void query_callback(DNSServiceRef sdRef, - DNSServiceFlags flags, - uint32_t interfaceIndex, -@@ -107,9 +139,118 @@ - uint16_t rrclass, uint16_t rdlen, - const void *rdata, uint32_t ttl, - void *context); -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+static void avahi_client_callback (AvahiClient *client, -+ AvahiClientState state, -+ void *context); -+static void avahi_browse_callback (AvahiServiceBrowser *browser, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiBrowserEvent event, -+ const char *serviceName, -+ const char *regtype, -+ const char *replyDomain, -+ AvahiLookupResultFlags flags, -+ void *context); -+#endif /* HAVE_AVAHI */ -+ -+static cups_device_t * find_device (cups_array_t *devices, -+ cups_txt_records_t *txt, -+ cups_device_t *dkey); -+static int compare_devices(cups_device_t *a, cups_device_t *b); -+static void exec_backend(char **argv); -+static cups_device_t *get_device(cups_array_t *devices, -+ const char *serviceName, -+ const char *regtype, -+ const char *replyDomain); - static void sigterm_handler(int sig); - static void unquote(char *dst, const char *src, size_t dstsize); - -+#ifdef HAVE_AVAHI -+static AvahiSimplePoll *simple_poll = NULL; -+static int avahi_got_callback; -+#endif /* HAVE_AVAHI */ -+ -+ -+/* -+ * 'next_txt_record()' - Get next TXT record from a cups_txt_records_t. -+ */ -+ -+static cups_txt_records_t * -+next_txt_record (cups_txt_records_t *txt) -+{ -+#ifdef HAVE_DNSSD -+ txt->data = txt->datanext; -+#else /* HAVE_AVAHI */ -+ txt->txt = avahi_string_list_get_next (txt->txt); -+ if (txt->txt == NULL) -+ return NULL; -+#endif /* HAVE_DNSSD */ -+ -+ return txt; -+} -+ -+ -+/* -+ * 'parse_txt_record_pair()' - Read key/value pair in cups_txt_records_t. -+ */ -+ -+static int -+parse_txt_record_pair (cups_txt_records_t *txt) -+{ -+#ifdef HAVE_DNSSD -+ uint8_t datalen; -+ uint8_t *data = txt->data; -+ char *ptr; -+ -+ /* -+ * Read a key/value pair starting with an 8-bit length. Since the -+ * length is 8 bits and the size of the key/value buffers is 256, we -+ * don't need to check for overflow... -+ */ -+ -+ datalen = *data++; -+ if (!datalen || (data + datalen) >= txt->dataend) -+ return NULL; -+ txt->datanext = data + datalen; -+ -+ for (ptr = txt->key; data < txt->datanext && *data != '='; data ++) -+ *ptr++ = *data; -+ *ptr = '\0'; -+ -+ if (data < txt->datanext && *data == '=') -+ { -+ data++; -+ -+ if (data < datanext) -+ memcpy (txt->value, data, txt->datanext - data); -+ value[txt->datanext - data] = '\0'; -+ } -+ else -+ return 1; -+#else /* HAVE_AVAHI */ -+ char *key, *value; -+ size_t len; -+ avahi_string_list_get_pair (txt->txt, &key, &value, &len); -+ if (len > sizeof (txt->value) - 1) -+ len = sizeof (txt->value) - 1; -+ -+ memcpy (txt->value, value, len); -+ txt->value[len] = '\0'; -+ len = strlen (key); -+ if (len > sizeof (txt->key) - 1) -+ len = sizeof (txt->key) - 1; -+ -+ memcpy (txt->key, key, len); -+ txt->key[len] = '\0'; -+ avahi_free (key); -+ avahi_free (value); -+#endif /* HAVE_AVAHI */ -+ -+ return 0; -+} -+ - - /* - * 'main()' - Browse for printers. -@@ -120,6 +261,13 @@ - char *argv[]) /* I - Command-line arguments */ - { - const char *name; /* Backend name */ -+ cups_array_t *devices; /* Device array */ -+ cups_device_t *device; /* Current device */ -+ char uriName[1024]; /* Unquoted fullName for URI */ -+#ifdef HAVE_DNSSD -+ int fd; /* Main file descriptor */ -+ fd_set input; /* Input set for select() */ -+ struct timeval timeout; /* Timeout for select() */ - DNSServiceRef main_ref, /* Main service reference */ - fax_ipp_ref, /* IPP fax service reference */ - ipp_ref, /* IPP service reference */ -@@ -133,12 +281,11 @@ - pdl_datastream_ref, /* AppSocket service reference */ - printer_ref, /* LPD service reference */ - riousbprint_ref; /* Remote IO service reference */ -- int fd; /* Main file descriptor */ -- fd_set input; /* Input set for select() */ -- struct timeval timeout; /* Timeout for select() */ -- cups_array_t *devices; /* Device array */ -- cups_device_t *device; /* Current device */ -- char uriName[1024]; /* Unquoted fullName for URI */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ AvahiClient *client; -+ int error; -+#endif /* HAVE_AVAHI */ - #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET) - struct sigaction action; /* Actions for POSIX signals */ - #endif /* HAVE_SIGACTION && !HAVE_SIGSET */ -@@ -198,6 +345,49 @@ - * Browse for different kinds of printers... - */ - -+#ifdef HAVE_AVAHI -+ if ((simple_poll = avahi_simple_poll_new ()) == NULL) -+ { -+ perror ("ERROR: Unable to create avahi simple poll object"); -+ return (1); -+ } -+ -+ client = avahi_client_new (avahi_simple_poll_get (simple_poll), -+ 0, avahi_client_callback, NULL, &error); -+ if (!client) -+ { -+ perror ("DEBUG: Unable to create avahi client"); -+ return (0); -+ } -+ -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_fax-ipp._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_ipp._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_ipp-tls._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_pdl-datastream._tcp", -+ NULL, 0, -+ avahi_browse_callback, -+ devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_printer._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_riousbprint._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+#endif /* HAVE_AVAHI */ -+#ifdef HAVE_DNSSD - if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError) - { - perror("ERROR: Unable to create service connection"); -@@ -258,6 +448,7 @@ - riousbprint_ref = main_ref; - DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0, - "_riousbprint._tcp", NULL, browse_callback, devices); -+#endif /* HAVE_DNSSD */ - - /* - * Loop until we are killed... -@@ -265,6 +456,9 @@ - - while (!job_canceled) - { -+ int announce = 0; -+ -+#ifdef HAVE_DNSSD - FD_ZERO(&input); - FD_SET(fd, &input); - -@@ -284,11 +478,35 @@ - } - else - { -+ announce = 1; -+ } -+#else /* HAVE_AVAHI */ -+ int r; -+ avahi_got_callback = 0; -+ r = avahi_simple_poll_iterate (simple_poll, 1); -+ if (r != 0 && r != EINTR) -+ { -+ /* -+ * We've been told to exit the loop. Perhaps the connection to -+ * avahi failed. -+ */ -+ -+ break; -+ } -+ -+ if (avahi_got_callback) -+ announce = 1; -+#endif /* HAVE_DNSSD */ -+ -+ if (announce) -+ { - /* - * Announce any devices we've found... - */ - -+#ifdef HAVE_DNSSD - DNSServiceErrorType status; /* DNS query status */ -+#endif /* HAVE_DNSSD */ - cups_device_t *best; /* Best matching device */ - char device_uri[1024]; /* Device URI */ - int count; /* Number of queries */ -@@ -302,6 +520,7 @@ - if (device->sent) - sent ++; - -+#ifdef HAVE_DNSSD - if (device->ref) - count ++; - -@@ -333,14 +552,23 @@ - count ++; - } - } -- else if (!device->sent) -+ else -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ if (!device->resolved) -+ continue; -+ else -+#endif /* HAVE_AVAHI */ -+ if (!device->sent) - { -+#ifdef HAVE_DNSSD - /* - * Got the TXT records, now report the device... - */ - - DNSServiceRefDeallocate(device->ref); - device->ref = 0; -+#endif /* HAVE_DNSSD */ - - if (!best) - best = device; -@@ -401,6 +629,7 @@ - } - - -+#ifdef HAVE_DNSSD - /* - * 'browse_callback()' - Browse devices. - */ -@@ -489,6 +718,7 @@ - device->fullName); - device->sent = 1; - } -+#endif /* HAVE_DNSSD */ - - - /* -@@ -569,6 +799,41 @@ - - - /* -+ * 'device_type()' - Get DNS-SD type enumeration from string. -+ */ -+ -+static int -+device_type (const char *regtype) -+{ -+#ifdef HAVE_AVAHI -+ if (!strcmp(regtype, "_ipp._tcp")) -+ return (CUPS_DEVICE_IPP); -+ else if (!strcmp(regtype, "_ipps._tcp") || -+ !strcmp(regtype, "_ipp-tls._tcp")) -+ return (CUPS_DEVICE_IPPS); -+ else if (!strcmp(regtype, "_fax-ipp._tcp")) -+ return (CUPS_DEVICE_FAX_IPP); -+ else if (!strcmp(regtype, "_printer._tcp")) -+ return (CUPS_DEVICE_PDL_DATASTREAM); -+#else -+ if (!strcmp(regtype, "_ipp._tcp.")) -+ return (CUPS_DEVICE_IPP); -+ else if (!strcmp(regtype, "_ipps._tcp.") || -+ !strcmp(regtype, "_ipp-tls._tcp.")) -+ return (CUPS_DEVICE_IPPS); -+ else if (!strcmp(regtype, "_fax-ipp._tcp.")) -+ return (CUPS_DEVICE_FAX_IPP); -+ else if (!strcmp(regtype, "_printer._tcp.")) -+ return (CUPS_DEVICE_PRINTER); -+ else if (!strcmp(regtype, "_pdl-datastream._tcp.")) -+ return (CUPS_DEVICE_PDL_DATASTREAM); -+#endif /* HAVE_AVAHI */ -+ -+ return (CUPS_DEVICE_RIOUSBPRINT); -+} -+ -+ -+/* - * 'get_device()' - Create or update a device. - */ - -@@ -589,20 +854,7 @@ - */ - - key.name = (char *)serviceName; -- -- if (!strcmp(regtype, "_ipp._tcp.")) -- key.type = CUPS_DEVICE_IPP; -- else if (!strcmp(regtype, "_ipps._tcp.") || -- !strcmp(regtype, "_ipp-tls._tcp.")) -- key.type = CUPS_DEVICE_IPPS; -- else if (!strcmp(regtype, "_fax-ipp._tcp.")) -- key.type = CUPS_DEVICE_FAX_IPP; -- else if (!strcmp(regtype, "_printer._tcp.")) -- key.type = CUPS_DEVICE_PRINTER; -- else if (!strcmp(regtype, "_pdl-datastream._tcp.")) -- key.type = CUPS_DEVICE_PDL_DATASTREAM; -- else -- key.type = CUPS_DEVICE_RIOUSBPRINT; -+ key.type = device_type (regtype); - - for (device = cupsArrayFind(devices, &key); - device; -@@ -622,8 +874,14 @@ - free(device->domain); - device->domain = strdup(replyDomain); - -+#ifdef HAVE_DNSSD - DNSServiceConstructFullName(fullName, device->name, regtype, - replyDomain); -+#else /* HAVE_AVAHI */ -+ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, -+ serviceName, regtype, replyDomain); -+#endif /* HAVE_DNSSD */ -+ - free(device->fullName); - device->fullName = strdup(fullName); - } -@@ -643,6 +901,9 @@ - device->domain = strdup(replyDomain); - device->type = key.type; - device->priority = 50; -+#ifdef HAVE_AVAHI -+ device->resolved = 0; -+#endif /* HAVE_AVAHI */ - - cupsArrayAdd(devices, device); - -@@ -650,13 +911,20 @@ - * Set the "full name" of this service, which is used for queries... - */ - -+#ifdef HAVE_DNSSD - DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain); -+#else /* HAVE_AVAHI */ -+ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, -+ serviceName, regtype, replyDomain); -+#endif /* HAVE_DNSSD */ -+ - device->fullName = strdup(fullName); - - return (device); - } - - -+#ifdef HAVE_DNSSD - /* - * 'query_callback()' - Process query data. - */ -@@ -680,7 +948,7 @@ - *ptr; /* Pointer into string */ - cups_device_t dkey, /* Search key */ - *device; /* Device */ -- -+ cups_txt_records_t txt; - - fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, " - "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", " -@@ -714,94 +982,233 @@ - if ((ptr = strstr(name, "._")) != NULL) - *ptr = '\0'; - -- if (strstr(fullName, "_ipp._tcp.")) -- dkey.type = CUPS_DEVICE_IPP; -- else if (strstr(fullName, "_ipps._tcp.") || -- strstr(fullName, "_ipp-tls._tcp.")) -- dkey.type = CUPS_DEVICE_IPPS; -- else if (strstr(fullName, "_fax-ipp._tcp.")) -- dkey.type = CUPS_DEVICE_FAX_IPP; -- else if (strstr(fullName, "_printer._tcp.")) -- dkey.type = CUPS_DEVICE_PRINTER; -- else if (strstr(fullName, "_pdl-datastream._tcp.")) -- dkey.type = CUPS_DEVICE_PDL_DATASTREAM; -+ dkey.type = device_type (fullName); -+ -+ txt.data = rdata; -+ txt.dataend = rdata + rdlen; -+ device = find_device ((cups_array_t *) context, &txt, &dkey); -+ if (!device) -+ fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); -+} -+#endif /* HAVE_DNSSD */ -+ -+ -+#ifdef HAVE_AVAHI -+/* -+ * 'avahi_client_callback()' - Avahi client callback function. -+ */ -+ -+static void -+avahi_client_callback(AvahiClient *client, -+ AvahiClientState state, -+ void *context) -+{ -+ /* -+ * If the connection drops, quit. -+ */ -+ -+ if (state == AVAHI_CLIENT_FAILURE) -+ { -+ fprintf (stderr, "ERROR: Avahi connection failed\n"); -+ avahi_simple_poll_quit (simple_poll); -+ } -+} -+ -+ -+/* -+ * 'avahi_query_callback()' - Avahi query callback function. -+ */ -+ -+static void -+avahi_query_callback(AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ AvahiClient *client; -+ cups_device_t key, -+ *device; -+ char uqname[1024], -+ *ptr; -+ cups_txt_records_t txtr; -+ -+ client = avahi_service_resolver_get_client (resolver); -+ if (event != AVAHI_RESOLVER_FOUND) -+ { -+ if (event == AVAHI_RESOLVER_FAILURE) -+ { -+ fprintf (stderr, "ERROR: %s\n", -+ avahi_strerror (avahi_client_errno (client))); -+ } -+ -+ avahi_service_resolver_free (resolver); -+ return; -+ } -+ -+ /* -+ * Set search key for device. -+ */ -+ -+ key.name = uqname; -+ unquote (uqname, name, sizeof (uqname)); -+ if ((ptr = strstr(name, "._")) != NULL) -+ *ptr = '\0'; -+ -+ key.domain = (char *) domain; -+ key.type = device_type (type); -+ -+ /* -+ * Find the device and the the TXT information. -+ */ -+ -+ txtr.txt = txt; -+ device = find_device ((cups_array_t *) context, &txtr, &key); -+ if (device) -+ { -+ /* -+ * Let the main loop know to announce the device. -+ */ -+ -+ device->resolved = 1; -+ avahi_got_callback = 1; -+ } - else -- dkey.type = CUPS_DEVICE_RIOUSBPRINT; -+ fprintf (stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", name); -+ -+ avahi_service_resolver_free (resolver); -+} -+ -+ -+/* -+ * 'avahi_browse_callback()' - Avahi browse callback function. -+ */ -+ -+static void -+avahi_browse_callback(AvahiServiceBrowser *browser, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiBrowserEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ AvahiClient *client = avahi_service_browser_get_client (browser); -+ -+ switch (event) -+ { -+ case AVAHI_BROWSER_FAILURE: -+ fprintf (stderr, "ERROR: %s\n", -+ avahi_strerror (avahi_client_errno (client))); -+ avahi_simple_poll_quit (simple_poll); -+ return; -+ -+ case AVAHI_BROWSER_NEW: -+ /* -+ * This object is new on the network. -+ */ -+ -+ if (flags & AVAHI_LOOKUP_RESULT_LOCAL) -+ { -+ /* -+ * This comes from the local machine so ignore it. -+ */ -+ -+ fprintf (stderr, "DEBUG: ignoring local service %s\n", name); -+ } -+ else -+ { -+ /* -+ * Create a device entry for it if it doesn't yet exist. -+ */ -+ -+ get_device ((cups_array_t *)context, name, type, domain); -+ -+ /* -+ * Now look for a TXT entry. -+ */ -+ -+ if (avahi_service_resolver_new (client, interface, protocol, -+ name, type, domain, -+ AVAHI_PROTO_UNSPEC, 0, -+ avahi_query_callback, context) == NULL) -+ { -+ fprintf (stderr, "ERROR: failed to resolve service %s: %s\n", -+ name, avahi_strerror (avahi_client_errno (client))); -+ } -+ } -+ -+ break; -+ -+ case AVAHI_BROWSER_REMOVE: -+ case AVAHI_BROWSER_ALL_FOR_NOW: -+ case AVAHI_BROWSER_CACHE_EXHAUSTED: -+ break; -+ } -+} -+#endif /* HAVE_AVAHI */ -+ - -- for (device = cupsArrayFind(devices, &dkey); -+/* -+ * 'find_device()' - Find a device from its name and domain. -+ */ -+ -+static cups_device_t * -+find_device (cups_array_t *devices, -+ cups_txt_records_t *txt, -+ cups_device_t *dkey) -+{ -+ cups_device_t *device; -+ char *ptr; -+ -+ for (device = cupsArrayFind(devices, dkey); - device; - device = cupsArrayNext(devices)) - { -- if (_cups_strcasecmp(device->name, dkey.name) || -- _cups_strcasecmp(device->domain, dkey.domain)) -+ if (_cups_strcasecmp(device->name, dkey->name) || -+ _cups_strcasecmp(device->domain, dkey->domain)) - { - device = NULL; - break; - } -- else if (device->type == dkey.type) -+ else if (device->type == dkey->type) - { - /* - * Found it, pull out the priority and make and model from the TXT - * record and save it... - */ - -- const uint8_t *data, /* Pointer into data */ -- *datanext, /* Next key/value pair */ -- *dataend; /* End of entire TXT record */ -- uint8_t datalen; /* Length of current key/value pair */ -- char key[256], /* Key string */ -- value[256], /* Value string */ -- make_and_model[512], -+ char make_and_model[512], - /* Manufacturer and model */ - model[256], /* Model */ -- device_id[2048];/* 1284 device ID */ -- -+ device_id[2048]; /* 1284 device ID */ - - device_id[0] = '\0'; - make_and_model[0] = '\0'; - - strcpy(model, "Unknown"); - -- for (data = rdata, dataend = data + rdlen; -- data < dataend; -- data = datanext) -+ for (;;) - { -- /* -- * Read a key/value pair starting with an 8-bit length. Since the -- * length is 8 bits and the size of the key/value buffers is 256, we -- * don't need to check for overflow... -- */ -- -- datalen = *data++; -- -- if (!datalen || (data + datalen) >= dataend) -- break; -- -- datanext = data + datalen; -- -- for (ptr = key; data < datanext && *data != '='; data ++) -- *ptr++ = *data; -- *ptr = '\0'; -+ char *key; -+ char *value; - -- if (data < datanext && *data == '=') -- { -- data ++; -- -- if (data < datanext) -- memcpy(value, data, datanext - data); -- value[datanext - data] = '\0'; -+ if (parse_txt_record_pair (txt)) -+ goto next; - -- fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n", -- key, value); -- } -- else -- { -- fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n", -- key); -- continue; -- } -- -- if (!_cups_strncasecmp(key, "usb_", 4)) -+ key = txt->key; -+ value = txt->value; -+ if (!strncasecmp(key, "usb_", 4)) - { - /* - * Add USB device ID information... -@@ -856,6 +1263,10 @@ - if (device->type == CUPS_DEVICE_PRINTER) - device->sent = 1; - } -+ -+ next: -+ if (next_txt_record (txt) == NULL) -+ break; - } - - if (device->device_id) -@@ -905,11 +1316,9 @@ - } - } - -- if (!device) -- fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); -+ return device; - } - -- - /* - * 'sigterm_handler()' - Handle termination signals... - */ ---- a/config-scripts/cups-dnssd.m4 -+++ b/config-scripts/cups-dnssd.m4 -@@ -23,6 +23,21 @@ - DNSSDLIBS="" - DNSSD_BACKEND="" - -+AC_ARG_ENABLE(avahi, [ --enable-avahi turn on DNS Service Discovery support, default=no], -+ [if test x$enable_avahi = xyes; then -+ AC_MSG_CHECKING(for Avahi) -+ if $PKGCONFIG --exists avahi-client; then -+ AC_MSG_RESULT(yes) -+ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`" -+ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`" -+ DNSSD_BACKEND="dnssd" -+ AC_DEFINE(HAVE_AVAHI) -+ enable_dnssd=no -+ else -+ AC_MSG_RESULT(no) -+ fi -+ fi]) -+ - if test x$enable_dnssd != xno; then - AC_CHECK_HEADER(dns_sd.h, [ - case "$uname" in ---- a/config.h.in -+++ b/config.h.in -@@ -390,6 +390,13 @@ - - - /* -+ * Do we have Avahi for DNS Service Discovery? -+ */ -+ -+#undef HAVE_AVAHI -+ -+ -+/* - * Do we have <sys/ioctl.h>? - */ - ---- a/cups/http-support.c -+++ b/cups/http-support.c -@@ -43,6 +43,10 @@ - * http_copy_decode() - Copy and decode a URI. - * http_copy_encode() - Copy and encode a URI. - * http_resolve_cb() - Build a device URI for the given service name. -+ * avahi_resolve_uri_client_cb() -+ * - Avahi client callback for resolving URI. -+ * avahi_resolve_uri_resolver_cb() -+ * - Avahi resolver callback for resolving URI. - */ - - /* -@@ -60,6 +64,11 @@ - # include <sys/select.h> - # endif /* WIN32 */ - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/lookup.h> -+# include <avahi-common/simple-watch.h> -+#endif /* HAVE_AVAHI */ - - - /* -@@ -127,6 +136,24 @@ - void *context); - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+static void avahi_resolve_uri_client_cb(AvahiClient *client, -+ AvahiClientState state, -+ void *simple_poll); -+static void avahi_resolve_uri_resolver_cb(AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context); -+#endif /* HAVE_AVAHI */ - - /* - * 'httpAssembleURI()' - Assemble a uniform resource identifier from its -@@ -1431,6 +1458,9 @@ - - if (strstr(hostname, "._tcp")) - { -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ char *regtype, /* Pointer to type in hostname */ -+ *domain; /* Pointer to domain in hostname */ - #ifdef HAVE_DNSSD - # ifdef WIN32 - # pragma comment(lib, "dnssd.lib") -@@ -1449,6 +1479,17 @@ - fd_set input_set; /* Input set for select() */ - struct timeval stimeout; /* Timeout value for select() */ - #endif /* HAVE_POLL */ -+#else /* HAVE_AVAHI */ -+ AvahiSimplePoll *simple_poll; -+ AvahiClient *client; -+ int error; -+ struct -+ { -+ AvahiSimplePoll *poll; -+ _http_uribuf_t uribuf; -+ } user_data; -+#endif /* HAVE_DNSSD */ -+ - - if (options & _HTTP_RESOLVE_STDERR) - fprintf(stderr, "DEBUG: Resolving \"%s\"...\n", hostname); -@@ -1485,9 +1526,16 @@ - if (domain) - *domain++ = '\0'; - -+#ifdef HAVE_DNSSD - uribuf.buffer = resolved_uri; - uribuf.bufsize = resolved_size; - uribuf.options = options; -+#else -+ user_data.uribuf.buffer = resolved_uri; -+ user_data.uribuf.bufsize = resolved_size; -+ user_data.uribuf.options = options; -+#endif -+ - resolved_uri[0] = '\0'; - - DEBUG_printf(("6_httpResolveURI: Resolving hostname=\"%s\", regtype=\"%s\", " -@@ -1501,6 +1549,7 @@ - - uri = NULL; - -+#ifdef HAVE_DNSSD - if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError) - { - localref = ref; -@@ -1608,6 +1657,36 @@ - - DNSServiceRefDeallocate(ref); - } -+#else /* HAVE_AVAHI */ -+ if ((simple_poll = avahi_simple_poll_new ()) != NULL) -+ { -+ if ((client = avahi_client_new (avahi_simple_poll_get (simple_poll), -+ 0, avahi_resolve_uri_client_cb, -+ &simple_poll, &error)) != NULL) -+ { -+ user_data.poll = simple_poll; -+ if (avahi_service_resolver_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, hostname, -+ regtype, domain, AVAHI_PROTO_UNSPEC, 0, -+ avahi_resolve_uri_resolver_cb, -+ &user_data) != NULL) -+ { -+ avahi_simple_poll_loop (simple_poll); -+ -+ /* -+ * Collect the result. -+ */ -+ -+ if (resolved_uri[0]) -+ uri = resolved_uri; -+ } -+ -+ avahi_client_free (client); -+ } -+ -+ avahi_simple_poll_free (simple_poll); -+ } -+#endif /* HAVE_DNSSD */ - - if (options & _HTTP_RESOLVE_STDERR) - { -@@ -1619,13 +1698,13 @@ - fputs("STATE: -connecting-to-device,offline-report\n", stderr); - } - --#else -+#else /* HAVE_DNSSD || HAVE_AVAHI */ - /* - * No DNS-SD support... - */ - - uri = NULL; --#endif /* HAVE_DNSSD */ -+#endif /* HAVE_DNSSD || HAVE_AVAHI */ - - if ((options & _HTTP_RESOLVE_STDERR) && !uri) - _cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer.")); -@@ -1895,6 +1974,116 @@ - #endif /* HAVE_DNSSD */ - - -+#ifdef HAVE_AVAHI -+/* -+ * 'avahi_resolve_uri_client_cb()' - Avahi client callback for resolving URI. -+ */ -+ -+static void -+avahi_resolve_uri_client_cb (AvahiClient *client, -+ AvahiClientState state, -+ void *simple_poll) -+{ -+ DEBUG_printf(("avahi_resolve_uri_client_callback(client=%p, state=%d, " -+ "simple_poll=%p)\n", client, state, simple_poll)); -+ -+ /* -+ * If the connection drops, quit. -+ */ -+ -+ if (state == AVAHI_CLIENT_FAILURE) -+ avahi_simple_poll_quit (simple_poll); -+} -+ -+ -+/* -+ * 'avahi_resolve_uri_resolver_cb()' - Avahi resolver callback for resolving -+ * URI. -+ */ -+ -+static void -+avahi_resolve_uri_resolver_cb (AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ const char *scheme; /* URI scheme */ -+ char rp[256]; /* Remote printer */ -+ AvahiStringList *pair; -+ char *value; -+ size_t valueLen = 0; -+ char addr[AVAHI_ADDRESS_STR_MAX]; -+ struct -+ { -+ AvahiSimplePoll *poll; -+ _http_uribuf_t uribuf; -+ } *poll_uribuf = context; -+ -+ DEBUG_printf(("avahi_resolve_uri_resolver_callback(resolver=%p, " -+ "interface=%d, protocol=%d, event=%d, name=\"%s\", " -+ "type=\"%s\", domain=\"%s\", host_name=\"%s\", address=%p, " -+ "port=%d, txt=%p, flags=%d, context=%p)\n", -+ resolver, interface, protocol, event, name, type, domain, -+ host_name, address, port, txt, flags, context)); -+ -+ if (event != AVAHI_RESOLVER_FOUND) -+ { -+ avahi_service_resolver_free (resolver); -+ avahi_simple_poll_quit (poll_uribuf->poll); -+ return; -+ } -+ -+ /* -+ * Figure out the scheme from the full name... -+ */ -+ -+ if (strstr(type, "_ipp.")) -+ scheme = "ipp"; -+ else if (strstr(type, "_printer.")) -+ scheme = "lpd"; -+ else if (strstr(type, "_pdl-datastream.")) -+ scheme = "socket"; -+ else -+ scheme = "riousbprint"; -+ -+ /* -+ * Extract the "remote printer key from the TXT record... -+ */ -+ -+ if ((pair = avahi_string_list_find (txt, "rp")) != NULL) -+ { -+ avahi_string_list_get_pair (pair, NULL, &value, &valueLen); -+ rp[0] = '/'; -+ memcpy (rp + 1, value, valueLen); -+ rp[valueLen + 1] = '\0'; -+ } -+ else -+ rp[0] = '\0'; -+ -+ /* -+ * Assemble the final device URI... -+ */ -+ -+ avahi_address_snprint (addr, AVAHI_ADDRESS_STR_MAX, address); -+ httpAssembleURI(HTTP_URI_CODING_ALL, poll_uribuf->uribuf.buffer, -+ poll_uribuf->uribuf.bufsize, scheme, NULL, -+ addr, port, rp); -+ DEBUG_printf(("avahi_resolve_uri_resolver_callback: Resolved URI is \"%s\"\n", -+ poll_uribuf->uribuf.buffer)); -+ avahi_simple_poll_quit (poll_uribuf->poll); -+} -+#endif /* HAVE_AVAHI */ -+ -+ - /* - * End of "$Id: http-support.c 9820 2011-06-10 22:06:26Z mike $". - */ ---- a/scheduler/Makefile -+++ b/scheduler/Makefile -@@ -17,6 +17,7 @@ - - CUPSDOBJS = \ - auth.o \ -+ avahi.o \ - banners.o \ - cert.o \ - classes.o \ -@@ -39,7 +40,8 @@ - server.o \ - statbuf.o \ - subscriptions.o \ -- sysman.o -+ sysman.o \ -+ timeout.o - LIBOBJS = \ - filter.o \ - mime.o \ ---- /dev/null -+++ b/scheduler/avahi.c -@@ -0,0 +1,445 @@ -+/* -+ * "$Id$" -+ * -+ * Avahi poll implementation for the CUPS scheduler. -+ * -+ * Copyright (C) 2010 Red Hat, Inc. -+ * Authors: -+ * Tim Waugh <twaugh@redhat.com> -+ * -+ * Distribution and use rights are outlined in the file "LICENSE.txt" -+ * "LICENSE" which should have been included with this file. If this -+ * file is missing or damaged, see the license at "http://www.cups.org/". -+ * -+ * Contents: -+ * -+ * watch_read_cb - Read callback for file descriptor -+ * watch_write_cb - Write callback for file descriptor -+ * watched_fd_add_select() - Call cupsdAddSelect() as needed -+ * watch_new() - Create a new file descriptor watch -+ * watch_free() - Free a file descriptor watch -+ * watch_update() - Update watched events for a file descriptor -+ * watch_get_events() - Get events that happened for a file descriptor -+ * timeout_cb() - Run a timed Avahi callback -+ * timeout_new() - Set a wakeup time -+ * timeout_update() - Update the expiration time for a timeout -+ * timeout_free() - Free a timeout -+ * compare_watched_fds() - Compare watched file descriptors for array sorting -+ * compare_timeouts() - Compare timeouts for array sorting -+ * avahi_cups_poll_new() - Create a new Avahi main loop object for CUPS -+ * avahi_cups_poll_free() - Free an Avahi main loop object for CUPS -+ * avahi_cups_poll_get() - Get the abstract poll API structure -+ */ -+ -+#include <config.h> -+ -+#ifdef HAVE_AVAHI /* Applies to entire file... */ -+ -+/* -+ * Include necessary headers... -+ */ -+ -+#include "cupsd.h" -+ -+#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) -+# include <malloc.h> -+#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ -+ -+#ifdef HAVE_AVAHI -+# include <avahi-common/timeval.h> -+#endif /* HAVE_AVAHI */ -+ -+ -+typedef struct -+{ -+ AvahiCupsPoll *cups_poll; -+ -+ int fd; -+ AvahiWatchEvent occurred; -+ cups_array_t *watches; -+} cupsd_watched_fd_t; -+ -+struct AvahiWatch -+{ -+ cupsd_watched_fd_t *watched_fd; -+ -+ AvahiWatchEvent events; -+ AvahiWatchCallback callback; -+ void *userdata; -+}; -+ -+struct AvahiTimeout -+{ -+ AvahiCupsPoll *cups_poll; -+ AvahiTimeoutCallback callback; -+ void *userdata; -+ cupsd_timeout_t *cupsd_timeout; -+}; -+ -+/* -+ * Local functions... -+ */ -+ -+static AvahiWatch * watch_new(const AvahiPoll *api, -+ int fd, -+ AvahiWatchEvent events, -+ AvahiWatchCallback callback, -+ void *userdata); -+static void watch_free(AvahiWatch *watch); -+static void watch_update(AvahiWatch *watch, -+ AvahiWatchEvent events); -+static AvahiWatchEvent watch_get_events(AvahiWatch *watch); -+static int compare_watches(AvahiWatch *p0, -+ AvahiWatch *p1); -+ -+ -+/* -+ * 'watch_read_cb' - Read callback for file descriptor -+ */ -+ -+static void -+watch_read_cb (void *userdata) -+{ -+ AvahiWatch *watch; -+ cupsd_watched_fd_t *watched_fd = userdata; -+ watched_fd->occurred |= AVAHI_WATCH_IN; -+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); -+ watch; -+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) { -+ if (watch->events & watched_fd->occurred) { -+ (watch->callback) (watch, watched_fd->fd, -+ AVAHI_WATCH_IN, watch->userdata); -+ watched_fd->occurred &= ~AVAHI_WATCH_IN; -+ break; -+ } -+ } -+} -+ -+ -+/* -+ * 'watch_write_cb' - Write callback for file descriptor -+ */ -+ -+static void -+watch_write_cb (void *userdata) -+{ -+ AvahiWatch *watch; -+ cupsd_watched_fd_t *watched_fd = userdata; -+ watched_fd->occurred |= AVAHI_WATCH_OUT; -+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); -+ watch; -+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) { -+ if (watch->events & watched_fd->occurred) { -+ (watch->callback) (watch, watched_fd->fd, -+ AVAHI_WATCH_OUT, watch->userdata); -+ watched_fd->occurred &= ~AVAHI_WATCH_OUT; -+ break; -+ } -+ } -+} -+ -+ -+/* -+ * 'watched_fd_add_select' - Call cupsdAddSelect() as needed -+ */ -+ -+static int /* O - Watches? */ -+watched_fd_add_select (cupsd_watched_fd_t *watched_fd) -+{ -+ AvahiWatch *watch; -+ cupsd_selfunc_t read_cb = NULL, write_cb = NULL; -+ -+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); -+ watch; -+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) { -+ if (watch->events & (AVAHI_WATCH_IN | -+ AVAHI_WATCH_ERR | -+ AVAHI_WATCH_HUP)) { -+ read_cb = (cupsd_selfunc_t)watch_read_cb; -+ if (write_cb != NULL) -+ break; -+ } -+ -+ if (watch->events & AVAHI_WATCH_OUT) { -+ write_cb = (cupsd_selfunc_t)watch_write_cb; -+ if (read_cb != NULL) -+ break; -+ } -+ } -+ -+ if (read_cb || write_cb) -+ cupsdAddSelect (watched_fd->fd, read_cb, write_cb, watched_fd); -+ else -+ cupsdRemoveSelect (watched_fd->fd); -+ -+ return (read_cb || write_cb); -+} -+ -+/* -+ * 'watch_new' - Create a new file descriptor watch -+ */ -+ -+static AvahiWatch * -+watch_new (const AvahiPoll *api, -+ int fd, -+ AvahiWatchEvent events, -+ AvahiWatchCallback callback, -+ void *userdata) -+{ -+ cupsd_watched_fd_t key, *watched_fd; -+ AvahiCupsPoll *cups_poll = api->userdata; -+ AvahiWatch *watch = malloc(sizeof(AvahiWatch)); -+ if (watch == NULL) -+ return (NULL); -+ -+ watch->events = events; -+ watch->callback = callback; -+ watch->userdata = userdata; -+ -+ key.fd = fd; -+ watched_fd = cupsArrayFind (cups_poll->watched_fds, &key); -+ if (watched_fd == NULL) { -+ watched_fd = malloc(sizeof(cupsd_watched_fd_t)); -+ if (watched_fd == NULL) { -+ free (watch); -+ return (NULL); -+ } -+ -+ watched_fd->fd = fd; -+ watched_fd->occurred = 0; -+ watched_fd->cups_poll = cups_poll; -+ watched_fd->watches = cupsArrayNew ((cups_array_func_t)compare_watches, -+ NULL); -+ } -+ -+ watch->watched_fd = watched_fd; -+ cupsArrayAdd(watched_fd->watches, watch); -+ watched_fd_add_select (watched_fd); -+ return (watch); -+} -+ -+ -+/* -+ * 'watch_free' - Free a file descriptor watch -+ */ -+ -+static void -+watch_free (AvahiWatch *watch) -+{ -+ cupsd_watched_fd_t *watched_fd = watch->watched_fd; -+ AvahiCupsPoll *cups_poll = watched_fd->cups_poll; -+ -+ cupsArrayRemove (watched_fd->watches, watch); -+ free (watch); -+ -+ if (!watched_fd_add_select (watched_fd)) { -+ /* No more watches */ -+ cupsArrayRemove (cups_poll->watched_fds, watched_fd); -+ free (watched_fd); -+ } -+} -+ -+ -+/* -+ * 'watch_update' - Update watched events for a file descriptor -+ */ -+ -+static void -+watch_update (AvahiWatch *watch, -+ AvahiWatchEvent events) -+{ -+ watch->events = events; -+ watched_fd_add_select (watch->watched_fd); -+} -+ -+ -+/* -+ * 'watch_get_events' - Get events that happened for a file descriptor -+ */ -+ -+static AvahiWatchEvent -+watch_get_events (AvahiWatch *watch) -+{ -+ return (watch->watched_fd->occurred); -+} -+ -+ -+/* -+ * 'compare_watches' - Compare watches for array sorting -+ */ -+ -+static int -+compare_watches (AvahiWatch *p0, -+ AvahiWatch *p1) -+{ -+ if (p0->watched_fd->fd < p1->watched_fd->fd) -+ return (-1); -+ -+ return ((p0->watched_fd->fd == p1->watched_fd->fd) ? 0 : 1); -+} -+ -+ -+/* -+ * 'timeout_cb()' - Run a timed Avahi callback -+ */ -+ -+static void -+timeout_cb (cupsd_timeout_t *cupsd_timeout, void *userdata) -+{ -+ AvahiTimeout *timeout = userdata; -+ (timeout->callback) (timeout, timeout->userdata); -+} -+ -+ -+/* -+ * 'timeout_new' - Set a wakeup time -+ */ -+ -+static AvahiTimeout * -+timeout_new (const AvahiPoll *api, -+ const struct timeval *tv, -+ AvahiTimeoutCallback callback, -+ void *userdata) -+{ -+ AvahiTimeout *timeout; -+ AvahiCupsPoll *cups_poll = api->userdata; -+ -+ timeout = malloc(sizeof(AvahiTimeout)); -+ if (timeout == NULL) -+ return (NULL); -+ -+ timeout->cups_poll = cups_poll; -+ timeout->callback = callback; -+ timeout->userdata = userdata; -+ timeout->cupsd_timeout = cupsdAddTimeout (tv, -+ (cupsd_timeoutfunc_t)timeout_cb, -+ timeout); -+ cupsArrayAdd (cups_poll->timeouts, timeout); -+ return (timeout); -+} -+ -+ -+/* -+ * 'timeout_update' - Update the expiration time for a timeout -+ */ -+ -+static void -+timeout_update (AvahiTimeout *timeout, -+ const struct timeval *tv) -+{ -+ cupsdUpdateTimeout (timeout->cupsd_timeout, tv); -+} -+ -+ -+/* -+ * ' timeout_free' - Free a timeout -+ */ -+ -+static void -+timeout_free (AvahiTimeout *timeout) -+{ -+ cupsArrayRemove (timeout->cups_poll->timeouts, timeout); -+ cupsdRemoveTimeout (timeout->cupsd_timeout); -+ free (timeout); -+} -+ -+ -+/* -+ * 'compare_watched_fds' - Compare watched file descriptors for array sorting -+ */ -+static int -+compare_watched_fds(cupsd_watched_fd_t *p0, -+ cupsd_watched_fd_t *p1) -+{ -+ if (p0->fd != p1->fd) -+ return (p0->fd < p1->fd ? -1 : 1); -+ -+ if (p0 == p1) -+ return (0); -+ -+ return (p0 < p1 ? -1 : 1); -+} -+ -+ -+/* -+ * 'compare_timeouts' - Compare timeouts for array sorting -+ */ -+static int -+compare_timeouts(AvahiTimeout *p0, -+ AvahiTimeout *p1) -+{ -+ /* -+ * Just compare pointers to make it a stable sort. -+ */ -+ -+ if (p0->cupsd_timeout < p1->cupsd_timeout) -+ return (-1); -+ return ((p0->cupsd_timeout == p1->cupsd_timeout) ? 0 : 1); -+} -+ -+ -+/* -+ * 'avahi_cups_poll_new' - Create a new Avahi main loop object for CUPS -+ */ -+ -+AvahiCupsPoll * -+avahi_cups_poll_new (void) -+{ -+ AvahiCupsPoll *cups_poll = malloc(sizeof(AvahiCupsPoll)); -+ if (cups_poll == NULL) -+ return (NULL); -+ -+ cups_poll->watched_fds = cupsArrayNew ((cups_array_func_t)compare_watched_fds, -+ NULL); -+ cups_poll->timeouts = cupsArrayNew ((cups_array_func_t)compare_timeouts, -+ NULL); -+ -+ cups_poll->api.userdata = cups_poll; -+ cups_poll->api.watch_new = watch_new; -+ cups_poll->api.watch_free = watch_free; -+ cups_poll->api.watch_update = watch_update; -+ cups_poll->api.watch_get_events = watch_get_events; -+ -+ cups_poll->api.timeout_new = timeout_new; -+ cups_poll->api.timeout_update = timeout_update; -+ cups_poll->api.timeout_free = timeout_free; -+ -+ return (cups_poll); -+} -+ -+ -+/* -+ * 'avahi_cups_poll_free' - Free an Avahi main loop object for CUPS -+ */ -+void -+avahi_cups_poll_free (AvahiCupsPoll *cups_poll) -+{ -+ cupsd_watched_fd_t *watched_fd; -+ -+ for (watched_fd = (cupsd_watched_fd_t*)cupsArrayFirst(cups_poll->watched_fds); -+ watched_fd; -+ watched_fd = (cupsd_watched_fd_t*)cupsArrayNext(cups_poll->watched_fds)){ -+ cupsArrayClear (watched_fd->watches); -+ } -+ -+ cupsArrayClear (cups_poll->watched_fds); -+ cupsArrayClear (cups_poll->timeouts); -+} -+ -+ -+/* -+ * 'avahi_cups_poll_get' - Get the abstract poll API structure -+ */ -+ -+const AvahiPoll * -+avahi_cups_poll_get (AvahiCupsPoll *cups_poll) -+{ -+ return (&cups_poll->api); -+} -+ -+ -+#endif /* HAVE_AVAHI ... from top of file */ -+ -+/* -+ * End of "$Id$". -+ */ ---- /dev/null -+++ b/scheduler/avahi.h -@@ -0,0 +1,49 @@ -+/* -+ * "$Id$" -+ * -+ * Avahi poll implementation for the CUPS scheduler. -+ * -+ * Copyright (C) 2010 Red Hat, Inc. -+ * Authors: -+ * Tim Waugh <twaugh@redhat.com> -+ * -+ * Distribution and use rights are outlined in the file "LICENSE.txt" -+ * which should have been included with this file. If this file is -+ * file is missing or damaged, see the license at "http://www.cups.org/". -+ */ -+ -+#include <config.h> -+ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/publish.h> -+#endif /* HAVE_AVAHI */ -+ -+#ifdef HAVE_AUTHORIZATION_H -+# include <Security/Authorization.h> -+#endif /* HAVE_AUTHORIZATION_H */ -+ -+ -+#ifdef HAVE_AVAHI -+typedef struct -+{ -+ AvahiPoll api; -+ cups_array_t *watched_fds; -+ cups_array_t *timeouts; -+} AvahiCupsPoll; -+#endif /* HAVE_AVAHI */ -+ -+/* -+ * Prototypes... -+ */ -+ -+#ifdef HAVE_AVAHI -+extern AvahiCupsPoll * avahi_cups_poll_new(void); -+extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll); -+extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll); -+#endif /* HAVE_AVAHI */ -+ -+ -+/* -+ * End of "$Id$". -+ */ ---- a/scheduler/cupsd.h -+++ b/scheduler/cupsd.h -@@ -140,6 +140,15 @@ - - typedef void (*cupsd_selfunc_t)(void *data); - -+#ifdef HAVE_AVAHI -+/* -+ * Timeout callback function type... -+ */ -+ -+typedef struct _cupsd_timeout_s cupsd_timeout_t; -+typedef void (*cupsd_timeoutfunc_t)(cupsd_timeout_t *timeout, void *data); -+#endif /* HAVE_AVAHI */ -+ - - /* - * Globals... -@@ -173,6 +182,11 @@ - /* Running from launchd */ - #endif /* HAVE_LAUNCH_H */ - -+#ifdef HAVE_AVAHI -+VAR cups_array_t *Timeouts; /* Timed callbacks for main loop */ -+#endif /* HAVE_AVAHI */ -+ -+ - - /* - * Prototypes... -@@ -242,6 +256,20 @@ - extern void cupsdStartServer(void); - extern void cupsdStopServer(void); - -+#ifdef HAVE_AVAHI -+extern void cupsdInitTimeouts(void); -+extern cupsd_timeout_t *cupsdAddTimeout (const struct timeval *tv, -+ cupsd_timeoutfunc_t cb, -+ void *data); -+extern cupsd_timeout_t *cupsdNextTimeout (long *delay); -+extern void cupsdRunTimeout (cupsd_timeout_t *timeout); -+extern void cupsdUpdateTimeout (cupsd_timeout_t *timeout, -+ const struct timeval *tv); -+extern void cupsdRemoveTimeout (cupsd_timeout_t *timeout); -+#endif /* HAVE_AVAHI */ -+ -+extern int cupsdRemoveFile(const char *filename); -+ - - /* - * End of "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $". ---- a/scheduler/main.c -+++ b/scheduler/main.c -@@ -122,6 +122,10 @@ - cupsd_listener_t *lis; /* Current listener */ - time_t current_time, /* Current time */ - activity, /* Client activity timer */ -+#ifdef HAVE_AVAHI -+ avahi_client_time, /* Time for next Avahi client -+ check */ -+#endif /* HAVE_AVAHI */ - browse_time, /* Next browse send time */ - senddoc_time, /* Send-Document time */ - expire_time, /* Subscription expire time */ -@@ -148,6 +152,10 @@ - int launchd_idle_exit; - /* Idle exit on select timeout? */ - #endif /* HAVE_LAUNCHD */ -+#ifdef HAVE_AVAHI -+ cupsd_timeout_t *tmo; /* Next scheduled timed callback */ -+ long tmo_delay; /* Time before it must be called */ -+#endif /* HAVE_AVAHI */ - - - #ifdef HAVE_GETEUID -@@ -527,6 +535,14 @@ - - httpInitialize(); - -+#ifdef HAVE_AVAHI -+ /* -+ * Initialize timed callback structures. -+ */ -+ -+ cupsdInitTimeouts(); -+#endif /* HAVE_AVAHI */ -+ - cupsdStartServer(); - - /* -@@ -657,6 +673,9 @@ - */ - - current_time = time(NULL); -+#ifdef HAVE_AVAHI -+ avahi_client_time = current_time; -+#endif /* HAVE_AVAHI */ - browse_time = current_time; - event_time = current_time; - expire_time = current_time; -@@ -871,6 +890,26 @@ - } - #endif /* __APPLE__ */ - -+#ifdef HAVE_AVAHI -+ /* -+ * If a timed callback is due, run it. -+ */ -+ -+ tmo = cupsdNextTimeout (&tmo_delay); -+ if (tmo && tmo_delay == 0) -+ cupsdRunTimeout (tmo); -+ -+ /* -+ * Try to restart the Avahi client every 10 seconds if needed... -+ */ -+ -+ if ((current_time - avahi_client_time) >= 10) -+ { -+ avahi_client_time = current_time; -+ cupsdStartAvahiClient(); -+ } -+#endif /* HAVE_AVAHI */ -+ - #ifndef __APPLE__ - /* - * Update the network interfaces once a minute... -@@ -1815,6 +1854,10 @@ - cupsd_job_t *job; /* Job information */ - cupsd_subscription_t *sub; /* Subscription information */ - const char *why; /* Debugging aid */ -+#ifdef HAVE_AVAHI -+ cupsd_timeout_t *tmo; /* Timed callback */ -+ long tmo_delay; /* Seconds before calling it */ -+#endif /* HAVE_AVAHI */ - - - /* -@@ -1857,6 +1900,19 @@ - } - #endif /* __APPLE__ */ - -+#ifdef HAVE_AVAHI -+ /* -+ * See if there are any scheduled timed callbacks to run. -+ */ -+ -+ tmo = cupsdNextTimeout (&tmo_delay); -+ if (tmo) -+ { -+ timeout = tmo_delay; -+ why = "run a timed callback"; -+ } -+#endif /* HAVE_AVAHI */ -+ - /* - * Check whether we are accepting new connections... - */ ---- /dev/null -+++ b/scheduler/timeout.c -@@ -0,0 +1,195 @@ -+/* -+ * "$Id$" -+ * -+ * Timeout functions for the Common UNIX Printing System (CUPS). -+ * -+ * Copyright (C) 2010 Red Hat, Inc. -+ * Authors: -+ * Tim Waugh <twaugh@redhat.com> -+ * -+ * Distribution and use rights are outlined in the file "LICENSE.txt" -+ * which should have been included with this file. If this file is -+ * file is missing or damaged, see the license at "http://www.cups.org/". -+ * -+ * Contents: -+ * -+ * cupsdInitTimeouts() - Initialise timeout structure. -+ * cupsdAddTimeout() - Add a timed callback. -+ * cupsdNextTimeout() - Find the next enabled timed callback. -+ * cupsdUpdateTimeout() - Adjust the time of a timed callback or disable it. -+ * cupsdRemoveTimeout() - Discard a timed callback. -+ * compare_timeouts() - Compare timed callbacks for array sorting. -+ */ -+ -+#include <config.h> -+ -+#ifdef HAVE_AVAHI /* Applies to entire file... */ -+ -+/* -+ * Include necessary headers... -+ */ -+ -+#include "cupsd.h" -+ -+#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) -+# include <malloc.h> -+#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ -+ -+#ifdef HAVE_AVAHI -+# include <avahi-common/timeval.h> -+#endif /* HAVE_AVAHI */ -+ -+ -+struct _cupsd_timeout_s -+{ -+ struct timeval when; -+ int enabled; -+ cupsd_timeoutfunc_t callback; -+ void *data; -+}; -+ -+/* -+ * Local functions... -+ */ -+ -+/* -+ * 'compare_timeouts()' - Compare timed callbacks for array sorting. -+ */ -+ -+static int -+compare_timeouts (cupsd_timeout_t *p0, cupsd_timeout_t *p1) -+{ -+ if (!p0->enabled || !p1->enabled) -+ { -+ if (!p0->enabled && !p1->enabled) -+ return (0); -+ -+ return (p0->enabled ? -1 : 1); -+ } -+ -+ return (avahi_timeval_compare (&p0->when, &p1->when)); -+} -+ -+ -+/* -+ * 'cupsdInitTimeouts()' - Initialise timeout structures. -+ */ -+ -+void -+cupsdInitTimeouts(void) -+{ -+ Timeouts = cupsArrayNew ((cups_array_func_t)compare_timeouts, NULL); -+} -+ -+ -+/* -+ * 'cupsdAddTimeout()' - Add a timed callback. -+ */ -+ -+cupsd_timeout_t * /* O - Timeout handle */ -+cupsdAddTimeout(const struct timeval *tv, /* I - Absolute time */ -+ cupsd_timeoutfunc_t cb, /* I - Callback function */ -+ void *data) /* I - User data */ -+{ -+ cupsd_timeout_t *timeout; -+ -+ timeout = malloc (sizeof(cupsd_timeout_t)); -+ if (timeout != NULL) -+ { -+ timeout->enabled = (tv != NULL); -+ if (tv) -+ { -+ timeout->when.tv_sec = tv->tv_sec; -+ timeout->when.tv_usec = tv->tv_usec; -+ } -+ -+ timeout->callback = cb; -+ timeout->data = data; -+ cupsArrayAdd (Timeouts, timeout); -+ } -+ -+ return timeout; -+} -+ -+ -+/* -+ * 'cupsdNextTimeout()' - Find the next enabled timed callback. -+ */ -+ -+cupsd_timeout_t * /* O - Next enabled timeout or NULL */ -+cupsdNextTimeout(long *delay) /* O - Seconds before scheduled */ -+{ -+ cupsd_timeout_t *first = cupsArrayFirst (Timeouts); -+ struct timeval curtime; -+ -+ if (first && !first->enabled) -+ first = NULL; -+ -+ if (first && delay) -+ { -+ gettimeofday (&curtime, NULL); -+ if (avahi_timeval_compare (&curtime, &first->when) > 0) -+ { -+ *delay = 0; -+ } else { -+ *delay = 1 + first->when.tv_sec - curtime.tv_sec; -+ if (first->when.tv_usec < curtime.tv_usec) -+ (*delay)--; -+ } -+ } -+ -+ return (first); -+} -+ -+ -+/* -+ * 'cupsdRunTimeout()' - Run a timed callback. -+ */ -+ -+void -+cupsdRunTimeout(cupsd_timeout_t *timeout) /* I - Timeout */ -+{ -+ if (!timeout) -+ return; -+ timeout->enabled = 0; -+ if (!timeout->callback) -+ return; -+ timeout->callback (timeout, timeout->data); -+} -+ -+/* -+ * 'cupsdUpdateTimeout()' - Adjust the time of a timed callback or disable it. -+ */ -+ -+void -+cupsdUpdateTimeout(cupsd_timeout_t *timeout, /* I - Timeout */ -+ const struct timeval *tv) /* I - Absolute time or NULL */ -+{ -+ cupsArrayRemove (Timeouts, timeout); -+ timeout->enabled = (tv != NULL); -+ if (tv) -+ { -+ timeout->when.tv_sec = tv->tv_sec; -+ timeout->when.tv_usec = tv->tv_usec; -+ } -+ cupsArrayAdd (Timeouts, timeout); -+} -+ -+ -+/* -+ * 'cupsdRemoveTimeout()' - Discard a timed callback. -+ */ -+ -+void -+cupsdRemoveTimeout(cupsd_timeout_t *timeout) /* I - Timeout */ -+{ -+ cupsArrayRemove (Timeouts, timeout); -+ free (timeout); -+} -+ -+ -+#endif /* HAVE_AVAHI ... from top of file */ -+ -+/* -+ * End of "$Id$". -+ */ ---- a/cgi-bin/admin.c -+++ b/cgi-bin/admin.c -@@ -1643,7 +1643,7 @@ - else - local_protocols[0] = '\0'; - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - if (cgiGetVariable("BROWSE_LOCAL_DNSSD")) - { - if (local_protocols[0]) -@@ -1651,7 +1651,7 @@ - else - strcat(local_protocols, "dnssd"); - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LDAP - if (cgiGetVariable("BROWSE_LOCAL_LDAP")) -@@ -2718,9 +2718,9 @@ - #endif /* HAVE_GSSAPI */ - cgiSetVariable("KERBEROS", ""); - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - cgiSetVariable("HAVE_DNSSD", "1"); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LDAP - cgiSetVariable("HAVE_LDAP", "1"); ---- a/scheduler/client.c -+++ b/scheduler/client.c -@@ -4987,7 +4987,7 @@ - !strncmp(host, "[::1]:", 6)); - } - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * Check if the hostname is something.local (Bonjour); if so, allow it. - */ -@@ -4996,7 +4996,7 @@ - (!_cups_strcasecmp(end, ".local") || !_cups_strncasecmp(end, ".local:", 7) || - !_cups_strcasecmp(end, ".local.") || !_cups_strncasecmp(end, ".local.:", 8))) - return (1); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - /* - * Check if the hostname is an IP address... ---- a/scheduler/dirsvc.c -+++ b/scheduler/dirsvc.c -@@ -27,6 +27,7 @@ - * ldap_connect() - Start new LDAP connection - * ldap_reconnect() - Reconnect to LDAP Server - * ldap_disconnect() - Disconnect from LDAP Server -+ * cupsdStartAvahiClient() - Start an Avahi client if needed - * cupsdStartBrowsing() - Start sending and receiving broadcast - * information. - * cupsdStartPolling() - Start polling servers as needed. -@@ -45,6 +46,8 @@ - * printer. - * dnssdPackTxtRecord() - Pack an array of key/value pairs into the TXT - * record format. -+ * avahiPackTxtRecord() - Pack an array of key/value pairs into an -+ * AvahiStringList. - * dnssdRegisterCallback() - DNSServiceRegister callback. - * dnssdRegisterPrinter() - Start sending broadcast information for a - * printer or update the broadcast contents. -@@ -83,6 +86,7 @@ - */ - - #include "cupsd.h" -+#include <assert.h> - #include <grp.h> - - #ifdef HAVE_DNSSD -@@ -97,6 +101,17 @@ - # endif /* HAVE_SYSTEMCONFIGURATION */ - # endif /* __APPLE__ */ - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-common/domain.h> -+#endif /* HAVE_AVAHI */ -+ -+ -+#ifdef HAVE_DNSSD -+typedef char *cupsd_txt_record_t; -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+typedef AvahiStringList *cupsd_txt_record_t; -+#endif /* HAVE_AVAHI */ - - - /* -@@ -159,27 +174,39 @@ - static void update_smb(int onoff); - - -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+static cupsd_txt_record_t dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p, -+ int for_lpd); -+static int dnssdComparePrinters(cupsd_printer_t *a, cupsd_printer_t *b); -+static void dnssdDeregisterPrinter(cupsd_printer_t *p); -+static void dnssdRegisterPrinter(cupsd_printer_t *p); -+static void dnssdStop(void); -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ -+ - #ifdef HAVE_DNSSD - # ifdef HAVE_COREFOUNDATION - static void dnssdAddAlias(const void *key, const void *value, - void *context); - # endif /* HAVE_COREFOUNDATION */ --static char *dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p, -- int for_lpd); --static int dnssdComparePrinters(cupsd_printer_t *a, cupsd_printer_t *b); --static void dnssdDeregisterPrinter(cupsd_printer_t *p); --static char *dnssdPackTxtRecord(int *txt_len, char *keyvalue[][2], -- int count); - static void dnssdRegisterCallback(DNSServiceRef sdRef, - DNSServiceFlags flags, - DNSServiceErrorType errorCode, - const char *name, const char *regtype, - const char *domain, void *context); --static void dnssdRegisterPrinter(cupsd_printer_t *p); --static void dnssdStop(void); - static void dnssdUpdate(void); - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+static AvahiStringList *avahiPackTxtRecord(char *keyvalue[][2], -+ int count); -+static void avahi_entry_group_cb (AvahiEntryGroup *group, -+ AvahiEntryGroupState state, -+ void *userdata); -+static void avahi_client_cb (AvahiClient *client, -+ AvahiClientState state, -+ void *userdata); -+#endif /* HAVE_AVAHI */ -+ - #ifdef HAVE_LDAP - static const char * const ldap_attrs[] =/* CUPS LDAP attributes */ - { -@@ -283,10 +310,10 @@ - ldap_dereg_printer(p); - #endif /* HAVE_LDAP */ - --#ifdef HAVE_DNSSD -- if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD)) - dnssdDeregisterPrinter(p); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - } - - -@@ -702,10 +729,10 @@ - slpRegisterPrinter(p); */ - #endif /* HAVE_LIBSLP */ - --#ifdef HAVE_DNSSD -- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ if ((BrowseLocalProtocols & BROWSE_DNSSD)) - dnssdRegisterPrinter(p); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - } - - -@@ -1419,6 +1446,27 @@ - #endif /* HAVE_LDAP */ - - -+#ifdef HAVE_AVAHI -+/* -+ * 'cupsdStartAvahiClient()' - Start an Avahi client if needed -+ */ -+ -+void -+cupsdStartAvahiClient(void) -+{ -+ if (!AvahiCupsClient && !AvahiCupsClientConnecting) -+ { -+ if (!AvahiCupsPollHandle) -+ AvahiCupsPollHandle = avahi_cups_poll_new (); -+ -+ if (AvahiCupsPollHandle) -+ avahi_client_new (avahi_cups_poll_get (AvahiCupsPollHandle), -+ AVAHI_CLIENT_NO_FAIL, avahi_client_cb, NULL, NULL); -+ } -+} -+#endif /* HAVE_AVAHI */ -+ -+ - /* - * 'cupsdStartBrowsing()' - Start sending and receiving broadcast information. - */ -@@ -1542,13 +1590,16 @@ - else - BrowseSocket = -1; - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_DNSSD) - { -+#ifdef HAVE_DNSSD - DNSServiceErrorType error; /* Error from service creation */ -+#endif /* HAVE_DNSSD */ - cupsd_listener_t *lis; /* Current listening socket */ - - -+#ifdef HAVE_DNSSD - /* - * First create a "master" connection for all registrations... - */ -@@ -1573,6 +1624,7 @@ - fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC); - - cupsdAddSelect(fd, (cupsd_selfunc_t)dnssdUpdate, NULL, NULL); -+#endif /* HAVE_DNSSD */ - - /* - * Then get the port we use for registrations. If we are not listening -@@ -1606,9 +1658,16 @@ - */ - - cupsdUpdateDNSSDName(); -+ -+#ifdef HAVE_AVAHI -+ cupsdStartAvahiClient (); -+#endif /* HAVE_AVAHI */ -+ -+#ifdef HAVE_DNSSD - } -- } - #endif /* HAVE_DNSSD */ -+ } -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LIBSLP - if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) -@@ -1834,10 +1893,10 @@ - BrowseSocket = -1; - } - --#ifdef HAVE_DNSSD -- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ if ((BrowseLocalProtocols & BROWSE_DNSSD)) - dnssdStop(); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LIBSLP - if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) && -@@ -1902,7 +1961,7 @@ - } - - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing... - */ -@@ -1910,8 +1969,14 @@ - void - cupsdUpdateDNSSDName(void) - { -+#ifdef HAVE_DNSSD - DNSServiceErrorType error; /* Error from service creation */ - char webif[1024]; /* Web interface share name */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ int ret; /* Error from service creation */ -+ char webif[AVAHI_LABEL_MAX]; /* Web interface share name */ -+#endif /* HAVE_AVAHI */ - # ifdef HAVE_SYSTEMCONFIGURATION - SCDynamicStoreRef sc; /* Context for dynamic store */ - CFDictionaryRef btmm; /* Back-to-My-Mac domains */ -@@ -2042,6 +2107,7 @@ - else - strlcpy(webif, "CUPS Web Interface", sizeof(webif)); - -+#ifdef HAVE_DNSSD - if (WebIFRef) - DNSServiceRefDeallocate(WebIFRef); - -@@ -2054,9 +2120,45 @@ - NULL)) != kDNSServiceErr_NoError) - cupsdLogMessage(CUPSD_LOG_ERROR, - "DNS-SD web interface registration failed: %d", error); -+#endif /* HAVE_DNSSD */ -+ -+#ifdef HAVE_AVAHI -+ if (!AvahiCupsClient) -+ /* -+ * Client not yet running. -+ */ -+ return; -+ -+ if (AvahiWebIFGroup) -+ avahi_entry_group_reset (AvahiWebIFGroup); -+ else -+ AvahiWebIFGroup = avahi_entry_group_new (AvahiCupsClient, -+ avahi_entry_group_cb, -+ NULL); -+ -+ if (AvahiWebIFGroup) -+ { -+ ret = avahi_entry_group_add_service (AvahiWebIFGroup, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, /* flags */ -+ webif, /* name */ -+ "_http._tcp", /* type */ -+ NULL, /* domain */ -+ NULL, /* host */ -+ DNSSDPort, /* port */ -+ "path=/", NULL); -+ if (ret == 0) -+ ret = avahi_entry_group_commit (AvahiWebIFGroup); -+ -+ if (ret != 0) -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Avahi web interface registration failed: %d", ret); -+ } -+#endif /* HAVE_AVAHI */ - } - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - - #ifdef HAVE_LDAP -@@ -2334,13 +2436,15 @@ - "Bad Back to My Mac domain in dynamic store!"); - } - # endif /* HAVE_COREFOUNDATION */ -+#endif /* HAVE_DNSSD */ - - -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * 'dnssdBuildTxtRecord()' - Build a TXT record from printer info. - */ - --static char * /* O - TXT record */ -+static cupsd_txt_record_t /* O - TXT record */ - dnssdBuildTxtRecord( - int *txt_len, /* O - TXT record length */ - cupsd_printer_t *p, /* I - Printer information */ -@@ -2379,7 +2483,12 @@ - keyvalue[i ][0] = "ty"; - keyvalue[i++][1] = p->make_model ? p->make_model : "Unknown"; - -- snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.", DNSSDHostName); -+ snprintf(admin_hostname, sizeof(admin_hostname), -+ "%s.local" -+#ifdef HAVE_DNSSD -+ "." /* terminating dot no good for Avahi */ -+#endif /* HAVE_DNSSD */ -+ , DNSSDHostName); - httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str), - "http", NULL, admin_hostname, DNSSDPort, "/%s/%s", - (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", -@@ -2462,7 +2571,12 @@ - * Then pack them into a proper txt record... - */ - -+#ifdef HAVE_DNSSD - return (dnssdPackTxtRecord(txt_len, keyvalue, i)); -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ return (avahiPackTxtRecord(keyvalue, i)); -+#endif /* HAVE_AVAHI */ - } - - -@@ -2474,7 +2588,16 @@ - dnssdComparePrinters(cupsd_printer_t *a,/* I - First printer */ - cupsd_printer_t *b)/* I - Second printer */ - { -- return (_cups_strcasecmp(a->reg_name, b->reg_name)); -+ if (!a->reg_name) -+ if (!b->reg_name) -+ return 0; -+ else -+ return -1; -+ else -+ if (!b->reg_name) -+ return 1; -+ else -+ return (_cups_strcasecmp(a->reg_name, b->reg_name)); - } - - -@@ -2489,6 +2612,10 @@ - { - cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdDeregisterPrinter(%s)", p->name); - -+#ifdef HAVE_DNSSD -+ if (!DNSSDRef) -+ return; -+ - /* - * Closing the socket deregisters the service - */ -@@ -2524,6 +2651,24 @@ - free(p->printer_txt); - p->printer_txt = NULL; - } -+#endif /* HAVE_DNSSD */ -+ -+#ifdef HAVE_AVAHI -+ if (p->avahi_group) -+ { -+ avahi_entry_group_reset (p->avahi_group); -+ avahi_entry_group_free (p->avahi_group); -+ p->avahi_group = NULL; -+ -+ if (p->ipp_txt) -+ avahi_string_list_free (p->ipp_txt); -+ -+ if (p->printer_txt) -+ avahi_string_list_free (p->printer_txt); -+ -+ p->ipp_txt = p->printer_txt = NULL; -+ } -+#endif /* HAVE_AVAHI */ - - /* - * Remove the printer from the array of DNS-SD printers, then clear the -@@ -2533,8 +2678,10 @@ - cupsArrayRemove(DNSSDPrinters, p); - cupsdClearString(&p->reg_name); - } -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - -+#ifdef HAVE_DNSSD - /* - * 'dnssdPackTxtRecord()' - Pack an array of key/value pairs into the - * TXT record format. -@@ -2644,8 +2791,10 @@ - LastEvent |= CUPSD_EVENT_PRINTER_MODIFIED; - } - } -+#endif /* HAVE_DNSSD */ - - -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer - * or update the broadcast contents. -@@ -2654,20 +2803,40 @@ - static void - dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */ - { -+#ifdef HAVE_DNSSD - DNSServiceErrorType se; /* dnssd errors */ - char *ipp_txt, /* IPP TXT record buffer */ - *printer_txt, /* LPD TXT record buffer */ -- name[1024], /* Service name */ -- *nameptr; /* Pointer into name */ -+ name[1024]; /* Service name */ - int ipp_len, /* IPP TXT record length */ - printer_len, /* LPD TXT record length */ - printer_port; /* LPD port number */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ int ret; /* Error code */ -+ AvahiStringList *ipp_txt, /* IPP TXT record */ -+ *printer_txt; /* LPD TXT record */ -+ char name[AVAHI_LABEL_MAX], /* Service name */ -+ fullsubtype[AVAHI_LABEL_MAX]; /* Full subtype */ -+ char *regtype_copy, /* Writeable copy of reg type */ -+ *subtype, /* Current service sub type */ -+ *nextsubtype; /* Next service sub type */ -+#endif /* HAVE_AVAHI */ -+ char *nameptr; /* Pointer into name */ - const char *regtype; /* Registration type */ - - -+#ifdef HAVE_DNSSD -+ if (!DNSSDRef) -+ return; -+ - cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, - !p->ipp_ref ? "new" : "update"); -- -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, -+ !p->avahi_group ? "new" : "update"); -+#endif /* HAVE_AVAHI */ - /* - * If per-printer sharing was just disabled make sure we're not - * registered before returning. -@@ -2686,12 +2855,36 @@ - if (p->info && strlen(p->info) > 0) - { - if (DNSSDComputerName) -- snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName); -+ { -+ /* -+ * Make sure there is room for at least 15 characters of -+ * DNSSDComputerName. -+ */ -+ -+ assert(sizeof(name) >= 15 + 4); -+ nameptr = name + strlcpy(name, p->info, -+ sizeof(name) - 4 - -+ strnlen(DNSSDComputerName, 15)); -+ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name)); -+ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name)); -+ } - else - strlcpy(name, p->info, sizeof(name)); - } - else if (DNSSDComputerName) -- snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName); -+ { -+ /* -+ * Make sure there is room for at least 15 characters of -+ * DNSSDComputerName. -+ */ -+ -+ assert(sizeof(name) >= 15 + 4); -+ nameptr = name + strlcpy(name, p->info, -+ sizeof(name) - 4 - -+ strnlen(DNSSDComputerName, 15)); -+ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name)); -+ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name)); -+ } - else - strlcpy(name, p->name, sizeof(name)); - -@@ -2712,6 +2905,7 @@ - * Register IPP and (optionally) LPD... - */ - -+#ifdef HAVE_DNSSD - ipp_len = 0; /* anti-compiler-warning-code */ - ipp_txt = dnssdBuildTxtRecord(&ipp_len, p, 0); - -@@ -2884,6 +3078,209 @@ - - if (printer_txt) - free(printer_txt); -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ if (!AvahiCupsClient) -+ /* -+ * Client not running yet. The client callback will call us again later. -+ */ -+ return; -+ -+ ipp_txt = dnssdBuildTxtRecord(NULL, p, 0); -+ printer_txt = dnssdBuildTxtRecord(NULL, p, 1); -+ regtype = (p->type & CUPS_PRINTER_FAX) ? "_fax-ipp._tcp" : DNSSDRegType; -+ -+ if (p->avahi_group && p->ipp_txt && ipp_txt && -+ !avahi_string_list_equal (p->ipp_txt, ipp_txt)) -+ { -+ /* -+ * Update the existing registration... -+ */ -+ -+ avahi_string_list_free (p->ipp_txt); -+ -+ if (p->printer_txt) -+ avahi_string_list_free (p->printer_txt); -+ -+ /* -+ * Update the service group entry. -+ */ -+ -+ regtype_copy = strdup (regtype); -+ subtype = strchr (regtype_copy, ','); -+ if (subtype) -+ *subtype = '\0'; -+ -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Updating TXT record for %s (%s)", name, regtype_copy); -+ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ regtype_copy, -+ NULL, ipp_txt); -+ free (regtype_copy); -+ -+ if (ret < 0) -+ goto update_failed; -+ -+ p->ipp_txt = ipp_txt; -+ ipp_txt = NULL; -+ -+ if (BrowseLocalProtocols & BROWSE_LPD) -+ { -+ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ "_printer._tcp", NULL, -+ printer_txt); -+ if (ret < 0) -+ goto update_failed; -+ -+ p->printer_txt = printer_txt; -+ printer_txt = NULL; -+ } -+ -+ ret = avahi_entry_group_commit (p->avahi_group); -+ if (ret < 0) -+ { -+ update_failed: -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Failed to update TXT record for %s: %d", -+ name, ret); -+ avahi_entry_group_reset (p->avahi_group); -+ avahi_entry_group_free (p->avahi_group); -+ p->avahi_group = NULL; -+ ipp_txt = p->ipp_txt; -+ p->ipp_txt = NULL; -+ } -+ } -+ -+ if (!p->avahi_group) -+ { -+ /* -+ * Initial registration. Use the _fax subtype for fax queues... -+ */ -+ -+ p->avahi_group = avahi_entry_group_new (AvahiCupsClient, -+ avahi_entry_group_cb, -+ p); -+ -+ cupsdLogMessage(CUPSD_LOG_DEBUG, -+ "Registering Avahi printer %s with name \"%s\" and " -+ "type \"%s\"", p->name, name, regtype); -+ -+ if (!p->avahi_group) -+ { -+ ret = 0; -+ goto add_failed; -+ } -+ -+ /* -+ * Add each service type (DNSSDRegType may contain several, -+ * separated by commas). -+ */ -+ -+ subtype = regtype_copy = strdup (regtype); -+ while (subtype && *subtype) -+ { -+ nextsubtype = strchr (subtype, ','); -+ if (nextsubtype) -+ *nextsubtype++ = '\0'; -+ -+ if (subtype == regtype_copy) -+ { -+ /* -+ * Main type entry. -+ */ -+ -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Adding TXT record for %s (%s)", name, regtype_copy); -+ ret = avahi_entry_group_add_service_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, regtype_copy, -+ NULL, NULL, -+ DNSSDPort, -+ ipp_txt); -+ } -+ else -+ { -+ /* -+ * Sub-type entry. -+ */ -+ -+ snprintf (fullsubtype, sizeof(fullsubtype), -+ "%s._sub.%s", subtype, regtype_copy); -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Adding TXT record for %s (%s)", name, fullsubtype); -+ ret = avahi_entry_group_add_service_subtype (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ regtype_copy, -+ NULL, fullsubtype); -+ } -+ -+ if (ret < 0) -+ { -+ free (regtype_copy); -+ goto add_failed; -+ } -+ -+ subtype = nextsubtype; -+ } -+ -+ free (regtype_copy); -+ p->ipp_txt = ipp_txt; -+ ipp_txt = NULL; -+ -+ if (BrowseLocalProtocols & BROWSE_LPD) -+ { -+ cupsdLogMessage(CUPSD_LOG_DEBUG, -+ "Registering Avahi printer %s with name \"%s\" and " -+ "type \"_printer._tcp\"", p->name, name); -+ -+ ret = avahi_entry_group_add_service_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ "_printer._tcp", NULL, NULL, -+ 515, -+ printer_txt); -+ if (ret < 0) -+ goto add_failed; -+ -+ p->printer_txt = printer_txt; -+ printer_txt = NULL; -+ } -+ -+ ret = avahi_entry_group_commit (p->avahi_group); -+ -+ if (ret < 0) -+ { -+ add_failed: -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Failed to add Avahi entry for %s: %d", -+ name, ret); -+ if (p->avahi_group) -+ { -+ avahi_entry_group_reset (p->avahi_group); -+ avahi_entry_group_free (p->avahi_group); -+ p->avahi_group = NULL; -+ } -+ ipp_txt = p->ipp_txt; -+ p->ipp_txt = NULL; -+ } -+ } -+ -+ if (ipp_txt) -+ avahi_string_list_free (ipp_txt); -+ -+ if (printer_txt) -+ avahi_string_list_free (printer_txt); -+#endif /* HAVE_AVAHI */ - } - - -@@ -2896,6 +3293,10 @@ - { - cupsd_printer_t *p; /* Current printer */ - -+#ifdef HAVE_DNSSD -+ if (!DNSSDRef) -+ return; -+#endif /* HAVE_DNSSD */ - - /* - * De-register the individual printers -@@ -2906,6 +3307,7 @@ - p = (cupsd_printer_t *)cupsArrayNext(Printers)) - dnssdDeregisterPrinter(p); - -+#ifdef HAVE_DNSSD - /* - * Shutdown the rest of the service refs... - */ -@@ -2926,14 +3328,17 @@ - - DNSServiceRefDeallocate(DNSSDRef); - DNSSDRef = NULL; -+#endif /* HAVE_DNSSD */ - - cupsArrayDelete(DNSSDPrinters); - DNSSDPrinters = NULL; - - DNSSDPort = 0; - } -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - -+#ifdef HAVE_DNSSD - /* - * 'dnssdUpdate()' - Handle DNS-SD queries. - */ -@@ -2955,6 +3360,147 @@ - #endif /* HAVE_DNSSD */ - - -+#ifdef HAVE_AVAHI -+/* -+ * 'avahiPackTxtRecord()' - Pack an array of key/value pairs into an -+ * AvahiStringList. -+ */ -+ -+static AvahiStringList * /* O - new string list */ -+avahiPackTxtRecord(char *keyvalue[][2], /* I - Table of key value pairs */ -+ int count) /* I - Number of items in table */ -+{ -+ AvahiStringList *strlst = NULL; -+ char **elements; -+ size_t len; -+ int i = 0; -+ -+ elements = malloc ((1 + count) * sizeof (char *)); -+ if (!elements) -+ goto cleanup; -+ -+ for (i = 0; i < count; i++) -+ { -+ len = (1 + strlen (keyvalue[i][0]) + -+ (keyvalue[i][1] ? 1 + strlen (keyvalue[i][1]) : 1)); -+ elements[i] = malloc (len * sizeof (char)); -+ if (!elements[i]) -+ goto cleanup; -+ -+ snprintf (elements[i], len, "%s=%s", keyvalue[i][0], keyvalue[i][1]); -+ } -+ -+ strlst = avahi_string_list_new_from_array ((const char **) elements, count); -+ -+cleanup: -+ while (--i >= 0) -+ free (elements[i]); -+ -+ free (elements); -+ return (strlst); -+} -+ -+ -+/* -+ * 'avahi_entry_group_cb()' - Avahi entry group callback function. -+ */ -+static void -+avahi_entry_group_cb (AvahiEntryGroup *group, -+ AvahiEntryGroupState state, -+ void *userdata) -+{ -+ char *name; -+ -+ if (userdata) -+ name = ((cupsd_printer_t *) userdata)->reg_name; -+ else -+ name = "CUPS web interface"; -+ -+ switch (state) -+ { -+ case AVAHI_ENTRY_GROUP_UNCOMMITED: -+ case AVAHI_ENTRY_GROUP_REGISTERING: -+ break; -+ -+ case AVAHI_ENTRY_GROUP_ESTABLISHED: -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Avahi entry group established for %s", name); -+ break; -+ -+ default: -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Avahi entry group %s has state %d", -+ name, state); -+ break; -+ } -+} -+ -+ -+/* -+ * 'avahi_client_cb()' - Avahi client callback function. -+ */ -+static void -+avahi_client_cb (AvahiClient *client, -+ AvahiClientState state, -+ void *userdata) -+{ -+ cupsd_printer_t *printer; -+ switch (state) -+ { -+ case AVAHI_CLIENT_S_RUNNING: -+ /* -+ * Avahi client started successfully. -+ */ -+ AvahiCupsClient = client; -+ AvahiCupsClientConnecting = 0; -+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client started"); -+ -+ cupsdUpdateDNSSDName (); -+ -+ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers); -+ printer; -+ printer = (cupsd_printer_t *)cupsArrayNext(Printers)) -+ if (Browsing && (BrowseLocalProtocols & BROWSE_DNSSD) && -+ (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT | -+ CUPS_PRINTER_SCANNER))) && printer->shared) -+ dnssdRegisterPrinter (printer); -+ -+ break; -+ -+ case AVAHI_CLIENT_CONNECTING: -+ /* -+ * No Avahi daemon, client is waiting. -+ */ -+ AvahiCupsClientConnecting = 1; -+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client connecting"); -+ break; -+ -+ case AVAHI_CLIENT_FAILURE: -+ /* -+ * Avahi client failed, close it to allow a clean restart. -+ */ -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Avahi client failed, " -+ "closing client to allow a clean restart"); -+ -+ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers); -+ printer; -+ printer = (cupsd_printer_t *)cupsArrayNext(Printers)) -+ dnssdDeregisterPrinter (printer); -+ -+ avahi_client_free(client); -+ AvahiCupsClientConnecting = 0; -+ AvahiCupsClient = NULL; -+ -+ break; -+ -+ default: -+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client state: %d", state); -+ } -+} -+#endif /* HAVE_AVAHI */ -+ -+ - /* - * 'get_auth_info_required()' - Get the auth-info-required value to advertise. - */ ---- a/scheduler/dirsvc.h -+++ b/scheduler/dirsvc.h -@@ -31,6 +31,10 @@ - # endif /* HAVE_LDAP_SSL_H */ - #endif /* HAVE_LDAP */ - -+#ifdef HAVE_AVAHI -+# include <avahi-client/publish.h> -+#endif /* HAVE_AVAHI */ -+ - /* - * Browse protocols... - */ -@@ -131,19 +135,22 @@ - VAR cupsd_statbuf_t *PollStatusBuffer VALUE(NULL); - /* Status buffer for pollers */ - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - VAR char *DNSSDComputerName VALUE(NULL), - /* Computer/server name */ - *DNSSDHostName VALUE(NULL), - /* Hostname */ - *DNSSDRegType VALUE(NULL); - /* Bonjour registration type */ --VAR cups_array_t *DNSSDAlias VALUE(NULL); -- /* List of dynamic ServerAlias's */ - VAR int DNSSDPort VALUE(0); - /* Port number to register */ - VAR cups_array_t *DNSSDPrinters VALUE(NULL); - /* Printers we have registered */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ -+ -+#ifdef HAVE_DNSSD -+VAR cups_array_t *DNSSDAlias VALUE(NULL); -+ /* List of dynamic ServerAlias's */ - VAR DNSServiceRef DNSSDRef VALUE(NULL), - /* Master DNS-SD service reference */ - WebIFRef VALUE(NULL), -@@ -152,6 +159,17 @@ - /* Remote printer browse reference */ - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+VAR AvahiCupsPoll *AvahiCupsPollHandle VALUE(NULL); -+ /* AvahiCupsPoll object */ -+VAR AvahiClient *AvahiCupsClient VALUE(NULL); -+ /* AvahiClient object */ -+VAR int AvahiCupsClientConnecting VALUE(0); -+ /* Is AvahiClient object connecting? */ -+VAR AvahiEntryGroup *AvahiWebIFGroup VALUE(NULL); -+ /* Web interface entry group */ -+#endif /* HAVE_AVAHI */ -+ - #ifdef HAVE_LIBSLP - VAR SLPHandle BrowseSLPHandle VALUE(NULL); - /* SLP API handle */ -@@ -195,13 +213,14 @@ - extern void cupsdRestartPolling(void); - extern void cupsdSaveRemoteCache(void); - extern void cupsdSendBrowseList(void); -+extern void cupsdStartAvahiClient(void); - extern void cupsdStartBrowsing(void); - extern void cupsdStartPolling(void); - extern void cupsdStopBrowsing(void); - extern void cupsdStopPolling(void); --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - extern void cupsdUpdateDNSSDName(void); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - #ifdef HAVE_LDAP - extern void cupsdUpdateLDAPBrowse(void); - #endif /* HAVE_LDAP */ ---- a/scheduler/ipp.c -+++ b/scheduler/ipp.c -@@ -6087,7 +6087,7 @@ - ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time", - ippTimeToDate(curtime)); - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - if (!ra || cupsArrayFind(ra, "printer-dns-sd-name")) - { - if (printer->reg_name) -@@ -6097,7 +6097,7 @@ - ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE, - "printer-dns-sd-name", 0); - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - if (!ra || cupsArrayFind(ra, "printer-error-policy")) - ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME, ---- a/scheduler/printers.c -+++ b/scheduler/printers.c -@@ -883,9 +883,9 @@ - cupsdClearString(&p->alert); - cupsdClearString(&p->alert_description); - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - cupsdClearString(&p->pdl); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - cupsArrayDelete(p->filetypes); - -@@ -3765,7 +3765,7 @@ - attr->values[i].string.text = _cupsStrAlloc(mimetype); - } - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - { - char pdl[1024]; /* Buffer to build pdl list */ - mime_filter_t *filter; /* MIME filter looping var */ -@@ -3821,7 +3821,7 @@ - - cupsdSetString(&p->pdl, pdl); - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - } - - ---- a/scheduler/printers.h -+++ b/scheduler/printers.h -@@ -16,6 +16,9 @@ - #ifdef HAVE_DNSSD - # include <dns_sd.h> - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include "avahi.h" -+#endif /* HAVE_AVAHI */ - #include <cups/pwg-private.h> - - -@@ -95,16 +98,23 @@ - time_t marker_time; /* Last time marker attributes were updated */ - _ppd_cache_t *pc; /* PPD cache and mapping data */ - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - char *reg_name, /* Name used for service registration */ -- *pdl, /* pdl value for TXT record */ -- *ipp_txt, /* IPP TXT record contents */ -+ *pdl; /* pdl value for TXT record */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ -+#ifdef HAVE_DNSSD -+ char *ipp_txt, /* IPP TXT record contents */ - *printer_txt; /* LPD TXT record contents */ - int ipp_len, /* IPP TXT record length */ - printer_len; /* LPD TXT record length */ - DNSServiceRef ipp_ref, /* Reference for _ipp._tcp,_cups */ - printer_ref; /* Reference for _printer._tcp */ - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ AvahiStringList *ipp_txt, /* IPP TXT record */ -+ *printer_txt; /* LPD TXT record */ -+ AvahiEntryGroup *avahi_group; /* Avahi entry group */ -+#endif /* HAVE_AVAHI */ - }; - - ---- a/scheduler/conf.c -+++ b/scheduler/conf.c -@@ -650,7 +650,7 @@ - Browsing = CUPS_DEFAULT_BROWSING; - DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED; - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups"); - #endif /* HAVE_DNSSD */ - diff --git a/libre/epdfview-libre/PKGBUILD b/libre/epdfview-libre/PKGBUILD index 9923ad1cf..fa89351f7 100644 --- a/libre/epdfview-libre/PKGBUILD +++ b/libre/epdfview-libre/PKGBUILD @@ -7,7 +7,7 @@ pkgname=epdfview-libre _pkgname=epdfview pkgver=0.1.8 -pkgrel=3 +pkgrel=3.1 pkgdesc="A free lightweight PDF document viewer." url="http://www.emma-soft.com/projects/epdfview/" arch=('i686' 'x86_64' 'mips64el') diff --git a/libre/kdelibs-libre/PKGBUILD b/libre/kdelibs-libre/PKGBUILD index 19cdc41a6..0ebd5b60e 100644 --- a/libre/kdelibs-libre/PKGBUILD +++ b/libre/kdelibs-libre/PKGBUILD @@ -5,7 +5,7 @@ _pkgname=kdelibs pkgname=kdelibs-libre pkgver=4.8.0 -pkgrel=3 +pkgrel=3.1 pkgdesc="KDE Core Libraries" arch=('i686' 'x86_64' 'mips64el') url='http://www.kde.org' diff --git a/libre/kdenetwork-libre/PKGBUILD b/libre/kdenetwork-libre/PKGBUILD index 2f4b4c21c..c6b7d2826 100644 --- a/libre/kdenetwork-libre/PKGBUILD +++ b/libre/kdenetwork-libre/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 147895 2012-01-28 10:36:24Z andrea $ +# $Id: PKGBUILD 150223 2012-02-15 09:34:48Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> @@ -11,7 +11,7 @@ pkgname=('kdenetwork-filesharing' 'kdenetwork-krdc' 'kdenetwork-krfb') pkgver=4.8.0 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64' 'mips64el') url='http://www.kde.org' license=('GPL' 'LGPL' 'FDL') @@ -19,7 +19,7 @@ groups=('kde' 'kdenetwork') makedepends=('cmake' 'automoc4' 'boost' 'speex' 'ortp' 'libotr' 'ppp' 'qca-ossl' 'kdebase-workspace' 'kdebase-lib' 'libvncserver' 'libmsn' 'v4l-utils' 'libidn' 'rdesktop' 'qimageblitz' 'libxdamage' 'libgadu' - 'telepathy-qt4' 'libktorrent' 'libmms' 'mediastreamer') + 'libktorrent' 'libmms' 'mediastreamer') source=("http://repo.parabolagnulinux.org/other/${pkgbase}-libre-${pkgver}.tar.xz") sha1sums=('2472128aef671e3474505cf65397dfc7ef9f79bb') @@ -103,7 +103,7 @@ package_kdenetwork-kppp() { package_kdenetwork-krdc() { pkgdesc='Remote Desktop Client' - depends=('kdebase-runtime' 'libvncserver' 'rdesktop' 'telepathy-qt4') + depends=('kdebase-runtime' 'libvncserver' 'rdesktop') optdepends=('kdebase-keditbookmarks: to edit bookmarks') url="http://kde.org/applications/internet/krdc/" cd $srcdir/build/krdc diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index 8d2b6e9d1..7cd327ca1 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -82,6 +82,9 @@ build() { -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \ -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"-LIBRE\"|g" ./.config + + sed -e "s|# \(CONFIG_BATMAN_ADV\) is not set|\1=m\n\1_DEBUG=n|" \ + -i ./.config else cat "${srcdir}/config.${CARCH}" > ./.config # simpler fi @@ -196,7 +199,7 @@ package_linux-libre-headers() { # In case of repackaging this is empty if [ -z "${_kernver}" ]; then - cd ${srcdir}/linux-$pkgver + cd ${srcdir}/linux-${_basekernel} _kernver="$(make kernelrelease)" fi @@ -230,7 +233,8 @@ package_linux-libre-headers() { if [ "$CARCH" = "mips64el" ]; then cp "arch/${KARCH}/Kbuild" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" - cp "arch/${KARCH}/loongson" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + cp -r "arch/${KARCH}/loongson" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" + cp -r "arch/${KARCH}/loongson1" "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/" cp "${srcdir}/Kbuild.platforms" "${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/" fi diff --git a/libre/metalog/PKGBUILD b/libre/metalog/PKGBUILD index c26467d36..081d7882a 100644 --- a/libre/metalog/PKGBUILD +++ b/libre/metalog/PKGBUILD @@ -4,7 +4,7 @@ pkgname=metalog pkgver=2.0 -pkgrel=2 +pkgrel=3 pkgdesc="Metalog is a modern replacement for syslogd and klogd" url="http://metalog.sourceforge.net" license=('GPL') diff --git a/libre/seamonkey-libre/PKGBUILD b/libre/seamonkey-libre/PKGBUILD index 21fc89d96..d70356044 100644 --- a/libre/seamonkey-libre/PKGBUILD +++ b/libre/seamonkey-libre/PKGBUILD @@ -1,56 +1,58 @@ -# $Id$ +# $Id: PKGBUILD 149871 2012-02-11 11:12:41Z ibiru $ # Maintainer: Jan de Groot <jgc@archlinux.org> +_pkgname=seamonkey pkgname=seamonkey-libre -pkgver=2.0.12 +pkgver=2.7.1 pkgrel=1 pkgdesc="SeaMonkey internet suite, with GNUZilla addons" arch=('i686' 'x86_64' 'mips64el') license=('MPL') -depends=('gtk2' 'mozilla-common' 'nss' 'libxt' 'gcc-libs' 'alsa-lib' 'dbus-glib') -makedepends=('zip' 'pkg-config' 'libgnomeui>=2.24.2' 'python2' 'libidl2' 'autoconf2.13') +depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'nss' 'sqlite3' 'startup-notification') +makedepends=('unzip' 'zip' 'pkg-config' 'python2' 'yasm' 'wireless_tools' 'mesa' 'autoconf2.13') replaces=('mozilla' 'seamonkey') conflicts=('seamonkey') provides=("seamonkey=$pkgver") +install=$_pkgname.install url="http://www.mozilla.org/projects/seamonkey" -source=(http://releases.mozilla.org/pub/mozilla.org/seamonkey/releases/${pkgver}/source/seamonkey-${pkgver}.source.tar.bz2 +source=(ftp://releases.mozilla.org/pub/mozilla.org/$_pkgname/releases/$pkgver/source/$_pkgname-$pkgver.source.tar.bz2 mozconfig seamonkey.desktop - seamonkey-appversion.patch seamonkey-2.0-lang.patch - python27.patch + libvpx.patch gnuzilla-addons.patch) -md5sums=('681328d58a71d23e52ebe986a8eca3fd' - '4978159e4921892e34dcd7e9804f0437' - '448848e65efcbf1b2be2873b66b6cd48' - 'a4275fc48361c80f676e96fdb28bd74e' +md5sums=('a16764e55ef8e59c469dc44b63459ad6' + 'd02b5f002a7cdf8d15dccd2548d09256' + '6119a2254716752c9d08e366f8d4c048' '25b6fe16ac24cd5c852213e5c1adb272' - '47e57931d65c71baafcf0e4f9160e876' - '178073b25aa41ffc601bcd9ddf1f69de') + '5b2aaff7dfe7f1f94ad965905b20e782' + '4347c7be7e48a9987765552f4f6362bc') build() { - cd "${srcdir}/comm-1.9.1" - patch -Np1 -i "${srcdir}/seamonkey-appversion.patch" - patch -Np1 -i "${srcdir}/seamonkey-2.0-lang.patch" - patch -Np0 -i "${srcdir}/python27.patch" + cd "$srcdir/comm-release" + patch -Np1 -i "$srcdir/seamonkey-2.0-lang.patch" + patch -Np1 -i "$srcdir/libvpx.patch" + patch -Np1 -i "${srcdir}/gnuzilla-addons.patch" - pushd suite/browser >/dev/null - patch -Np0 -i "${srcdir}/gnuzilla-addons.patch" - popd >/dev/null + cp "$srcdir/mozconfig" .mozconfig + export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/seamonkey-$pkgver" - cp "${srcdir}/mozconfig" .mozconfig - unset CFLAGS - unset CXXFLAGS + make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS" +} + +package() { + cd "$srcdir/comm-release" - export LDFLAGS="-Wl,-rpath,/usr/lib/seamonkey-2.0" + make -j1 -f client.mk DESTDIR="$pkgdir" install - make -j1 -f client.mk build MOZ_MAKE_FLAGS="${MAKEFLAGS}" - make -j1 DESTDIR="${pkgdir}" install + rm -rf "$pkgdir"/usr/lib/seamonkey-$pkgver/{dictionaries,hyphenation} + ln -sf /usr/share/hunspell "$pkgdir/usr/lib/seamonkey-$pkgver/dictionaries" + ln -sf /usr/share/hyphen "$pkgdir/usr/lib/seamonkey-$pkgver/hyphenation" - install -m755 -d "${pkgdir}/usr/share/applications" - install -m755 -d "${pkgdir}/usr/share/pixmaps" - install -m644 "${srcdir}/comm-1.9.1/suite/branding/icons/gtk/seamonkey.png" \ - "${pkgdir}/usr/share/pixmaps/" - install -m644 "${srcdir}/seamonkey.desktop" "${pkgdir}/usr/share/applications/" + install -m755 -d "$pkgdir/usr/share/applications" + install -m755 -d "$pkgdir/usr/share/pixmaps" + install -m644 suite/branding/nightly/icons/gtk/seamonkey.png \ + "$pkgdir/usr/share/pixmaps/" + install -m644 "$srcdir/seamonkey.desktop" "$pkgdir/usr/share/applications/" - rm -f "${pkgdir}/usr/lib/pkgconfig/"seamonkey-ns{s,pr}.pc + rm -f "$pkgdir/usr/lib/pkgconfig/"seamonkey-ns{s,pr}.pc } diff --git a/libre/seamonkey-libre/gnuzilla-addons.patch b/libre/seamonkey-libre/gnuzilla-addons.patch index 6cf586e7a..ae95052c5 100644 --- a/libre/seamonkey-libre/gnuzilla-addons.patch +++ b/libre/seamonkey-libre/gnuzilla-addons.patch @@ -1,29 +1,28 @@ ---- usr/lib/seamonkey-2.0/defaults/pref/browser-prefs.js 2011-03-03 06:47:16.000000000 -0300 -+++ browser-prefs.js 2011-03-08 12:02:29.616789776 -0300 -@@ -465,12 +465,12 @@ - - // Preferences for the Get Add-ons pane - pref("extensions.getAddons.showPane", true); --pref("extensions.getAddons.browseAddons", "https://addons.mozilla.org/%LOCALE%/%APP%"); -+pref("extensions.getAddons.browseAddons", "http://www.gnu.org/software/gnuzilla/addons.html"); - pref("extensions.getAddons.maxResults", 5); --pref("extensions.getAddons.recommended.browseURL", "https://addons.mozilla.org/%LOCALE%/%APP%/recommended"); --pref("extensions.getAddons.recommended.url", "https://services.addons.mozilla.org/%LOCALE%/%APP%/api/%API_VERSION%/list/featured/all/10/%OS%/%VERSION%"); +diff -ru comm-release.orig/suite/browser/browser-prefs.js comm-release/suite/browser/browser-prefs.js +--- comm-release.orig/suite/browser/browser-prefs.js 2012-02-12 21:59:22.006597211 +0100 ++++ comm-release/suite/browser/browser-prefs.js 2012-02-12 22:03:37.727232650 +0100 +@@ -587,10 +587,10 @@ + // Preferences for AMO integration + pref("extensions.getAddons.cache.enabled", true); // also toggles personalized recommendations + pref("extensions.getAddons.maxResults", 15); +-pref("extensions.getAddons.get.url", "https://services.addons.mozilla.org/%LOCALE%/%APP%/api/%API_VERSION%/search/guid:%IDS%?src=seamonkey&appOS=%OS%&appVersion=%VERSION%&tMain=%TIME_MAIN%&tFirstPaint=%TIME_FIRST_PAINT%&tSessionRestored=%TIME_SESSION_RESTORED%"); -pref("extensions.getAddons.search.browseURL", "https://addons.mozilla.org/%LOCALE%/%APP%/search?q=%TERMS%"); --pref("extensions.getAddons.search.url", "https://services.addons.mozilla.org/%LOCALE%/%APP%/api/%API_VERSION%/search/%TERMS%/all/10/%OS%/%VERSION%"); -+pref("extensions.getAddons.recommended.browseURL", "http://www.gnu.org/software/gnuzilla/addons.html"); -+pref("extensions.getAddons.recommended.url", "http://www.gnu.org/software/gnuzilla/addons.html"); +-pref("extensions.getAddons.search.url", "https://services.addons.mozilla.org/%LOCALE%/%APP%/api/%API_VERSION%/search/%TERMS%/all/%MAX_RESULTS%/%OS%/%VERSION%/%COMPATIBILITY_MODE%?src=seamonkey"); +-pref("extensions.webservice.discoverURL", "https://services.addons.mozilla.org/%LOCALE%/%APP%/discovery/pane/%VERSION%/%OS%"); ++pref("extensions.getAddons.get.url", "http://www.gnu.org/software/gnuzilla/addons.html"); +pref("extensions.getAddons.search.browseURL", "http://www.gnu.org/software/gnuzilla/addons.html"); +pref("extensions.getAddons.search.url", "http://www.gnu.org/software/gnuzilla/addons.html"); ++pref("extensions.webservice.discoverURL", "http://www.gnu.org/software/gnuzilla/addons.html"); + + // getMoreThemes is used by our UI under our switch theme menu + pref("extensions.getMoreThemesURL", "chrome://branding/locale/brand.properties"); +@@ -715,7 +715,7 @@ + #endif - // Non-symmetric (not shared by extensions) extension-specific [update] preferences - pref("extensions.getMoreExtensionsURL", "chrome://branding/locale/brand.properties"); -@@ -557,7 +557,7 @@ - // Disables default plugin for Plugin Finder Service - pref("plugin.default_plugin_disabled", true); // plugin finder service url -pref("pfs.datasource.url", "https://pfs.mozilla.org/plugins/PluginFinderService.php?mimetype=%PLUGIN_MIMETYPE%&appID=%APP_ID%&appVersion=%APP_VERSION%&clientOS=%CLIENT_OS%&chromeLocale=%CHROME_LOCALE%"); +pref("pfs.datasource.url", "http://www.gnu.org/software/gnuzilla/addons.html"); - pref("plugins.hide_infobar_for_missing_plugin", false); - - //@line 584 "/build/src/comm-1.9.1/suite/browser/browser-prefs.js" + pref("plugins.update.url", "http://www.mozilla.com/%LOCALE%/plugincheck/"); + pref("plugins.update.notifyUser", false); + pref("plugins.hide_infobar_for_outdated_plugin", false); +Tylko w comm-release/suite/browser: browser-prefs.js~ diff --git a/libre/seamonkey-libre/libvpx.patch b/libre/seamonkey-libre/libvpx.patch new file mode 100644 index 000000000..d0f9a0f4c --- /dev/null +++ b/libre/seamonkey-libre/libvpx.patch @@ -0,0 +1,12 @@ +diff -Nur comm-release.orig/mozilla/configure.in comm-release/mozilla/configure.in +--- comm-release.orig/mozilla/configure.in 2012-02-05 18:02:17.376830377 +0000 ++++ comm-release/mozilla/configure.in 2012-02-05 18:03:25.246274275 +0000 +@@ -5629,7 +5629,7 @@ + dnl v0.9.6 one to check for. + AC_TRY_COMPILE([ + #include <vpx/vpx_decoder.h> +- #if !defined(VPX_CODEC_USE_INPUT_PARTITION) ++ #if !defined(VPX_CODEC_USE_INPUT_FRAGMENTS) + #error "test failed." + #endif + ], diff --git a/libre/seamonkey-libre/mozconfig b/libre/seamonkey-libre/mozconfig index 4eb1b51ea..8257f8e4f 100644 --- a/libre/seamonkey-libre/mozconfig +++ b/libre/seamonkey-libre/mozconfig @@ -1,30 +1,35 @@ +ac_add_options --enable-application=suite + +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib + ac_add_options --with-system-nspr ac_add_options --with-system-nss ac_add_options --with-system-jpeg ac_add_options --with-system-zlib +ac_add_options --with-system-bz2 ac_add_options --with-system-png +ac_add_options --with-system-libevent +ac_add_options --with-system-libvpx +ac_add_options --enable-system-hunspell +ac_add_options --enable-system-sqlite +ac_add_options --enable-system-cairo ac_add_options --with-pthreads + +# Features +ac_add_options --enable-startup-notification +ac_add_options --enable-safe-browsing +ac_add_options --enable-gio + +ac_add_options --disable-gnomevfs +ac_add_options --disable-crashreporter +ac_add_options --disable-updater ac_add_options --disable-tests -ac_add_options --disable-debug +ac_add_options --disable-mochitest ac_add_options --disable-installer -ac_add_options --disable-crashreporter + +# Optimization ac_add_options --enable-optimize -ac_add_options --enable-xinerama -ac_add_options --enable-default-toolkit=cairo-gtk2 -ac_add_options --disable-xprint -ac_add_options --enable-strip -ac_add_options --enable-pango -#disabled due to bugs with cairo 1.10 -#ac_add_options --enable-system-cairo -ac_add_options --enable-svg -ac_add_options --enable-canvas -ac_add_options --prefix=/usr -ac_add_options --mandir=/usr/share/man -ac_add_options --enable-crypto -ac_add_options --enable-application=suite -ac_cv_visibility_pragma=no -export BUILD_OFFICIAL=1 export MOZILLA_OFFICIAL=1 -mk_add_options BUILD_OFFICIAL=1 mk_add_options MOZILLA_OFFICIAL=1 diff --git a/libre/seamonkey-libre/seamonkey-appversion.patch b/libre/seamonkey-libre/seamonkey-appversion.patch deleted file mode 100644 index 0c34cf477..000000000 --- a/libre/seamonkey-libre/seamonkey-appversion.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur comm-1.9.1.orig/suite/installer/Makefile.in comm-1.9.1/suite/installer/Makefile.in ---- comm-1.9.1.orig/suite/installer/Makefile.in 2010-01-04 23:01:34.000000000 +0200 -+++ comm-1.9.1/suite/installer/Makefile.in 2010-01-11 22:38:44.000000000 +0200 -@@ -42,6 +42,8 @@ - - include $(DEPTH)/config/autoconf.mk - -+MOZ_APP_VERSION="2.0" -+ - NO_PKG_FILES = \ - $(MOZ_APP_NAME)-config \ - xpcshell* \ diff --git a/libre/seamonkey-libre/seamonkey.desktop b/libre/seamonkey-libre/seamonkey.desktop index 084082aea..dd92a2432 100644 --- a/libre/seamonkey-libre/seamonkey.desktop +++ b/libre/seamonkey-libre/seamonkey.desktop @@ -6,6 +6,6 @@ Type=Application Terminal=false MultipleArgs=false Name=SeaMonkey internet suite -MimeType=text/html +MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;message/rfc822;x-scheme-handler/mailto; StartupNotify=false Categories=Application;Network; diff --git a/community/lightspark/lightspark.install b/libre/seamonkey-libre/seamonkey.install index 75e2b7b55..709ad81f2 100644 --- a/community/lightspark/lightspark.install +++ b/libre/seamonkey-libre/seamonkey.install @@ -8,6 +8,5 @@ post_upgrade() { } post_remove() { - update-desktop-database -q - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + post_install $1 } diff --git a/libre/texlive-bin-libre/PKGBUILD b/libre/texlive-bin-libre/PKGBUILD index 7c0ad2d27..7c1a159b0 100644 --- a/libre/texlive-bin-libre/PKGBUILD +++ b/libre/texlive-bin-libre/PKGBUILD @@ -6,7 +6,7 @@ pkgname=texlive-bin-libre pkgver=2011.3 _luatex_ver=0.70.1 -pkgrel=4 +pkgrel=4.1 pkgdesc="TeX Live binaries" license=('GPL') arch=('i686' 'x86_64' 'mips64el') @@ -16,7 +16,7 @@ optdepends=('ed: for texconfig') provides=('lcdf-typetools' 'kpathsea' 'xindy' 'pdfjam' 'texlive-bin') conflicts=('pdfjam' 'texlive-bin') replaces=('texlive-bin') -options=('!libtool') +options=('!libtool' '!strip') url='http://tug.org/texlive/' install="texlive.install" source=('texmf.cnf' @@ -49,6 +49,11 @@ md5sums=('220a4f4cc0d915bf8fcbcb553dcee1ae' 'e7f0197559ef865d8c01683dab3b8526') build() { + if [ "${CARCH}" != "i686" ]; then + export CFLAGS="${CFLAGS} -fPIC" + export CXXFLAGS="${CXXFLAGS} -fPIC" + fi + cd "$srcdir" # Building LuaTeX # cd luatex-beta-${_luatex_ver} @@ -60,7 +65,7 @@ build() { ../source/configure --prefix=/usr -C \ --disable-native-texlive-build \ --with-banner-add="/Parabola GNU/Linux-libre" \ - --disable-cxx-runtime-hack \ + --enable-cxx-runtime-hack \ --disable-all-pkgs \ --disable-dump-share \ --disable-ptex \ @@ -215,12 +220,12 @@ package() { echo "--> Proceeding with make install ..." echo "-------------------------------------------------------" cd Work - make DESTDIR=${pkgdir} texmf="$pkgdir"/usr/share/texmf install + make DESTDIR="${pkgdir}" texmf="$pkgdir"/usr/share/texmf install rm -rf "${pkgdir}"/usr/{texmf,share/texmf-dist} # replace upstream texmf.cnf with ours rm -f "$pkgdir"/usr/share/texmf/web2c/texmf.cnf - install -m644 "$srcdir"/texmf.cnf $pkgdir/etc/texmf/web2c/texmf.cnf + install -m644 "$srcdir"/texmf.cnf "$pkgdir"/etc/texmf/web2c/texmf.cnf # since the location of texmf.cnf is hard-wired to be under /usr/share/texmf/web2c # we make a symlink from /etc/texmf/web2c/texmf.cnf to the latter ln -sf /etc/texmf/web2c/texmf.cnf "$pkgdir"/usr/share/texmf/web2c/texmf.cnf @@ -230,15 +235,15 @@ package() { sed -i -e '/aleph/d' "$pkgdir"/usr/share/texmf/web2c/fmtutil.cnf ## install luatex binary - cd "$srcdir"/luatex/build/texk/web2c - ./libtool --mode=install install -m755 luatex "$pkgdir"/usr/bin/ + #install -m755 "$srcdir"/luatex-beta-${_luatex_ver}/build/texk/web2c/luatex "$pkgdir"/usr/bin/ + install -m755 "$srcdir"/luatex/build/texk/web2c/luatex "$pkgdir"/usr/bin/ cd "$pkgdir"/usr/bin /bin/ln -s luatex texlua /bin/ln -s luatex texluac ## install Perl libraries - mkdir -p $pkgdir/usr/share/tlpkg/TeXLive - install -m644 ${srcdir}/source/utils/biber/TeXLive/*.pm $pkgdir/usr/share/tlpkg/TeXLive + mkdir -p "$pkgdir"/usr/share/tlpkg/TeXLive + install -m644 "${srcdir}"/source/utils/biber/TeXLive/*.pm "$pkgdir"/usr/share/tlpkg/TeXLive # create symlinks for formats echo "--> Create symlinks for TeX formats ..." diff --git a/libre/thunderbird-libre/PKGBUILD b/libre/thunderbird-libre/PKGBUILD index d7bd9bb2e..7f0f3bd53 100644 --- a/libre/thunderbird-libre/PKGBUILD +++ b/libre/thunderbird-libre/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 145619 2011-12-24 12:00:02Z ibiru $ +# $Id: PKGBUILD 150116 2012-02-12 20:58:54Z ibiru $ # Contributor: Alexander Baldeck <alexander@archlinux.org> # Contributor: Dale Blount <dale@archlinux.org> # Contributor: Anders Bostrom <anders.bostrom@home.se> pkgname=thunderbird-libre -pkgver=9.0.1 +pkgver=10.0.1 pkgrel=1 pkgdesc="Standalone Mail/News reader" arch=('i686' 'x86_64' 'mips64el') license=('MPL' 'GPL') url="http://www.mozilla.org/thunderbird/" depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hicolor-icon-theme' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'nss' 'sqlite3' 'startup-notification') -makedepends=('unzip' 'zip' 'pkg-config' 'python2' 'wireless_tools' 'yasm' 'mesa') +makedepends=('unzip' 'zip' 'pkg-config' 'python2' 'wireless_tools' 'yasm' 'mesa' 'autoconf2.13') optdepends=('libcanberra: for sound support') replaces=('thunderbird') conflicts=('thunderbird') @@ -21,17 +21,20 @@ source=(ftp://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/$pkgver/sourc thunderbird.desktop thunderbird-install-dir.patch channel-prefs.js - vendor.js) -md5sums=('a5904751dbd33074682b438b732fdbab' + vendor.js + libvpx.patch) +md5sums=('623c32d9deae370383e1422b1ea48061' 'ca98c2bf1017b33e19dae22fdcef2e73' 'af3e5b344d2edf1c7d61bb0a5a96de9a' 'aea906acf72c43dd82ead2fabcc1c6db' '476ec205162340fb0679f522c9d31c3b' - '5a53179d14ae9631b7afe5e4d0fc0b25') + '5a53179d14ae9631b7afe5e4d0fc0b25' + '5b2aaff7dfe7f1f94ad965905b20e782') build() { cd "$srcdir/comm-release" patch -Np1 -i "$srcdir/thunderbird-install-dir.patch" + patch -Np1 -i "$srcdir/libvpx.patch" cp "$srcdir/mozconfig" .mozconfig diff --git a/libre/thunderbird-libre/libvpx.patch b/libre/thunderbird-libre/libvpx.patch new file mode 100644 index 000000000..d0f9a0f4c --- /dev/null +++ b/libre/thunderbird-libre/libvpx.patch @@ -0,0 +1,12 @@ +diff -Nur comm-release.orig/mozilla/configure.in comm-release/mozilla/configure.in +--- comm-release.orig/mozilla/configure.in 2012-02-05 18:02:17.376830377 +0000 ++++ comm-release/mozilla/configure.in 2012-02-05 18:03:25.246274275 +0000 +@@ -5629,7 +5629,7 @@ + dnl v0.9.6 one to check for. + AC_TRY_COMPILE([ + #include <vpx/vpx_decoder.h> +- #if !defined(VPX_CODEC_USE_INPUT_PARTITION) ++ #if !defined(VPX_CODEC_USE_INPUT_FRAGMENTS) + #error "test failed." + #endif + ], diff --git a/libre/virtualbox-libre/18-system-xorg.patch b/libre/virtualbox-libre/18-system-xorg.patch deleted file mode 100644 index baca4bc5b..000000000 --- a/libre/virtualbox-libre/18-system-xorg.patch +++ /dev/null @@ -1,278 +0,0 @@ -Description: Build the X.Org driver only for the selected system X Server version. -Author: Michael Meskes <meskes@debian.org>, Felix Geyer <debfx-pkg@fobos.de> - -diff --git a/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk b/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk ---- a/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk -+++ b/src/VBox/Additions/common/VBoxGuestLib/Makefile.kmk -@@ -40,8 +40,8 @@ LIBRARIES += \ - VBoxGuestR3LibShared - ifndef VBOX_ONLY_TESTSUITE - if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd) -- LIBRARIES += \ -- VBoxGuestR3LibXFree86 -+# LIBRARIES += \ -+# VBoxGuestR3LibXFree86 - endif - endif - LIBRARIES.win.amd64 += VBoxGuestR3Lib-x86 VBoxGuestR3LibShared-x86 -diff --git a/src/VBox/Additions/common/crOpenGL/Makefile.kmk b/src/VBox/Additions/common/crOpenGL/Makefile.kmk ---- a/src/VBox/Additions/common/crOpenGL/Makefile.kmk -+++ b/src/VBox/Additions/common/crOpenGL/Makefile.kmk -@@ -63,16 +63,12 @@ VBoxOGL_TEMPLATE = VBOXCROGLR3GUESTDLL - VBoxOGL_INCS = . - if1of ($(KBUILD_TARGET), linux solaris freebsd) - VBoxOGL_INCS += \ -- $(VBOX_PATH_X11_ROOT)/libXdamage-1.1 \ -- $(VBOX_PATH_X11_ROOT)/libXcomposite-0.4.0 \ -- $(VBOX_PATH_X11_ROOT)/libXfixes-4.0.3 \ -- $(VBOX_PATH_X11_ROOT)/damageproto-1.1.0 \ -- $(VBOX_PATH_X11_ROOT)/compositeproto-0.4 \ -- $(VBOX_PATH_X11_ROOT)/fixesproto-4.0 \ -- $(VBOX_PATH_X11_ROOT)/libx11-1.1.5-other \ -- $(VBOX_PATH_X11_ROOT)/1.3/xorg \ -+ /usr/include/x11 \ -+ /usr/include/xorg \ -+ /usr/include/pixman-1 \ - $(VBOX_MESA_INCS) \ -- $(PATH_ROOT)/src/VBox/Additions/x11/x11include/libdrm-2.4.13 -+ /usr/include/drm \ -+ /usr/include/libdrm - VBoxOGL_DEFS += VBOX_NO_NATIVEGL - endif - -diff --git a/src/VBox/Additions/x11/Makefile.kmk b/src/VBox/Additions/x11/Makefile.kmk ---- a/src/VBox/Additions/x11/Makefile.kmk -+++ b/src/VBox/Additions/x11/Makefile.kmk -@@ -17,6 +17,10 @@ - SUB_DEPTH = ../../../.. - include $(KBUILD_PATH)/subheader.kmk - -+ifn1of ($(XSERVER_VERSION), 13 14 15 16 17 18 19 110) -+ XSERVER_VERSION := 17 -+endif -+ - # Include sub-makefiles. - if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) - include $(PATH_SUB_CURRENT)/VBoxClient/Makefile.kmk -diff --git a/src/VBox/Additions/x11/vboxmouse/Makefile.kmk b/src/VBox/Additions/x11/vboxmouse/Makefile.kmk ---- a/src/VBox/Additions/x11/vboxmouse/Makefile.kmk -+++ b/src/VBox/Additions/x11/vboxmouse/Makefile.kmk -@@ -23,7 +23,6 @@ include $(KBUILD_PATH)/subheader.kmk - # vboxmouse_drv - # - if1of ($(KBUILD_TARGET), linux) -- SYSMODS += vboxmouse_drv - vboxmouse_drv_TEMPLATE = VBOXGUESTR3XF86MOD - vboxmouse_drv_DEFS.linux = linux - vboxmouse_drv_DEFS.x86 += __i386__ -@@ -59,7 +58,6 @@ endif - # - # vboxmouse_drv_70 - # --DLLS += vboxmouse_drv_70 - vboxmouse_drv_70_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_70_DEFS = \ - XFree86Server IN_MODULE XFree86Module XFree86LOADER XINPUT XORG_7X IN_XF86_MODULE -@@ -80,7 +78,6 @@ vboxmouse_drv_70_SOURCES = \ - # - # vboxmouse_drv_71 - # --DLLS += vboxmouse_drv_71 - vboxmouse_drv_71_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_71_DEFS := $(vboxmouse_drv_70_DEFS) - vboxmouse_drv_71_INCS := \ -@@ -97,7 +94,6 @@ vboxmouse_drv_71_SOURCES = \ - # - # vboxmouse_drv_13 - # --DLLS += vboxmouse_drv_13 - vboxmouse_drv_13_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_13_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - vboxmouse_drv_13_INCS := \ -@@ -112,7 +108,6 @@ vboxmouse_drv_13_SOURCES = \ - # - # vboxmouse_drv_14 - # --DLLS += vboxmouse_drv_14 - vboxmouse_drv_14_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_14_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - vboxmouse_drv_14_INCS := \ -@@ -126,7 +121,6 @@ endif - # - # vboxmouse_drv_15 - # --DLLS += vboxmouse_drv_15 - vboxmouse_drv_15_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_15_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - vboxmouse_drv_15_INCS := \ -@@ -141,7 +135,6 @@ vboxmouse_drv_15_SOURCES = \ - # - # vboxmouse_drv_16 - # --DLLS += vboxmouse_drv_16 - vboxmouse_drv_16_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_16_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - vboxmouse_drv_16_INCS := \ -@@ -157,7 +150,6 @@ vboxmouse_drv_16_SOURCES = \ - # - # vboxmouse_drv_17 - # --DLLS += vboxmouse_drv_17 - vboxmouse_drv_17_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_17_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - ## @todo replace $(VBOX_PATH_X11_ROOT)/xorg-server-1.6.0-local -@@ -177,7 +169,6 @@ vboxmouse_drv_17_SOURCES = \ - # - # vboxmouse_drv_18 - # --DLLS += vboxmouse_drv_18 - vboxmouse_drv_18_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_18_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - ## @todo replace $(VBOX_PATH_X11_ROOT)/xorg-server-1.6.0-local -@@ -197,7 +188,6 @@ vboxmouse_drv_18_SOURCES = \ - # - # vboxmouse_drv_19 - # --DLLS += vboxmouse_drv_19 - vboxmouse_drv_19_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_19_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - ## @todo replace $(VBOX_PATH_X11_ROOT)/xorg-server-1.6.0-local -@@ -217,7 +207,6 @@ vboxmouse_drv_19_SOURCES = \ - # - # vboxmouse_drv_110 - # --DLLS += vboxmouse_drv_110 - vboxmouse_drv_110_TEMPLATE = VBOXGUESTR3XORGMOD - vboxmouse_drv_110_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC - ## @todo replace $(VBOX_PATH_X11_ROOT)/xorg-server-1.6.0-local -@@ -234,6 +224,14 @@ vboxmouse_drv_110_SOURCES = \ - vboxmouse_15.c - - -+vboxmouse_drv_$(XSERVER_VERSION)_NAME := vboxmouse_drv -+vboxmouse_drv_$(XSERVER_VERSION)_INCS := \ -+ /usr/include/x11 \ -+ /usr/include/xorg \ -+ /usr/include/pixman-1 -+DLLS += vboxmouse_drv_$(XSERVER_VERSION) -+ -+ - # Check the undefined symbols in the X.Org modules against lists of allowed - # symbols. Not very elegant, but it will catch problems early. - ifdef VBOX_WITH_TESTCASES -diff --git a/src/VBox/Additions/x11/vboxvideo/Makefile.kmk b/src/VBox/Additions/x11/vboxvideo/Makefile.kmk ---- a/src/VBox/Additions/x11/vboxvideo/Makefile.kmk -+++ b/src/VBox/Additions/x11/vboxvideo/Makefile.kmk -@@ -22,7 +22,6 @@ include $(KBUILD_PATH)/subheader.kmk - # vboxvideo_drv - # - if1of ($(KBUILD_TARGET), linux) -- SYSMODS += vboxvideo_drv - endif # target linux - vboxvideo_drv_TEMPLATE = VBOXGUESTR3XF86MOD - vboxvideo_drv_DEFS.linux = linux -@@ -89,7 +88,6 @@ endif # target linux - # base keywords instead of using .solaris or .linux. - # Also it is *important* to use := and not = when deriving a property. - # --DLLS += vboxvideo_drv_70 - vboxvideo_drv_70_TEMPLATE = VBOXGUESTR3XORGMOD - if1of ($(KBUILD_TARGET), linux) - vboxvideo_drv_70_CFLAGS += \ -@@ -112,7 +110,6 @@ vboxvideo_drv_70_SOURCES = $(vboxvideo_drv_SOURCES) - # - # vboxvideo_drv_71 - # --DLLS += vboxvideo_drv_71 - vboxvideo_drv_71_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_71_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_71_DEFS := $(vboxvideo_drv_70_DEFS) -@@ -127,7 +124,6 @@ vboxvideo_drv_71_SOURCES = $(vboxvideo_drv_SOURCES) - # - # vboxvideo_drv_13 - # --DLLS += vboxvideo_drv_13 - vboxvideo_drv_13_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_13_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_13_DEFS := $(vboxvideo_drv_70_DEFS) VBOXVIDEO_13 -@@ -146,7 +142,6 @@ vboxvideo_drv_13_SOURCES = \ - # - # vboxvideo_drv_14 - # --DLLS += vboxvideo_drv_14 - vboxvideo_drv_14_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_14_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_14_DEFS := $(vboxvideo_drv_13_DEFS) -@@ -165,7 +160,6 @@ vboxvideo_drv_14_SOURCES = $(vboxvideo_drv_13_SOURCES) - # - # vboxvideo_drv_15 - # --DLLS += vboxvideo_drv_15 - vboxvideo_drv_15_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_15_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_15_DEFS := $(vboxvideo_drv_13_DEFS) NO_ANSIC PCIACCESS \ -@@ -192,7 +186,6 @@ endif - # - # vboxvideo_drv_16 - # --DLLS += vboxvideo_drv_16 - vboxvideo_drv_16_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_16_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_16_DEFS := $(vboxvideo_drv_15_DEFS) -@@ -212,7 +205,6 @@ vboxvideo_drv_16_SOURCES := $(vboxvideo_drv_15_SOURCES) - # - # vboxvideo_drv_17 - # --DLLS += vboxvideo_drv_17 - vboxvideo_drv_17_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_17_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_17_DEFS := $(vboxvideo_drv_15_DEFS) -@@ -239,7 +231,6 @@ vboxvideo_drv_17_SOURCES := $(vboxvideo_drv_15_SOURCES) - # - # vboxvideo_drv_18 - # --DLLS += vboxvideo_drv_18 - vboxvideo_drv_18_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_18_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_18_DEFS := $(vboxvideo_drv_15_DEFS) -@@ -266,7 +257,6 @@ vboxvideo_drv_18_SOURCES := $(vboxvideo_drv_15_SOURCES) - # - # vboxvideo_drv_19 - # --DLLS += vboxvideo_drv_19 - vboxvideo_drv_19_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_19_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_19_DEFS := $(vboxvideo_drv_15_DEFS) -@@ -293,7 +282,6 @@ vboxvideo_drv_19_SOURCES := $(vboxvideo_drv_15_SOURCES) - # - # vboxvideo_drv_110 - # --DLLS += vboxvideo_drv_110 - vboxvideo_drv_110_TEMPLATE = VBOXGUESTR3XORGMOD - vboxvideo_drv_110_CFLAGS := $(vboxvideo_drv_70_CFLAGS) - vboxvideo_drv_110_DEFS := $(vboxvideo_drv_15_DEFS) -@@ -317,6 +306,23 @@ vboxvideo_drv_110_INCS = \ - vboxvideo_drv_110_SOURCES := $(vboxvideo_drv_15_SOURCES) - - -+vboxvideo_drv_$(XSERVER_VERSION)_NAME := vboxvideo_drv -+vboxvideo_drv_$(XSERVER_VERSION)_INCS := \ -+ /usr/include/xorg \ -+ /usr/include/x11 \ -+ /usr/include/pixman-1 \ -+ /usr/include/X11/dri \ -+ /usr/include/drm \ -+ /usr/include/libdrm -+vboxvideo_drv_$(XSERVER_VERSION)_INCS += $(PATH_ROOT)/src/VBox/Runtime/include -+DLLS += vboxvideo_drv_$(XSERVER_VERSION) -+ -+# required for lenny backports -+ifeq ($(XSERVER_VERSION),14) -+ vboxvideo_drv_$(XSERVER_VERSION)_INCS += $(VBOX_PATH_X11_XORG_1_4)/xorg -+endif -+ -+ - # Check the undefined symbols in the X.Org modules against lists of allowed - # symbols. Not very elegant, but it will catch problems early. - ifdef VBOX_WITH_TESTCASES - diff --git a/libre/virtualbox-libre/60-vboxguest.rules b/libre/virtualbox-libre/60-vboxguest.rules deleted file mode 100644 index d64575709..000000000 --- a/libre/virtualbox-libre/60-vboxguest.rules +++ /dev/null @@ -1,3 +0,0 @@ -ACTION=="add", KERNEL=="vboxguest", SUBSYSTEM=="misc", OWNER="root", MODE="0600" -ACTION=="add", KERNEL=="vboxuser", SUBSYSTEM=="misc", OWNER="root", MODE="0666" - diff --git a/libre/virtualbox-libre/virtualbox-4-makeself-check.patch b/libre/virtualbox-libre/virtualbox-4-makeself-check.patch deleted file mode 100644 index 57862b41e..000000000 --- a/libre/virtualbox-libre/virtualbox-4-makeself-check.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- VirtualBox-4.0.0_OSE/configure -+++ VirtualBox-4.0.0_OSE/configure -@@ -2527,7 +2527,6 @@ - check_compiler_h - [ "$BUILD_MACHINE" = "amd64" -a $WITH_VMMRAW -eq 1 ] && check_32bit - # tools/common/makeself* -- [ $OSE -ge 1 ] && check_makeself - fi - - [ -n "$SETUP_WINE" ] && setup_wine - diff --git a/libre/virtualbox-libre/virtualbox-4-mkisofs-check.patch b/libre/virtualbox-libre/virtualbox-4-mkisofs-check.patch deleted file mode 100644 index d43962148..000000000 --- a/libre/virtualbox-libre/virtualbox-4-mkisofs-check.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- VirtualBox-4.0.0_OSE/configure -+++ VirtualBox-4.0.0_OSE/configure -@@ -2499,7 +2499,6 @@ - # don't check for yasm for the time beeing as 0.40 and 0.50 both have known bugs - # [ "$OS" != "darwin" ] && check_yasm - [ "$OS" != "darwin" ] && check_xsltproc --[ "$OS" != "darwin" ] && check_mkisofs - - # the libraries - [ "$OS" != "darwin" ] && check_pthread - diff --git a/libre/virtualbox-libre/virtualbox-parabola-modules.install b/libre/virtualbox-libre/virtualbox-parabola-modules.install deleted file mode 100644 index 75d28784a..000000000 --- a/libre/virtualbox-libre/virtualbox-parabola-modules.install +++ /dev/null @@ -1,25 +0,0 @@ -KERNEL_VERSION='3.0-LIBRE' - -post_install() { - cat << EOM - -===> virtualbox-parabola-modules post-install message: -===> -===> You may want to load vboxguest, vboxsf and vboxvideo -===> -===> To load them automatically, add them -===> to the MODULES array in /etc/rc.conf. - -EOM - - depmod -v $KERNEL_VERSION >/dev/null 2>&1 -} - -post_remove() { - depmod -v $KERNEL_VERSION >/dev/null 2>&1 -} - -post_upgrade() { - depmod -v $KERNEL_VERSION >/dev/null 2>&1 -} - diff --git a/libre/virtualbox-parabola-modules/60-vboxguest.rules b/libre/virtualbox-parabola-modules/60-vboxguest.rules deleted file mode 100644 index 6285f7249..000000000 --- a/libre/virtualbox-parabola-modules/60-vboxguest.rules +++ /dev/null @@ -1,2 +0,0 @@ -ACTION=="add", KERNEL=="vboxguest", SUBSYSTEM=="misc", OWNER="root", MODE="0600" -ACTION=="add", KERNEL=="vboxuser", SUBSYSTEM=="misc", OWNER="root", MODE="0666" diff --git a/libre/virtualbox-parabola-modules/LocalConfig.kmk b/libre/virtualbox-parabola-modules/LocalConfig.kmk deleted file mode 100644 index af79f90cd..000000000 --- a/libre/virtualbox-parabola-modules/LocalConfig.kmk +++ /dev/null @@ -1,19 +0,0 @@ -VBOX_WITH_ADDITION_DRIVERS = -VBOX_WITH_INSTALLER = 1 -VBOX_WITH_LINUX_ADDITIONS = 1 -VBOX_WITH_X11_ADDITIONS = -VBOX_WITH_TESTCASES = -VBOX_WITH_TESTSUITE = -VBOX_WITH_ORIGIN := -VBOX_PATH_APP_PRIVATE_ARCH := /usr/lib/virtualbox -VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH) -VBOX_WITH_RUNPATH := $(VBOX_PATH_APP_PRIVATE_ARCH) -VBOX_PATH_APP_PRIVATE := /usr/share/virtualbox -VBOX_PATH_APP_DOCS := /usr/share/virtualbox -VBOX_WITH_REGISTRATION_REQUEST = -VBOX_WITH_UPDATE_REQUEST = -VBOX_WITH_VNC := 1 -VBOX_BLD_PYTHON = python2 -VBOX_JAVA_HOME = /usr/lib/jvm/java-6-openjdk -VBOX_GCC_WERR = -VBOX_GCC_WARN = diff --git a/libre/virtualbox-parabola-modules/PKGBUILD b/libre/virtualbox-parabola-modules/PKGBUILD deleted file mode 100644 index d077c092a..000000000 --- a/libre/virtualbox-parabola-modules/PKGBUILD +++ /dev/null @@ -1,103 +0,0 @@ -# $Id: PKGBUILD 57345 2011-10-26 09:57:11Z ibiru $ -#Maintainer: Ionut Biru <ibiru@archlinux.org> - -pkgbase=virtualbox-modules -pkgname=('virtualbox-modules' 'virtualbox-parabola-modules') -pkgver=4.1.4 -pkgrel=3.1 -arch=('i686' 'x86_64') -url='http://virtualbox.org' -license=('GPL') -makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libpng' 'libidl2' 'xalan-c' 'sdl' 'linux-headers' 'linux-libre') -[[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc') -source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2 - LocalConfig.kmk 60-vboxguest.rules) -md5sums=('dc6e6801b3823332b6ca2e9915221aae' - '4c88bd122677a35f68abd76eb01b378b' - 'ed1341881437455d9735875ddf455fbe') - -_extramodules=extramodules-3.1-LIBRE - -build() { - _kernver="$(cat /lib/modules/${_extramodules}/version)" - - export KERN_DIR=/lib/modules/${_kernver}/build - export KERN_INCL=/usr/src/linux-${_kernver}/include/ - - cd "$srcdir/VirtualBox-${pkgver}_OSE" - - cp "$srcdir/LocalConfig.kmk" . - - ./configure \ - --with-linux=/usr/src/linux-${_kernver} \ - --disable-java \ - --disable-docs \ - --disable-xpcom \ - --disable-python \ - --disable-sdl-ttf \ - --disable-alsa \ - --disable-pulse \ - --disable-dbus \ - --disable-opengl \ - --build-headless \ - --nofatal - source ./env.sh - kmk all - - make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" - make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" -} - -package_virtualbox-parabola-modules(){ - pkgdesc="Additions only for Parabola guests (kernel modules)" - license=('GPL') - install=virtualbox-parabola-modules.install - depends=('linux>=3.1' 'linux<3.2') - replaces=('virtualbox-guest-modules' 'virtualbox-archlinux-modules') - conflicts=('virtualbox-guest-modules' 'virtualbox-archlinux-modules') - provides=("virtualbox-archlinux-modules=$pkgver") - - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" - - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" - - for module in vboxguest.ko vboxsf.ko vboxvideo.ko; do - install -D -m644 ${module} \ - "$pkgdir/lib/modules/${_extramodules}/${module}" - done - - install -D -m 0644 "$srcdir/60-vboxguest.rules" \ - "$pkgdir/lib/udev/rules.d/60-vboxguest.rules" - - find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; - - sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-parabola-modules.install" -} - -package_virtualbox-modules(){ - pkgdesc="Kernel modules for VirtualBox" - license=('GPL') - install=virtualbox-modules.install - depends=('linux>=3.1' 'linux<3.2') - - source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" - - - cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" - - install -D -m644 vboxdrv.ko \ - "$pkgdir/lib/modules/${_extramodules}/vboxdrv.ko" - - install -D -m644 vboxnetadp.ko \ - "$pkgdir/lib/modules/${_extramodules}/vboxnetadp.ko" - - install -D -m644 vboxnetflt.ko \ - "$pkgdir/lib/modules/${_extramodules}/vboxnetflt.ko" - - install -D -m644 vboxpci.ko \ - "$pkgdir/lib/modules/${_extramodules}/vboxpci.ko" - - find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; - - sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-modules.install" -} diff --git a/libre/virtualbox-parabola-modules/virtualbox-modules.install b/libre/virtualbox-parabola-modules/virtualbox-modules.install deleted file mode 100644 index b57135999..000000000 --- a/libre/virtualbox-parabola-modules/virtualbox-modules.install +++ /dev/null @@ -1,19 +0,0 @@ -post_install() { -/bin/cat << EOF -===> You must load vboxdrv module before starting VirtualBox: -===> # modprobe vboxdrv -EOF - EXTRAMODULES='extramodules-3.1-LIBRE' - depmod $(cat /lib/modules/$EXTRAMODULES/version) -} - -post_upgrade() { - EXTRAMODULES='extramodules-3.1-LIBRE' - depmod $(cat /lib/modules/$EXTRAMODULES/version) - rmmod vboxdrv || echo 'In order to use the new version, reload all virtualbox modules manually.' -} - -post_remove() { - EXTRAMODULES='extramodules-3.1-LIBRE' - depmod $(cat /lib/modules/$EXTRAMODULES/version) -} diff --git a/libre/virtualbox-parabola-modules/virtualbox-parabola-modules.install b/libre/virtualbox-parabola-modules/virtualbox-parabola-modules.install deleted file mode 100644 index 8801d8c49..000000000 --- a/libre/virtualbox-parabola-modules/virtualbox-parabola-modules.install +++ /dev/null @@ -1,17 +0,0 @@ -post_install() { -cat << EOF -===> You may want to load vboxguest, vboxsf and vboxvideo -EOF - EXTRAMODULES='extramodules-3.1-LIBRE' - depmod $(cat /lib/modules/$EXTRAMODULES/version) -} - -post_upgrade() { - EXTRAMODULES='extramodules-3.1-LIBRE' - depmod $(cat /lib/modules/$EXTRAMODULES/version) -} - -post_remove() { - EXTRAMODULES='extramodules-3.1-LIBRE' - depmod $(cat /lib/modules/$EXTRAMODULES/version) -} diff --git a/mozilla-testing/icecat/PKGBUILD b/mozilla-testing/icecat/PKGBUILD index 4379ee60c..5946af42f 100644 --- a/mozilla-testing/icecat/PKGBUILD +++ b/mozilla-testing/icecat/PKGBUILD @@ -14,8 +14,8 @@ _pgo=false _pkgname=icecat -pkgver=9.0.1 -pkgrel=2 +pkgver=10.0 +pkgrel=1 if [ -z "$pkgname" ]; then pkgname=$_pkgname; fi if $_pgo; then @@ -69,7 +69,8 @@ source=(ftp://ftp.gnu.org/gnu/gnuzilla/${pkgver}/${pkgname}-${pkgver}.tar.xz icecat-safe.desktop libre.patch firefox-install-dir.patch - vendor.js) + vendor.js + libvpx.patch) if [ "$_pkgname" != "$pkgname" ]; then provides+=("$_pkgname") @@ -83,6 +84,7 @@ build() { cp "$srcdir/mozconfig" .mozconfig # Load our build config, disable SafeSearch patch -Np1 -i "$srcdir/firefox-install-dir.patch" # install to /usr/lib/$pkgname patch -Np1 -i "$srcdir/libre.patch" # Remove Google+Mozilla stuff + patch -Np1 -i "$srcdir/libvpx.patch" # patch from Arch if $_pgo; then cat "$srcdir/mozconfig.pgo" >> .mozconfig @@ -136,11 +138,12 @@ package() { ln -sf $_pkgname "$pkgdir/usr/lib/$_pkgname/$_pkgname-bin" } -md5sums=('a135581da2fd2845f268d7ca91054c06' +md5sums=('5a30f5c5422fb7c9b1a2d253028df9d7' '6f3a8fd65c416216a1b56b0c2d2d81aa' 'ac29b01c189f20abae2f3eef1618ffc0' 'e81ad01dbc16ba28bf92ba4b7c309ca7' 'd93fe402b87cd000a869e1fd6badc6c9' - '07e65752416e615fe04ce586bc58f86b' + '145f453ef82f643711c10d97ec57a805' '1e4bcac59e93d21fffa6a1d1ad235247' - 'c382e35315047e4ca368d09383b39b8d') + 'c382e35315047e4ca368d09383b39b8d' + '5d418ecdbdb9f40597df6b978b0b5ee5') diff --git a/mozilla-testing/icecat/libre.patch b/mozilla-testing/icecat/libre.patch index c5f59d858..3dca93ee7 100644 --- a/mozilla-testing/icecat/libre.patch +++ b/mozilla-testing/icecat/libre.patch @@ -5,7 +5,7 @@ // Dictionary download preference -pref("browser.dictionaries.download.url", "https://addons.mozilla.org/%LOCALE%/firefox/dictionaries/"); -+pref("browser.dictionaries.download.url", "http://gnuzilla.gnu.org/download/langpacks/9.0.1/"); ++pref("browser.dictionaries.download.url", "http://gnuzilla.gnu.org/download/langpacks/10.0/"); // The minimum delay in seconds for the timer to fire. // default=2 minutes diff --git a/mozilla-testing/icecat/libvpx.patch b/mozilla-testing/icecat/libvpx.patch new file mode 100644 index 000000000..f883b8e08 --- /dev/null +++ b/mozilla-testing/icecat/libvpx.patch @@ -0,0 +1,12 @@ +diff -Nur mozilla-release.orig/configure.in mozilla-release/configure.in +--- mozilla-release.orig/configure.in 2012-02-05 16:01:35.722024142 +0000 ++++ mozilla-release/configure.in 2012-02-05 16:03:34.871064547 +0000 +@@ -5629,7 +5629,7 @@ + dnl v0.9.6 one to check for. + AC_TRY_COMPILE([ + #include <vpx/vpx_decoder.h> +- #if !defined(VPX_CODEC_USE_INPUT_PARTITION) ++ #if !defined(VPX_CODEC_USE_INPUT_FRAGMENTS) + #error "test failed." + #endif + ], diff --git a/multilib-testing/lib32-glibc/glibc-2.15-arena.patch b/multilib-testing/lib32-glibc/glibc-2.15-arena.patch new file mode 100644 index 000000000..46f52e98d --- /dev/null +++ b/multilib-testing/lib32-glibc/glibc-2.15-arena.patch @@ -0,0 +1,29 @@ +diff --git a/malloc/arena.c b/malloc/arena.c +index d3cf4b9..b1c9469 100644 +--- a/malloc/arena.c ++++ b/malloc/arena.c +@@ -828,7 +828,7 @@ arena_get2(mstate a_tsd, size_t size) + { + if (mp_.arena_max != 0) + narenas_limit = mp_.arena_max; +- else ++ else if (narenas > mp_.arena_test) + { + int n = __get_nprocs (); + +@@ -842,7 +842,14 @@ arena_get2(mstate a_tsd, size_t size) + } + repeat:; + size_t n = narenas; +- if (__builtin_expect (n <= mp_.arena_test || n < narenas_limit, 0)) ++ /* NB: the following depends on the fact that (size_t)0 - 1 is a ++ very large number and that the underflow is OK. If arena_max ++ is set the value of arena_test is irrelevant. If arena_test ++ is set but narenas is not yet larger or equal to arena_test ++ narenas_limit is 0. There is no possibility for narenas to ++ be too big for the test to always fail since there is not ++ enough address space to create that many arenas. */ ++ if (__builtin_expect (n <= narenas_limit - 1, 0)) + { + if (catomic_compare_and_exchange_bool_acq (&narenas, n + 1, n)) + goto repeat; diff --git a/multilib-testing/lib32-glibc/glibc-2.15-negative-result-cache.patch b/multilib-testing/lib32-glibc/glibc-2.15-negative-result-cache.patch new file mode 100644 index 000000000..c09e79a17 --- /dev/null +++ b/multilib-testing/lib32-glibc/glibc-2.15-negative-result-cache.patch @@ -0,0 +1,138 @@ +diff --git a/nscd/aicache.c b/nscd/aicache.c +index aaaf80d..e1f1244 100644 +--- a/nscd/aicache.c ++++ b/nscd/aicache.c +@@ -1,5 +1,5 @@ + /* Cache handling for host lookup. +- Copyright (C) 2004-2008, 2009, 2010, 2011 Free Software Foundation, Inc. ++ Copyright (C) 2004-2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@redhat.com>, 2004. + +@@ -514,8 +514,9 @@ next_nip: + if (fd != -1) + TEMP_FAILURE_RETRY (send (fd, ¬found, total, MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store the ++ result, so be it. */ ++ if (rc4 == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/grpcache.c b/nscd/grpcache.c +index e9607c6..a698f36 100644 +--- a/nscd/grpcache.c ++++ b/nscd/grpcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for group lookup. +- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. + +@@ -120,8 +120,9 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, + else + written = total; + +- /* If we cannot permanently store the result, so be it. */ +- if (db->negtimeout == 0) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errno == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/hstcache.c b/nscd/hstcache.c +index 4d68ade..c72feaa 100644 +--- a/nscd/hstcache.c ++++ b/nscd/hstcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for host lookup. +- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. + +@@ -141,8 +141,9 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, + MSG_NOSIGNAL)) != total) + all_written = false; + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errval == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/initgrcache.c b/nscd/initgrcache.c +index 4ac9942..2019991 100644 +--- a/nscd/initgrcache.c ++++ b/nscd/initgrcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for host lookup. +- Copyright (C) 2004-2006, 2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 2004-2006, 2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@redhat.com>, 2004. + +@@ -202,8 +202,9 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, + written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, + MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (all_tryagain || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/pwdcache.c b/nscd/pwdcache.c +index 49e130c..e2ba09d 100644 +--- a/nscd/pwdcache.c ++++ b/nscd/pwdcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for passwd lookup. +- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. + +@@ -124,8 +124,9 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, + written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, + MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errno == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/servicescache.c b/nscd/servicescache.c +index d3d5dce..a6337e3 100644 +--- a/nscd/servicescache.c ++++ b/nscd/servicescache.c +@@ -1,5 +1,5 @@ + /* Cache handling for services lookup. +- Copyright (C) 2007, 2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 2007, 2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@drepper.com>, 2007. + +@@ -108,8 +108,9 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, + written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, + MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errval == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) diff --git a/social/ffingerd/PKGBUILD b/social/ffingerd/PKGBUILD index dd87137ab..560d6b618 100644 --- a/social/ffingerd/PKGBUILD +++ b/social/ffingerd/PKGBUILD @@ -1,6 +1,6 @@ pkgname=ffingerd pkgver=1.28 -pkgrel=2 +pkgrel=2.1 pkgdesc="Secure finger daemon" arch=('i686' 'x86_64' 'mips64el') url="http://www.fefe.de/ffingerd/" diff --git a/staging/kismet/PKGBUILD b/staging/kismet/PKGBUILD deleted file mode 100644 index 0357b6294..000000000 --- a/staging/kismet/PKGBUILD +++ /dev/null @@ -1,57 +0,0 @@ -# $Id: PKGBUILD 149761 2012-02-10 10:39:40Z eric $ -# Maintainer: Angel Velasquez <angvp@archlinux.org> -# Contributor: Jason Chu <jason@archlinux.org> -# Contributor: Juergen Hoetzel <jason@archlinux.org> - -pkgname=kismet -pkgver=2011_03_R2 -_realver="${pkgver//_/-}" -pkgrel=4 -pkgdesc="802.11 layer2 wireless network detector, sniffer, and intrusion detection system" -arch=('i686' 'x86_64') -url="http://www.kismetwireless.net/" -license=('GPL') -depends=('libcap' 'libnl1' 'pcre' 'ncurses' 'libpcap>=1.0.0' 'bluez' 'openssl') # already in core: ('linux-api-headers' 'glibc' 'libusb' 'libusb-compat') -makedepends=() # already in core: ('grep' 'gcc-libs') -optdepends=('gpsd: log coordinates of detected networks' - 'wireshark-cli: provide OUI files used to determine device manufacturer' - 'wireshark-cli: mergecap, to merge multiple capture files' - 'sox: provide the default kismet sound playback binary' - 'festival: text-to-speech support' - 'flite: alternative/lightweight text-to-speech support' - 'mac80211-driver: full rfmon support' - 'ruby: ruby interface') -backup=('etc/kismet.conf' 'etc/kismet_drone.conf') -install=kismet.install -changelog=kismet.changelog -source=("http://www.kismetwireless.net/code/${pkgname}-${_realver}.tar.gz") -md5sums=('8bf077e8111e6dc8c12cadefdf40aadd') - -build() { - cd "${srcdir}/${pkgname}-${_realver}" - - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var - make dep - make - - # Include plugins bundled with kismet - make plugins -} - -package() { - cd "${srcdir}/${pkgname}-${_realver}" - - # Install kismet - make DESTDIR="$pkgdir" install - - # Install plugins - make plugins-install DESTDIR="$pkgdir" - - # the README is very comprehensive, a good idea to include it - install -D -m 644 "${srcdir}/kismet-${_realver}/README" "${pkgdir}/usr/share/kismet/README" - - # Our own suid-install, first half (see kismet.install) - install -o "root" -g "root" -m 4550 kismet_capture "${pkgdir}/usr/bin/" -} diff --git a/staging/kismet/kismet.changelog b/staging/kismet/kismet.changelog deleted file mode 100644 index 3078d0625..000000000 --- a/staging/kismet/kismet.changelog +++ /dev/null @@ -1,29 +0,0 @@ -2012-02-10 Eric Bélanger <eric@archlinux.org> - * Change libnl depends to libnl1 - -2010-05-07 Angel Velasquez <angvp@archlinux.org> - * ChangeLog added - - * Removed old patches from SVN - - * Applied changes from FS#15746 thanks to people who worked on it. - - * Files that are no longer shipped and so should not be backed up: - backup=('etc/ap_manuf' 'etc/client_manuf' 'etc/kismet_ui.conf') - - * No longer needed; gpsmap is deprecated and being replaced with a tile-based - mapper, as of yet incomplete - optdepends=('perl-libwww: fetch maps for gpsmap') - - * Configuration has completely changed, no longer containing - references to either prism2 or wlanng - sed -i 's/prism2/wlanng/g' conf/kismet.conf - - * Ownership of man pages now defaults to "root" if the group "man" does not exist - chown root:root "$pkgdir"/usr/share/man/man{1,5}/* - - * Dependencies no longer needed - depends=('gmp' 'imagemagick' 'dbus' 'libjpeg>=7') - - * Options no longer needed - options=('!makeflags') diff --git a/staging/kismet/kismet.install b/staging/kismet/kismet.install deleted file mode 100644 index 0bc806034..000000000 --- a/staging/kismet/kismet.install +++ /dev/null @@ -1,34 +0,0 @@ -## arg 1: the new package version -post_install() { - post_upgrade - - cat << EOP - If you have not done so already, read the README file and the FAQ file. - You MUST edit /etc/kismet.conf and configure Kismet for your system, or - it will NOT run properly!" - - Kismet has been installed with a SUID ROOT CAPTURE HELPER executeable by - users in the group ' kismet '. This WILL ALLOW USERS IN THIS GROUP - TO ALTER YOUR NETWORK INTERACE STATES, but is more secure than running - all of Kismet as root. ONLY users in this group will be able to - run Kismet and capture from physical network devices. -EOP -} - -## arg 1: the new package version -## arg 2: the old package version -post_upgrade() { - # Add the group needed to use the limited-functionality binary "kismet_capture" - # Change group ownership of "kismet_capture" to this new group - # Preserve the file mode bits of "kismet_capture" - getent group "kismet" &>/dev/null || /usr/sbin/groupadd -r -g 315 kismet &>/dev/null - chown root:kismet "/usr/bin/kismet_capture" - chmod 4550 "/usr/bin/kismet_capture" -} - -## arg 1: the old package version -post_remove() { - getent group "kismet" &>/dev/null && /usr/sbin/groupdel kismet &>/dev/null -} - -# vim:set ts=2 sw=2 et: diff --git a/staging/xf86-video-ast/PKGBUILD b/staging/xf86-video-ast/PKGBUILD deleted file mode 100644 index ace558327..000000000 --- a/staging/xf86-video-ast/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 149790 2012-02-10 21:24:59Z andyrtr $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=xf86-video-ast -pkgver=0.93.9 -pkgrel=2 -pkgdesc="X.org ASPEED AST Graphics video driver" -arch=(i686 x86_64) -url="http://xorg.freedesktop.org/" -license=('custom') -depends=('glibc') -makedepends=('xorg-server-devel>=1.11.99.902') -conflicts=('xorg-server<1.11.99.902') -options=('!libtool') -groups=('xorg-drivers' 'xorg') -source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 - ast-0.93.9-vga.patch) -md5sums=('e25c6a55e9d07cc6054d6affc1231296' - '9aa9ea4c568b6563389fa634cb0f7cf0') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i ${srcdir}/ast-0.93.9-vga.patch - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" -} diff --git a/staging/xf86-video-ast/ast-0.93.9-vga.patch b/staging/xf86-video-ast/ast-0.93.9-vga.patch deleted file mode 100644 index e05a78f56..000000000 --- a/staging/xf86-video-ast/ast-0.93.9-vga.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 4a7eda24050b42072c77d527257609e743e8dc78 Mon Sep 17 00:00:00 2001 -From: Adam Jackson <ajax@redhat.com> -Date: Wed, 16 Nov 2011 20:09:40 +0000 -Subject: Adapt to domain changes in videoabi 12 - -This is a blind change, I don't have this hardware handy to test with. -It probably wants the same new API that tdfx wants. - -Signed-off-by: Adam Jackson <ajax@redhat.com> ---- -diff --git a/src/ast_driver.c b/src/ast_driver.c -index bd3d338..128538f 100644 ---- a/src/ast_driver.c -+++ b/src/ast_driver.c -@@ -498,11 +498,20 @@ ASTPreInit(ScrnInfoPtr pScrn, int flags) - (pScrn->chipset != NULL) ? pScrn->chipset : "Unknown ast"); - - /* Resource Allocation */ -+#if ABI_VIDEODRV_VERSION < 12 - pAST->IODBase = pScrn->domainIOBase; -+#else -+ pAST->IODBase = 0; -+#endif - /* "Patch" the PIOOffset inside vgaHW in order to force - * the vgaHW module to use our relocated i/o ports. - */ -- VGAHWPTR(pScrn)->PIOOffset = pAST->PIOOffset = pAST->IODBase + PCI_REGION_BASE(pAST->PciInfo, 2, REGION_IO) - 0x380; -+ -+#if ABI_VIDEODRV_VERSION < 12 -+ VGAHWPTR(pScrn)->PIOOffset = /* ... */ -+#endif -+ pAST->PIOOffset = -+ pAST->IODBase + PCI_REGION_BASE(pAST->PciInfo, 2, REGION_IO) - 0x380; - - pAST->RelocateIO = (IOADDRESS)(PCI_REGION_BASE(pAST->PciInfo, 2, REGION_IO) + pAST->IODBase); - --- -cgit v0.9.0.2-2-gbebe diff --git a/staging/xf86-video-ati/PKGBUILD b/staging/xf86-video-ati/PKGBUILD deleted file mode 100644 index 028b977ac..000000000 --- a/staging/xf86-video-ati/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 149792 2012-02-10 21:29:58Z andyrtr $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Alexander Baldeck <alexander@archlinux.org> - -pkgname=xf86-video-ati -pkgver=6.14.3 -pkgrel=2 -pkgdesc="X.org ati video driver" -arch=('i686' 'x86_64') -url="http://xorg.freedesktop.org/" -license=('custom') -depends=(libpciaccess libdrm udev pixman ati-dri) -makedepends=('xorg-server-devel>=1.11.99.902' 'libdrm' 'xf86driproto' 'mesa' 'glproto') -conflicts=('xorg-server<1.11.99.902') -groups=('xorg-drivers' 'xorg') -options=('!libtool') -source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('db635e2e2858d5db90362f546ac0adad85474bad') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --enable-dri - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make "DESTDIR=${pkgdir}" install - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" -} diff --git a/staging/xf86-video-chips/PKGBUILD b/staging/xf86-video-chips/PKGBUILD deleted file mode 100644 index 971900114..000000000 --- a/staging/xf86-video-chips/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 149794 2012-02-10 21:39:35Z andyrtr $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Contributor: Alexander Baldeck <alexander@archlinux.org> - -pkgname=xf86-video-chips -pkgver=1.2.4 -pkgrel=4 -pkgdesc="X.org Chips and Technologies video driver" -arch=(i686 x86_64) -url="http://xorg.freedesktop.org/" -license=('custom') -depends=(glibc) -makedepends=('xorg-server-devel>=1.11.99.902') -conflicts=('xorg-server<1.11.99.902') -groups=('xorg-drivers' 'xorg') -options=('!libtool') -source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 - chips-1.2.4-git.patch) -sha1sums=('71f474335d05f93b2451a7a0750c4409669641a4' - 'b13ff000e3f6f06c1a7fd55e9e0ad6078f1b4e5b') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i ${srcdir}/chips-1.2.4-git.patch - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" -} diff --git a/staging/xf86-video-chips/chips-1.2.4-git.patch b/staging/xf86-video-chips/chips-1.2.4-git.patch deleted file mode 100644 index 9d8e856a3..000000000 --- a/staging/xf86-video-chips/chips-1.2.4-git.patch +++ /dev/null @@ -1,912 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index 225e516..c0ed508 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -44,9 +44,6 @@ XORG_DEFAULT_OPTIONS - AC_DISABLE_STATIC - AC_PROG_LIBTOOL - --# Checks for programs. --AM_PROG_CC_C_O -- - AH_TOP([#include "xorg-server.h"]) - - # Define a configure option for an alternate module directory -diff --git a/man/chips.man b/man/chips.man -index 740af38..0c022ee 100644 ---- a/man/chips.man -+++ b/man/chips.man -@@ -165,9 +165,6 @@ Force the use of memory mapped IO where it can be used. Default: off - Force driver to leave centering and stretching registers alone. This - can fix some laptop suspend/resume problems. Default: off - .TP --.BI "Option \*qOverlay\*q" --Enable 8+24 overlay mode. Only appropriate for depth 24. Default: off. --.TP - .BI "Option \*qColorKey\*q \*q" integer \*q - Set the colormap index used for the transparency key for the depth 8 plane - when operating in 8+16 overlay mode. The value must be in the range -diff --git a/src/ct_accel.c b/src/ct_accel.c -index 3920b0a..4b5776a 100644 ---- a/src/ct_accel.c -+++ b/src/ct_accel.c -@@ -428,19 +428,7 @@ chips_imagewrite: - infoPtr->ImageWriteFlags |= NO_PLANEMASK; - #endif - -- --#ifdef CHIPS_HIQV -- if (XAAInit(pScreen, infoPtr)) { -- if (cPtr->Flags & ChipsOverlay8plus16) -- return(XAAInitDualFramebufferOverlay(pScreen, -- CTNAME(DepthChange))); -- else -- return TRUE; -- } else -- return FALSE; --#else - return(XAAInit(pScreen, infoPtr)); --#endif - } - - #ifdef CHIPS_HIQV -@@ -1243,11 +1231,6 @@ CTNAME(SubsequentScreenToScreenColorExpandFill)(ScrnInfoPtr pScrn, - #endif - w *= cAcl->BytesPerPixel; - ctBLTWAIT; --#ifdef CHIPS_HIQV -- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16) && -- (pScrn->depth == 8)) -- ctSETPITCH(cAcl->PitchInBytes << 1, cAcl->PitchInBytes); --#endif - ctSETSRCADDR(srcaddr); - ctSETDSTADDR(destaddr); - #ifdef CHIPS_HIQV -@@ -1271,10 +1254,6 @@ CTNAME(SetupForColor8x8PatternFill)(ScrnInfoPtr pScrn, int patx, int paty, - patternaddr = (paty * pScrn->displayWidth + - (patx & ~0x3F)) * cAcl->BytesPerPixel; - cAcl->patternyrot = (patx & 0x3F) >> 3; --#ifdef CHIPS_HIQV -- if (cPtr->Flags & ChipsOverlay8plus16) -- patternaddr += cPtr->FbOffset16; --#endif - - ctBLTWAIT; - ctSETPATSRCADDR(patternaddr); -@@ -1338,10 +1317,7 @@ CTNAME(SetupForMono8x8PatternFill)(ScrnInfoPtr pScrn, int patx, int paty, - - #ifdef CHIPS_HIQV - patternaddr = paty * pScrn->displayWidth + patx; -- if (cPtr->Flags & ChipsOverlay8plus16) -- patternaddr = patternaddr * 2 + cPtr->FbOffset16; -- else -- patternaddr *= cAcl->BytesPerPixel; -+ patternaddr *= cAcl->BytesPerPixel; - #else - patternaddr = (paty * pScrn->displayWidth + patx) * cAcl->BytesPerPixel; - #endif -@@ -1593,10 +1569,7 @@ CTNAME(WritePixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, - dwords = (((skipleft + bytesPerLine + 0x7) & ~0x7)) >> 2; - destaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); - destpitch = pScrn->displayWidth * (bpp >> 3); -- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) -- destaddr += cPtr->FbOffset16; -- else -- destaddr += cAcl->FbOffset; -+ destaddr += cAcl->FbOffset; - - ctBLTWAIT; - -@@ -1681,10 +1654,7 @@ CTNAME(WritePixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, - y++; - - destaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); -- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) -- destaddr += cPtr->FbOffset16; -- else -- destaddr += cAcl->FbOffset; -+ destaddr += cAcl->FbOffset; - - ctBLTWAIT; - ctSETDSTADDR(destaddr); -@@ -1717,10 +1687,7 @@ CTNAME(ReadPixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, - dwords = (((bytesPerLine + 0x7) & ~0x7)) >> 2; - srcaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); - srcpitch = pScrn->displayWidth * (bpp >> 3); -- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) -- srcaddr += cPtr->FbOffset16; -- else -- srcaddr += cAcl->FbOffset; -+ srcaddr += cAcl->FbOffset; - - ctBLTWAIT; - ctSETROP( ctDSTSYSTEM | ctLEFT2RIGHT | ctTOP2BOTTOM | -@@ -1755,10 +1722,7 @@ CTNAME(ReadPixmap)(ScrnInfoPtr pScrn, int x, int y, int w, int h, - dst += dstwidth; - y++; - srcaddr = (y * pScrn->displayWidth + x) * (bpp >> 3); -- if ((y >= pScrn->virtualY) && (cPtr->Flags & ChipsOverlay8plus16)) -- srcaddr += cPtr->FbOffset16; -- else -- srcaddr += cAcl->FbOffset; -+ srcaddr += cAcl->FbOffset; - ctBLTWAIT; - ctSETSRCADDR(srcaddr); - ctSETHEIGHTWIDTHGO(h, bytesPerLine); -diff --git a/src/ct_driver.c b/src/ct_driver.c -index 6624b79..a2e5c94 100644 ---- a/src/ct_driver.c -+++ b/src/ct_driver.c -@@ -949,7 +949,7 @@ CHIPSProbe(DriverPtr drv, int flags) - } - - } -- xfree(usedChips); -+ free(usedChips); - } - } - -@@ -981,12 +981,12 @@ CHIPSProbe(DriverPtr drv, int flags) - pScrn->ValidMode = CHIPSValidMode; - foundScreen = TRUE; - } -- xfree(usedChips); -+ free(usedChips); - } - } - #endif - -- xfree(devSections); -+ free(devSections); - return foundScreen; - } - #endif -@@ -1446,7 +1446,12 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags) - - hwp = VGAHWPTR(pScrn); - vgaHWGetIOBase(hwp); -+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 12 - cPtr->PIOBase = hwp->PIOOffset; -+#else -+ cPtr->PIOBase = 0; -+#endif -+ - /* - * Must allow ensure that storage for the 2nd set of vga registers is - * allocated for dual channel cards -@@ -1639,55 +1644,15 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags) - } - } - -- if ((s = xf86GetOptValString(cPtr->Options, OPTION_OVERLAY))) { -- if (!*s || !xf86NameCmp(s, "8,16") || !xf86NameCmp(s, "16,8")) { -- if (pScrn->bitsPerPixel == 16) { -- if (cPtr->Flags & ChipsLinearSupport) { -- cPtr->Flags |= ChipsOverlay8plus16; -- if(!xf86GetOptValInteger( -- cPtr->Options, OPTION_COLOR_KEY, &(pScrn->colorKey))) -- pScrn->colorKey = TRANSPARENCY_KEY; -- pScrn->overlayFlags = OVERLAY_8_16_DUALFB; -- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, -- "PseudoColor overlay enabled.\n"); -- if (!xf86IsOptionSet(cPtr->Options, OPTION_LCD_STRETCH)) -- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, -- " - Forcing option \"Stretch\" \"ON\".\n"); -- if (!xf86IsOptionSet(cPtr->Options, OPTION_LCD_CENTER)) -- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, -- " - Forcing option \"LcdCenter\" \"OFF\".\n"); -- if (cPtr->Flags & ChipsShadowFB) { -- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, -- " - Disabling \"Shadow Framebuffer\".\n"); -- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, -- " Not support with option \"8Plus16\".\n"); -- cPtr->Flags &= ~ChipsShadowFB; -- cPtr->Rotate = 0; -- } -- } else { -- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, "Option \"Overlay\" ignored. Not supported without linear addressing\n"); -- } -- } else { -- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, -- "Option \"Overlay\" is not supported in this configuration\n"); -- } -- } else { -- xf86DrvMsg(pScrn->scrnIndex, X_WARNING, -- "\"%s\" is not a valid value for Option \"Overlay\"\n", s); -- } -- } -- -- if (!(cPtr->Flags & ChipsOverlay8plus16)) { -- if(xf86GetOptValInteger(cPtr->Options, OPTION_VIDEO_KEY, -- &(cPtr->videoKey))) { -- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "video key set to 0x%x\n", -+ if(xf86GetOptValInteger(cPtr->Options, OPTION_VIDEO_KEY, -+ &(cPtr->videoKey))) { -+ xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, "video key set to 0x%x\n", - cPtr->videoKey); -- } else { -- cPtr->videoKey = (1 << pScrn->offset.red) | -+ } else { -+ cPtr->videoKey = (1 << pScrn->offset.red) | - (1 << pScrn->offset.green) | - (((pScrn->mask.blue >> pScrn->offset.blue) - 1) - << pScrn->offset.blue); -- } - } - - if (cPtr->Flags & ChipsShadowFB) { -@@ -2335,28 +2300,16 @@ chipsPreInitHiQV(ScrnInfoPtr pScrn, int flags) - /* and 32bits on the others. Thus multiply by a suitable factor */ - if (cPtr->Flags & Chips64BitMemory) { - if (cPtr->FrameBufferSize && (cPtr->PanelType & ChipsLCD)) -- if (cPtr->Flags & ChipsOverlay8plus16 ) -- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 8 * 0.7 / 4); -- else - cPtr->MaxClock = min(cPtr->MaxClock, - MemClk->Clk * 8 * 0.7 / (bytesPerPixel + 1)); - else -- if (cPtr->Flags & ChipsOverlay8plus16) -- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 8 * 0.7 / 3); -- else - cPtr->MaxClock = min(cPtr->MaxClock, - MemClk->Clk * 8 * 0.7 / bytesPerPixel); - } else { - if (cPtr->FrameBufferSize && (cPtr->PanelType & ChipsLCD)) -- if (cPtr->Flags & ChipsOverlay8plus16 ) -- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 4 * 0.7 / 4); -- else - cPtr->MaxClock = min(cPtr->MaxClock, - MemClk->Clk * 4 * 0.7 / (bytesPerPixel + 1)); - else -- if (cPtr->Flags & ChipsOverlay8plus16) -- cPtr->MaxClock = min(cPtr->MaxClock, MemClk->Clk * 4 * 0.7 / 3); -- else - cPtr->MaxClock = min(cPtr->MaxClock, - MemClk->Clk * 4 * 0.7 / bytesPerPixel); - } -@@ -3736,8 +3689,7 @@ CHIPSEnterVT(int scrnIndex, int flags) - /* Should we re-save the text mode on each VT enter? */ - if(!chipsModeInit(pScrn, pScrn->currentMode)) - return FALSE; -- if ((!(cPtr->Flags & ChipsOverlay8plus16)) -- && (cPtr->Flags & ChipsVideoSupport) -+ if ((cPtr->Flags & ChipsVideoSupport) - && (cPtr->Flags & ChipsLinearSupport)) - CHIPSResetVideo(pScrn); - -@@ -3788,8 +3740,7 @@ chipsLoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices, LOCO *colors, - int i, index, shift ; - CHIPSEntPtr cPtrEnt; - -- shift = ((pScrn->depth == 15) && -- (!(cPtr->Flags & ChipsOverlay8plus16))) ? 3 : 0; -+ shift = (pScrn->depth == 15) ? 3 : 0; - - if (cPtr->UseDualChannel) { - cPtrEnt = xf86GetEntityPrivate(pScrn->entityList[0], -@@ -3895,18 +3846,6 @@ chipsLoadPalette16(ScrnInfoPtr pScrn, int numColors, int *indices, - hwp->disablePalette(hwp); - } - --static Bool --cfb8_16ScreenInit(ScreenPtr pScreen, pointer pbits16, pointer pbits8, -- int xsize, int ysize, int dpix, int dpiy, -- int width16, int width8) --{ -- return -- (fbOverlaySetupScreen(pScreen, pbits16, pbits8, xsize, ysize, -- dpix, dpiy, width16, width8, 16, 8) && -- fbOverlayFinishScreenInit(pScreen, pbits16, pbits8, xsize, ysize, -- dpix, dpiy, width16, width8, 16, 8, 16, 8)); --} -- - /* Mandatory */ - static Bool - CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) -@@ -3947,22 +3886,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - if (!chipsMapMem(pScrn)) - return FALSE; - -- /* Setup a pointer to the overlay if needed */ -- if (cPtr->Flags & ChipsOverlay8plus16) { -- cPtr->FbOffset16 = pScrn->displayWidth * pScrn->virtualY; -- cPtr->FbSize16 = (pScrn->displayWidth << 1) * pScrn->virtualY; -- if (cPtr->FbSize16 > (cPtr->FbMapSize - cPtr->FrameBufferSize)) { -- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, -- "Too little memory for overlay. Disabling.\n"); -- cPtr->Flags &= ~ChipsOverlay8plus16; -- } -- if ((pScrn->displayWidth > 1024) || (pScrn->virtualY > 1024)) { -- xf86DrvMsg(pScrn->scrnIndex, X_CONFIG, -- "Max overlay Width/Height 1024 pixels. Disabling.\n"); -- cPtr->Flags &= ~ChipsOverlay8plus16; -- } -- } -- - /* Setup the MMIO register access functions if need */ - if (cPtr->UseFullMMIO && cPtr->MMIOBaseVGA) { - CHIPSSetMmioExtFuncs(cPtr); -@@ -4035,18 +3958,10 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - miClearVisualTypes(); - - /* Setup the visuals we support. */ -- if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)){ -- if (!miSetVisualTypes(8, PseudoColorMask | GrayScaleMask, -- pScrn->rgbBits, PseudoColor)) -- return FALSE; -- if (!miSetVisualTypes(16, TrueColorMask, pScrn->rgbBits, TrueColor)) -- return FALSE; -- } else { -- if (!miSetVisualTypes(pScrn->depth, -+ if (!miSetVisualTypes(pScrn->depth, - miGetDefaultVisualMask(pScrn->depth), - pScrn->rgbBits, pScrn->defaultVisual)) -- return FALSE; -- } -+ return FALSE; - miSetPixmapDepths (); - - /* -@@ -4090,13 +4005,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - break; - #endif - case 16: -- if (cPtr->Flags & ChipsOverlay8plus16) { -- ret = cfb8_16ScreenInit(pScreen, (unsigned char *)FBStart + -- cPtr->FbOffset16, FBStart, width, -- height, pScrn->xDpi, pScrn->yDpi, -- displayWidth, displayWidth); -- break; -- } - default: - ret = fbScreenInit(pScreen, FBStart, - width,height, -@@ -4223,7 +4131,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - } - if (!miInitializeBanking(pScreen, pScrn->virtualX, pScrn->virtualY, - pScrn->displayWidth, pBankInfo)) { -- xfree(pBankInfo); -+ free(pBankInfo); - pBankInfo = NULL; - return FALSE; - } -@@ -4244,9 +4152,6 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - if (pScrn->bitsPerPixel < 8) - freespace = allocatebase - pScrn->displayWidth * - pScrn->virtualY / 2; -- else if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)) -- freespace = allocatebase - pScrn->displayWidth * -- pScrn->virtualY - cPtr->FbSize16; - else - freespace = allocatebase - pScrn->displayWidth * - pScrn->virtualY * (pScrn->bitsPerPixel >> 3); -@@ -4369,9 +4274,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - AvailFBArea.y2 = cAcl->CacheEnd / - (pScrn->displayWidth * (pScrn->bitsPerPixel >> 3)); - -- if (!(cPtr->Flags & ChipsOverlay8plus16)) { -- xf86InitFBManager(pScreen, &AvailFBArea); -- } -+ xf86InitFBManager(pScreen, &AvailFBArea); - } - if (cPtr->Flags & ChipsAccelSupport) { - if (IS_HiQV(cPtr)) { -@@ -4425,16 +4328,10 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - if (!miCreateDefColormap(pScreen)) - return FALSE; - -- if ((cPtr->Flags & ChipsOverlay8plus16) && (pScrn->bitsPerPixel == 16)) { -- if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits, chipsLoadPalette, -- NULL, CMAP_RELOAD_ON_MODE_SWITCH)) -- return FALSE; -- } else { -- if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits, -+ if(!xf86HandleColormaps(pScreen, 256, pScrn->rgbBits, - (pScrn->depth == 16 ? chipsLoadPalette16 : chipsLoadPalette), - NULL, CMAP_RELOAD_ON_MODE_SWITCH | CMAP_PALETTED_TRUECOLOR)) -- return FALSE; -- } -+ return FALSE; - - #ifndef XSERVER_LIBPCIACCESS - racflag = RAC_COLORMAP; -@@ -4448,8 +4345,7 @@ CHIPSScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) - xf86SetSilkenMouse(pScreen); - #endif - -- if ((!(cPtr->Flags & ChipsOverlay8plus16)) -- && (cPtr->Flags & ChipsVideoSupport) -+ if ((cPtr->Flags & ChipsVideoSupport) - && (cPtr->Flags & ChipsLinearSupport)) { - CHIPSInitVideo(pScreen); - } -@@ -4522,10 +4418,7 @@ CHIPSAdjustFrame(int scrnIndex, int x, int y, int flags) - Base >>= 3; - break; - case 16: -- if (!(cPtr->Flags & ChipsOverlay8plus16)) -- Base >>= 1; -- else -- Base >>= 2; -+ Base >>= 1; - break; - case 24: - if (!IS_HiQV(cPtr)) -@@ -4581,14 +4474,6 @@ CHIPSAdjustFrame(int scrnIndex, int x, int y, int flags) - cPtr->writeMSS(cPtr, hwp, MSS); - } - -- if (cPtr->Flags & ChipsOverlay8plus16) { -- Base = (Base << 3) & ~(unsigned long)0xF; -- -- cPtr->writeMR(cPtr, 0x22, (cPtr->FbOffset16 + Base) & 0xF8); -- cPtr->writeMR(cPtr, 0x23, ((cPtr->FbOffset16 + Base) >> 8) & 0xFF); -- cPtr->writeMR(cPtr, 0x24, ((cPtr->FbOffset16 + Base) >> 16) & 0xFF); -- } -- - } - - /* Mandatory */ -@@ -4652,13 +4537,6 @@ CHIPSValidMode(int scrnIndex, DisplayModePtr mode, Bool verbose, int flags) - ScrnInfoPtr pScrn = xf86Screens[scrnIndex]; - CHIPSPtr cPtr = CHIPSPTR(pScrn); - -- if (flags & MODECHECK_FINAL) { -- /* Don't subtract FrambufferSize here as it should be subtracted already */ -- if ((cPtr->Flags & ChipsOverlay8plus16) -- && ((pScrn->videoRam<<10) - pScrn->displayWidth * 3 * pScrn->virtualY -- < 0)) -- return MODE_MEM; -- } - /* The tests here need to be expanded */ - if ((mode->Flags & V_INTERLACE) && (cPtr->PanelType & ChipsLCD)) - return MODE_NO_INTERLACE; -@@ -5544,12 +5422,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) - } else { - ChipsStd->Attribute[0x10] = 0x01; /* mode */ - } -- if ((pScrn->bitsPerPixel == 16) && (cPtr->Flags & ChipsOverlay8plus16)) { -- /* Make sure that the overlay isn't visible in the overscan region */ -- if (ChipsStd->Attribute[0x11] == pScrn->colorKey) -- ChipsStd->Attribute[0x11] = pScrn->colorKey - 1; -- } else -- ChipsStd->Attribute[0x11] = 0x00; /* overscan (border) color */ -+ ChipsStd->Attribute[0x11] = 0x00; /* overscan (border) color */ - ChipsStd->Attribute[0x12] = 0x0F; /* enable all color planes */ - ChipsStd->Attribute[0x13] = 0x00; /* horiz pixel panning 0 */ - -@@ -5558,8 +5431,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) - /* set virtual screen width */ - tmp = pScrn->displayWidth >> 3; - if (pScrn->bitsPerPixel == 16) { -- if (!(cPtr->Flags & ChipsOverlay8plus16)) -- tmp <<= 1; /* double the width of the buffer */ -+ tmp <<= 1; /* double the width of the buffer */ - } else if (pScrn->bitsPerPixel == 24) { - tmp += tmp << 1; - } else if (pScrn->bitsPerPixel == 32) { -@@ -5688,8 +5560,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) - - /* centering/stretching */ - if (!xf86ReturnOptValBool(cPtr->Options, OPTION_SUSPEND_HACK, FALSE)) { -- if (!xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_STRETCH, FALSE) || -- (cPtr->Flags & ChipsOverlay8plus16)) { -+ if (!xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_STRETCH, FALSE)) { - ChipsNew->FR[0x40] &= 0xDF; /* Disable Horizontal stretching */ - ChipsNew->FR[0x48] &= 0xFB; /* Disable vertical stretching */ - ChipsNew->XR[0xA0] = 0x10; /* Disable cursor stretching */ -@@ -5709,8 +5580,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) - } - } - -- if ((xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_CENTER, TRUE)) -- || (cPtr->Flags & ChipsOverlay8plus16)) { -+ if (xf86ReturnOptValBool(cPtr->Options, OPTION_LCD_CENTER, TRUE)) { - ChipsNew->FR[0x40] |= 0x3; /* Enable Horizontal centering */ - ChipsNew->FR[0x48] |= 0x3; /* Enable Vertical centering */ - } else { -@@ -5723,8 +5593,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) - ChipsNew->XR[0x82] |=0x02; - - /* software mode flag */ -- ChipsNew->XR[0xE2] = chipsVideoMode(((cPtr->Flags & ChipsOverlay8plus16) ? -- 8 : pScrn->depth), (cPtr->PanelType & ChipsLCD) ? -+ ChipsNew->XR[0xE2] = chipsVideoMode((pScrn->depth), (cPtr->PanelType & ChipsLCD) ? - min(mode->CrtcHDisplay, cPtr->PanelSize.HDisplay) : - mode->CrtcHDisplay, mode->CrtcVDisplay); - #ifdef DEBUG -@@ -5762,7 +5631,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) - } - } - /* bpp depend */ -- if ((pScrn->bitsPerPixel == 16) && (!(cPtr->Flags & ChipsOverlay8plus16))) { -+ if (pScrn->bitsPerPixel == 16) { - ChipsNew->XR[0x81] = (ChipsNew->XR[0x81] & 0xF0) | 0x4; - if (cPtr->Flags & ChipsGammaSupport) - ChipsNew->XR[0x82] |= 0x0C; -@@ -5915,60 +5784,7 @@ chipsModeInitHiQV(ScrnInfoPtr pScrn, DisplayModePtr mode) - /* Turn off multimedia by default as it degrades performance */ - ChipsNew->XR[0xD0] &= 0x0f; - -- /* Setup the video/overlay */ -- if (cPtr->Flags & ChipsOverlay8plus16) { -- ChipsNew->XR[0xD0] |= 0x10; /* Force the Multimedia engine on */ --#ifdef SAR04 -- ChipsNew->XR[0x4F] = 0x2A; /* SAR04 >352 pixel overlay width */ --#endif -- ChipsNew->MR[0x1E] &= 0xE0; /* Set Zoom and Direction */ -- if ((!(cPtr->PanelType & ChipsLCD)) && (mode->Flags & V_INTERLACE)) -- ChipsNew->MR[0x1E] |= 0x10; /* Interlace */ -- ChipsNew->MR[0x1F] &= 0x14; /* Mask reserved bits */ -- ChipsNew->MR[0x1F] |= 0x08; /* RGB 16bpp */ -- if (pScrn->weight.green == 5) -- ChipsNew->MR[0x1F] |= 0x01; /* RGB 15bpp */ -- -- ChipsNew->MR[0x20] &= 0x03; /* Mask reserved bits */ -- ChipsNew->MR[0x20] |= 0x80; /* Auto Centre, Use mem ptr1 */ -- ChipsNew->MR[0x22] = cPtr->FbOffset16 & 0xF8; /* Setup Pointer 1 */ -- ChipsNew->MR[0x23] = (cPtr->FbOffset16 >> 8) & 0xFF; -- ChipsNew->MR[0x24] = (cPtr->FbOffset16 >> 16) & 0xFF; -- ChipsNew->MR[0x25] = cPtr->FbOffset16 & 0xF8; /* Setup Pointer 2 */ -- ChipsNew->MR[0x26] = (cPtr->FbOffset16 >> 8) & 0xFF; -- ChipsNew->MR[0x27] = (cPtr->FbOffset16 >> 16) & 0xFF; -- ChipsNew->MR[0x28] = (pScrn->displayWidth >> 2) - 1; /* Width */ -- ChipsNew->MR[0x34] = (pScrn->displayWidth >> 2) - 1; -- -- /* Left Edge of Overlay */ -- ChipsNew->MR[0x2A] = cPtr->OverlaySkewX; -- ChipsNew->MR[0x2B] &= 0xF8; /* Mask reserved bits */ -- ChipsNew->MR[0x2B] |= ((cPtr->OverlaySkewX >> 8) & 0x7); -- /* Right Edge of Overlay */ -- ChipsNew->MR[0x2C] = (cPtr->OverlaySkewX + pScrn->displayWidth - -- 1) & 0xFF; -- ChipsNew->MR[0x2D] &= 0xF8; /* Mask reserved bits */ -- ChipsNew->MR[0x2D] |= ((cPtr->OverlaySkewX + pScrn->displayWidth - -- 1) >> 8) & 0x07; -- /* Top Edge of Overlay */ -- ChipsNew->MR[0x2E] = cPtr->OverlaySkewY; -- ChipsNew->MR[0x2F] &= 0xF8; -- ChipsNew->MR[0x2F] |= ((cPtr->OverlaySkewY >> 8) & 0x7); -- /* Bottom Edge of Overlay*/ -- ChipsNew->MR[0x30] = (cPtr->OverlaySkewY + pScrn->virtualY - 1 )& 0xFF; -- ChipsNew->MR[0x31] &= 0xF8; /* Mask reserved bits */ -- ChipsNew->MR[0x31] |= ((cPtr->OverlaySkewY + pScrn->virtualY - -- 1 ) >> 8) & 0x07; -- -- ChipsNew->MR[0x3C] &= 0x18; /* Mask reserved bits */ -- ChipsNew->MR[0x3C] |= 0x07; /* Enable keyed overlay window */ -- ChipsNew->MR[0x3D] = 0x00; -- ChipsNew->MR[0x3E] = 0x00; -- ChipsNew->MR[0x3F] = pScrn->colorKey; /* 8bpp transparency key */ -- ChipsNew->MR[0x40] = 0xFF; -- ChipsNew->MR[0x41] = 0xFF; -- ChipsNew->MR[0x42] = 0x00; -- } else if (cPtr->Flags & ChipsVideoSupport) { -+ if (cPtr->Flags & ChipsVideoSupport) { - #if 0 /* if we do this even though video isn't playing we kill performance */ - ChipsNew->XR[0xD0] |= 0x10; /* Force the Multimedia engine on */ - #endif -@@ -6877,8 +6693,7 @@ chipsRestoreExtendedRegs(ScrnInfoPtr pScrn, CHIPSRegPtr Regs) - } - - /* Set SAR04 multimedia register correctly */ -- if ((cPtr->Flags & ChipsOverlay8plus16) -- || (cPtr->Flags & ChipsVideoSupport)) { -+ if ((cPtr->Flags & ChipsVideoSupport)) { - #ifdef SAR04 - cPtr->writeXR(cPtr, 0x4E, 0x04); - if (cPtr->readXR(cPtr, 0x4F) != Regs->XR[0x4F]) -diff --git a/src/ct_driver.h b/src/ct_driver.h -index d8ce228..9033867 100644 ---- a/src/ct_driver.h -+++ b/src/ct_driver.h -@@ -114,7 +114,6 @@ typedef struct { - /* Options flags for the C&T chipsets */ - #define ChipsHWCursor 0x00001000 - #define ChipsShadowFB 0x00002000 --#define ChipsOverlay8plus16 0x00004000 - #define ChipsUseNewFB 0x00008000 - - /* Architecture type flags */ -@@ -272,11 +271,13 @@ typedef struct { - - typedef struct _CHIPSRec { - pciVideoPtr PciInfo; -+#ifndef XSERVER_LIBPCIACCESS - PCITAG PciTag; -+#endif - int Chipset; - EntityInfoPtr pEnt; -- IOADDRESS PIOBase; -- CARD32 IOAddress; -+ unsigned long PIOBase; -+ unsigned long IOAddress; - unsigned long FbAddress; - unsigned int IOBase; - unsigned char * FbBase; -diff --git a/src/ct_video.c b/src/ct_video.c -index a68acb9..c9e5bb4 100644 ---- a/src/ct_video.c -+++ b/src/ct_video.c -@@ -56,8 +56,7 @@ CHIPSInitVideo(ScreenPtr pScreen) - CHIPSPtr cPtr = CHIPSPTR(pScrn); - int num_adaptors; - -- if (!(cPtr->Flags & ChipsOverlay8plus16) && -- (cPtr->Flags & ChipsVideoSupport)) { -+ if ((cPtr->Flags & ChipsVideoSupport)) { - newAdaptor = CHIPSSetupImageVideo(pScreen); - CHIPSInitOffscreenImages(pScreen); - } -diff --git a/util/dRegs.c b/util/dRegs.c -index b7edc8f..0d2f0cb 100644 ---- a/util/dRegs.c -+++ b/util/dRegs.c -@@ -1,63 +1,8 @@ -- -- -- -- -- -- --#ifdef __NetBSD__ --# include <sys/types.h> --# include <machine/pio.h> --# include <machine/sysarch.h> --#else --# if defined(SVR4) && defined(i386) --# include <sys/types.h> --# ifdef NCR -- /* broken NCR <sys/sysi86.h> */ --# define __STDC --# include <sys/sysi86.h> --# undef __STDC --# else --# include <sys/sysi86.h> --# endif --# ifdef SVR4 --# if !defined(sun) --# include <sys/seg.h> --# endif --# endif --# include <sys/v86.h> --# if defined(sun) --# include <sys/psw.h> --# endif --# endif --# include "AsmMacros.h" --#endif /* NetBSD */ -- - #include <unistd.h> - #include <stdio.h> - #include <stdlib.h> - --#ifdef __NetBSD__ --# define SET_IOPL() i386_iopl(3) --# define RESET_IOPL() i386_iopl(0) --#else --# if defined(SVR4) && defined(i386) --# ifndef SI86IOPL --# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) --# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) --# else --# define SET_IOPL() sysi86(SI86IOPL,3) --# define RESET_IOPL() sysi86(SI86IOPL,0) --# endif --# else --# ifdef linux --# define SET_IOPL() iopl(3) --# define RESET_IOPL() iopl(0) --# else --# define SET_IOPL() (void)0 --# define RESET_IOPL() (void)0 --# endif --# endif --#endif -+#include "iopl.h" - - int main(void) - { -diff --git a/util/iopl.h b/util/iopl.h -new file mode 100644 -index 0000000..e08207c ---- /dev/null -+++ b/util/iopl.h -@@ -0,0 +1,60 @@ -+#ifdef __NetBSD__ -+# include <sys/types.h> -+# include <machine/pio.h> -+# include <machine/sysarch.h> -+#else -+# if defined(__linux__) -+/* Can't because <sys/iopl.h> provides conflicting inb, outb, etc -+ * # include <sys/io.h> -+ */ -+int iopl(int level); -+# endif -+# if defined(SVR4) && defined(i386) -+# include <sys/types.h> -+# ifdef NCR -+ /* broken NCR <sys/sysi86.h> */ -+# define __STDC -+# include <sys/sysi86.h> -+# undef __STDC -+# else -+# include <sys/sysi86.h> -+# endif -+# ifdef SVR4 -+# if !defined(sun) -+# include <sys/seg.h> -+# endif -+# endif -+# include <sys/v86.h> -+# if defined(sun) -+# include <sys/psw.h> -+# endif -+# endif -+# include "AsmMacros.h" -+#endif /* NetBSD */ -+ -+#include <unistd.h> -+#include <stdio.h> -+#include <stdlib.h> -+ -+#ifdef __NetBSD__ -+# define SET_IOPL() i386_iopl(3) -+# define RESET_IOPL() i386_iopl(0) -+#else -+# if defined(SVR4) && defined(i386) -+# ifndef SI86IOPL -+# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) -+# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) -+# else -+# define SET_IOPL() sysi86(SI86IOPL,3) -+# define RESET_IOPL() sysi86(SI86IOPL,0) -+# endif -+# else -+# ifdef linux -+# define SET_IOPL() iopl(3) -+# define RESET_IOPL() iopl(0) -+# else -+# define SET_IOPL() (void)0 -+# define RESET_IOPL() (void)0 -+# endif -+# endif -+#endif -diff --git a/util/mRegs.c b/util/mRegs.c -index f359738..843d01d 100644 ---- a/util/mRegs.c -+++ b/util/mRegs.c -@@ -1,63 +1,8 @@ -- -- -- -- -- -- --#ifdef __NetBSD__ --# include <sys/types.h> --# include <machine/pio.h> --# include <machine/sysarch.h> --#else --# if defined(SVR4) && defined(i386) --# include <sys/types.h> --# ifdef NCR -- /* broken NCR <sys/sysi86.h> */ --# define __STDC --# include <sys/sysi86.h> --# undef __STDC --# else --# include <sys/sysi86.h> --# endif --# ifdef SVR4 --# if !defined(sun) --# include <sys/seg.h> --# endif --# endif --# include <sys/v86.h> --# if defined(sun) --# include <sys/psw.h> --# endif --# endif --# include "AsmMacros.h" --#endif /* NetBSD */ -- - #include <unistd.h> - #include <stdio.h> - #include <stdlib.h> - --#ifdef __NetBSD__ --# define SET_IOPL() i386_iopl(3) --# define RESET_IOPL() i386_iopl(0) --#else --# if defined(SVR4) && defined(i386) --# ifndef SI86IOPL --# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) --# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) --# else --# define SET_IOPL() sysi86(SI86IOPL,3) --# define RESET_IOPL() sysi86(SI86IOPL,0) --# endif --# else --# ifdef linux --# define SET_IOPL() iopl(3) --# define RESET_IOPL() iopl(0) --# else --# define SET_IOPL() (void)0 --# define RESET_IOPL() (void)0 --# endif --# endif --#endif -+#include "iopl.h" - - int hex2int(char* str); - -diff --git a/util/modClock.c b/util/modClock.c -index 89a291a..45af19b 100644 ---- a/util/modClock.c -+++ b/util/modClock.c -@@ -1,61 +1,12 @@ -- --#ifdef __NetBSD__ --# include <sys/types.h> --# include <machine/pio.h> --# include <machine/sysarch.h> --#else --# if defined(SVR4) && defined(i386) --# include <sys/types.h> --# ifdef NCR -- /* broken NCR <sys/sysi86.h> */ --# define __STDC --# include <sys/sysi86.h> --# undef __STDC --# else --# include <sys/sysi86.h> --# endif --# ifdef SVR4 --# if !defined(sun) --# include <sys/seg.h> --# endif --# endif --# include <sys/v86.h> --# if defined(sun) --# include <sys/psw.h> --# endif --# endif --# include "AsmMacros.h" --#endif /* NetBSD */ -- - #include <unistd.h> - #include <stdio.h> - #include <stdlib.h> -+ - #ifndef Lynx - #include <fnmatch.h> - #endif - --#ifdef __NetBSD__ --# define SET_IOPL() i386_iopl(3) --# define RESET_IOPL() i386_iopl(0) --#else --# if defined(SVR4) && defined(i386) --# ifndef SI86IOPL --# define SET_IOPL() sysi86(SI86V86,V86SC_IOPL,PS_IOPL) --# define RESET_IOPL() sysi86(SI86V86,V86SC_IOPL,0) --# else --# define SET_IOPL() sysi86(SI86IOPL,3) --# define RESET_IOPL() sysi86(SI86IOPL,0) --# endif --# else --# ifdef linux --# define SET_IOPL() iopl(3) --# define RESET_IOPL() iopl(0) --# else --# define SET_IOPL() (void)0 --# define RESET_IOPL() (void)0 --# endif --# endif --#endif -+#include "iopl.h" - - #define tolerance 0.01 /* +/- 1% */ - diff --git a/staging/xf86-video-nouveau/PKGBUILD b/staging/xf86-video-nouveau/PKGBUILD deleted file mode 100644 index 256dd69fd..000000000 --- a/staging/xf86-video-nouveau/PKGBUILD +++ /dev/null @@ -1,41 +0,0 @@ -# $Id: PKGBUILD 149767 2012-02-10 14:54:11Z ibiru $ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Contributor: buddabrod <buddabrod@gmail.com> - -pkgname=xf86-video-nouveau -_gitdate=20120210 -pkgver=0.0.16_git${_gitdate} # see configure.ac -pkgrel=1 -pkgdesc="Open Source 3D acceleration driver for nVidia cards (experimental)" -arch=('i686' 'x86_64') -url="http://nouveau.freedesktop.org/wiki/" -license=('GPL') #and MIT, not yet a license file, see http://nouveau.freedesktop.org/wiki/FAQ#head-09f75d03eb30011c754038a3893119a70745de4e -depends=('libdrm' 'udev') -optdepends=('nouveau-dri: experimental gallium3d features') -makedepends=('xorg-server-devel' 'libdrm' 'xf86driproto') -conflicts=('xorg-server<1.11.99.902') -options=('!libtool') -install=$pkgname.install -source=(ftp://ftp.archlinux.org/other/$pkgname/xf86-video-nouveau-${_gitdate}.tar.bz2) -md5sums=('f35c12d64542d0ea792a9e5af63a2e5a') - -# source PKGBUILD && mksource -mksource() { - mkdir /tmp/$pkgname-${_gitdate} - pushd /tmp/$pkgname-${_gitdate} - git clone -v --depth 1 git://anongit.freedesktop.org/nouveau/xf86-video-nouveau - cd xf86-video-nouveau - git archive --prefix=xf86-video-nouveau-${_gitdate}/ --format=tar HEAD | bzip2 > /tmp/$pkgname-${_gitdate}/$pkgname-${_gitdate}.tar.bz2 - popd -} - -build() { - cd $srcdir/xf86-video-nouveau-${_gitdate} - ./autogen.sh --prefix=/usr - make -} - -package() { - cd $srcdir/xf86-video-nouveau-${_gitdate} - make DESTDIR=$pkgdir install -} diff --git a/staging/xf86-video-nouveau/xf86-video-nouveau.install b/staging/xf86-video-nouveau/xf86-video-nouveau.install deleted file mode 100644 index 027154ff3..000000000 --- a/staging/xf86-video-nouveau/xf86-video-nouveau.install +++ /dev/null @@ -1,16 +0,0 @@ -post_install () { - cat << _EOF - ==> make sure you use KernelModeSetting (KMS) - ==> see http://wiki.archlinux.org/index.php/Nouveau#KMS for more -_EOF -} - -post_upgrade() { - if [ "`vercmp $2 0.0.15_git20100117-1`" -lt 0 ]; then - cat << _EOF - ==> ATTENTION: Usermode support has been dropped - ==> make sure you use KernelModeSetting (KMS) - ==> see http://wiki.archlinux.org/index.php/Nouveau#KMS for more -_EOF - fi -} diff --git a/staging/xf86-video-openchrome/PKGBUILD b/staging/xf86-video-openchrome/PKGBUILD deleted file mode 100644 index ae49965b8..000000000 --- a/staging/xf86-video-openchrome/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 149786 2012-02-10 20:52:27Z andyrtr $ -# Contributor: Paul Mattal <paul@mattal.com> -# Maintainer: Juergen Hoetzel <juergen@hoetzel.info> - -pkgname=xf86-video-openchrome -pkgver=0.2.905 -pkgrel=1 -pkgdesc="X.Org Openchrome drivers" -arch=(i686 x86_64) -license=('custom') -url="http://www.openchrome.org" -depends=('libdrm' 'libxvmc') -makedepends=('xorg-server-devel>=1.11.99.902' 'libx11' 'xf86driproto' 'mesa') #'glproto' 'libgl') -replaces=('openchrome' 'xf86-video-via') -options=('!libtool' '!emptydirs' '!makeflags') -conflicts=('xf86-video-via' 'xf86-video-unichrome' 'openchrome' 'xorg-server<1.11.99.902' 'unichrome-dri') -source=(http://xorg.freedesktop.org/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2) -md5sums=('51871431a4a9204ab8ec79335c0cc041') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr # --disable-dri - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" -} diff --git a/testing/glibc/glibc-2.15-arena.patch b/testing/glibc/glibc-2.15-arena.patch new file mode 100644 index 000000000..46f52e98d --- /dev/null +++ b/testing/glibc/glibc-2.15-arena.patch @@ -0,0 +1,29 @@ +diff --git a/malloc/arena.c b/malloc/arena.c +index d3cf4b9..b1c9469 100644 +--- a/malloc/arena.c ++++ b/malloc/arena.c +@@ -828,7 +828,7 @@ arena_get2(mstate a_tsd, size_t size) + { + if (mp_.arena_max != 0) + narenas_limit = mp_.arena_max; +- else ++ else if (narenas > mp_.arena_test) + { + int n = __get_nprocs (); + +@@ -842,7 +842,14 @@ arena_get2(mstate a_tsd, size_t size) + } + repeat:; + size_t n = narenas; +- if (__builtin_expect (n <= mp_.arena_test || n < narenas_limit, 0)) ++ /* NB: the following depends on the fact that (size_t)0 - 1 is a ++ very large number and that the underflow is OK. If arena_max ++ is set the value of arena_test is irrelevant. If arena_test ++ is set but narenas is not yet larger or equal to arena_test ++ narenas_limit is 0. There is no possibility for narenas to ++ be too big for the test to always fail since there is not ++ enough address space to create that many arenas. */ ++ if (__builtin_expect (n <= narenas_limit - 1, 0)) + { + if (catomic_compare_and_exchange_bool_acq (&narenas, n + 1, n)) + goto repeat; diff --git a/testing/glibc/glibc-2.15-negative-result-cache.patch b/testing/glibc/glibc-2.15-negative-result-cache.patch new file mode 100644 index 000000000..c09e79a17 --- /dev/null +++ b/testing/glibc/glibc-2.15-negative-result-cache.patch @@ -0,0 +1,138 @@ +diff --git a/nscd/aicache.c b/nscd/aicache.c +index aaaf80d..e1f1244 100644 +--- a/nscd/aicache.c ++++ b/nscd/aicache.c +@@ -1,5 +1,5 @@ + /* Cache handling for host lookup. +- Copyright (C) 2004-2008, 2009, 2010, 2011 Free Software Foundation, Inc. ++ Copyright (C) 2004-2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@redhat.com>, 2004. + +@@ -514,8 +514,9 @@ next_nip: + if (fd != -1) + TEMP_FAILURE_RETRY (send (fd, ¬found, total, MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store the ++ result, so be it. */ ++ if (rc4 == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/grpcache.c b/nscd/grpcache.c +index e9607c6..a698f36 100644 +--- a/nscd/grpcache.c ++++ b/nscd/grpcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for group lookup. +- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. + +@@ -120,8 +120,9 @@ cache_addgr (struct database_dyn *db, int fd, request_header *req, + else + written = total; + +- /* If we cannot permanently store the result, so be it. */ +- if (db->negtimeout == 0) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errno == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/hstcache.c b/nscd/hstcache.c +index 4d68ade..c72feaa 100644 +--- a/nscd/hstcache.c ++++ b/nscd/hstcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for host lookup. +- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. + +@@ -141,8 +141,9 @@ cache_addhst (struct database_dyn *db, int fd, request_header *req, + MSG_NOSIGNAL)) != total) + all_written = false; + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errval == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/initgrcache.c b/nscd/initgrcache.c +index 4ac9942..2019991 100644 +--- a/nscd/initgrcache.c ++++ b/nscd/initgrcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for host lookup. +- Copyright (C) 2004-2006, 2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 2004-2006, 2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@redhat.com>, 2004. + +@@ -202,8 +202,9 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req, + written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, + MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (all_tryagain || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/pwdcache.c b/nscd/pwdcache.c +index 49e130c..e2ba09d 100644 +--- a/nscd/pwdcache.c ++++ b/nscd/pwdcache.c +@@ -1,5 +1,5 @@ + /* Cache handling for passwd lookup. +- Copyright (C) 1998-2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 1998-2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. + +@@ -124,8 +124,9 @@ cache_addpw (struct database_dyn *db, int fd, request_header *req, + written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, + MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errno == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) +diff --git a/nscd/servicescache.c b/nscd/servicescache.c +index d3d5dce..a6337e3 100644 +--- a/nscd/servicescache.c ++++ b/nscd/servicescache.c +@@ -1,5 +1,5 @@ + /* Cache handling for services lookup. +- Copyright (C) 2007, 2008, 2009, 2011 Free Software Foundation, Inc. ++ Copyright (C) 2007, 2008, 2009, 2011, 2012 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@drepper.com>, 2007. + +@@ -108,8 +108,9 @@ cache_addserv (struct database_dyn *db, int fd, request_header *req, + written = TEMP_FAILURE_RETRY (send (fd, ¬found, total, + MSG_NOSIGNAL)); + +- /* If we cannot permanently store the result, so be it. */ +- if (__builtin_expect (db->negtimeout == 0, 0)) ++ /* If we have a transient error or cannot permanently store ++ the result, so be it. */ ++ if (errval == EAGAIN || __builtin_expect (db->negtimeout == 0, 0)) + { + /* Mark the old entry as obsolete. */ + if (dh != NULL) diff --git a/core/glibc/glibc-2.15-strcmp-disable-avx.patch b/testing/glibc/glibc-2.15-strcasecmp-disable-avx.patch index 7f1f5b8f2..4c104fa55 100644 --- a/core/glibc/glibc-2.15-strcmp-disable-avx.patch +++ b/testing/glibc/glibc-2.15-strcasecmp-disable-avx.patch @@ -3,33 +3,33 @@ index f93c83d..d8aa889 100644 --- a/sysdeps/x86_64/multiarch/strcmp.S +++ b/sysdeps/x86_64/multiarch/strcmp.S @@ -105,11 +105,6 @@ ENTRY(__strcasecmp) - jne 1f - call __init_cpu_features + jne 1f + call __init_cpu_features 1: -# ifdef HAVE_AVX_SUPPORT - leaq __strcasecmp_avx(%rip), %rax - testl $bit_AVX, __cpu_features+CPUID_OFFSET+index_AVX(%rip) - jnz 2f -# endif - leaq __strcasecmp_sse42(%rip), %rax - testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip) - jnz 2f + leaq __strcasecmp_sse42(%rip), %rax + testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip) + jnz 2f @@ -128,11 +123,6 @@ ENTRY(__strncasecmp) - jne 1f - call __init_cpu_features + jne 1f + call __init_cpu_features 1: -# ifdef HAVE_AVX_SUPPORT - leaq __strncasecmp_avx(%rip), %rax - testl $bit_AVX, __cpu_features+CPUID_OFFSET+index_AVX(%rip) - jnz 2f -# endif - leaq __strncasecmp_sse42(%rip), %rax - testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip) - jnz 2f + leaq __strncasecmp_sse42(%rip), %rax + testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip) + jnz 2f @@ -152,19 +142,6 @@ weak_alias (__strncasecmp, strncasecmp) # include "strcmp-sse42.S" - - + + -# ifdef HAVE_AVX_SUPPORT -# if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L -# define LABEL(l) .L##l##_avx @@ -45,4 +45,4 @@ index f93c83d..d8aa889 100644 - # undef ENTRY # define ENTRY(name) \ - .type STRCMP_SSE2, @function; \ + .type STRCMP_SSE2, @function; \ diff --git a/testing/shadow/nscd-error-reporting.patch b/testing/shadow/nscd-error-reporting.patch new file mode 100644 index 000000000..a4075756e --- /dev/null +++ b/testing/shadow/nscd-error-reporting.patch @@ -0,0 +1,17 @@ +diff --git a/upstream/trunk/lib/nscd.c b/upstream/trunk/lib/nscd.c +index 227c205..7adb58f 100644 +--- a/lib/nscd.c ++++ b/lib/nscd.c +@@ -39,8 +39,11 @@ int nscd_flush_cache (const char *service) + /* nscd is not installed, or it is installed but uses an + interpreter that is missing. Probably the former. */ + return 0; ++ } else if (code == 1) { ++ /* nscd is installed, but it isn't active. */ ++ return 0; + } else if (code != 0) { +- (void) fprintf (stderr, _("%s: nscd exited with status %d"), ++ (void) fprintf (stderr, _("%s: nscd exited with status %d\n"), + Prog, code); + (void) fprintf (stderr, _(MSG_NSCD_FLUSH_CACHE_FAILED), Prog); + return -1; diff --git a/~mtjm/cups-usblp/cups-avahi.patch b/~mtjm/cups-usblp/cups-avahi.patch deleted file mode 100644 index 7e9c8ecea..000000000 --- a/~mtjm/cups-usblp/cups-avahi.patch +++ /dev/null @@ -1,3156 +0,0 @@ -Description: Avahi support -Bug: http://www.cups.org/str.php?L3066 -Author: Tim Waugh -Origin: git clone http://twaugh.fedorapeople.org/cups-avahi.git (Aug 11, 2011) - ---- a/backend/dnssd.c -+++ b/backend/dnssd.c -@@ -15,14 +15,21 @@ - * - * Contents: - * -+ * next_txt_record() - Get next TXT record from a cups_txt_records_t. -+ * parse_txt_record_pair() - Read key/value pair in cups_txt_records_t. - * main() - Browse for printers. - * browse_callback() - Browse devices. - * browse_local_callback() - Browse local devices. - * compare_devices() - Compare two devices. - * exec_backend() - Execute the backend that corresponds to the - * resolved service name. -+ * device_type() - Get DNS-SD type enumeration from string. - * get_device() - Create or update a device. - * query_callback() - Process query data. -+ * avahi_client_callback() - Avahi client callback function. -+ * avahi_query_callback() - Avahi query callback function. -+ * avahi_browse_callback() - Avahi browse callback function. -+ * find_device() - Find a device from its name and domain. - * sigterm_handler() - Handle termination signals... - * unquote() - Unquote a name string. - */ -@@ -33,7 +40,18 @@ - - #include "backend-private.h" - #include <cups/array.h> --#include <dns_sd.h> -+#ifdef HAVE_DNSSD -+# include <dns_sd.h> -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/lookup.h> -+# include <avahi-common/simple-watch.h> -+# include <avahi-common/domain.h> -+# include <avahi-common/error.h> -+# include <avahi-common/malloc.h> -+#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX -+#endif /* HAVE_AVAHI */ - - - /* -@@ -53,7 +71,12 @@ - - typedef struct - { -+#ifdef HAVE_DNSSD - DNSServiceRef ref; /* Service reference for resolve */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ int resolved; /* Did we resolve the device? */ -+#endif /* HAVE_AVAHI */ - char *name, /* Service name */ - *domain, /* Domain name */ - *fullName, /* Full name */ -@@ -65,6 +88,20 @@ - sent; /* Did we list the device? */ - } cups_device_t; - -+typedef struct -+{ -+ char key[256]; -+ char value[256]; -+ -+#ifdef HAVE_DNSSD -+ const uint8_t *data; -+ const uint8_t *datanext; -+ const uint8_t *dataend; -+#else /* HAVE_AVAHI */ -+ AvahiStringList *txt; -+#endif /* HAVE_DNSSD */ -+} cups_txt_records_t; -+ - - /* - * Local globals... -@@ -78,6 +115,7 @@ - * Local functions... - */ - -+#ifdef HAVE_DNSSD - static void browse_callback(DNSServiceRef sdRef, - DNSServiceFlags flags, - uint32_t interfaceIndex, -@@ -93,12 +131,6 @@ - const char *regtype, - const char *replyDomain, - void *context); --static int compare_devices(cups_device_t *a, cups_device_t *b); --static void exec_backend(char **argv); --static cups_device_t *get_device(cups_array_t *devices, -- const char *serviceName, -- const char *regtype, -- const char *replyDomain); - static void query_callback(DNSServiceRef sdRef, - DNSServiceFlags flags, - uint32_t interfaceIndex, -@@ -107,9 +139,118 @@ - uint16_t rrclass, uint16_t rdlen, - const void *rdata, uint32_t ttl, - void *context); -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+static void avahi_client_callback (AvahiClient *client, -+ AvahiClientState state, -+ void *context); -+static void avahi_browse_callback (AvahiServiceBrowser *browser, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiBrowserEvent event, -+ const char *serviceName, -+ const char *regtype, -+ const char *replyDomain, -+ AvahiLookupResultFlags flags, -+ void *context); -+#endif /* HAVE_AVAHI */ -+ -+static cups_device_t * find_device (cups_array_t *devices, -+ cups_txt_records_t *txt, -+ cups_device_t *dkey); -+static int compare_devices(cups_device_t *a, cups_device_t *b); -+static void exec_backend(char **argv); -+static cups_device_t *get_device(cups_array_t *devices, -+ const char *serviceName, -+ const char *regtype, -+ const char *replyDomain); - static void sigterm_handler(int sig); - static void unquote(char *dst, const char *src, size_t dstsize); - -+#ifdef HAVE_AVAHI -+static AvahiSimplePoll *simple_poll = NULL; -+static int avahi_got_callback; -+#endif /* HAVE_AVAHI */ -+ -+ -+/* -+ * 'next_txt_record()' - Get next TXT record from a cups_txt_records_t. -+ */ -+ -+static cups_txt_records_t * -+next_txt_record (cups_txt_records_t *txt) -+{ -+#ifdef HAVE_DNSSD -+ txt->data = txt->datanext; -+#else /* HAVE_AVAHI */ -+ txt->txt = avahi_string_list_get_next (txt->txt); -+ if (txt->txt == NULL) -+ return NULL; -+#endif /* HAVE_DNSSD */ -+ -+ return txt; -+} -+ -+ -+/* -+ * 'parse_txt_record_pair()' - Read key/value pair in cups_txt_records_t. -+ */ -+ -+static int -+parse_txt_record_pair (cups_txt_records_t *txt) -+{ -+#ifdef HAVE_DNSSD -+ uint8_t datalen; -+ uint8_t *data = txt->data; -+ char *ptr; -+ -+ /* -+ * Read a key/value pair starting with an 8-bit length. Since the -+ * length is 8 bits and the size of the key/value buffers is 256, we -+ * don't need to check for overflow... -+ */ -+ -+ datalen = *data++; -+ if (!datalen || (data + datalen) >= txt->dataend) -+ return NULL; -+ txt->datanext = data + datalen; -+ -+ for (ptr = txt->key; data < txt->datanext && *data != '='; data ++) -+ *ptr++ = *data; -+ *ptr = '\0'; -+ -+ if (data < txt->datanext && *data == '=') -+ { -+ data++; -+ -+ if (data < datanext) -+ memcpy (txt->value, data, txt->datanext - data); -+ value[txt->datanext - data] = '\0'; -+ } -+ else -+ return 1; -+#else /* HAVE_AVAHI */ -+ char *key, *value; -+ size_t len; -+ avahi_string_list_get_pair (txt->txt, &key, &value, &len); -+ if (len > sizeof (txt->value) - 1) -+ len = sizeof (txt->value) - 1; -+ -+ memcpy (txt->value, value, len); -+ txt->value[len] = '\0'; -+ len = strlen (key); -+ if (len > sizeof (txt->key) - 1) -+ len = sizeof (txt->key) - 1; -+ -+ memcpy (txt->key, key, len); -+ txt->key[len] = '\0'; -+ avahi_free (key); -+ avahi_free (value); -+#endif /* HAVE_AVAHI */ -+ -+ return 0; -+} -+ - - /* - * 'main()' - Browse for printers. -@@ -120,6 +261,13 @@ - char *argv[]) /* I - Command-line arguments */ - { - const char *name; /* Backend name */ -+ cups_array_t *devices; /* Device array */ -+ cups_device_t *device; /* Current device */ -+ char uriName[1024]; /* Unquoted fullName for URI */ -+#ifdef HAVE_DNSSD -+ int fd; /* Main file descriptor */ -+ fd_set input; /* Input set for select() */ -+ struct timeval timeout; /* Timeout for select() */ - DNSServiceRef main_ref, /* Main service reference */ - fax_ipp_ref, /* IPP fax service reference */ - ipp_ref, /* IPP service reference */ -@@ -133,12 +281,11 @@ - pdl_datastream_ref, /* AppSocket service reference */ - printer_ref, /* LPD service reference */ - riousbprint_ref; /* Remote IO service reference */ -- int fd; /* Main file descriptor */ -- fd_set input; /* Input set for select() */ -- struct timeval timeout; /* Timeout for select() */ -- cups_array_t *devices; /* Device array */ -- cups_device_t *device; /* Current device */ -- char uriName[1024]; /* Unquoted fullName for URI */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ AvahiClient *client; -+ int error; -+#endif /* HAVE_AVAHI */ - #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET) - struct sigaction action; /* Actions for POSIX signals */ - #endif /* HAVE_SIGACTION && !HAVE_SIGSET */ -@@ -198,6 +345,49 @@ - * Browse for different kinds of printers... - */ - -+#ifdef HAVE_AVAHI -+ if ((simple_poll = avahi_simple_poll_new ()) == NULL) -+ { -+ perror ("ERROR: Unable to create avahi simple poll object"); -+ return (1); -+ } -+ -+ client = avahi_client_new (avahi_simple_poll_get (simple_poll), -+ 0, avahi_client_callback, NULL, &error); -+ if (!client) -+ { -+ perror ("DEBUG: Unable to create avahi client"); -+ return (0); -+ } -+ -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_fax-ipp._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_ipp._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_ipp-tls._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_pdl-datastream._tcp", -+ NULL, 0, -+ avahi_browse_callback, -+ devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_printer._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+ avahi_service_browser_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ "_riousbprint._tcp", NULL, 0, -+ avahi_browse_callback, devices); -+#endif /* HAVE_AVAHI */ -+#ifdef HAVE_DNSSD - if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError) - { - perror("ERROR: Unable to create service connection"); -@@ -258,6 +448,7 @@ - riousbprint_ref = main_ref; - DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0, - "_riousbprint._tcp", NULL, browse_callback, devices); -+#endif /* HAVE_DNSSD */ - - /* - * Loop until we are killed... -@@ -265,6 +456,9 @@ - - while (!job_canceled) - { -+ int announce = 0; -+ -+#ifdef HAVE_DNSSD - FD_ZERO(&input); - FD_SET(fd, &input); - -@@ -284,11 +478,35 @@ - } - else - { -+ announce = 1; -+ } -+#else /* HAVE_AVAHI */ -+ int r; -+ avahi_got_callback = 0; -+ r = avahi_simple_poll_iterate (simple_poll, 1); -+ if (r != 0 && r != EINTR) -+ { -+ /* -+ * We've been told to exit the loop. Perhaps the connection to -+ * avahi failed. -+ */ -+ -+ break; -+ } -+ -+ if (avahi_got_callback) -+ announce = 1; -+#endif /* HAVE_DNSSD */ -+ -+ if (announce) -+ { - /* - * Announce any devices we've found... - */ - -+#ifdef HAVE_DNSSD - DNSServiceErrorType status; /* DNS query status */ -+#endif /* HAVE_DNSSD */ - cups_device_t *best; /* Best matching device */ - char device_uri[1024]; /* Device URI */ - int count; /* Number of queries */ -@@ -302,6 +520,7 @@ - if (device->sent) - sent ++; - -+#ifdef HAVE_DNSSD - if (device->ref) - count ++; - -@@ -333,14 +552,23 @@ - count ++; - } - } -- else if (!device->sent) -+ else -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ if (!device->resolved) -+ continue; -+ else -+#endif /* HAVE_AVAHI */ -+ if (!device->sent) - { -+#ifdef HAVE_DNSSD - /* - * Got the TXT records, now report the device... - */ - - DNSServiceRefDeallocate(device->ref); - device->ref = 0; -+#endif /* HAVE_DNSSD */ - - if (!best) - best = device; -@@ -401,6 +629,7 @@ - } - - -+#ifdef HAVE_DNSSD - /* - * 'browse_callback()' - Browse devices. - */ -@@ -489,6 +718,7 @@ - device->fullName); - device->sent = 1; - } -+#endif /* HAVE_DNSSD */ - - - /* -@@ -569,6 +799,41 @@ - - - /* -+ * 'device_type()' - Get DNS-SD type enumeration from string. -+ */ -+ -+static int -+device_type (const char *regtype) -+{ -+#ifdef HAVE_AVAHI -+ if (!strcmp(regtype, "_ipp._tcp")) -+ return (CUPS_DEVICE_IPP); -+ else if (!strcmp(regtype, "_ipps._tcp") || -+ !strcmp(regtype, "_ipp-tls._tcp")) -+ return (CUPS_DEVICE_IPPS); -+ else if (!strcmp(regtype, "_fax-ipp._tcp")) -+ return (CUPS_DEVICE_FAX_IPP); -+ else if (!strcmp(regtype, "_printer._tcp")) -+ return (CUPS_DEVICE_PDL_DATASTREAM); -+#else -+ if (!strcmp(regtype, "_ipp._tcp.")) -+ return (CUPS_DEVICE_IPP); -+ else if (!strcmp(regtype, "_ipps._tcp.") || -+ !strcmp(regtype, "_ipp-tls._tcp.")) -+ return (CUPS_DEVICE_IPPS); -+ else if (!strcmp(regtype, "_fax-ipp._tcp.")) -+ return (CUPS_DEVICE_FAX_IPP); -+ else if (!strcmp(regtype, "_printer._tcp.")) -+ return (CUPS_DEVICE_PRINTER); -+ else if (!strcmp(regtype, "_pdl-datastream._tcp.")) -+ return (CUPS_DEVICE_PDL_DATASTREAM); -+#endif /* HAVE_AVAHI */ -+ -+ return (CUPS_DEVICE_RIOUSBPRINT); -+} -+ -+ -+/* - * 'get_device()' - Create or update a device. - */ - -@@ -589,20 +854,7 @@ - */ - - key.name = (char *)serviceName; -- -- if (!strcmp(regtype, "_ipp._tcp.")) -- key.type = CUPS_DEVICE_IPP; -- else if (!strcmp(regtype, "_ipps._tcp.") || -- !strcmp(regtype, "_ipp-tls._tcp.")) -- key.type = CUPS_DEVICE_IPPS; -- else if (!strcmp(regtype, "_fax-ipp._tcp.")) -- key.type = CUPS_DEVICE_FAX_IPP; -- else if (!strcmp(regtype, "_printer._tcp.")) -- key.type = CUPS_DEVICE_PRINTER; -- else if (!strcmp(regtype, "_pdl-datastream._tcp.")) -- key.type = CUPS_DEVICE_PDL_DATASTREAM; -- else -- key.type = CUPS_DEVICE_RIOUSBPRINT; -+ key.type = device_type (regtype); - - for (device = cupsArrayFind(devices, &key); - device; -@@ -622,8 +874,14 @@ - free(device->domain); - device->domain = strdup(replyDomain); - -+#ifdef HAVE_DNSSD - DNSServiceConstructFullName(fullName, device->name, regtype, - replyDomain); -+#else /* HAVE_AVAHI */ -+ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, -+ serviceName, regtype, replyDomain); -+#endif /* HAVE_DNSSD */ -+ - free(device->fullName); - device->fullName = strdup(fullName); - } -@@ -643,6 +901,9 @@ - device->domain = strdup(replyDomain); - device->type = key.type; - device->priority = 50; -+#ifdef HAVE_AVAHI -+ device->resolved = 0; -+#endif /* HAVE_AVAHI */ - - cupsArrayAdd(devices, device); - -@@ -650,13 +911,20 @@ - * Set the "full name" of this service, which is used for queries... - */ - -+#ifdef HAVE_DNSSD - DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain); -+#else /* HAVE_AVAHI */ -+ avahi_service_name_join (fullName, kDNSServiceMaxDomainName, -+ serviceName, regtype, replyDomain); -+#endif /* HAVE_DNSSD */ -+ - device->fullName = strdup(fullName); - - return (device); - } - - -+#ifdef HAVE_DNSSD - /* - * 'query_callback()' - Process query data. - */ -@@ -680,7 +948,7 @@ - *ptr; /* Pointer into string */ - cups_device_t dkey, /* Search key */ - *device; /* Device */ -- -+ cups_txt_records_t txt; - - fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, " - "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", " -@@ -714,94 +982,233 @@ - if ((ptr = strstr(name, "._")) != NULL) - *ptr = '\0'; - -- if (strstr(fullName, "_ipp._tcp.")) -- dkey.type = CUPS_DEVICE_IPP; -- else if (strstr(fullName, "_ipps._tcp.") || -- strstr(fullName, "_ipp-tls._tcp.")) -- dkey.type = CUPS_DEVICE_IPPS; -- else if (strstr(fullName, "_fax-ipp._tcp.")) -- dkey.type = CUPS_DEVICE_FAX_IPP; -- else if (strstr(fullName, "_printer._tcp.")) -- dkey.type = CUPS_DEVICE_PRINTER; -- else if (strstr(fullName, "_pdl-datastream._tcp.")) -- dkey.type = CUPS_DEVICE_PDL_DATASTREAM; -+ dkey.type = device_type (fullName); -+ -+ txt.data = rdata; -+ txt.dataend = rdata + rdlen; -+ device = find_device ((cups_array_t *) context, &txt, &dkey); -+ if (!device) -+ fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); -+} -+#endif /* HAVE_DNSSD */ -+ -+ -+#ifdef HAVE_AVAHI -+/* -+ * 'avahi_client_callback()' - Avahi client callback function. -+ */ -+ -+static void -+avahi_client_callback(AvahiClient *client, -+ AvahiClientState state, -+ void *context) -+{ -+ /* -+ * If the connection drops, quit. -+ */ -+ -+ if (state == AVAHI_CLIENT_FAILURE) -+ { -+ fprintf (stderr, "ERROR: Avahi connection failed\n"); -+ avahi_simple_poll_quit (simple_poll); -+ } -+} -+ -+ -+/* -+ * 'avahi_query_callback()' - Avahi query callback function. -+ */ -+ -+static void -+avahi_query_callback(AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ AvahiClient *client; -+ cups_device_t key, -+ *device; -+ char uqname[1024], -+ *ptr; -+ cups_txt_records_t txtr; -+ -+ client = avahi_service_resolver_get_client (resolver); -+ if (event != AVAHI_RESOLVER_FOUND) -+ { -+ if (event == AVAHI_RESOLVER_FAILURE) -+ { -+ fprintf (stderr, "ERROR: %s\n", -+ avahi_strerror (avahi_client_errno (client))); -+ } -+ -+ avahi_service_resolver_free (resolver); -+ return; -+ } -+ -+ /* -+ * Set search key for device. -+ */ -+ -+ key.name = uqname; -+ unquote (uqname, name, sizeof (uqname)); -+ if ((ptr = strstr(name, "._")) != NULL) -+ *ptr = '\0'; -+ -+ key.domain = (char *) domain; -+ key.type = device_type (type); -+ -+ /* -+ * Find the device and the the TXT information. -+ */ -+ -+ txtr.txt = txt; -+ device = find_device ((cups_array_t *) context, &txtr, &key); -+ if (device) -+ { -+ /* -+ * Let the main loop know to announce the device. -+ */ -+ -+ device->resolved = 1; -+ avahi_got_callback = 1; -+ } - else -- dkey.type = CUPS_DEVICE_RIOUSBPRINT; -+ fprintf (stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", name); -+ -+ avahi_service_resolver_free (resolver); -+} -+ -+ -+/* -+ * 'avahi_browse_callback()' - Avahi browse callback function. -+ */ -+ -+static void -+avahi_browse_callback(AvahiServiceBrowser *browser, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiBrowserEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ AvahiClient *client = avahi_service_browser_get_client (browser); -+ -+ switch (event) -+ { -+ case AVAHI_BROWSER_FAILURE: -+ fprintf (stderr, "ERROR: %s\n", -+ avahi_strerror (avahi_client_errno (client))); -+ avahi_simple_poll_quit (simple_poll); -+ return; -+ -+ case AVAHI_BROWSER_NEW: -+ /* -+ * This object is new on the network. -+ */ -+ -+ if (flags & AVAHI_LOOKUP_RESULT_LOCAL) -+ { -+ /* -+ * This comes from the local machine so ignore it. -+ */ -+ -+ fprintf (stderr, "DEBUG: ignoring local service %s\n", name); -+ } -+ else -+ { -+ /* -+ * Create a device entry for it if it doesn't yet exist. -+ */ -+ -+ get_device ((cups_array_t *)context, name, type, domain); -+ -+ /* -+ * Now look for a TXT entry. -+ */ -+ -+ if (avahi_service_resolver_new (client, interface, protocol, -+ name, type, domain, -+ AVAHI_PROTO_UNSPEC, 0, -+ avahi_query_callback, context) == NULL) -+ { -+ fprintf (stderr, "ERROR: failed to resolve service %s: %s\n", -+ name, avahi_strerror (avahi_client_errno (client))); -+ } -+ } -+ -+ break; -+ -+ case AVAHI_BROWSER_REMOVE: -+ case AVAHI_BROWSER_ALL_FOR_NOW: -+ case AVAHI_BROWSER_CACHE_EXHAUSTED: -+ break; -+ } -+} -+#endif /* HAVE_AVAHI */ -+ - -- for (device = cupsArrayFind(devices, &dkey); -+/* -+ * 'find_device()' - Find a device from its name and domain. -+ */ -+ -+static cups_device_t * -+find_device (cups_array_t *devices, -+ cups_txt_records_t *txt, -+ cups_device_t *dkey) -+{ -+ cups_device_t *device; -+ char *ptr; -+ -+ for (device = cupsArrayFind(devices, dkey); - device; - device = cupsArrayNext(devices)) - { -- if (_cups_strcasecmp(device->name, dkey.name) || -- _cups_strcasecmp(device->domain, dkey.domain)) -+ if (_cups_strcasecmp(device->name, dkey->name) || -+ _cups_strcasecmp(device->domain, dkey->domain)) - { - device = NULL; - break; - } -- else if (device->type == dkey.type) -+ else if (device->type == dkey->type) - { - /* - * Found it, pull out the priority and make and model from the TXT - * record and save it... - */ - -- const uint8_t *data, /* Pointer into data */ -- *datanext, /* Next key/value pair */ -- *dataend; /* End of entire TXT record */ -- uint8_t datalen; /* Length of current key/value pair */ -- char key[256], /* Key string */ -- value[256], /* Value string */ -- make_and_model[512], -+ char make_and_model[512], - /* Manufacturer and model */ - model[256], /* Model */ -- device_id[2048];/* 1284 device ID */ -- -+ device_id[2048]; /* 1284 device ID */ - - device_id[0] = '\0'; - make_and_model[0] = '\0'; - - strcpy(model, "Unknown"); - -- for (data = rdata, dataend = data + rdlen; -- data < dataend; -- data = datanext) -+ for (;;) - { -- /* -- * Read a key/value pair starting with an 8-bit length. Since the -- * length is 8 bits and the size of the key/value buffers is 256, we -- * don't need to check for overflow... -- */ -- -- datalen = *data++; -- -- if (!datalen || (data + datalen) >= dataend) -- break; -- -- datanext = data + datalen; -- -- for (ptr = key; data < datanext && *data != '='; data ++) -- *ptr++ = *data; -- *ptr = '\0'; -+ char *key; -+ char *value; - -- if (data < datanext && *data == '=') -- { -- data ++; -- -- if (data < datanext) -- memcpy(value, data, datanext - data); -- value[datanext - data] = '\0'; -+ if (parse_txt_record_pair (txt)) -+ goto next; - -- fprintf(stderr, "DEBUG2: query_callback: \"%s=%s\".\n", -- key, value); -- } -- else -- { -- fprintf(stderr, "DEBUG2: query_callback: \"%s\" with no value.\n", -- key); -- continue; -- } -- -- if (!_cups_strncasecmp(key, "usb_", 4)) -+ key = txt->key; -+ value = txt->value; -+ if (!strncasecmp(key, "usb_", 4)) - { - /* - * Add USB device ID information... -@@ -856,6 +1263,10 @@ - if (device->type == CUPS_DEVICE_PRINTER) - device->sent = 1; - } -+ -+ next: -+ if (next_txt_record (txt) == NULL) -+ break; - } - - if (device->device_id) -@@ -905,11 +1316,9 @@ - } - } - -- if (!device) -- fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName); -+ return device; - } - -- - /* - * 'sigterm_handler()' - Handle termination signals... - */ ---- a/config-scripts/cups-dnssd.m4 -+++ b/config-scripts/cups-dnssd.m4 -@@ -23,6 +23,21 @@ - DNSSDLIBS="" - DNSSD_BACKEND="" - -+AC_ARG_ENABLE(avahi, [ --enable-avahi turn on DNS Service Discovery support, default=no], -+ [if test x$enable_avahi = xyes; then -+ AC_MSG_CHECKING(for Avahi) -+ if $PKGCONFIG --exists avahi-client; then -+ AC_MSG_RESULT(yes) -+ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`" -+ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`" -+ DNSSD_BACKEND="dnssd" -+ AC_DEFINE(HAVE_AVAHI) -+ enable_dnssd=no -+ else -+ AC_MSG_RESULT(no) -+ fi -+ fi]) -+ - if test x$enable_dnssd != xno; then - AC_CHECK_HEADER(dns_sd.h, [ - case "$uname" in ---- a/config.h.in -+++ b/config.h.in -@@ -390,6 +390,13 @@ - - - /* -+ * Do we have Avahi for DNS Service Discovery? -+ */ -+ -+#undef HAVE_AVAHI -+ -+ -+/* - * Do we have <sys/ioctl.h>? - */ - ---- a/cups/http-support.c -+++ b/cups/http-support.c -@@ -43,6 +43,10 @@ - * http_copy_decode() - Copy and decode a URI. - * http_copy_encode() - Copy and encode a URI. - * http_resolve_cb() - Build a device URI for the given service name. -+ * avahi_resolve_uri_client_cb() -+ * - Avahi client callback for resolving URI. -+ * avahi_resolve_uri_resolver_cb() -+ * - Avahi resolver callback for resolving URI. - */ - - /* -@@ -60,6 +64,11 @@ - # include <sys/select.h> - # endif /* WIN32 */ - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/lookup.h> -+# include <avahi-common/simple-watch.h> -+#endif /* HAVE_AVAHI */ - - - /* -@@ -127,6 +136,24 @@ - void *context); - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+static void avahi_resolve_uri_client_cb(AvahiClient *client, -+ AvahiClientState state, -+ void *simple_poll); -+static void avahi_resolve_uri_resolver_cb(AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context); -+#endif /* HAVE_AVAHI */ - - /* - * 'httpAssembleURI()' - Assemble a uniform resource identifier from its -@@ -1431,6 +1458,9 @@ - - if (strstr(hostname, "._tcp")) - { -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ char *regtype, /* Pointer to type in hostname */ -+ *domain; /* Pointer to domain in hostname */ - #ifdef HAVE_DNSSD - # ifdef WIN32 - # pragma comment(lib, "dnssd.lib") -@@ -1449,6 +1479,17 @@ - fd_set input_set; /* Input set for select() */ - struct timeval stimeout; /* Timeout value for select() */ - #endif /* HAVE_POLL */ -+#else /* HAVE_AVAHI */ -+ AvahiSimplePoll *simple_poll; -+ AvahiClient *client; -+ int error; -+ struct -+ { -+ AvahiSimplePoll *poll; -+ _http_uribuf_t uribuf; -+ } user_data; -+#endif /* HAVE_DNSSD */ -+ - - if (options & _HTTP_RESOLVE_STDERR) - fprintf(stderr, "DEBUG: Resolving \"%s\"...\n", hostname); -@@ -1485,9 +1526,16 @@ - if (domain) - *domain++ = '\0'; - -+#ifdef HAVE_DNSSD - uribuf.buffer = resolved_uri; - uribuf.bufsize = resolved_size; - uribuf.options = options; -+#else -+ user_data.uribuf.buffer = resolved_uri; -+ user_data.uribuf.bufsize = resolved_size; -+ user_data.uribuf.options = options; -+#endif -+ - resolved_uri[0] = '\0'; - - DEBUG_printf(("6_httpResolveURI: Resolving hostname=\"%s\", regtype=\"%s\", " -@@ -1501,6 +1549,7 @@ - - uri = NULL; - -+#ifdef HAVE_DNSSD - if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError) - { - localref = ref; -@@ -1608,6 +1657,36 @@ - - DNSServiceRefDeallocate(ref); - } -+#else /* HAVE_AVAHI */ -+ if ((simple_poll = avahi_simple_poll_new ()) != NULL) -+ { -+ if ((client = avahi_client_new (avahi_simple_poll_get (simple_poll), -+ 0, avahi_resolve_uri_client_cb, -+ &simple_poll, &error)) != NULL) -+ { -+ user_data.poll = simple_poll; -+ if (avahi_service_resolver_new (client, AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, hostname, -+ regtype, domain, AVAHI_PROTO_UNSPEC, 0, -+ avahi_resolve_uri_resolver_cb, -+ &user_data) != NULL) -+ { -+ avahi_simple_poll_loop (simple_poll); -+ -+ /* -+ * Collect the result. -+ */ -+ -+ if (resolved_uri[0]) -+ uri = resolved_uri; -+ } -+ -+ avahi_client_free (client); -+ } -+ -+ avahi_simple_poll_free (simple_poll); -+ } -+#endif /* HAVE_DNSSD */ - - if (options & _HTTP_RESOLVE_STDERR) - { -@@ -1619,13 +1698,13 @@ - fputs("STATE: -connecting-to-device,offline-report\n", stderr); - } - --#else -+#else /* HAVE_DNSSD || HAVE_AVAHI */ - /* - * No DNS-SD support... - */ - - uri = NULL; --#endif /* HAVE_DNSSD */ -+#endif /* HAVE_DNSSD || HAVE_AVAHI */ - - if ((options & _HTTP_RESOLVE_STDERR) && !uri) - _cupsLangPrintFilter(stderr, "ERROR", _("Unable to find printer.")); -@@ -1895,6 +1974,116 @@ - #endif /* HAVE_DNSSD */ - - -+#ifdef HAVE_AVAHI -+/* -+ * 'avahi_resolve_uri_client_cb()' - Avahi client callback for resolving URI. -+ */ -+ -+static void -+avahi_resolve_uri_client_cb (AvahiClient *client, -+ AvahiClientState state, -+ void *simple_poll) -+{ -+ DEBUG_printf(("avahi_resolve_uri_client_callback(client=%p, state=%d, " -+ "simple_poll=%p)\n", client, state, simple_poll)); -+ -+ /* -+ * If the connection drops, quit. -+ */ -+ -+ if (state == AVAHI_CLIENT_FAILURE) -+ avahi_simple_poll_quit (simple_poll); -+} -+ -+ -+/* -+ * 'avahi_resolve_uri_resolver_cb()' - Avahi resolver callback for resolving -+ * URI. -+ */ -+ -+static void -+avahi_resolve_uri_resolver_cb (AvahiServiceResolver *resolver, -+ AvahiIfIndex interface, -+ AvahiProtocol protocol, -+ AvahiResolverEvent event, -+ const char *name, -+ const char *type, -+ const char *domain, -+ const char *host_name, -+ const AvahiAddress *address, -+ uint16_t port, -+ AvahiStringList *txt, -+ AvahiLookupResultFlags flags, -+ void *context) -+{ -+ const char *scheme; /* URI scheme */ -+ char rp[256]; /* Remote printer */ -+ AvahiStringList *pair; -+ char *value; -+ size_t valueLen = 0; -+ char addr[AVAHI_ADDRESS_STR_MAX]; -+ struct -+ { -+ AvahiSimplePoll *poll; -+ _http_uribuf_t uribuf; -+ } *poll_uribuf = context; -+ -+ DEBUG_printf(("avahi_resolve_uri_resolver_callback(resolver=%p, " -+ "interface=%d, protocol=%d, event=%d, name=\"%s\", " -+ "type=\"%s\", domain=\"%s\", host_name=\"%s\", address=%p, " -+ "port=%d, txt=%p, flags=%d, context=%p)\n", -+ resolver, interface, protocol, event, name, type, domain, -+ host_name, address, port, txt, flags, context)); -+ -+ if (event != AVAHI_RESOLVER_FOUND) -+ { -+ avahi_service_resolver_free (resolver); -+ avahi_simple_poll_quit (poll_uribuf->poll); -+ return; -+ } -+ -+ /* -+ * Figure out the scheme from the full name... -+ */ -+ -+ if (strstr(type, "_ipp.")) -+ scheme = "ipp"; -+ else if (strstr(type, "_printer.")) -+ scheme = "lpd"; -+ else if (strstr(type, "_pdl-datastream.")) -+ scheme = "socket"; -+ else -+ scheme = "riousbprint"; -+ -+ /* -+ * Extract the "remote printer key from the TXT record... -+ */ -+ -+ if ((pair = avahi_string_list_find (txt, "rp")) != NULL) -+ { -+ avahi_string_list_get_pair (pair, NULL, &value, &valueLen); -+ rp[0] = '/'; -+ memcpy (rp + 1, value, valueLen); -+ rp[valueLen + 1] = '\0'; -+ } -+ else -+ rp[0] = '\0'; -+ -+ /* -+ * Assemble the final device URI... -+ */ -+ -+ avahi_address_snprint (addr, AVAHI_ADDRESS_STR_MAX, address); -+ httpAssembleURI(HTTP_URI_CODING_ALL, poll_uribuf->uribuf.buffer, -+ poll_uribuf->uribuf.bufsize, scheme, NULL, -+ addr, port, rp); -+ DEBUG_printf(("avahi_resolve_uri_resolver_callback: Resolved URI is \"%s\"\n", -+ poll_uribuf->uribuf.buffer)); -+ avahi_simple_poll_quit (poll_uribuf->poll); -+} -+#endif /* HAVE_AVAHI */ -+ -+ - /* - * End of "$Id: http-support.c 9820 2011-06-10 22:06:26Z mike $". - */ ---- a/scheduler/Makefile -+++ b/scheduler/Makefile -@@ -17,6 +17,7 @@ - - CUPSDOBJS = \ - auth.o \ -+ avahi.o \ - banners.o \ - cert.o \ - classes.o \ -@@ -39,7 +40,8 @@ - server.o \ - statbuf.o \ - subscriptions.o \ -- sysman.o -+ sysman.o \ -+ timeout.o - LIBOBJS = \ - filter.o \ - mime.o \ ---- /dev/null -+++ b/scheduler/avahi.c -@@ -0,0 +1,445 @@ -+/* -+ * "$Id$" -+ * -+ * Avahi poll implementation for the CUPS scheduler. -+ * -+ * Copyright (C) 2010 Red Hat, Inc. -+ * Authors: -+ * Tim Waugh <twaugh@redhat.com> -+ * -+ * Distribution and use rights are outlined in the file "LICENSE.txt" -+ * "LICENSE" which should have been included with this file. If this -+ * file is missing or damaged, see the license at "http://www.cups.org/". -+ * -+ * Contents: -+ * -+ * watch_read_cb - Read callback for file descriptor -+ * watch_write_cb - Write callback for file descriptor -+ * watched_fd_add_select() - Call cupsdAddSelect() as needed -+ * watch_new() - Create a new file descriptor watch -+ * watch_free() - Free a file descriptor watch -+ * watch_update() - Update watched events for a file descriptor -+ * watch_get_events() - Get events that happened for a file descriptor -+ * timeout_cb() - Run a timed Avahi callback -+ * timeout_new() - Set a wakeup time -+ * timeout_update() - Update the expiration time for a timeout -+ * timeout_free() - Free a timeout -+ * compare_watched_fds() - Compare watched file descriptors for array sorting -+ * compare_timeouts() - Compare timeouts for array sorting -+ * avahi_cups_poll_new() - Create a new Avahi main loop object for CUPS -+ * avahi_cups_poll_free() - Free an Avahi main loop object for CUPS -+ * avahi_cups_poll_get() - Get the abstract poll API structure -+ */ -+ -+#include <config.h> -+ -+#ifdef HAVE_AVAHI /* Applies to entire file... */ -+ -+/* -+ * Include necessary headers... -+ */ -+ -+#include "cupsd.h" -+ -+#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) -+# include <malloc.h> -+#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ -+ -+#ifdef HAVE_AVAHI -+# include <avahi-common/timeval.h> -+#endif /* HAVE_AVAHI */ -+ -+ -+typedef struct -+{ -+ AvahiCupsPoll *cups_poll; -+ -+ int fd; -+ AvahiWatchEvent occurred; -+ cups_array_t *watches; -+} cupsd_watched_fd_t; -+ -+struct AvahiWatch -+{ -+ cupsd_watched_fd_t *watched_fd; -+ -+ AvahiWatchEvent events; -+ AvahiWatchCallback callback; -+ void *userdata; -+}; -+ -+struct AvahiTimeout -+{ -+ AvahiCupsPoll *cups_poll; -+ AvahiTimeoutCallback callback; -+ void *userdata; -+ cupsd_timeout_t *cupsd_timeout; -+}; -+ -+/* -+ * Local functions... -+ */ -+ -+static AvahiWatch * watch_new(const AvahiPoll *api, -+ int fd, -+ AvahiWatchEvent events, -+ AvahiWatchCallback callback, -+ void *userdata); -+static void watch_free(AvahiWatch *watch); -+static void watch_update(AvahiWatch *watch, -+ AvahiWatchEvent events); -+static AvahiWatchEvent watch_get_events(AvahiWatch *watch); -+static int compare_watches(AvahiWatch *p0, -+ AvahiWatch *p1); -+ -+ -+/* -+ * 'watch_read_cb' - Read callback for file descriptor -+ */ -+ -+static void -+watch_read_cb (void *userdata) -+{ -+ AvahiWatch *watch; -+ cupsd_watched_fd_t *watched_fd = userdata; -+ watched_fd->occurred |= AVAHI_WATCH_IN; -+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); -+ watch; -+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) { -+ if (watch->events & watched_fd->occurred) { -+ (watch->callback) (watch, watched_fd->fd, -+ AVAHI_WATCH_IN, watch->userdata); -+ watched_fd->occurred &= ~AVAHI_WATCH_IN; -+ break; -+ } -+ } -+} -+ -+ -+/* -+ * 'watch_write_cb' - Write callback for file descriptor -+ */ -+ -+static void -+watch_write_cb (void *userdata) -+{ -+ AvahiWatch *watch; -+ cupsd_watched_fd_t *watched_fd = userdata; -+ watched_fd->occurred |= AVAHI_WATCH_OUT; -+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); -+ watch; -+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) { -+ if (watch->events & watched_fd->occurred) { -+ (watch->callback) (watch, watched_fd->fd, -+ AVAHI_WATCH_OUT, watch->userdata); -+ watched_fd->occurred &= ~AVAHI_WATCH_OUT; -+ break; -+ } -+ } -+} -+ -+ -+/* -+ * 'watched_fd_add_select' - Call cupsdAddSelect() as needed -+ */ -+ -+static int /* O - Watches? */ -+watched_fd_add_select (cupsd_watched_fd_t *watched_fd) -+{ -+ AvahiWatch *watch; -+ cupsd_selfunc_t read_cb = NULL, write_cb = NULL; -+ -+ for (watch = (AvahiWatch *)cupsArrayFirst(watched_fd->watches); -+ watch; -+ watch = (AvahiWatch *)cupsArrayNext(watched_fd->watches)) { -+ if (watch->events & (AVAHI_WATCH_IN | -+ AVAHI_WATCH_ERR | -+ AVAHI_WATCH_HUP)) { -+ read_cb = (cupsd_selfunc_t)watch_read_cb; -+ if (write_cb != NULL) -+ break; -+ } -+ -+ if (watch->events & AVAHI_WATCH_OUT) { -+ write_cb = (cupsd_selfunc_t)watch_write_cb; -+ if (read_cb != NULL) -+ break; -+ } -+ } -+ -+ if (read_cb || write_cb) -+ cupsdAddSelect (watched_fd->fd, read_cb, write_cb, watched_fd); -+ else -+ cupsdRemoveSelect (watched_fd->fd); -+ -+ return (read_cb || write_cb); -+} -+ -+/* -+ * 'watch_new' - Create a new file descriptor watch -+ */ -+ -+static AvahiWatch * -+watch_new (const AvahiPoll *api, -+ int fd, -+ AvahiWatchEvent events, -+ AvahiWatchCallback callback, -+ void *userdata) -+{ -+ cupsd_watched_fd_t key, *watched_fd; -+ AvahiCupsPoll *cups_poll = api->userdata; -+ AvahiWatch *watch = malloc(sizeof(AvahiWatch)); -+ if (watch == NULL) -+ return (NULL); -+ -+ watch->events = events; -+ watch->callback = callback; -+ watch->userdata = userdata; -+ -+ key.fd = fd; -+ watched_fd = cupsArrayFind (cups_poll->watched_fds, &key); -+ if (watched_fd == NULL) { -+ watched_fd = malloc(sizeof(cupsd_watched_fd_t)); -+ if (watched_fd == NULL) { -+ free (watch); -+ return (NULL); -+ } -+ -+ watched_fd->fd = fd; -+ watched_fd->occurred = 0; -+ watched_fd->cups_poll = cups_poll; -+ watched_fd->watches = cupsArrayNew ((cups_array_func_t)compare_watches, -+ NULL); -+ } -+ -+ watch->watched_fd = watched_fd; -+ cupsArrayAdd(watched_fd->watches, watch); -+ watched_fd_add_select (watched_fd); -+ return (watch); -+} -+ -+ -+/* -+ * 'watch_free' - Free a file descriptor watch -+ */ -+ -+static void -+watch_free (AvahiWatch *watch) -+{ -+ cupsd_watched_fd_t *watched_fd = watch->watched_fd; -+ AvahiCupsPoll *cups_poll = watched_fd->cups_poll; -+ -+ cupsArrayRemove (watched_fd->watches, watch); -+ free (watch); -+ -+ if (!watched_fd_add_select (watched_fd)) { -+ /* No more watches */ -+ cupsArrayRemove (cups_poll->watched_fds, watched_fd); -+ free (watched_fd); -+ } -+} -+ -+ -+/* -+ * 'watch_update' - Update watched events for a file descriptor -+ */ -+ -+static void -+watch_update (AvahiWatch *watch, -+ AvahiWatchEvent events) -+{ -+ watch->events = events; -+ watched_fd_add_select (watch->watched_fd); -+} -+ -+ -+/* -+ * 'watch_get_events' - Get events that happened for a file descriptor -+ */ -+ -+static AvahiWatchEvent -+watch_get_events (AvahiWatch *watch) -+{ -+ return (watch->watched_fd->occurred); -+} -+ -+ -+/* -+ * 'compare_watches' - Compare watches for array sorting -+ */ -+ -+static int -+compare_watches (AvahiWatch *p0, -+ AvahiWatch *p1) -+{ -+ if (p0->watched_fd->fd < p1->watched_fd->fd) -+ return (-1); -+ -+ return ((p0->watched_fd->fd == p1->watched_fd->fd) ? 0 : 1); -+} -+ -+ -+/* -+ * 'timeout_cb()' - Run a timed Avahi callback -+ */ -+ -+static void -+timeout_cb (cupsd_timeout_t *cupsd_timeout, void *userdata) -+{ -+ AvahiTimeout *timeout = userdata; -+ (timeout->callback) (timeout, timeout->userdata); -+} -+ -+ -+/* -+ * 'timeout_new' - Set a wakeup time -+ */ -+ -+static AvahiTimeout * -+timeout_new (const AvahiPoll *api, -+ const struct timeval *tv, -+ AvahiTimeoutCallback callback, -+ void *userdata) -+{ -+ AvahiTimeout *timeout; -+ AvahiCupsPoll *cups_poll = api->userdata; -+ -+ timeout = malloc(sizeof(AvahiTimeout)); -+ if (timeout == NULL) -+ return (NULL); -+ -+ timeout->cups_poll = cups_poll; -+ timeout->callback = callback; -+ timeout->userdata = userdata; -+ timeout->cupsd_timeout = cupsdAddTimeout (tv, -+ (cupsd_timeoutfunc_t)timeout_cb, -+ timeout); -+ cupsArrayAdd (cups_poll->timeouts, timeout); -+ return (timeout); -+} -+ -+ -+/* -+ * 'timeout_update' - Update the expiration time for a timeout -+ */ -+ -+static void -+timeout_update (AvahiTimeout *timeout, -+ const struct timeval *tv) -+{ -+ cupsdUpdateTimeout (timeout->cupsd_timeout, tv); -+} -+ -+ -+/* -+ * ' timeout_free' - Free a timeout -+ */ -+ -+static void -+timeout_free (AvahiTimeout *timeout) -+{ -+ cupsArrayRemove (timeout->cups_poll->timeouts, timeout); -+ cupsdRemoveTimeout (timeout->cupsd_timeout); -+ free (timeout); -+} -+ -+ -+/* -+ * 'compare_watched_fds' - Compare watched file descriptors for array sorting -+ */ -+static int -+compare_watched_fds(cupsd_watched_fd_t *p0, -+ cupsd_watched_fd_t *p1) -+{ -+ if (p0->fd != p1->fd) -+ return (p0->fd < p1->fd ? -1 : 1); -+ -+ if (p0 == p1) -+ return (0); -+ -+ return (p0 < p1 ? -1 : 1); -+} -+ -+ -+/* -+ * 'compare_timeouts' - Compare timeouts for array sorting -+ */ -+static int -+compare_timeouts(AvahiTimeout *p0, -+ AvahiTimeout *p1) -+{ -+ /* -+ * Just compare pointers to make it a stable sort. -+ */ -+ -+ if (p0->cupsd_timeout < p1->cupsd_timeout) -+ return (-1); -+ return ((p0->cupsd_timeout == p1->cupsd_timeout) ? 0 : 1); -+} -+ -+ -+/* -+ * 'avahi_cups_poll_new' - Create a new Avahi main loop object for CUPS -+ */ -+ -+AvahiCupsPoll * -+avahi_cups_poll_new (void) -+{ -+ AvahiCupsPoll *cups_poll = malloc(sizeof(AvahiCupsPoll)); -+ if (cups_poll == NULL) -+ return (NULL); -+ -+ cups_poll->watched_fds = cupsArrayNew ((cups_array_func_t)compare_watched_fds, -+ NULL); -+ cups_poll->timeouts = cupsArrayNew ((cups_array_func_t)compare_timeouts, -+ NULL); -+ -+ cups_poll->api.userdata = cups_poll; -+ cups_poll->api.watch_new = watch_new; -+ cups_poll->api.watch_free = watch_free; -+ cups_poll->api.watch_update = watch_update; -+ cups_poll->api.watch_get_events = watch_get_events; -+ -+ cups_poll->api.timeout_new = timeout_new; -+ cups_poll->api.timeout_update = timeout_update; -+ cups_poll->api.timeout_free = timeout_free; -+ -+ return (cups_poll); -+} -+ -+ -+/* -+ * 'avahi_cups_poll_free' - Free an Avahi main loop object for CUPS -+ */ -+void -+avahi_cups_poll_free (AvahiCupsPoll *cups_poll) -+{ -+ cupsd_watched_fd_t *watched_fd; -+ -+ for (watched_fd = (cupsd_watched_fd_t*)cupsArrayFirst(cups_poll->watched_fds); -+ watched_fd; -+ watched_fd = (cupsd_watched_fd_t*)cupsArrayNext(cups_poll->watched_fds)){ -+ cupsArrayClear (watched_fd->watches); -+ } -+ -+ cupsArrayClear (cups_poll->watched_fds); -+ cupsArrayClear (cups_poll->timeouts); -+} -+ -+ -+/* -+ * 'avahi_cups_poll_get' - Get the abstract poll API structure -+ */ -+ -+const AvahiPoll * -+avahi_cups_poll_get (AvahiCupsPoll *cups_poll) -+{ -+ return (&cups_poll->api); -+} -+ -+ -+#endif /* HAVE_AVAHI ... from top of file */ -+ -+/* -+ * End of "$Id$". -+ */ ---- /dev/null -+++ b/scheduler/avahi.h -@@ -0,0 +1,49 @@ -+/* -+ * "$Id$" -+ * -+ * Avahi poll implementation for the CUPS scheduler. -+ * -+ * Copyright (C) 2010 Red Hat, Inc. -+ * Authors: -+ * Tim Waugh <twaugh@redhat.com> -+ * -+ * Distribution and use rights are outlined in the file "LICENSE.txt" -+ * which should have been included with this file. If this file is -+ * file is missing or damaged, see the license at "http://www.cups.org/". -+ */ -+ -+#include <config.h> -+ -+#ifdef HAVE_AVAHI -+# include <avahi-client/client.h> -+# include <avahi-client/publish.h> -+#endif /* HAVE_AVAHI */ -+ -+#ifdef HAVE_AUTHORIZATION_H -+# include <Security/Authorization.h> -+#endif /* HAVE_AUTHORIZATION_H */ -+ -+ -+#ifdef HAVE_AVAHI -+typedef struct -+{ -+ AvahiPoll api; -+ cups_array_t *watched_fds; -+ cups_array_t *timeouts; -+} AvahiCupsPoll; -+#endif /* HAVE_AVAHI */ -+ -+/* -+ * Prototypes... -+ */ -+ -+#ifdef HAVE_AVAHI -+extern AvahiCupsPoll * avahi_cups_poll_new(void); -+extern void avahi_cups_poll_free(AvahiCupsPoll *cups_poll); -+extern const AvahiPoll *avahi_cups_poll_get(AvahiCupsPoll *cups_poll); -+#endif /* HAVE_AVAHI */ -+ -+ -+/* -+ * End of "$Id$". -+ */ ---- a/scheduler/cupsd.h -+++ b/scheduler/cupsd.h -@@ -140,6 +140,15 @@ - - typedef void (*cupsd_selfunc_t)(void *data); - -+#ifdef HAVE_AVAHI -+/* -+ * Timeout callback function type... -+ */ -+ -+typedef struct _cupsd_timeout_s cupsd_timeout_t; -+typedef void (*cupsd_timeoutfunc_t)(cupsd_timeout_t *timeout, void *data); -+#endif /* HAVE_AVAHI */ -+ - - /* - * Globals... -@@ -173,6 +182,11 @@ - /* Running from launchd */ - #endif /* HAVE_LAUNCH_H */ - -+#ifdef HAVE_AVAHI -+VAR cups_array_t *Timeouts; /* Timed callbacks for main loop */ -+#endif /* HAVE_AVAHI */ -+ -+ - - /* - * Prototypes... -@@ -242,6 +256,20 @@ - extern void cupsdStartServer(void); - extern void cupsdStopServer(void); - -+#ifdef HAVE_AVAHI -+extern void cupsdInitTimeouts(void); -+extern cupsd_timeout_t *cupsdAddTimeout (const struct timeval *tv, -+ cupsd_timeoutfunc_t cb, -+ void *data); -+extern cupsd_timeout_t *cupsdNextTimeout (long *delay); -+extern void cupsdRunTimeout (cupsd_timeout_t *timeout); -+extern void cupsdUpdateTimeout (cupsd_timeout_t *timeout, -+ const struct timeval *tv); -+extern void cupsdRemoveTimeout (cupsd_timeout_t *timeout); -+#endif /* HAVE_AVAHI */ -+ -+extern int cupsdRemoveFile(const char *filename); -+ - - /* - * End of "$Id: cupsd.h 9766 2011-05-11 22:17:34Z mike $". ---- a/scheduler/main.c -+++ b/scheduler/main.c -@@ -122,6 +122,10 @@ - cupsd_listener_t *lis; /* Current listener */ - time_t current_time, /* Current time */ - activity, /* Client activity timer */ -+#ifdef HAVE_AVAHI -+ avahi_client_time, /* Time for next Avahi client -+ check */ -+#endif /* HAVE_AVAHI */ - browse_time, /* Next browse send time */ - senddoc_time, /* Send-Document time */ - expire_time, /* Subscription expire time */ -@@ -148,6 +152,10 @@ - int launchd_idle_exit; - /* Idle exit on select timeout? */ - #endif /* HAVE_LAUNCHD */ -+#ifdef HAVE_AVAHI -+ cupsd_timeout_t *tmo; /* Next scheduled timed callback */ -+ long tmo_delay; /* Time before it must be called */ -+#endif /* HAVE_AVAHI */ - - - #ifdef HAVE_GETEUID -@@ -527,6 +535,14 @@ - - httpInitialize(); - -+#ifdef HAVE_AVAHI -+ /* -+ * Initialize timed callback structures. -+ */ -+ -+ cupsdInitTimeouts(); -+#endif /* HAVE_AVAHI */ -+ - cupsdStartServer(); - - /* -@@ -657,6 +673,9 @@ - */ - - current_time = time(NULL); -+#ifdef HAVE_AVAHI -+ avahi_client_time = current_time; -+#endif /* HAVE_AVAHI */ - browse_time = current_time; - event_time = current_time; - expire_time = current_time; -@@ -871,6 +890,26 @@ - } - #endif /* __APPLE__ */ - -+#ifdef HAVE_AVAHI -+ /* -+ * If a timed callback is due, run it. -+ */ -+ -+ tmo = cupsdNextTimeout (&tmo_delay); -+ if (tmo && tmo_delay == 0) -+ cupsdRunTimeout (tmo); -+ -+ /* -+ * Try to restart the Avahi client every 10 seconds if needed... -+ */ -+ -+ if ((current_time - avahi_client_time) >= 10) -+ { -+ avahi_client_time = current_time; -+ cupsdStartAvahiClient(); -+ } -+#endif /* HAVE_AVAHI */ -+ - #ifndef __APPLE__ - /* - * Update the network interfaces once a minute... -@@ -1815,6 +1854,10 @@ - cupsd_job_t *job; /* Job information */ - cupsd_subscription_t *sub; /* Subscription information */ - const char *why; /* Debugging aid */ -+#ifdef HAVE_AVAHI -+ cupsd_timeout_t *tmo; /* Timed callback */ -+ long tmo_delay; /* Seconds before calling it */ -+#endif /* HAVE_AVAHI */ - - - /* -@@ -1857,6 +1900,19 @@ - } - #endif /* __APPLE__ */ - -+#ifdef HAVE_AVAHI -+ /* -+ * See if there are any scheduled timed callbacks to run. -+ */ -+ -+ tmo = cupsdNextTimeout (&tmo_delay); -+ if (tmo) -+ { -+ timeout = tmo_delay; -+ why = "run a timed callback"; -+ } -+#endif /* HAVE_AVAHI */ -+ - /* - * Check whether we are accepting new connections... - */ ---- /dev/null -+++ b/scheduler/timeout.c -@@ -0,0 +1,195 @@ -+/* -+ * "$Id$" -+ * -+ * Timeout functions for the Common UNIX Printing System (CUPS). -+ * -+ * Copyright (C) 2010 Red Hat, Inc. -+ * Authors: -+ * Tim Waugh <twaugh@redhat.com> -+ * -+ * Distribution and use rights are outlined in the file "LICENSE.txt" -+ * which should have been included with this file. If this file is -+ * file is missing or damaged, see the license at "http://www.cups.org/". -+ * -+ * Contents: -+ * -+ * cupsdInitTimeouts() - Initialise timeout structure. -+ * cupsdAddTimeout() - Add a timed callback. -+ * cupsdNextTimeout() - Find the next enabled timed callback. -+ * cupsdUpdateTimeout() - Adjust the time of a timed callback or disable it. -+ * cupsdRemoveTimeout() - Discard a timed callback. -+ * compare_timeouts() - Compare timed callbacks for array sorting. -+ */ -+ -+#include <config.h> -+ -+#ifdef HAVE_AVAHI /* Applies to entire file... */ -+ -+/* -+ * Include necessary headers... -+ */ -+ -+#include "cupsd.h" -+ -+#if defined(HAVE_MALLOC_H) && defined(HAVE_MALLINFO) -+# include <malloc.h> -+#endif /* HAVE_MALLOC_H && HAVE_MALLINFO */ -+ -+#ifdef HAVE_AVAHI -+# include <avahi-common/timeval.h> -+#endif /* HAVE_AVAHI */ -+ -+ -+struct _cupsd_timeout_s -+{ -+ struct timeval when; -+ int enabled; -+ cupsd_timeoutfunc_t callback; -+ void *data; -+}; -+ -+/* -+ * Local functions... -+ */ -+ -+/* -+ * 'compare_timeouts()' - Compare timed callbacks for array sorting. -+ */ -+ -+static int -+compare_timeouts (cupsd_timeout_t *p0, cupsd_timeout_t *p1) -+{ -+ if (!p0->enabled || !p1->enabled) -+ { -+ if (!p0->enabled && !p1->enabled) -+ return (0); -+ -+ return (p0->enabled ? -1 : 1); -+ } -+ -+ return (avahi_timeval_compare (&p0->when, &p1->when)); -+} -+ -+ -+/* -+ * 'cupsdInitTimeouts()' - Initialise timeout structures. -+ */ -+ -+void -+cupsdInitTimeouts(void) -+{ -+ Timeouts = cupsArrayNew ((cups_array_func_t)compare_timeouts, NULL); -+} -+ -+ -+/* -+ * 'cupsdAddTimeout()' - Add a timed callback. -+ */ -+ -+cupsd_timeout_t * /* O - Timeout handle */ -+cupsdAddTimeout(const struct timeval *tv, /* I - Absolute time */ -+ cupsd_timeoutfunc_t cb, /* I - Callback function */ -+ void *data) /* I - User data */ -+{ -+ cupsd_timeout_t *timeout; -+ -+ timeout = malloc (sizeof(cupsd_timeout_t)); -+ if (timeout != NULL) -+ { -+ timeout->enabled = (tv != NULL); -+ if (tv) -+ { -+ timeout->when.tv_sec = tv->tv_sec; -+ timeout->when.tv_usec = tv->tv_usec; -+ } -+ -+ timeout->callback = cb; -+ timeout->data = data; -+ cupsArrayAdd (Timeouts, timeout); -+ } -+ -+ return timeout; -+} -+ -+ -+/* -+ * 'cupsdNextTimeout()' - Find the next enabled timed callback. -+ */ -+ -+cupsd_timeout_t * /* O - Next enabled timeout or NULL */ -+cupsdNextTimeout(long *delay) /* O - Seconds before scheduled */ -+{ -+ cupsd_timeout_t *first = cupsArrayFirst (Timeouts); -+ struct timeval curtime; -+ -+ if (first && !first->enabled) -+ first = NULL; -+ -+ if (first && delay) -+ { -+ gettimeofday (&curtime, NULL); -+ if (avahi_timeval_compare (&curtime, &first->when) > 0) -+ { -+ *delay = 0; -+ } else { -+ *delay = 1 + first->when.tv_sec - curtime.tv_sec; -+ if (first->when.tv_usec < curtime.tv_usec) -+ (*delay)--; -+ } -+ } -+ -+ return (first); -+} -+ -+ -+/* -+ * 'cupsdRunTimeout()' - Run a timed callback. -+ */ -+ -+void -+cupsdRunTimeout(cupsd_timeout_t *timeout) /* I - Timeout */ -+{ -+ if (!timeout) -+ return; -+ timeout->enabled = 0; -+ if (!timeout->callback) -+ return; -+ timeout->callback (timeout, timeout->data); -+} -+ -+/* -+ * 'cupsdUpdateTimeout()' - Adjust the time of a timed callback or disable it. -+ */ -+ -+void -+cupsdUpdateTimeout(cupsd_timeout_t *timeout, /* I - Timeout */ -+ const struct timeval *tv) /* I - Absolute time or NULL */ -+{ -+ cupsArrayRemove (Timeouts, timeout); -+ timeout->enabled = (tv != NULL); -+ if (tv) -+ { -+ timeout->when.tv_sec = tv->tv_sec; -+ timeout->when.tv_usec = tv->tv_usec; -+ } -+ cupsArrayAdd (Timeouts, timeout); -+} -+ -+ -+/* -+ * 'cupsdRemoveTimeout()' - Discard a timed callback. -+ */ -+ -+void -+cupsdRemoveTimeout(cupsd_timeout_t *timeout) /* I - Timeout */ -+{ -+ cupsArrayRemove (Timeouts, timeout); -+ free (timeout); -+} -+ -+ -+#endif /* HAVE_AVAHI ... from top of file */ -+ -+/* -+ * End of "$Id$". -+ */ ---- a/cgi-bin/admin.c -+++ b/cgi-bin/admin.c -@@ -1643,7 +1643,7 @@ - else - local_protocols[0] = '\0'; - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - if (cgiGetVariable("BROWSE_LOCAL_DNSSD")) - { - if (local_protocols[0]) -@@ -1651,7 +1651,7 @@ - else - strcat(local_protocols, "dnssd"); - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LDAP - if (cgiGetVariable("BROWSE_LOCAL_LDAP")) -@@ -2718,9 +2718,9 @@ - #endif /* HAVE_GSSAPI */ - cgiSetVariable("KERBEROS", ""); - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - cgiSetVariable("HAVE_DNSSD", "1"); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LDAP - cgiSetVariable("HAVE_LDAP", "1"); ---- a/scheduler/client.c -+++ b/scheduler/client.c -@@ -4987,7 +4987,7 @@ - !strncmp(host, "[::1]:", 6)); - } - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * Check if the hostname is something.local (Bonjour); if so, allow it. - */ -@@ -4996,7 +4996,7 @@ - (!_cups_strcasecmp(end, ".local") || !_cups_strncasecmp(end, ".local:", 7) || - !_cups_strcasecmp(end, ".local.") || !_cups_strncasecmp(end, ".local.:", 8))) - return (1); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - /* - * Check if the hostname is an IP address... ---- a/scheduler/dirsvc.c -+++ b/scheduler/dirsvc.c -@@ -27,6 +27,7 @@ - * ldap_connect() - Start new LDAP connection - * ldap_reconnect() - Reconnect to LDAP Server - * ldap_disconnect() - Disconnect from LDAP Server -+ * cupsdStartAvahiClient() - Start an Avahi client if needed - * cupsdStartBrowsing() - Start sending and receiving broadcast - * information. - * cupsdStartPolling() - Start polling servers as needed. -@@ -45,6 +46,8 @@ - * printer. - * dnssdPackTxtRecord() - Pack an array of key/value pairs into the TXT - * record format. -+ * avahiPackTxtRecord() - Pack an array of key/value pairs into an -+ * AvahiStringList. - * dnssdRegisterCallback() - DNSServiceRegister callback. - * dnssdRegisterPrinter() - Start sending broadcast information for a - * printer or update the broadcast contents. -@@ -83,6 +86,7 @@ - */ - - #include "cupsd.h" -+#include <assert.h> - #include <grp.h> - - #ifdef HAVE_DNSSD -@@ -97,6 +101,17 @@ - # endif /* HAVE_SYSTEMCONFIGURATION */ - # endif /* __APPLE__ */ - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include <avahi-common/domain.h> -+#endif /* HAVE_AVAHI */ -+ -+ -+#ifdef HAVE_DNSSD -+typedef char *cupsd_txt_record_t; -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+typedef AvahiStringList *cupsd_txt_record_t; -+#endif /* HAVE_AVAHI */ - - - /* -@@ -159,27 +174,39 @@ - static void update_smb(int onoff); - - -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+static cupsd_txt_record_t dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p, -+ int for_lpd); -+static int dnssdComparePrinters(cupsd_printer_t *a, cupsd_printer_t *b); -+static void dnssdDeregisterPrinter(cupsd_printer_t *p); -+static void dnssdRegisterPrinter(cupsd_printer_t *p); -+static void dnssdStop(void); -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ -+ - #ifdef HAVE_DNSSD - # ifdef HAVE_COREFOUNDATION - static void dnssdAddAlias(const void *key, const void *value, - void *context); - # endif /* HAVE_COREFOUNDATION */ --static char *dnssdBuildTxtRecord(int *txt_len, cupsd_printer_t *p, -- int for_lpd); --static int dnssdComparePrinters(cupsd_printer_t *a, cupsd_printer_t *b); --static void dnssdDeregisterPrinter(cupsd_printer_t *p); --static char *dnssdPackTxtRecord(int *txt_len, char *keyvalue[][2], -- int count); - static void dnssdRegisterCallback(DNSServiceRef sdRef, - DNSServiceFlags flags, - DNSServiceErrorType errorCode, - const char *name, const char *regtype, - const char *domain, void *context); --static void dnssdRegisterPrinter(cupsd_printer_t *p); --static void dnssdStop(void); - static void dnssdUpdate(void); - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+static AvahiStringList *avahiPackTxtRecord(char *keyvalue[][2], -+ int count); -+static void avahi_entry_group_cb (AvahiEntryGroup *group, -+ AvahiEntryGroupState state, -+ void *userdata); -+static void avahi_client_cb (AvahiClient *client, -+ AvahiClientState state, -+ void *userdata); -+#endif /* HAVE_AVAHI */ -+ - #ifdef HAVE_LDAP - static const char * const ldap_attrs[] =/* CUPS LDAP attributes */ - { -@@ -283,10 +310,10 @@ - ldap_dereg_printer(p); - #endif /* HAVE_LDAP */ - --#ifdef HAVE_DNSSD -- if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ if (removeit && (BrowseLocalProtocols & BROWSE_DNSSD)) - dnssdDeregisterPrinter(p); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - } - - -@@ -702,10 +729,10 @@ - slpRegisterPrinter(p); */ - #endif /* HAVE_LIBSLP */ - --#ifdef HAVE_DNSSD -- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ if ((BrowseLocalProtocols & BROWSE_DNSSD)) - dnssdRegisterPrinter(p); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - } - - -@@ -1419,6 +1446,27 @@ - #endif /* HAVE_LDAP */ - - -+#ifdef HAVE_AVAHI -+/* -+ * 'cupsdStartAvahiClient()' - Start an Avahi client if needed -+ */ -+ -+void -+cupsdStartAvahiClient(void) -+{ -+ if (!AvahiCupsClient && !AvahiCupsClientConnecting) -+ { -+ if (!AvahiCupsPollHandle) -+ AvahiCupsPollHandle = avahi_cups_poll_new (); -+ -+ if (AvahiCupsPollHandle) -+ avahi_client_new (avahi_cups_poll_get (AvahiCupsPollHandle), -+ AVAHI_CLIENT_NO_FAIL, avahi_client_cb, NULL, NULL); -+ } -+} -+#endif /* HAVE_AVAHI */ -+ -+ - /* - * 'cupsdStartBrowsing()' - Start sending and receiving broadcast information. - */ -@@ -1542,13 +1590,16 @@ - else - BrowseSocket = -1; - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_DNSSD) - { -+#ifdef HAVE_DNSSD - DNSServiceErrorType error; /* Error from service creation */ -+#endif /* HAVE_DNSSD */ - cupsd_listener_t *lis; /* Current listening socket */ - - -+#ifdef HAVE_DNSSD - /* - * First create a "master" connection for all registrations... - */ -@@ -1573,6 +1624,7 @@ - fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC); - - cupsdAddSelect(fd, (cupsd_selfunc_t)dnssdUpdate, NULL, NULL); -+#endif /* HAVE_DNSSD */ - - /* - * Then get the port we use for registrations. If we are not listening -@@ -1606,9 +1658,16 @@ - */ - - cupsdUpdateDNSSDName(); -+ -+#ifdef HAVE_AVAHI -+ cupsdStartAvahiClient (); -+#endif /* HAVE_AVAHI */ -+ -+#ifdef HAVE_DNSSD - } -- } - #endif /* HAVE_DNSSD */ -+ } -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LIBSLP - if ((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) -@@ -1834,10 +1893,10 @@ - BrowseSocket = -1; - } - --#ifdef HAVE_DNSSD -- if ((BrowseLocalProtocols & BROWSE_DNSSD) && DNSSDRef) -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) -+ if ((BrowseLocalProtocols & BROWSE_DNSSD)) - dnssdStop(); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - #ifdef HAVE_LIBSLP - if (((BrowseLocalProtocols | BrowseRemoteProtocols) & BROWSE_SLP) && -@@ -1902,7 +1961,7 @@ - } - - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * 'cupsdUpdateDNSSDName()' - Update the computer name we use for browsing... - */ -@@ -1910,8 +1969,14 @@ - void - cupsdUpdateDNSSDName(void) - { -+#ifdef HAVE_DNSSD - DNSServiceErrorType error; /* Error from service creation */ - char webif[1024]; /* Web interface share name */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ int ret; /* Error from service creation */ -+ char webif[AVAHI_LABEL_MAX]; /* Web interface share name */ -+#endif /* HAVE_AVAHI */ - # ifdef HAVE_SYSTEMCONFIGURATION - SCDynamicStoreRef sc; /* Context for dynamic store */ - CFDictionaryRef btmm; /* Back-to-My-Mac domains */ -@@ -2042,6 +2107,7 @@ - else - strlcpy(webif, "CUPS Web Interface", sizeof(webif)); - -+#ifdef HAVE_DNSSD - if (WebIFRef) - DNSServiceRefDeallocate(WebIFRef); - -@@ -2054,9 +2120,45 @@ - NULL)) != kDNSServiceErr_NoError) - cupsdLogMessage(CUPSD_LOG_ERROR, - "DNS-SD web interface registration failed: %d", error); -+#endif /* HAVE_DNSSD */ -+ -+#ifdef HAVE_AVAHI -+ if (!AvahiCupsClient) -+ /* -+ * Client not yet running. -+ */ -+ return; -+ -+ if (AvahiWebIFGroup) -+ avahi_entry_group_reset (AvahiWebIFGroup); -+ else -+ AvahiWebIFGroup = avahi_entry_group_new (AvahiCupsClient, -+ avahi_entry_group_cb, -+ NULL); -+ -+ if (AvahiWebIFGroup) -+ { -+ ret = avahi_entry_group_add_service (AvahiWebIFGroup, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, /* flags */ -+ webif, /* name */ -+ "_http._tcp", /* type */ -+ NULL, /* domain */ -+ NULL, /* host */ -+ DNSSDPort, /* port */ -+ "path=/", NULL); -+ if (ret == 0) -+ ret = avahi_entry_group_commit (AvahiWebIFGroup); -+ -+ if (ret != 0) -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Avahi web interface registration failed: %d", ret); -+ } -+#endif /* HAVE_AVAHI */ - } - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - - #ifdef HAVE_LDAP -@@ -2334,13 +2436,15 @@ - "Bad Back to My Mac domain in dynamic store!"); - } - # endif /* HAVE_COREFOUNDATION */ -+#endif /* HAVE_DNSSD */ - - -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * 'dnssdBuildTxtRecord()' - Build a TXT record from printer info. - */ - --static char * /* O - TXT record */ -+static cupsd_txt_record_t /* O - TXT record */ - dnssdBuildTxtRecord( - int *txt_len, /* O - TXT record length */ - cupsd_printer_t *p, /* I - Printer information */ -@@ -2379,7 +2483,12 @@ - keyvalue[i ][0] = "ty"; - keyvalue[i++][1] = p->make_model ? p->make_model : "Unknown"; - -- snprintf(admin_hostname, sizeof(admin_hostname), "%s.local.", DNSSDHostName); -+ snprintf(admin_hostname, sizeof(admin_hostname), -+ "%s.local" -+#ifdef HAVE_DNSSD -+ "." /* terminating dot no good for Avahi */ -+#endif /* HAVE_DNSSD */ -+ , DNSSDHostName); - httpAssembleURIf(HTTP_URI_CODING_ALL, adminurl_str, sizeof(adminurl_str), - "http", NULL, admin_hostname, DNSSDPort, "/%s/%s", - (p->type & CUPS_PRINTER_CLASS) ? "classes" : "printers", -@@ -2462,7 +2571,12 @@ - * Then pack them into a proper txt record... - */ - -+#ifdef HAVE_DNSSD - return (dnssdPackTxtRecord(txt_len, keyvalue, i)); -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ return (avahiPackTxtRecord(keyvalue, i)); -+#endif /* HAVE_AVAHI */ - } - - -@@ -2474,7 +2588,16 @@ - dnssdComparePrinters(cupsd_printer_t *a,/* I - First printer */ - cupsd_printer_t *b)/* I - Second printer */ - { -- return (_cups_strcasecmp(a->reg_name, b->reg_name)); -+ if (!a->reg_name) -+ if (!b->reg_name) -+ return 0; -+ else -+ return -1; -+ else -+ if (!b->reg_name) -+ return 1; -+ else -+ return (_cups_strcasecmp(a->reg_name, b->reg_name)); - } - - -@@ -2489,6 +2612,10 @@ - { - cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdDeregisterPrinter(%s)", p->name); - -+#ifdef HAVE_DNSSD -+ if (!DNSSDRef) -+ return; -+ - /* - * Closing the socket deregisters the service - */ -@@ -2524,6 +2651,24 @@ - free(p->printer_txt); - p->printer_txt = NULL; - } -+#endif /* HAVE_DNSSD */ -+ -+#ifdef HAVE_AVAHI -+ if (p->avahi_group) -+ { -+ avahi_entry_group_reset (p->avahi_group); -+ avahi_entry_group_free (p->avahi_group); -+ p->avahi_group = NULL; -+ -+ if (p->ipp_txt) -+ avahi_string_list_free (p->ipp_txt); -+ -+ if (p->printer_txt) -+ avahi_string_list_free (p->printer_txt); -+ -+ p->ipp_txt = p->printer_txt = NULL; -+ } -+#endif /* HAVE_AVAHI */ - - /* - * Remove the printer from the array of DNS-SD printers, then clear the -@@ -2533,8 +2678,10 @@ - cupsArrayRemove(DNSSDPrinters, p); - cupsdClearString(&p->reg_name); - } -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - -+#ifdef HAVE_DNSSD - /* - * 'dnssdPackTxtRecord()' - Pack an array of key/value pairs into the - * TXT record format. -@@ -2644,8 +2791,10 @@ - LastEvent |= CUPSD_EVENT_PRINTER_MODIFIED; - } - } -+#endif /* HAVE_DNSSD */ - - -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - /* - * 'dnssdRegisterPrinter()' - Start sending broadcast information for a printer - * or update the broadcast contents. -@@ -2654,20 +2803,40 @@ - static void - dnssdRegisterPrinter(cupsd_printer_t *p)/* I - Printer */ - { -+#ifdef HAVE_DNSSD - DNSServiceErrorType se; /* dnssd errors */ - char *ipp_txt, /* IPP TXT record buffer */ - *printer_txt, /* LPD TXT record buffer */ -- name[1024], /* Service name */ -- *nameptr; /* Pointer into name */ -+ name[1024]; /* Service name */ - int ipp_len, /* IPP TXT record length */ - printer_len, /* LPD TXT record length */ - printer_port; /* LPD port number */ -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ int ret; /* Error code */ -+ AvahiStringList *ipp_txt, /* IPP TXT record */ -+ *printer_txt; /* LPD TXT record */ -+ char name[AVAHI_LABEL_MAX], /* Service name */ -+ fullsubtype[AVAHI_LABEL_MAX]; /* Full subtype */ -+ char *regtype_copy, /* Writeable copy of reg type */ -+ *subtype, /* Current service sub type */ -+ *nextsubtype; /* Next service sub type */ -+#endif /* HAVE_AVAHI */ -+ char *nameptr; /* Pointer into name */ - const char *regtype; /* Registration type */ - - -+#ifdef HAVE_DNSSD -+ if (!DNSSDRef) -+ return; -+ - cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, - !p->ipp_ref ? "new" : "update"); -- -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ cupsdLogMessage(CUPSD_LOG_DEBUG2, "dnssdRegisterPrinter(%s) %s", p->name, -+ !p->avahi_group ? "new" : "update"); -+#endif /* HAVE_AVAHI */ - /* - * If per-printer sharing was just disabled make sure we're not - * registered before returning. -@@ -2686,12 +2855,36 @@ - if (p->info && strlen(p->info) > 0) - { - if (DNSSDComputerName) -- snprintf(name, sizeof(name), "%s @ %s", p->info, DNSSDComputerName); -+ { -+ /* -+ * Make sure there is room for at least 15 characters of -+ * DNSSDComputerName. -+ */ -+ -+ assert(sizeof(name) >= 15 + 4); -+ nameptr = name + strlcpy(name, p->info, -+ sizeof(name) - 4 - -+ strnlen(DNSSDComputerName, 15)); -+ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name)); -+ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name)); -+ } - else - strlcpy(name, p->info, sizeof(name)); - } - else if (DNSSDComputerName) -- snprintf(name, sizeof(name), "%s @ %s", p->name, DNSSDComputerName); -+ { -+ /* -+ * Make sure there is room for at least 15 characters of -+ * DNSSDComputerName. -+ */ -+ -+ assert(sizeof(name) >= 15 + 4); -+ nameptr = name + strlcpy(name, p->info, -+ sizeof(name) - 4 - -+ strnlen(DNSSDComputerName, 15)); -+ nameptr += strlcpy(nameptr, " @ ", sizeof(name) - (nameptr - name)); -+ strlcpy(nameptr, DNSSDComputerName, sizeof(name) - (nameptr - name)); -+ } - else - strlcpy(name, p->name, sizeof(name)); - -@@ -2712,6 +2905,7 @@ - * Register IPP and (optionally) LPD... - */ - -+#ifdef HAVE_DNSSD - ipp_len = 0; /* anti-compiler-warning-code */ - ipp_txt = dnssdBuildTxtRecord(&ipp_len, p, 0); - -@@ -2884,6 +3078,209 @@ - - if (printer_txt) - free(printer_txt); -+#endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ if (!AvahiCupsClient) -+ /* -+ * Client not running yet. The client callback will call us again later. -+ */ -+ return; -+ -+ ipp_txt = dnssdBuildTxtRecord(NULL, p, 0); -+ printer_txt = dnssdBuildTxtRecord(NULL, p, 1); -+ regtype = (p->type & CUPS_PRINTER_FAX) ? "_fax-ipp._tcp" : DNSSDRegType; -+ -+ if (p->avahi_group && p->ipp_txt && ipp_txt && -+ !avahi_string_list_equal (p->ipp_txt, ipp_txt)) -+ { -+ /* -+ * Update the existing registration... -+ */ -+ -+ avahi_string_list_free (p->ipp_txt); -+ -+ if (p->printer_txt) -+ avahi_string_list_free (p->printer_txt); -+ -+ /* -+ * Update the service group entry. -+ */ -+ -+ regtype_copy = strdup (regtype); -+ subtype = strchr (regtype_copy, ','); -+ if (subtype) -+ *subtype = '\0'; -+ -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Updating TXT record for %s (%s)", name, regtype_copy); -+ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ regtype_copy, -+ NULL, ipp_txt); -+ free (regtype_copy); -+ -+ if (ret < 0) -+ goto update_failed; -+ -+ p->ipp_txt = ipp_txt; -+ ipp_txt = NULL; -+ -+ if (BrowseLocalProtocols & BROWSE_LPD) -+ { -+ ret = avahi_entry_group_update_service_txt_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ "_printer._tcp", NULL, -+ printer_txt); -+ if (ret < 0) -+ goto update_failed; -+ -+ p->printer_txt = printer_txt; -+ printer_txt = NULL; -+ } -+ -+ ret = avahi_entry_group_commit (p->avahi_group); -+ if (ret < 0) -+ { -+ update_failed: -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Failed to update TXT record for %s: %d", -+ name, ret); -+ avahi_entry_group_reset (p->avahi_group); -+ avahi_entry_group_free (p->avahi_group); -+ p->avahi_group = NULL; -+ ipp_txt = p->ipp_txt; -+ p->ipp_txt = NULL; -+ } -+ } -+ -+ if (!p->avahi_group) -+ { -+ /* -+ * Initial registration. Use the _fax subtype for fax queues... -+ */ -+ -+ p->avahi_group = avahi_entry_group_new (AvahiCupsClient, -+ avahi_entry_group_cb, -+ p); -+ -+ cupsdLogMessage(CUPSD_LOG_DEBUG, -+ "Registering Avahi printer %s with name \"%s\" and " -+ "type \"%s\"", p->name, name, regtype); -+ -+ if (!p->avahi_group) -+ { -+ ret = 0; -+ goto add_failed; -+ } -+ -+ /* -+ * Add each service type (DNSSDRegType may contain several, -+ * separated by commas). -+ */ -+ -+ subtype = regtype_copy = strdup (regtype); -+ while (subtype && *subtype) -+ { -+ nextsubtype = strchr (subtype, ','); -+ if (nextsubtype) -+ *nextsubtype++ = '\0'; -+ -+ if (subtype == regtype_copy) -+ { -+ /* -+ * Main type entry. -+ */ -+ -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Adding TXT record for %s (%s)", name, regtype_copy); -+ ret = avahi_entry_group_add_service_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, regtype_copy, -+ NULL, NULL, -+ DNSSDPort, -+ ipp_txt); -+ } -+ else -+ { -+ /* -+ * Sub-type entry. -+ */ -+ -+ snprintf (fullsubtype, sizeof(fullsubtype), -+ "%s._sub.%s", subtype, regtype_copy); -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Adding TXT record for %s (%s)", name, fullsubtype); -+ ret = avahi_entry_group_add_service_subtype (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ regtype_copy, -+ NULL, fullsubtype); -+ } -+ -+ if (ret < 0) -+ { -+ free (regtype_copy); -+ goto add_failed; -+ } -+ -+ subtype = nextsubtype; -+ } -+ -+ free (regtype_copy); -+ p->ipp_txt = ipp_txt; -+ ipp_txt = NULL; -+ -+ if (BrowseLocalProtocols & BROWSE_LPD) -+ { -+ cupsdLogMessage(CUPSD_LOG_DEBUG, -+ "Registering Avahi printer %s with name \"%s\" and " -+ "type \"_printer._tcp\"", p->name, name); -+ -+ ret = avahi_entry_group_add_service_strlst (p->avahi_group, -+ AVAHI_IF_UNSPEC, -+ AVAHI_PROTO_UNSPEC, -+ 0, name, -+ "_printer._tcp", NULL, NULL, -+ 515, -+ printer_txt); -+ if (ret < 0) -+ goto add_failed; -+ -+ p->printer_txt = printer_txt; -+ printer_txt = NULL; -+ } -+ -+ ret = avahi_entry_group_commit (p->avahi_group); -+ -+ if (ret < 0) -+ { -+ add_failed: -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Failed to add Avahi entry for %s: %d", -+ name, ret); -+ if (p->avahi_group) -+ { -+ avahi_entry_group_reset (p->avahi_group); -+ avahi_entry_group_free (p->avahi_group); -+ p->avahi_group = NULL; -+ } -+ ipp_txt = p->ipp_txt; -+ p->ipp_txt = NULL; -+ } -+ } -+ -+ if (ipp_txt) -+ avahi_string_list_free (ipp_txt); -+ -+ if (printer_txt) -+ avahi_string_list_free (printer_txt); -+#endif /* HAVE_AVAHI */ - } - - -@@ -2896,6 +3293,10 @@ - { - cupsd_printer_t *p; /* Current printer */ - -+#ifdef HAVE_DNSSD -+ if (!DNSSDRef) -+ return; -+#endif /* HAVE_DNSSD */ - - /* - * De-register the individual printers -@@ -2906,6 +3307,7 @@ - p = (cupsd_printer_t *)cupsArrayNext(Printers)) - dnssdDeregisterPrinter(p); - -+#ifdef HAVE_DNSSD - /* - * Shutdown the rest of the service refs... - */ -@@ -2926,14 +3328,17 @@ - - DNSServiceRefDeallocate(DNSSDRef); - DNSSDRef = NULL; -+#endif /* HAVE_DNSSD */ - - cupsArrayDelete(DNSSDPrinters); - DNSSDPrinters = NULL; - - DNSSDPort = 0; - } -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - -+#ifdef HAVE_DNSSD - /* - * 'dnssdUpdate()' - Handle DNS-SD queries. - */ -@@ -2955,6 +3360,147 @@ - #endif /* HAVE_DNSSD */ - - -+#ifdef HAVE_AVAHI -+/* -+ * 'avahiPackTxtRecord()' - Pack an array of key/value pairs into an -+ * AvahiStringList. -+ */ -+ -+static AvahiStringList * /* O - new string list */ -+avahiPackTxtRecord(char *keyvalue[][2], /* I - Table of key value pairs */ -+ int count) /* I - Number of items in table */ -+{ -+ AvahiStringList *strlst = NULL; -+ char **elements; -+ size_t len; -+ int i = 0; -+ -+ elements = malloc ((1 + count) * sizeof (char *)); -+ if (!elements) -+ goto cleanup; -+ -+ for (i = 0; i < count; i++) -+ { -+ len = (1 + strlen (keyvalue[i][0]) + -+ (keyvalue[i][1] ? 1 + strlen (keyvalue[i][1]) : 1)); -+ elements[i] = malloc (len * sizeof (char)); -+ if (!elements[i]) -+ goto cleanup; -+ -+ snprintf (elements[i], len, "%s=%s", keyvalue[i][0], keyvalue[i][1]); -+ } -+ -+ strlst = avahi_string_list_new_from_array ((const char **) elements, count); -+ -+cleanup: -+ while (--i >= 0) -+ free (elements[i]); -+ -+ free (elements); -+ return (strlst); -+} -+ -+ -+/* -+ * 'avahi_entry_group_cb()' - Avahi entry group callback function. -+ */ -+static void -+avahi_entry_group_cb (AvahiEntryGroup *group, -+ AvahiEntryGroupState state, -+ void *userdata) -+{ -+ char *name; -+ -+ if (userdata) -+ name = ((cupsd_printer_t *) userdata)->reg_name; -+ else -+ name = "CUPS web interface"; -+ -+ switch (state) -+ { -+ case AVAHI_ENTRY_GROUP_UNCOMMITED: -+ case AVAHI_ENTRY_GROUP_REGISTERING: -+ break; -+ -+ case AVAHI_ENTRY_GROUP_ESTABLISHED: -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Avahi entry group established for %s", name); -+ break; -+ -+ default: -+ cupsdLogMessage (CUPSD_LOG_DEBUG, -+ "Avahi entry group %s has state %d", -+ name, state); -+ break; -+ } -+} -+ -+ -+/* -+ * 'avahi_client_cb()' - Avahi client callback function. -+ */ -+static void -+avahi_client_cb (AvahiClient *client, -+ AvahiClientState state, -+ void *userdata) -+{ -+ cupsd_printer_t *printer; -+ switch (state) -+ { -+ case AVAHI_CLIENT_S_RUNNING: -+ /* -+ * Avahi client started successfully. -+ */ -+ AvahiCupsClient = client; -+ AvahiCupsClientConnecting = 0; -+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client started"); -+ -+ cupsdUpdateDNSSDName (); -+ -+ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers); -+ printer; -+ printer = (cupsd_printer_t *)cupsArrayNext(Printers)) -+ if (Browsing && (BrowseLocalProtocols & BROWSE_DNSSD) && -+ (!(printer->type & (CUPS_PRINTER_REMOTE | CUPS_PRINTER_IMPLICIT | -+ CUPS_PRINTER_SCANNER))) && printer->shared) -+ dnssdRegisterPrinter (printer); -+ -+ break; -+ -+ case AVAHI_CLIENT_CONNECTING: -+ /* -+ * No Avahi daemon, client is waiting. -+ */ -+ AvahiCupsClientConnecting = 1; -+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client connecting"); -+ break; -+ -+ case AVAHI_CLIENT_FAILURE: -+ /* -+ * Avahi client failed, close it to allow a clean restart. -+ */ -+ cupsdLogMessage (CUPSD_LOG_ERROR, -+ "Avahi client failed, " -+ "closing client to allow a clean restart"); -+ -+ for (printer = (cupsd_printer_t *)cupsArrayFirst(Printers); -+ printer; -+ printer = (cupsd_printer_t *)cupsArrayNext(Printers)) -+ dnssdDeregisterPrinter (printer); -+ -+ avahi_client_free(client); -+ AvahiCupsClientConnecting = 0; -+ AvahiCupsClient = NULL; -+ -+ break; -+ -+ default: -+ cupsdLogMessage (CUPSD_LOG_DEBUG, "Avahi client state: %d", state); -+ } -+} -+#endif /* HAVE_AVAHI */ -+ -+ - /* - * 'get_auth_info_required()' - Get the auth-info-required value to advertise. - */ ---- a/scheduler/dirsvc.h -+++ b/scheduler/dirsvc.h -@@ -31,6 +31,10 @@ - # endif /* HAVE_LDAP_SSL_H */ - #endif /* HAVE_LDAP */ - -+#ifdef HAVE_AVAHI -+# include <avahi-client/publish.h> -+#endif /* HAVE_AVAHI */ -+ - /* - * Browse protocols... - */ -@@ -131,19 +135,22 @@ - VAR cupsd_statbuf_t *PollStatusBuffer VALUE(NULL); - /* Status buffer for pollers */ - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - VAR char *DNSSDComputerName VALUE(NULL), - /* Computer/server name */ - *DNSSDHostName VALUE(NULL), - /* Hostname */ - *DNSSDRegType VALUE(NULL); - /* Bonjour registration type */ --VAR cups_array_t *DNSSDAlias VALUE(NULL); -- /* List of dynamic ServerAlias's */ - VAR int DNSSDPort VALUE(0); - /* Port number to register */ - VAR cups_array_t *DNSSDPrinters VALUE(NULL); - /* Printers we have registered */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ -+ -+#ifdef HAVE_DNSSD -+VAR cups_array_t *DNSSDAlias VALUE(NULL); -+ /* List of dynamic ServerAlias's */ - VAR DNSServiceRef DNSSDRef VALUE(NULL), - /* Master DNS-SD service reference */ - WebIFRef VALUE(NULL), -@@ -152,6 +159,17 @@ - /* Remote printer browse reference */ - #endif /* HAVE_DNSSD */ - -+#ifdef HAVE_AVAHI -+VAR AvahiCupsPoll *AvahiCupsPollHandle VALUE(NULL); -+ /* AvahiCupsPoll object */ -+VAR AvahiClient *AvahiCupsClient VALUE(NULL); -+ /* AvahiClient object */ -+VAR int AvahiCupsClientConnecting VALUE(0); -+ /* Is AvahiClient object connecting? */ -+VAR AvahiEntryGroup *AvahiWebIFGroup VALUE(NULL); -+ /* Web interface entry group */ -+#endif /* HAVE_AVAHI */ -+ - #ifdef HAVE_LIBSLP - VAR SLPHandle BrowseSLPHandle VALUE(NULL); - /* SLP API handle */ -@@ -195,13 +213,14 @@ - extern void cupsdRestartPolling(void); - extern void cupsdSaveRemoteCache(void); - extern void cupsdSendBrowseList(void); -+extern void cupsdStartAvahiClient(void); - extern void cupsdStartBrowsing(void); - extern void cupsdStartPolling(void); - extern void cupsdStopBrowsing(void); - extern void cupsdStopPolling(void); --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - extern void cupsdUpdateDNSSDName(void); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - #ifdef HAVE_LDAP - extern void cupsdUpdateLDAPBrowse(void); - #endif /* HAVE_LDAP */ ---- a/scheduler/ipp.c -+++ b/scheduler/ipp.c -@@ -6087,7 +6087,7 @@ - ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time", - ippTimeToDate(curtime)); - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - if (!ra || cupsArrayFind(ra, "printer-dns-sd-name")) - { - if (printer->reg_name) -@@ -6097,7 +6097,7 @@ - ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE, - "printer-dns-sd-name", 0); - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - if (!ra || cupsArrayFind(ra, "printer-error-policy")) - ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME, ---- a/scheduler/printers.c -+++ b/scheduler/printers.c -@@ -883,9 +883,9 @@ - cupsdClearString(&p->alert); - cupsdClearString(&p->alert_description); - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - cupsdClearString(&p->pdl); --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - - cupsArrayDelete(p->filetypes); - -@@ -3765,7 +3765,7 @@ - attr->values[i].string.text = _cupsStrAlloc(mimetype); - } - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - { - char pdl[1024]; /* Buffer to build pdl list */ - mime_filter_t *filter; /* MIME filter looping var */ -@@ -3821,7 +3821,7 @@ - - cupsdSetString(&p->pdl, pdl); - } --#endif /* HAVE_DNSSD */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ - } - - ---- a/scheduler/printers.h -+++ b/scheduler/printers.h -@@ -16,6 +16,9 @@ - #ifdef HAVE_DNSSD - # include <dns_sd.h> - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+# include "avahi.h" -+#endif /* HAVE_AVAHI */ - #include <cups/pwg-private.h> - - -@@ -95,16 +98,23 @@ - time_t marker_time; /* Last time marker attributes were updated */ - _ppd_cache_t *pc; /* PPD cache and mapping data */ - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - char *reg_name, /* Name used for service registration */ -- *pdl, /* pdl value for TXT record */ -- *ipp_txt, /* IPP TXT record contents */ -+ *pdl; /* pdl value for TXT record */ -+#endif /* defined(HAVE_DNSSD) || defined(HAVE_AVAHI) */ -+#ifdef HAVE_DNSSD -+ char *ipp_txt, /* IPP TXT record contents */ - *printer_txt; /* LPD TXT record contents */ - int ipp_len, /* IPP TXT record length */ - printer_len; /* LPD TXT record length */ - DNSServiceRef ipp_ref, /* Reference for _ipp._tcp,_cups */ - printer_ref; /* Reference for _printer._tcp */ - #endif /* HAVE_DNSSD */ -+#ifdef HAVE_AVAHI -+ AvahiStringList *ipp_txt, /* IPP TXT record */ -+ *printer_txt; /* LPD TXT record */ -+ AvahiEntryGroup *avahi_group; /* Avahi entry group */ -+#endif /* HAVE_AVAHI */ - }; - - ---- a/scheduler/conf.c -+++ b/scheduler/conf.c -@@ -650,7 +650,7 @@ - Browsing = CUPS_DEFAULT_BROWSING; - DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED; - --#ifdef HAVE_DNSSD -+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) - cupsdSetString(&DNSSDRegType, "_ipp._tcp,_cups"); - #endif /* HAVE_DNSSD */ - diff --git a/~mtjm/python2-pydns/PKGBUILD b/~mtjm/python2-pydns/PKGBUILD index 76ea7b112..cf5f4b388 100644 --- a/~mtjm/python2-pydns/PKGBUILD +++ b/~mtjm/python2-pydns/PKGBUILD @@ -4,7 +4,7 @@ # Contributor: Samed Beyribey <ras0ir AT eventualis DOT org> pkgname=python2-pydns _pkgname=pydns -pkgver=2.3.5 +pkgver=2.3.6 pkgrel=1 pkgdesc="Python2 module for performing DNS queries" arch=('any') @@ -13,7 +13,7 @@ license=('custom') depends=('python2') options=(!emptydirs) source=(http://downloads.sourceforge.net/$_pkgname/$_pkgname-$pkgver.tar.gz) -md5sums=('50fb6ec23808110162e84ef49140a73f') +md5sums=('d12ca75251854ab6fcabbaff6909b690') build() { cd "$srcdir/$_pkgname-$pkgver" diff --git a/~mtjm/python2-pyflakes/PKGBUILD b/~mtjm/python2-pyflakes/PKGBUILD new file mode 100644 index 000000000..397c487b7 --- /dev/null +++ b/~mtjm/python2-pyflakes/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 64234 2012-02-11 00:28:07Z arodseth $ +# Maintainer: Thomas Dziedzic < gostrc at gmail > +# Contributor: TDY <tdy@gmx.com> +# Contributor: Tiago Pierezan Camargo <tcamargo@gmail.com> + +pkgname=python2-pyflakes +pkgver=0.5.0 +pkgrel=1 +pkgdesc='A lint-like tool for Python to identify common errors quickly without executing code' +arch=('any') +url='http://pypi.python.org/pypi/pyflakes' +license=('custom:MIT') +depends=('python2') +provides=('pyflakes') +conflicts=('pyflakes') +replaces=('pyflakes') +source=("http://pypi.python.org/packages/source/p/pyflakes/pyflakes-${pkgver}.tar.gz") +md5sums=('568dab27c42e5822787aa8a603898672') + +build() { + cd pyflakes-${pkgver} + + python2 setup.py build +} + +package() { + cd pyflakes-${pkgver} + + python2 setup.py install --prefix=/usr --root=${pkgdir} --optimize=1 + + install -D -m644 LICENSE \ + ${pkgdir}/usr/share/licenses/pyflakes/LICENSE +} diff --git a/~mtjm/python2-pyspf/PKGBUILD b/~mtjm/python2-pyspf/PKGBUILD index a32893066..abb3bfa5f 100644 --- a/~mtjm/python2-pyspf/PKGBUILD +++ b/~mtjm/python2-pyspf/PKGBUILD @@ -4,8 +4,8 @@ # Contributor: Samed Beyribey <ras0ir AT eventualis DOT org> pkgname=python2-pyspf _pkgname=pyspf -pkgver=2.0.5 -pkgrel=2 +pkgver=2.0.7 +pkgrel=1 pkgdesc="Python2 implementation of the Sender Policy Framework (SPF) protocol" arch=('any') url="http://pypi.python.org/pypi/pyspf" @@ -15,7 +15,7 @@ checkdepends=('python2-yaml') conflicts=('python-pyspf') options=(!emptydirs) source=(http://downloads.sourceforge.net/pymilter/$_pkgname-$pkgver.tar.gz) -md5sums=(7e3f53362e3ad52ec8a496445085a34f) +md5sums=('df47e2c04054a89da8b46b7f67e704ae') build() { cd "$srcdir/$_pkgname-$pkgver" diff --git a/~mtjm/thinkfan/PKGBUILD b/~mtjm/thinkfan/PKGBUILD index 9bb9a4793..9f88a1a48 100644 --- a/~mtjm/thinkfan/PKGBUILD +++ b/~mtjm/thinkfan/PKGBUILD @@ -5,7 +5,7 @@ pkgname=thinkfan pkgver=0.7.3 -pkgrel=1 +pkgrel=1.1 pkgdesc="A minimalist fan control program. Supports the sysfs hwmon interface and thinkpad_acpi" arch=('i686' 'x86_64' 'mips64el') license=('GPL3') |