diff options
215 files changed, 9134 insertions, 827 deletions
diff --git a/community-staging/avr-gcc/PKGBUILD b/community-staging/avr-gcc/PKGBUILD new file mode 100644 index 000000000..59f9bb536 --- /dev/null +++ b/community-staging/avr-gcc/PKGBUILD @@ -0,0 +1,72 @@ +# $Id: PKGBUILD 75007 2012-08-11 13:56:52Z schuay $ +# Maintainer: schuay <jakob.gruber@gmail.com> +# Contributor: Brad Fanella <bradfanella@archlinux.us> +# Contributor: Corrado Primier <bardo@aur.archlinux.org> +# Contributor: danst0 <danst0@west.de> + +# Build order: avr-binutils -> avr-gcc -> avr-libc + +pkgname=avr-gcc +_pkgname=gcc +pkgver=4.7.1 +pkgrel=2 +pkgdesc="The GNU AVR Compiler Collection" +arch=('i686' 'x86_64') +license=('GPL' 'LGPL' 'custom') +url="http://gcc.gnu.org/" +depends=('avr-binutils>=2.22-3' 'cloog' 'ppl' 'gcc-libs>=4.7.0' 'libmpc') +provides=("gcc-avr=$pkgver") +replaces=('gcc-avr') +options=('!libtool' '!emptydirs' '!libtool' '!strip') +source=(http://ftp.gnu.org/gnu/gcc/${_pkgname}-${pkgver}/gcc-${pkgver}.tar.bz2) + +_basedir=${srcdir}/${_pkgname}-${pkgver} + +build() { + # default CFLAGS lead to issues later on when configure + # calls avr-gcc with -march set. + export CFLAGS="-O2 -pipe" + export CXXFLAGS="-O2 -pipe" + + cd ${_basedir} + + # Do not install libiberty + sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in + + echo ${pkgver} > gcc/BASE-VER + + cd ${srcdir} + mkdir gcc-build && cd gcc-build + + ${_basedir}/configure \ + --prefix=/usr \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --enable-languages=c,c++ \ + --disable-libssp \ + --disable-nls \ + --target=avr \ + --with-as=/usr/bin/avr-as \ + --with-ld=/usr/bin/avr-ld \ + --with-gnu-as \ + --with-gnu-ld + + make +} + +package() { + cd ${srcdir}/gcc-build + + make -j1 DESTDIR=${pkgdir} install + + # Install Runtime Library Exception + install -Dm644 ${_basedir}/COPYING.RUNTIME \ + ${pkgdir}/usr/share/licenses/${pkgname}/RUNTIME.LIBRARY.EXCEPTION + + rm -rf ${pkgdir}/usr/share/man/man7 + rm -rf ${pkgdir}/usr/share/info +} + +md5sums=('933e6f15f51c031060af64a9e14149ff') diff --git a/community-staging/homebank/PKGBUILD b/community-staging/homebank/PKGBUILD new file mode 100644 index 000000000..4d86e398b --- /dev/null +++ b/community-staging/homebank/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 74936 2012-08-10 01:45:28Z ebelanger $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Contributor: William Rea <sillywilly@gmail.com> + +pkgname=homebank +pkgver=4.4 +pkgrel=3 +pkgdesc="Free, easy, personal accounting for everyone" +arch=('i686' 'x86_64') +url="http://homebank.free.fr/" +license=('GPL') +depends=('desktop-file-utils' 'gtk2' 'hicolor-icon-theme' 'libofx' 'librsvg' 'perlxml' 'shared-mime-info') +makedepends=('intltool') +install=$pkgname.install +source=(http://homebank.free.fr/public/$pkgname-$pkgver.tar.gz) +sha256sums=('13b89373575e3ac229d2683aa7296778ad7cdae1a7a019c9124a1d5b23dce7d2') + +build() { + cd "${srcdir}/$pkgname-$pkgver" + + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/$pkgname-$pkgver" + + make DESTDIR="${pkgdir}" install +} diff --git a/community-staging/homebank/homebank.install b/community-staging/homebank/homebank.install new file mode 100644 index 000000000..3c862f44b --- /dev/null +++ b/community-staging/homebank/homebank.install @@ -0,0 +1,13 @@ +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q + update-mime-database usr/share/mime +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/community-staging/skrooge/PKGBUILD b/community-staging/skrooge/PKGBUILD new file mode 100644 index 000000000..98b3c078c --- /dev/null +++ b/community-staging/skrooge/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 74938 2012-08-10 02:26:22Z ebelanger $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Contributor: Ray Rashif <schiv@archlinux.org> +# Contributor: Andrea Scarpino <andrea@archlinux.org> +# Contributor: neuromante <lorenzo.nizzi.grifi@gmail.com> + +pkgname=skrooge +pkgver=1.3.0 +pkgrel=2 +pkgdesc="A personal finances manager for KDE" +arch=('i686' 'x86_64') +url="http://skrooge.org/" +license=('GPL') +depends=('kdebase-runtime' 'libofx' 'qca-ossl') +makedepends=('cmake' 'automoc4' 'docbook-xsl') +install=$pkgname.install +changelog=$pkgname.changelog +source=(http://skrooge.org/files/$pkgname-$pkgver.tar.bz2) +sha256sums=('7f8ec247084a005b743bb080ded5724f6c1ee3644c135e12002c80df93fddfe9') + +build() { + cd "${srcdir}/$pkgname-$pkgver" + + cmake . -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr + + make +} + +package() { + cd "${srcdir}/$pkgname-$pkgver" + + make DESTDIR="${pkgdir}" install +} diff --git a/community-staging/skrooge/skrooge.changelog b/community-staging/skrooge/skrooge.changelog new file mode 100644 index 000000000..ffc491ba5 --- /dev/null +++ b/community-staging/skrooge/skrooge.changelog @@ -0,0 +1,11 @@ +2012-08-09 Eric Belanger <eric@archlinux.org> + * skrooge 1.3.0-2 Rebuild against libofx 0.9.5 + +2012-05-05 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * skrooge 1.3.0-1 + +2012-02-24 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * skrooge 1.2.0-1 + +2011-11-27 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * skrooge 1.1.1-1 diff --git a/community-staging/skrooge/skrooge.install b/community-staging/skrooge/skrooge.install new file mode 100644 index 000000000..050474c59 --- /dev/null +++ b/community-staging/skrooge/skrooge.install @@ -0,0 +1,14 @@ +post_install() { + update-mime-database usr/share/mime &> /dev/null + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q + kbuildsycoca4 &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/community-testing/homebank/PKGBUILD b/community-testing/homebank/PKGBUILD new file mode 100644 index 000000000..3ddacc089 --- /dev/null +++ b/community-testing/homebank/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 74951 2012-08-10 05:04:47Z ebelanger $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Contributor: William Rea <sillywilly@gmail.com> + +pkgname=homebank +pkgver=4.4 +pkgrel=3 +pkgdesc="Free, easy, personal accounting for everyone" +arch=('i686' 'x86_64') +url="http://homebank.free.fr/" +license=('GPL') +depends=('desktop-file-utils' 'gtk2' 'hicolor-icon-theme' 'libofx' 'librsvg' 'perlxml' 'shared-mime-info') +makedepends=('intltool') +install=$pkgname.install +source=(http://homebank.free.fr/public/$pkgname-$pkgver.tar.gz) +sha256sums=('13b89373575e3ac229d2683aa7296778ad7cdae1a7a019c9124a1d5b23dce7d2') + +build() { + cd "${srcdir}/$pkgname-$pkgver" + + ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}/$pkgname-$pkgver" + + make DESTDIR="${pkgdir}" install +} diff --git a/community-testing/homebank/homebank.install b/community-testing/homebank/homebank.install new file mode 100644 index 000000000..3c862f44b --- /dev/null +++ b/community-testing/homebank/homebank.install @@ -0,0 +1,13 @@ +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q + update-mime-database usr/share/mime +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/community-testing/kmymoney/PKGBUILD b/community-testing/kmymoney/PKGBUILD new file mode 100644 index 000000000..537bb2420 --- /dev/null +++ b/community-testing/kmymoney/PKGBUILD @@ -0,0 +1,46 @@ +# $Id: PKGBUILD 74952 2012-08-10 05:04:54Z ebelanger $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Maintainer: Laurent Carlier <lordheavym@gmail.com> +# Contributor: Vamp898 <vamp898@web.de> +# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org> +# Contributor: Eric Belanger <eric@archlinux.org> +# Contributor: Todd Maynard <arch@toddmaynard.com> + +pkgname=kmymoney +pkgver=4.6.2 +pkgrel=2 +pkgdesc="Personal finance manager for KDE which operates similarly to MS-Money or Quicken" +arch=('i686' 'x86_64') +url="http://kmymoney2.sourceforge.net/" +license=('GPL') +depends=('kdebase-workspace' 'shared-mime-info' 'aqbanking' 'libofx' 'libalkimia' 'boost-libs') +makedepends=('cmake' 'automoc4' 'docbook-xml' 'docbook-xsl' 'boost') +replaces=('kmymoney2') +install=$pkgname.install +changelog=$pkgname.changelog +options=('!makeflags') +source=(http://downloads.sourceforge.net/project/kmymoney2/KMyMoney-KDE4/$pkgver/$pkgname-$pkgver.tar.bz2 +qt4.8.patch::https://projects.kde.org/projects/extragear/office/kmymoney/repository/revisions/c736b6f08e77df72d58c5b836b7b04f6098737df/diff/libkdchart/src/KDChartBackgroundAttributes.cpp?format=diff) +sha256sums=('add8acba2f0d4c212ac1c7fbbdad2fd43a24caceed586b13d90dcd2a20a12b75' + '7612b490400dbd4f80ff27bd328f8603a22279c81bb3004e53f48545dbd359ae') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # Qt 4.8 fix - fixed upstream + patch -Np1 -i ../qt4.8.patch + + mkdir build + cd build + + cmake ../ \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_SKIP_RPATH=YES + make VERBOSE=1 +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}/build" + + make DESTDIR="${pkgdir}" install +} diff --git a/community-testing/kmymoney/kmymoney.changelog b/community-testing/kmymoney/kmymoney.changelog new file mode 100644 index 000000000..6943a0716 --- /dev/null +++ b/community-testing/kmymoney/kmymoney.changelog @@ -0,0 +1,29 @@ +2012-08-09 Eric Belanger <eric@archlinux.org> + * kmymoney 4.6.2-2 + * Rebuild against libofx 0.9.5 + +2011-02-19 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * kmymoney 4.5.3 + +2010-12-27 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * kmymoney 4.5.2 + +2010-10-20 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * kmymoney 4.5.1 + * Added aqbanking dependency + +2010-08-22 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * Update to major release 4.5 + * Package renamed to 'kmymoney' + +2010-05-20 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * Update to major release 1.0.5 + +2010-04-09 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * Update to major release 1.0.4 + +2010-04-09 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * FS#18974 broken OFX imported fixed in 1.0.3-2 + +2010-03-27 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * Update to major release 1.0.3 diff --git a/community-testing/kmymoney/kmymoney.install b/community-testing/kmymoney/kmymoney.install new file mode 100644 index 000000000..f7f5bd0bf --- /dev/null +++ b/community-testing/kmymoney/kmymoney.install @@ -0,0 +1,13 @@ +post_install() { + update-mime-database usr/share/mime &> /dev/null + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/community-testing/skrooge/PKGBUILD b/community-testing/skrooge/PKGBUILD new file mode 100644 index 000000000..6f324c2b3 --- /dev/null +++ b/community-testing/skrooge/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 74953 2012-08-10 05:05:01Z ebelanger $ +# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> +# Contributor: Ray Rashif <schiv@archlinux.org> +# Contributor: Andrea Scarpino <andrea@archlinux.org> +# Contributor: neuromante <lorenzo.nizzi.grifi@gmail.com> + +pkgname=skrooge +pkgver=1.3.0 +pkgrel=2 +pkgdesc="A personal finances manager for KDE" +arch=('i686' 'x86_64') +url="http://skrooge.org/" +license=('GPL') +depends=('kdebase-runtime' 'libofx' 'qca-ossl') +makedepends=('cmake' 'automoc4' 'docbook-xsl') +install=$pkgname.install +changelog=$pkgname.changelog +source=(http://skrooge.org/files/$pkgname-$pkgver.tar.bz2) +sha256sums=('7f8ec247084a005b743bb080ded5724f6c1ee3644c135e12002c80df93fddfe9') + +build() { + cd "${srcdir}/$pkgname-$pkgver" + + cmake . -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr + + make +} + +package() { + cd "${srcdir}/$pkgname-$pkgver" + + make DESTDIR="${pkgdir}" install +} diff --git a/community-testing/skrooge/skrooge.changelog b/community-testing/skrooge/skrooge.changelog new file mode 100644 index 000000000..ffc491ba5 --- /dev/null +++ b/community-testing/skrooge/skrooge.changelog @@ -0,0 +1,11 @@ +2012-08-09 Eric Belanger <eric@archlinux.org> + * skrooge 1.3.0-2 Rebuild against libofx 0.9.5 + +2012-05-05 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * skrooge 1.3.0-1 + +2012-02-24 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * skrooge 1.2.0-1 + +2011-11-27 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> + * skrooge 1.1.1-1 diff --git a/community-testing/skrooge/skrooge.install b/community-testing/skrooge/skrooge.install new file mode 100644 index 000000000..050474c59 --- /dev/null +++ b/community-testing/skrooge/skrooge.install @@ -0,0 +1,14 @@ +post_install() { + update-mime-database usr/share/mime &> /dev/null + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q + kbuildsycoca4 &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/community/aqbanking/PKGBUILD b/community/aqbanking/PKGBUILD index f05bd1f20..85a76a355 100644 --- a/community/aqbanking/PKGBUILD +++ b/community/aqbanking/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 61641 2012-01-05 10:54:39Z spupykin $ +# $Id: PKGBUILD 74854 2012-08-07 14:17:14Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: David Moore <davidm@sjsoft.com> pkgname=aqbanking -pkgver=5.0.21 -_dnrel=91 +pkgver=5.0.25 +_dnrel=95 pkgrel=1 pkgdesc="A library for online banking and financial applications" arch=(i686 x86_64 'mips64el') @@ -14,7 +14,7 @@ license=('GPL') depends=('gwenhywfar' 'ktoblzcheck' 'libofx') options=('!makeflags' '!libtool') source=("aqbanking-$pkgver.tar.gz::http://www2.aquamaniac.de/sites/download/download.php?package=03&release=${_dnrel}&file=01&dummy=aqbanking-$pkgver.tar.gz") -md5sums=('634dac2c82c583ed6643678bc214026e') +md5sums=('b238639962128ce25db81870f65173d9') build() { cd $srcdir/aqbanking-$pkgver diff --git a/community/bird/PKGBUILD b/community/bird/PKGBUILD index 8b715fd38..b4b69f596 100644 --- a/community/bird/PKGBUILD +++ b/community/bird/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 69079 2012-04-08 23:33:54Z seblu $ +# $Id: PKGBUILD 74872 2012-08-08 02:08:13Z seblu $ # Maintainer: Sébastien Luttringer <seblu@aur.archlinux.org> pkgbase=bird pkgname=('bird' 'bird6') -pkgver=1.3.7 -pkgrel=2 +pkgver=1.3.8 +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url='http://bird.network.cz/' license=('GPL2') @@ -14,8 +14,8 @@ source=("ftp://bird.network.cz/pub/bird/${pkgname}-${pkgver}.tar.gz" 'bird.conf' 'bird.service' 'bird6.service') -md5sums=('c400b008ef834d9e7288dcdbe41b7c15' - '1a4b98756d64f52333a83eff2e95d233' +md5sums=('965fee1be1d5cd45ceef3926e49c18ce' + '5e5346a057f187f56cce928b7e423636' '25241a4d7ef639506e0080431b2c1690' 'e82a0519dca0b289685fda44787f5911' 'c32e7f6cf1be6ed6f9aa98feea25176d') @@ -69,7 +69,6 @@ package_bird6 () { # iniscripts files install -D -m 755 "$srcdir/bird.rc" "$pkgdir/etc/rc.d/bird6" install -D -m 644 "$srcdir/bird.conf" "$pkgdir/etc/conf.d/bird6" - sed -i 's/bird/bird6/' "$pkgdir/etc/rc.d/bird6" # systemd config file install -D -m 644 "$srcdir/bird6.service" "$pkgdir/usr/lib/systemd/system/bird6.service" } diff --git a/community/bird/bird.rc b/community/bird/bird.rc index 95fe65217..a3aa5e4ad 100644 --- a/community/bird/bird.rc +++ b/community/bird/bird.rc @@ -4,31 +4,30 @@ . /etc/rc.d/functions . /etc/conf.d/${0##*/} -NAME=bird -DAEMON=/usr/sbin/bird +DAEMON=/usr/sbin/${0##*/} PID=$(pidof -o %PPID $DAEMON) case "$1" in - start) - stat_busy "Starting $NAME daemon" - [[ ! $PID ]] && $DAEMON $DAEMON_OPTS && add_daemon $NAME && stat_done && exit 0 - stat_fail - ;; + start) + stat_busy "Starting ${0##*/} daemon" + [[ ! $PID ]] && $DAEMON $DAEMON_OPTS && add_daemon ${0##*/} && stat_done && exit 0 + stat_fail + ;; stop) - stat_busy "Stopping $NAME daemon" - [[ $PID ]] && kill $PID &> /dev/null && rm_daemon $NAME && stat_done && exit 0 - stat_fail - ;; + stat_busy "Stopping ${0##*/} daemon" + [[ $PID ]] && kill $PID &> /dev/null && rm_daemon ${0##*/} && stat_done && exit 0 + stat_fail + ;; restart) - $0 stop - $0 start - exit 0 - ;; - *) - echo "usage: ${0##*/} {start|stop|restart}" >&2 - ;; + $0 stop + $0 start + exit 0 + ;; + *) + echo "usage: ${0##*/} {start|stop|restart}" >&2 + ;; esac exit 1 -# vim:set ts=2 sw=2 ft=sh noet: +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/cmus/PKGBUILD b/community/cmus/PKGBUILD index 513b73d62..970c7d3c5 100644 --- a/community/cmus/PKGBUILD +++ b/community/cmus/PKGBUILD @@ -1,22 +1,22 @@ -# $Id: PKGBUILD 71484 2012-05-27 10:23:34Z tomegun $ +# $Id: PKGBUILD 74995 2012-08-11 10:00:29Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> # Contributor: Aaron Griffin <aaron@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> pkgname=cmus pkgver=2.4.3 -pkgrel=2 +pkgrel=3 pkgdesc="A very feature-rich ncurses-based music player" arch=('i686' 'x86_64' 'mips64el') url="http://cmus.sourceforge.net/" license=('GPL') depends=('ncurses') -makedepends=('libao' 'libmpcdec' 'ffmpeg' 'flac' 'libmad' 'faad2' 'libmodplug' +makedepends=('libao' 'libmpcdec' 'ffmpeg-compat' 'flac' 'libmad' 'faad2' 'libmodplug' 'libvorbis' 'libpulse' 'wavpack' 'libmp4v2') optdepends=('alsa-lib: for ALSA output plugin support' 'libao: for AO output plugin support' 'libpulse: for PulseAudio output plugin support' - 'ffmpeg: for ffmpeg input plugin support' + 'ffmpeg-compat: for ffmpeg input plugin support' 'libmodplug: for modplug input plugin support' 'faad2: for input AAC plugin support' 'libmad: for mp3 input plugin support' diff --git a/community/datemath/PKGBUILD b/community/datemath/PKGBUILD index a36029d6d..b44c1be73 100644 --- a/community/datemath/PKGBUILD +++ b/community/datemath/PKGBUILD @@ -1,21 +1,24 @@ -# $Id: PKGBUILD 65110 2012-02-20 04:48:43Z spupykin $ +# $Id: PKGBUILD 74846 2012-08-07 05:46:50Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Todd Musall <tmusall@comcast.net> # Contributor: Todd Musall <tmusall@comcast.net> pkgname=datemath pkgver=2.0.10 -pkgrel=3 +pkgrel=4 pkgdesc="Command line date and time math utility." arch=('i686' 'x86_64' 'mips64el') url="http://www.unixwiz.net/tools/datemath.html" license=("GPL") depends=('glibc') -source=(http://www.unixwiz.net/tools/$pkgname.tar.gz) -md5sums=('2c369d70a43313b71dbe3c7cc50207de') +source=(http://www.unixwiz.net/tools/$pkgname.tar.gz + y2k.patch) +md5sums=('2c369d70a43313b71dbe3c7cc50207de' + '87758503414a967f06566b94523fc010') build() { cd $srcdir + patch -Np0 <$srcdir/y2k.patch make install -D -m755 $srcdir/datemath $pkgdir/usr/bin/datemath } diff --git a/community/datemath/y2k.patch b/community/datemath/y2k.patch new file mode 100644 index 000000000..4605ad505 --- /dev/null +++ b/community/datemath/y2k.patch @@ -0,0 +1,29 @@ +diff -Naur ../datemath/util.c ./util.c +--- ../datemath/util.c 2004-03-06 18:27:59.000000000 +0100 ++++ ./util.c 2012-08-01 09:37:30.767738221 +0200 +@@ -18,6 +18,7 @@ + #include "defs.h" + + int century19_year = 40; /* 0..39 = 2000 / 40..99 = 1999 */ ++static int century; /* may not be 1900... */ + + /* + * jultoyymm() +@@ -35,6 +36,8 @@ + + if (mdy[YY] < 1900) /* too early? */ + mdy[YY] = 1900; ++ ++ century = mdy[YY] / 100; + + mdy[YY] %= 100; /* strip off 19xx */ + +@@ -59,7 +62,7 @@ + mdy[YY] = yymm / 100; + mdy[DD] = eflag ? daysinmm(mdy[MM], mdy[YY]) : 1; + +- mdy[YY] += 1900; ++ mdy[YY] += century * 100; + + if (rv = rmdyjul(mdy, &jdate), rv < 0) + die("bad date conversion in yymmtojul-(%d)", rv); diff --git a/community/dee/PKGBUILD b/community/dee/PKGBUILD index 0db88a375..ce97ec327 100644 --- a/community/dee/PKGBUILD +++ b/community/dee/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 69804 2012-04-23 09:46:49Z ibiru $ +# $Id: PKGBUILD 75004 2012-08-11 13:46:07Z bgyorgy $ # Maintainer: Balló György <ballogyor+arch at gmail dot com> pkgname=dee -pkgver=1.0.10 +pkgver=1.0.12 pkgrel=1 pkgdesc="Library to provide objects allowing to create Model-View-Controller type programs across DBus" arch=('i686' 'x86_64' 'mips64el') @@ -12,7 +12,7 @@ depends=('glib2' 'icu') makedepends=('python2' 'gobject-introspection' 'vala') options=('!libtool') source=(http://launchpad.net/$pkgname/1.0/$pkgver/+download/$pkgname-$pkgver.tar.gz) -md5sums=('17b715147e1721ce9624557949408d15') +md5sums=('8c0bcdf1f96882d2b24d6f5243480fae') build() { cd "$srcdir/$pkgname-$pkgver" @@ -27,4 +27,8 @@ package() { cd "$srcdir/$pkgname-$pkgver" make DESTDIR="$pkgdir/" install + + # Install GI overrides for python 3 as well + install -dm755 "$pkgdir/usr/lib/python3.2/site-packages/gi/overrides" + ln -s ../../../../python2.7/site-packages/gi/overrides/Dee.py "$pkgdir/usr/lib/python3.2/site-packages/gi/overrides/Dee.py" } diff --git a/community/ecryptfs-utils/PKGBUILD b/community/ecryptfs-utils/PKGBUILD index ca3be0926..b242a1b3f 100644 --- a/community/ecryptfs-utils/PKGBUILD +++ b/community/ecryptfs-utils/PKGBUILD @@ -1,17 +1,18 @@ -# $Id: PKGBUILD 74760 2012-08-03 12:32:39Z tredaelli $ +# $Id: PKGBUILD 74862 2012-08-07 15:20:01Z tredaelli $ # Maintainer: Timothy Redaelli <timothy.redaelli@gmail.com> # Contributor: Richard Murri <admin@richardmurri.com> # Contributor: Michal Krenek <mikos@sg1.cz> pkgname=ecryptfs-utils pkgver=100 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64' 'mips64el') pkgdesc="Enterprise-class stacked cryptographic filesystem for Linux" url="https://launchpad.net/ecryptfs" license=('GPL') -makedepends=('swig' 'intltool' 'gettext') -depends=('keyutils' 'nss' 'python2') +makedepends=('swig' 'intltool' 'gettext' 'python2') +depends=('keyutils' 'nss' 'openssl') +optdepends=('python2: for python module') source=("http://launchpad.net/ecryptfs/trunk/${pkgver}/+download/${pkgname}_${pkgver}.orig.tar.gz") options=(!libtool) md5sums=('efaa5eabbd368268874536036397f73b') diff --git a/community/fish/PKGBUILD b/community/fish/PKGBUILD index 37d8fecc3..fd487c44f 100644 --- a/community/fish/PKGBUILD +++ b/community/fish/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 74604 2012-07-31 12:48:32Z bpiotrowski $ +# $Id: PKGBUILD 74993 2012-08-11 09:42:41Z bpiotrowski $ # Maintainer: Kaiting Chen <kaitocracy@gmail.com> # Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> # Contributor: Abhishek Dasgupta <abhidg@gmail.com> @@ -7,13 +7,13 @@ pkgname=fish pkgver=2.0b2 -pkgrel=1 +pkgrel=2 pkgdesc='Smart and user friendly shell intended mostly for interactive use' arch=('i686' 'x86_64' 'mips64el') url='http://ridiculousfish.com/shell/' license=('GPL2') -depends=('python') -makedepends=('doxygen') +depends=('python2') +makedepends=('doxygen' 'python') install=fish.install source=($pkgname-$pkgver.tar.gz::http://ridiculousfish.com/shell/files/fishfish.tar.gz) md5sums=('ebe5fe17f6925b9142aadc8ebae5fba1') @@ -22,7 +22,7 @@ build() { cd "$srcdir"/fishfish autoconf ./configure --prefix=/usr \ - --sysconfdir=/etc \ + --sysconfdir=/etc \ --without-xsel make } @@ -33,4 +33,7 @@ package() { # compress man pages find "$pkgdir"/usr/share/fish/man/ -type f | xargs gzip -9 + + # use python2 + find "$pkgdir"/usr/share/fish/tools/ -type f -exec sed -e "1s|python|python2|" -i {} \; } diff --git a/community/flashrom/PKGBUILD b/community/flashrom/PKGBUILD index 9f9423a28..4e7399c63 100644 --- a/community/flashrom/PKGBUILD +++ b/community/flashrom/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 68472 2012-03-25 09:15:40Z giovanni $ +# $Id: PKGBUILD 74911 2012-08-09 12:06:08Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Cilyan Olowen <gaknar@gmail.com> # Contributor: fill <mailbox@fillo.ru> # Contributor: Anton Shestakov <engored*ya.ru> pkgname=flashrom -pkgver=0.9.5.2 +pkgver=0.9.6.1 pkgrel=1 pkgdesc="Utility for reading, writing, erasing and verifying flash ROM chips" url="http://www.flashrom.org/" @@ -14,7 +14,7 @@ license=('GPL') depends=('libftdi' 'pciutils') [ "$CARCH" != "mips64el" ] && optdepends=('dmidecode: for SMBIOS/DMI table decoder support') source=("http://download.flashrom.org/releases/${pkgname}-${pkgver}.tar.bz2") -md5sums=('280f8b1d3ef0533d6ec913b0da857477') +md5sums=('407e836c0a2b17ec76583cb6809f65e5') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/freerdp/PKGBUILD b/community/freerdp/PKGBUILD index e08282d2e..74636c729 100644 --- a/community/freerdp/PKGBUILD +++ b/community/freerdp/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 74601 2012-07-31 12:43:27Z spupykin $ +# $Id: PKGBUILD 74850 2012-08-07 11:38:18Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Stijn Segers <francesco dot borromini at gmail dot com> pkgname=freerdp pkgver=1.0.1 -pkgrel=7 +pkgrel=8 pkgdesc="Free RDP client" arch=('i686' 'x86_64' 'mips64el') url="http://freerdp.sourceforge.net" @@ -15,11 +15,14 @@ makedepends=('krb5' 'cmake' 'damageproto' 'xmlto' 'docbook-xsl') conflicts=('freerdp-git') changelog=${pkgname}.changelog options=('!libtool') -source=(https://github.com/downloads/FreeRDP/FreeRDP/FreeRDP-$pkgver.tar.gz) -md5sums=('c843185e0ff22ce8409954651718f338') +source=(https://github.com/downloads/FreeRDP/FreeRDP/FreeRDP-$pkgver.tar.gz + https://github.com/FreeRDP/FreeRDP/commit/c10866db66c0d462ea7c2c38bb01740bcfb4fcb4.patch) +md5sums=('c843185e0ff22ce8409954651718f338' + '194fd599d0f706ecce772d5187e08385') build() { cd `find ${srcdir}/ -type d -name freerdp-\*` + patch -Np1 <$srcdir/c10866db66c0d462ea7c2c38bb01740bcfb4fcb4.patch cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_LIBDIR=lib \ diff --git a/community/gambas3/PKGBUILD b/community/gambas3/PKGBUILD index ed3e9a710..ae0f2ec84 100644 --- a/community/gambas3/PKGBUILD +++ b/community/gambas3/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 74616 2012-07-31 19:56:01Z ebelanger $ +# $Id: PKGBUILD 74975 2012-08-10 23:14:23Z lcarlier $ # Maintainer: Laurent Carlier <lordheavym@gmail.com> # Contributor : sebikul <sebikul@gmail.com> @@ -15,7 +15,7 @@ pkgname=('gambas3-runtime' 'gambas3-devel' 'gambas3-ide' 'gambas3-script' 'gamba 'gambas3-gb-signal' 'gambas3-gb-v4l' 'gambas3-gb-vb' 'gambas3-gb-xml' 'gambas3-gb-xml-html' 'gambas3-gb-xml-rpc' 'gambas3-gb-xml-xslt' 'gambas3-gb-web') pkgver=3.2.1 -pkgrel=3 +pkgrel=4 pkgdesc="A free development environment based on a Basic interpreter." arch=('i686' 'x86_64' 'mips64el') url="http://gambas.sourceforge.net/" @@ -48,6 +48,7 @@ package_gambas3-runtime() { pkgdesc="Runtime environment" conflicts=('gambas3-gb-gui') replaces=('gambas3-gb-gui') + provides=("gambas3-gb-gui=${pkgver}") install=gambas3-runtime.install cd ${srcdir}/${pkgbase}-${pkgver}/main/gbc diff --git a/community/gwenhywfar/PKGBUILD b/community/gwenhywfar/PKGBUILD index 86bc51c37..24b5f89d8 100644 --- a/community/gwenhywfar/PKGBUILD +++ b/community/gwenhywfar/PKGBUILD @@ -1,9 +1,10 @@ -# $Id: PKGBUILD 61643 2012-01-05 10:55:35Z spupykin $ +# $Id: PKGBUILD 74856 2012-08-07 14:18:41Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: William Rea <sillywilly@gmail.com> pkgname=gwenhywfar -pkgver=4.3.1 +pkgver=4.3.3 +_dnrel=67 pkgrel=1 pkgdesc="OS abstraction functions for various projects" arch=(i686 x86_64 'mips64el') @@ -13,8 +14,8 @@ license=("LGPL") depends=('openssl' 'gnutls' 'libgcrypt') makedepends=('gtk2' 'qt') optdepends=('gtk2' 'qt') -source=("gwenhywfar-$pkgver.tar.gz::http://www2.aquamaniac.de/sites/download/download.php?package=01&release=65&file=01&dummy=gwenhywfar-$pkgver.tar.gz") -md5sums=('63370a89befee90436720458d0c81cc5') +source=("gwenhywfar-$pkgver.tar.gz::http://www2.aquamaniac.de/sites/download/download.php?package=01&release=${_dnrel}&file=01&dummy=gwenhywfar-$pkgver.tar.gz") +md5sums=('c5b9d52a25960f84f9264a5a5dd484d1') build() { pacman -Q gwenhywfar && return 1 diff --git a/community/homebank/PKGBUILD b/community/homebank/PKGBUILD index a0db4e39d..bff719418 100644 --- a/community/homebank/PKGBUILD +++ b/community/homebank/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 67546 2012-03-13 11:59:17Z giovanni $ +# $Id: PKGBUILD 75013 2012-08-11 18:51:43Z ebelanger $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: William Rea <sillywilly@gmail.com> pkgname=homebank pkgver=4.4 -pkgrel=2 +pkgrel=3 pkgdesc="Free, easy, personal accounting for everyone" arch=('i686' 'x86_64' 'mips64el') url="http://homebank.free.fr/" @@ -16,14 +16,14 @@ source=(http://homebank.free.fr/public/$pkgname-$pkgver.tar.gz) sha256sums=('13b89373575e3ac229d2683aa7296778ad7cdae1a7a019c9124a1d5b23dce7d2') build() { - cd ${srcdir}/$pkgname-$pkgver + cd "${srcdir}/$pkgname-$pkgver" ./configure --prefix=/usr make } package() { - cd ${srcdir}/$pkgname-$pkgver + cd "${srcdir}/$pkgname-$pkgver" - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install } diff --git a/community/kicad/PKGBUILD b/community/kicad/PKGBUILD new file mode 100644 index 000000000..686583d0e --- /dev/null +++ b/community/kicad/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 74934 2012-08-10 01:31:30Z kkeen $ +# Maintainer: Kyle Keen <keenerd@gmail.com> +# Contributor: Marq Schneider <queueRAM@gmail.com> + +pkgname=kicad +pkgver=20120119 +_pkgver=${pkgver:0:4}-${pkgver:4:2}-${pkgver:6:2} +_pkgbzr=3256 +pkgrel=1 +pkgdesc="Electronic schematic and printed circuit board (PCB) design tools" +arch=('i686' 'x86_64') +url="http://iut-tice.ujf-grenoble.fr/kicad/" +license=('GPL') +depends=('mesa' 'wxgtk') +makedepends=('boost' 'cmake' 'zlib') +optdepends=('kicad-doc-bzr: for documentation' + 'kicad-library-bzr: for footprints') +install=kicad.install +source=(http://iut-tice.ujf-grenoble.fr/cao/${pkgname}_sources-$_pkgver-BZR$_pkgbzr-stable.zip + kicad-boost-polygon-declare-gtlsort-earlier.patch) +md5sums=('d65574c42efd72638aed80adef367c3b' + 'a2c39704238946e74a5ed0c38326345f') + +build() { + cd "$srcdir/KiCad_sources" + + patch -p0 < "$srcdir/kicad-boost-polygon-declare-gtlsort-earlier.patch" + + # build and install kicad + mkdir -p build/Release + cd build/Release + cmake ../.. -DKICAD_STABLE_VERSION=ON \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd "$srcdir/KiCad_sources/build/Release" + + make DESTDIR="$pkgdir" install + + # copy updated linux icons + #cp -r -n "$srcdir/$pkgname-icons/resources/linux/mime/icons" "$pkgdir/usr/share/" +} diff --git a/community/kicad/kicad-boost-polygon-declare-gtlsort-earlier.patch b/community/kicad/kicad-boost-polygon-declare-gtlsort-earlier.patch new file mode 100644 index 000000000..b0c992297 --- /dev/null +++ b/community/kicad/kicad-boost-polygon-declare-gtlsort-earlier.patch @@ -0,0 +1,11 @@ +--- include/boost/polygon/polygon.hpp.orig 2012-04-09 13:07:03.293907598 -0500 ++++ include/boost/polygon/polygon.hpp 2012-04-09 13:07:43.759923812 -0500 +@@ -24,6 +24,8 @@ + #include "transform.hpp"
+ #include "detail/transform_detail.hpp"
+
++#include "detail/polygon_sort_adaptor.hpp"
++
+ //interval
+ #include "interval_data.hpp"
+ #include "interval_traits.hpp"
diff --git a/community/kicad/kicad.install b/community/kicad/kicad.install new file mode 100644 index 000000000..7c21ff4c7 --- /dev/null +++ b/community/kicad/kicad.install @@ -0,0 +1,15 @@ +pkgname=kicad + +post_install() { + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-mime-database usr/share/mime > /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/community/kmymoney/PKGBUILD b/community/kmymoney/PKGBUILD index 2f87d406a..89c642d36 100644 --- a/community/kmymoney/PKGBUILD +++ b/community/kmymoney/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 64897 2012-02-18 19:53:56Z lcarlier $ +# $Id: PKGBUILD 75014 2012-08-11 18:51:50Z ebelanger $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Maintainer: Laurent Carlier <lordheavym@gmail.com> # Contributor: Vamp898 <vamp898@web.de> @@ -8,7 +8,7 @@ pkgname=kmymoney pkgver=4.6.2 -pkgrel=1 +pkgrel=2 pkgdesc="Personal finance manager for KDE which operates similarly to MS-Money or Quicken" arch=('i686' 'x86_64' 'mips64el') url="http://kmymoney2.sourceforge.net/" @@ -25,7 +25,7 @@ sha256sums=('add8acba2f0d4c212ac1c7fbbdad2fd43a24caceed586b13d90dcd2a20a12b75' '7612b490400dbd4f80ff27bd328f8603a22279c81bb3004e53f48545dbd359ae') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" # Qt 4.8 fix - fixed upstream patch -Np1 -i ../qt4.8.patch @@ -35,12 +35,12 @@ build() { cmake ../ \ -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=RELEASE + -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_SKIP_RPATH=YES make VERBOSE=1 } package() { - cd ${srcdir}/${pkgname}-${pkgver}/build + cd "${srcdir}/${pkgname}-${pkgver}/build" - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install } diff --git a/community/kmymoney/kmymoney.changelog b/community/kmymoney/kmymoney.changelog index bd8d49e3c..6943a0716 100644 --- a/community/kmymoney/kmymoney.changelog +++ b/community/kmymoney/kmymoney.changelog @@ -1,3 +1,7 @@ +2012-08-09 Eric Belanger <eric@archlinux.org> + * kmymoney 4.6.2-2 + * Rebuild against libofx 0.9.5 + 2011-02-19 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> * kmymoney 4.5.3 diff --git a/community/kmymoney/kmymoney.install b/community/kmymoney/kmymoney.install index 7c8a8bd2b..f7f5bd0bf 100644 --- a/community/kmymoney/kmymoney.install +++ b/community/kmymoney/kmymoney.install @@ -1,5 +1,7 @@ post_install() { update-mime-database usr/share/mime &> /dev/null + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q } post_upgrade() { diff --git a/community/ktoblzcheck/PKGBUILD b/community/ktoblzcheck/PKGBUILD index 9d8adc1f7..50c3257d1 100644 --- a/community/ktoblzcheck/PKGBUILD +++ b/community/ktoblzcheck/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 61645 2012-01-05 10:56:22Z spupykin $ +# $Id: PKGBUILD 74858 2012-08-07 14:19:39Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Philipp Sandhaus <philipp.sandhaus@gmx.de> pkgname=ktoblzcheck -pkgver=1.37 +pkgver=1.39 pkgrel=1 pkgdesc="A library to check account numbers and bank codes of German banks" arch=(i686 x86_64 'mips64el') @@ -14,7 +14,7 @@ depends=('gcc-libs' 'python') optdepends=('perl') source=(http://downloads.sourceforge.net/sourceforge/ktoblzcheck/ktoblzcheck-$pkgver.tar.gz ktoblzcheck-python3.patch) -md5sums=('93b540b5478bfb1b078613cbf1cc2446' +md5sums=('ef5efd6e2c31aaf6405060ec477c200c' 'a81a697bb3aaeffb7fac0ad7d9166e3f') build() { diff --git a/community/libcec/PKGBUILD b/community/libcec/PKGBUILD index 7ad92a44d..8440defc4 100644 --- a/community/libcec/PKGBUILD +++ b/community/libcec/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 74756 2012-08-03 11:00:41Z idevolder $ +# $Id: PKGBUILD 74867 2012-08-07 16:06:46Z idevolder $ # Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com> # Contributor: Philippe Cherel <philippe.cherel@mayenne.org> pkgname=libcec -pkgver=1.8.0 +pkgver=1.8.1 pkgrel=1 pkgdesc="Pulse-Eight's libcec for the Pulse-Eight USB-CEC adapter" arch=('i686' 'x86_64') @@ -11,8 +11,8 @@ url="https://github.com/Pulse-Eight/libcec" license=('GPL') depends=('udev' 'lockdev') source=("$pkgname-$pkgver.tar.gz::https://github.com/Pulse-Eight/libcec/tarball/$pkgname-$pkgver") -_srcfolder=Pulse-Eight-libcec-b0a5e4f -sha256sums=('3725d19cabec4bbd4142fd735bda43d33aad2a4a62b20ef337f395b549e7adec') +_srcfolder=Pulse-Eight-libcec-34a9cec +sha256sums=('97cda7935404360b56e3c0698deabcc97548bc357a4e4fecbe89de3db12ca0bc') options=(!libtool) build() { diff --git a/community/libmediainfo/PKGBUILD b/community/libmediainfo/PKGBUILD index 9ca9ece7a..8af8184b3 100644 --- a/community/libmediainfo/PKGBUILD +++ b/community/libmediainfo/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 71582 2012-05-30 09:15:22Z spupykin $ +# $Id: PKGBUILD 74895 2012-08-09 08:03:13Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: hydro <hydro@freenet.de> pkgname=libmediainfo -pkgver=0.7.58 +pkgver=0.7.59 pkgrel=1 pkgdesc="shared library for mediainfo" arch=('i686' 'x86_64' 'mips64el') @@ -14,7 +14,7 @@ makedepends=('libtool' 'automake' 'autoconf') options=(!libtool) source=(http://downloads.sourceforge.net/mediainfo/${pkgname}_${pkgver}.tar.bz2 libmediainfo-0.7.50-libmms.patch) -md5sums=('a87a32f243052fb1eca3918c519f64b6' +md5sums=('d3f74fd28810e5f1eb6b9d2b893b8a5c' '2f4b21cc250f663d52b497dedb963e3b') build() { diff --git a/community/libzen/PKGBUILD b/community/libzen/PKGBUILD index 338660765..322ca3466 100644 --- a/community/libzen/PKGBUILD +++ b/community/libzen/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 69420 2012-04-16 09:40:09Z spupykin $ +# $Id: PKGBUILD 74891 2012-08-09 07:50:09Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: hydro <hydro@freenet.de> pkgname=libzen -pkgver=0.4.26 +pkgver=0.4.28 pkgrel=1 pkgdesc="shared library for libmediainfo and mediainfo" arch=('i686' 'x86_64' 'mips64el') @@ -13,7 +13,7 @@ depends=('gcc-libs') makedepends=('libtool' 'automake' 'autoconf') options=('!libtool') source=(http://downloads.sourceforge.net/zenlib/${pkgname}_${pkgver}.tar.bz2) -md5sums=('6509bd3787509f4e62e48a99884db636') +md5sums=('f09e519b71e61a7226ffefe55d00eadf') build() { cd $srcdir/ZenLib/Project/GNU/Library diff --git a/community/linux-tools/usbipd.conf b/community/linux-tools/usbipd.conf new file mode 100644 index 000000000..5990b857a --- /dev/null +++ b/community/linux-tools/usbipd.conf @@ -0,0 +1,3 @@ +# vim:set ts=2 sw=2 ft=sh noet: + +DAEMON_OPTS='' diff --git a/community/linux-tools/usbipd.rc b/community/linux-tools/usbipd.rc new file mode 100644 index 000000000..15a1bcf00 --- /dev/null +++ b/community/linux-tools/usbipd.rc @@ -0,0 +1,34 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/${0##*/} + +DAEMON=/usr/sbin/usbipd +PID=$(pidof -o %PPID $DAEMON) +DAEMON_OPTS="--daemon $DAEMON_OPTS" + +case "$1" in + start) + stat_busy "Starting ${0##*/} daemon" + [[ ! $PID ]] && $DAEMON $DAEMON_OPTS && add_daemon ${0##*/} && stat_done && exit 0 + stat_fail + ;; + stop) + stat_busy "Stopping ${0##*/} daemon" + [[ $PID ]] && kill $PID &> /dev/null && rm_daemon ${0##*/} && stat_done && exit 0 + stat_fail + ;; + restart) + $0 stop + $0 start + exit 0 + ;; + *) + echo "usage: ${0##*/} {start|stop|restart}" >&2 + ;; +esac + +exit 1 + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/linux-tools/usbipd.service b/community/linux-tools/usbipd.service new file mode 100644 index 000000000..ac2f5f7c1 --- /dev/null +++ b/community/linux-tools/usbipd.service @@ -0,0 +1,8 @@ +[Unit] +Description=USB/IP server + +[Service] +ExecStart=/usr/sbin/usbipd + +[Install] +WantedBy=multi-user.target diff --git a/community/mariadb/PKGBUILD b/community/mariadb/PKGBUILD index c464a1a9b..5016dbbd4 100644 --- a/community/mariadb/PKGBUILD +++ b/community/mariadb/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 74694 2012-08-02 08:13:12Z bpiotrowski $ +# $Id: PKGBUILD 74962 2012-08-10 10:08:18Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> pkgbase=mariadb pkgname=('libmariadbclient' 'mariadb-clients' 'mariadb') pkgver=5.5.25 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64') license=('GPL') url="http://mariadb.org/" @@ -136,3 +136,5 @@ package_mariadb() { install -dm700 "${pkgdir}"/var/lib/mysql } + +# vim:set ts=2 sw=2 et: diff --git a/community/mariadb/mariadb.install b/community/mariadb/mariadb.install index 9a4479215..c9cc75b47 100644 --- a/community/mariadb/mariadb.install +++ b/community/mariadb/mariadb.install @@ -1,7 +1,7 @@ post_install(){ groupadd -g 89 mysql &>/dev/null useradd -u 89 -g mysql -d /var/lib/mysql -s /bin/false mysql &>/dev/null - usr/bin/mysql_install_db --user=mysql --basedir=/usr + /usr/bin/mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql chown -R mysql:mysql var/lib/mysql &>/dev/null } @@ -14,6 +14,13 @@ post_upgrade(){ echo " >> Major version update. Consider restart the service, and then running mysql_upgrade after it." echo " >> " fi + + if [ "$(vercmp $2 5.5.25-4)" -lt 0 ] && [ -d /data ]; then + for x in /data/*; do + cp -r $x /var/lib/mysql/ + done + rm -rf /data + fi } post_remove(){ @@ -24,3 +31,5 @@ post_remove(){ groupdel mysql fi } + +# vim:set ts=2 sw=2 et: diff --git a/community/mathomatic/PKGBUILD b/community/mathomatic/PKGBUILD index 8b5017bc1..8e222bc18 100755 --- a/community/mathomatic/PKGBUILD +++ b/community/mathomatic/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 74240 2012-07-23 05:41:33Z ttopper $ +# $Id: PKGBUILD 74885 2012-08-08 16:34:04Z ttopper $ # Contributor: G_Syme <demichan(at)mail(dot)upb(dot)de> # Contributor: Stefan Husmann <stefan-husmann@t-online.de> # Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de> pkgname=mathomatic -pkgver=16.0.1 +pkgver=16.0.2 pkgrel=1 pkgdesc="General purpose Computer Algebra System written in C" arch=('i686' 'x86_64' 'mips64el') @@ -17,7 +17,7 @@ optdepends=('python2: for running /usr/share/doc/mathomatic/factorial/factorial' 'm4: for complex operations using the matho script' 'gnuplot: for plotting') source=(http://mathomatic.org/$pkgname-$pkgver.tar.bz2) -md5sums=('550c4c27da68db1d3d62ed2888828548') +md5sums=('17d4034b9f4af59d55095d47e9096c7b') build() { cd "$srcdir"/$pkgname-$pkgver diff --git a/community/mediainfo-gui/PKGBUILD b/community/mediainfo-gui/PKGBUILD index 6de7bfed5..5dc918421 100644 --- a/community/mediainfo-gui/PKGBUILD +++ b/community/mediainfo-gui/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 71586 2012-05-30 09:16:55Z spupykin $ +# $Id: PKGBUILD 74899 2012-08-09 08:05:03Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: hydro <hydro@freenet.de> pkgname=mediainfo-gui -pkgver=0.7.58 +pkgver=0.7.59 pkgrel=1 pkgdesc="GUI for mediainfo" arch=('i686' 'x86_64' 'mips64el') @@ -13,7 +13,7 @@ depends=('libmediainfo' 'wxgtk') makedepends=('libtool' 'automake' 'autoconf') install=mediainfo-gui.install source=(http://downloads.sourceforge.net/mediainfo/mediainfo_${pkgver}.tar.bz2) -md5sums=('e0b0decf4a036fad431aa5149cc71d59') +md5sums=('485b160334254d9574ed0f7bb29ef35f') build() { cd $srcdir/MediaInfo/Project/GNU/GUI diff --git a/community/mediainfo/PKGBUILD b/community/mediainfo/PKGBUILD index d879d30e9..f118ba0ac 100644 --- a/community/mediainfo/PKGBUILD +++ b/community/mediainfo/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 71584 2012-05-30 09:16:14Z spupykin $ +# $Id: PKGBUILD 74897 2012-08-09 08:04:05Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: hydro <hydro@freenet.de> pkgname=mediainfo -pkgver=0.7.58 +pkgver=0.7.59 pkgrel=1 pkgdesc="supplies technical and tag information about a video or audio file" arch=('i686' 'x86_64' 'mips64el') @@ -12,7 +12,7 @@ license=('GPL') depends=('libmediainfo') makedepends=('libtool' 'automake' 'autoconf') source=(http://downloads.sourceforge.net/mediainfo/${pkgname}_${pkgver}.tar.bz2) -md5sums=('e0b0decf4a036fad431aa5149cc71d59') +md5sums=('485b160334254d9574ed0f7bb29ef35f') build() { cd $srcdir/MediaInfo/Project/GNU/CLI diff --git a/community/nginx/PKGBUILD b/community/nginx/PKGBUILD index cb6cd70b2..02752388f 100644 --- a/community/nginx/PKGBUILD +++ b/community/nginx/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 74696 2012-08-02 08:23:51Z bpiotrowski $ +# $Id: PKGBUILD 74874 2012-08-08 06:49: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> @@ -7,8 +7,8 @@ _cfgdir=/etc/nginx _tmpdir=/var/lib/nginx pkgname=nginx -pkgver=1.2.2 -pkgrel=3 +pkgver=1.2.3 +pkgrel=1 pkgdesc="lightweight HTTP server and IMAP/POP3 proxy server" arch=('i686' 'x86_64' 'mips64el') depends=('pcre' 'zlib' 'openssl') @@ -31,7 +31,7 @@ source=(http://nginx.org/download/nginx-$pkgver.tar.gz rc.d service nginx.logrotate) -md5sums=('53105bbe3ac9319db54d9eb46119695b' +md5sums=('0a986e60826d9e3b453dbefc36bf8f6c' 'f62c7c9b5a53471d4666a4c49ad363fb' '62d494d23aef31d0b867161f9fffa6eb' 'b38744739022876554a0444d92e6603b') diff --git a/community/parole/PKGBUILD b/community/parole/PKGBUILD index 8370127ab..87028fd84 100644 --- a/community/parole/PKGBUILD +++ b/community/parole/PKGBUILD @@ -1,23 +1,23 @@ -# $Id: PKGBUILD 70116 2012-04-30 04:19:56Z foutrelis $ +# $Id: PKGBUILD 74960 2012-08-10 09:27:53Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: TDY <tdy@gmx.com> pkgname=parole -pkgver=0.2.0.6 -pkgrel=2 +pkgver=0.3.0 +pkgrel=1 pkgdesc="A modern media player based on the GStreamer framework" arch=('i686' 'x86_64' 'mips64el') url="http://goodies.xfce.org/projects/applications/parole/" license=('GPL') depends=('gstreamer0.10-base>=0.10.11' 'hicolor-icon-theme' 'libnotify>=0.4.1' - 'libxfcegui4>=4.6.0' 'taglib>=1.4' 'desktop-file-utils') + 'libxfce4ui>=4.7.0' 'taglib>=1.4' 'desktop-file-utils') makedepends=('pkgconfig>=0.9.0' 'xfce4-dev-tools') optdepends=('xulrunner>=1.9.1: browser plugin') conflicts=('parole-media-player-git') options=('!libtool') install=parole.install -source=(http://archive.xfce.org/src/apps/$pkgname/${pkgver%.*.*}/$pkgname-$pkgver.tar.bz2) -md5sums=('5d7e5ab7535bdf89508a8d7e551f9187') +source=(http://archive.xfce.org/src/apps/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2) +md5sums=('869b1c1f3a02d46ab17755d043b3e719') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/php-memcached/PKGBUILD b/community/php-memcached/PKGBUILD index 40254db01..ce31eff7f 100644 --- a/community/php-memcached/PKGBUILD +++ b/community/php-memcached/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 73393 2012-07-07 05:47:10Z foutrelis $ +# $Id: PKGBUILD 74848 2012-08-07 11:05:47Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> pkgname=php-memcached -pkgver=2.0.1 -pkgrel=5 +pkgver=2.1.0 +pkgrel=1 pkgdesc="PHP extension for interfacing with memcached via libmemcached library" arch=('i686' 'x86_64' 'mips64el') url="http://pecl.php.net/package/memcached" @@ -11,7 +11,7 @@ license=('PHP') depends=('php' 'libmemcached') backup=('etc/php/conf.d/memcached.ini') source=(http://pecl.php.net/get/memcached-$pkgver.tgz) -sha256sums=('250779594e846b7b31390c384697eb24a5096123b0d3e2f4a1a0b79d14fb1bff') +sha256sums=('bc4940015be74f47908d410d7b55e10a3d5bf65674036d944c73558227fcc4af') build() { cd "$srcdir/memcached-$pkgver" diff --git a/community/pianobar/PKGBUILD b/community/pianobar/PKGBUILD index a8b929543..685342446 100644 --- a/community/pianobar/PKGBUILD +++ b/community/pianobar/PKGBUILD @@ -1,18 +1,18 @@ -# $Id: PKGBUILD 72823 2012-06-22 22:35:27Z dwallace $ +# $Id: PKGBUILD 75011 2012-08-11 17:31:57Z dwallace $ # Maintainer: Daniel Wallace < danielwallace at gtmanfred dot com> # Contributor: Mitch Bigelow <ipha00@gmail.com> # Contributor: Patrick Palka <patrick@parcs.ath.cx> pkgname=pianobar -pkgver=2012.05.06 -pkgrel=3 +pkgver=2012.06.24 +pkgrel=1 pkgdesc="console-based frontend for Pandora" url="http://6xq.net/0017" arch=('i686' 'x86_64' 'mips64el') license=('MIT') depends=('libao' 'faad2' 'libmad' 'gnutls' 'json-c' 'libgcrypt') -source=(http://6xq.net/media/00/16/pianobar-$pkgver.tar.bz2) -sha256sums=('b143882ca50303d560f49567d1a508ca4b48208db4eb8aa67f369fcaae708d7a') +source=(http://6xq.net/projects/pianobar/$pkgname-$pkgver.tar.bz2) +sha256sums=('a80307dcfc8786c28d6025f54820664eca0cf26f888bd608c95d486762f908aa') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/pigeonhole/PKGBUILD b/community/pigeonhole/PKGBUILD index d92edb97a..5bce3fd1e 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.1.8 +_dcpkgver=2.1.9 # Make sure to bump pkgrel if changing this. pkgname=pigeonhole pkgver=0.3.1 -pkgrel=2 +pkgrel=3 pkgdesc="Fully rewritten Sieve implementation for Dovecot v2.1" arch=('i686' 'x86_64' 'mips64el') url="http://pigeonhole.dovecot.org/" diff --git a/community/python2-basemap/PKGBUILD b/community/python2-basemap/PKGBUILD index 0e9da0395..8e65c2f86 100644 --- a/community/python2-basemap/PKGBUILD +++ b/community/python2-basemap/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 73031 2012-06-28 18:07:29Z stephane $ +# $Id: PKGBUILD 74860 2012-08-07 15:09:34Z stephane $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> # Contributor: Julien Morin <jmorin@cp.dias.ie> pkgname=python2-basemap -pkgver=1.0.4 +pkgver=1.0.5 pkgrel=1 pkgdesc="Toolkit for plotting data on map projections" arch=('i686' 'x86_64' 'mips64el') @@ -12,7 +12,7 @@ license=('custom') depends=('python2-matplotlib' 'geos' 'shapelib' 'python2-numpy' 'python2-httplib2') optdepends=('python-imaging: Python Imaging Library is only needed for bluemarble and warpimage methods.') source=("http://downloads.sourceforge.net/project/matplotlib/matplotlib-toolkits/basemap-${pkgver}/basemap-${pkgver}.tar.gz") -sha1sums=('b6d312129d2ae7fb612490516cf87daaf18cb033') +sha1sums=('14b6f5f645febbc73b23e8aea8fdb9e4b4b9adb4') build() { cd "${srcdir}/basemap-${pkgver}" diff --git a/community/qtcreator/PKGBUILD b/community/qtcreator/PKGBUILD index 3bbf863e4..ebbbb7e76 100644 --- a/community/qtcreator/PKGBUILD +++ b/community/qtcreator/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 74355 2012-07-25 15:34:15Z svenstaro $ +# $Id: PKGBUILD 74977 2012-08-10 23:21:48Z svenstaro $ # Maintainer: Imanol Celaya <ornitorrincos@archlinux-es.org> # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Lukas Jirkovsky <l.jirkovsky@gmail.com> @@ -7,15 +7,15 @@ # Contributor: delor <bartekpiech gmail com> pkgname="qtcreator" -pkgver=2.5.1 -_pkgver=2.5.1 +pkgver=2.5.2 +_pkgver=2.5.2 pkgrel=1 pkgdesc='Lightweight, cross-platform integrated development environment' arch=('i686' 'x86_64' 'mips64el') url='http://qt.nokia.com/products/developer-tools' license=('LGPL') -depends=('qt>=4.8.0') -makedepends=('qt-private-headers>=4.8.0' 'git') +depends=('qt') +makedepends=('qt-private-headers' 'git') options=('docs') optdepends=('qt-doc: for the integrated Qt documentation' 'gdb: for the debugger' @@ -27,12 +27,16 @@ optdepends=('qt-doc: for the integrated Qt documentation' 'valgrind: for analyze support') install=qtcreator.install source=("http://get.qt.nokia.com/qtcreator/qt-creator-${_pkgver}-src.tar.gz" - 'qtcreator.desktop') -md5sums=('321e6ee4640cee8177cbb302fde2ce84' - 'f1f4680b9838ff0b8f4cf11eb850d662') - + 'qtcreator.desktop' + 'fix-glsl-shit.patch') +md5sums=('4a9c09cdf4609753283c31451c84ceb8' + 'f1f4680b9838ff0b8f4cf11eb850d662' + '7453f6aabe2d61754490a874a26c087b') + build() { cd ${srcdir} + + patch -Np1 -d $srcdir/qt-creator-$_pkgver-src < $srcdir/fix-glsl-shit.patch [[ -d build ]] && rm -r build mkdir build && cd build diff --git a/community/qtcreator/fix-glsl-shit.patch b/community/qtcreator/fix-glsl-shit.patch new file mode 100644 index 000000000..4b5e504e1 --- /dev/null +++ b/community/qtcreator/fix-glsl-shit.patch @@ -0,0 +1,2376 @@ +From e91045469d59c35607faa344bcfba2b2c566da51 Mon Sep 17 00:00:00 2001 +From: Christian Kamm <christian.d.kamm@nokia.com> +Date: Mon, 6 Aug 2012 11:29:55 +0200 +Subject: [PATCH] GLSL: Fix recovery token order to avoid infinite loop. + +The case 'a = b ? ;' recovered with T_NUMBER, T_COMMA, T_NUMBER, ... + +Task-number: QTCREATORBUG-7517 +Change-Id: I3546266b21d11ce08e4af1331be94a78d3b24c19 +Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com> +--- + src/libs/glsl/glsl.g | 4 +- + src/libs/glsl/glslparser.cpp | 638 +++++++++++++++++++++--------------------- + src/libs/glsl/glslparser.h | 2 +- + 3 files changed, 322 insertions(+), 322 deletions(-) + +diff --git a/src/libs/glsl/glsl.g b/src/libs/glsl/glsl.g +index 67f564c..3c6ae7c 100644 +--- a/src/libs/glsl/glsl.g ++++ b/src/libs/glsl/glsl.g +@@ -456,7 +456,7 @@ private: + #include <iostream> + #include <cstdio> + #include <cassert> +-#include <QtCore/QDebug> ++#include <QDebug> + + using namespace GLSL; + +@@ -591,7 +591,7 @@ AST *Parser::parse(int startToken) + + static int tks[] = { + T_RIGHT_BRACE, T_RIGHT_PAREN, T_RIGHT_BRACKET, +- T_SEMICOLON, T_COMMA, T_COLON, ++ T_SEMICOLON, T_COLON, T_COMMA, + T_NUMBER, T_TYPE_NAME, T_IDENTIFIER, + T_LEFT_BRACE, T_LEFT_PAREN, T_LEFT_BRACKET, + T_WHILE, +diff --git a/src/libs/glsl/glslparser.cpp b/src/libs/glsl/glslparser.cpp +index cf4bbe4..d82096b 100644 +--- a/src/libs/glsl/glslparser.cpp ++++ b/src/libs/glsl/glslparser.cpp +@@ -1,5 +1,5 @@ + +-#line 427 "./glsl.g" ++#line 423 "./glsl.g" + + /************************************************************************** + ** +@@ -171,7 +171,7 @@ AST *Parser::parse(int startToken) + + static int tks[] = { + T_RIGHT_BRACE, T_RIGHT_PAREN, T_RIGHT_BRACKET, +- T_SEMICOLON, T_COMMA, T_COLON, ++ T_SEMICOLON, T_COLON, T_COMMA, + T_NUMBER, T_TYPE_NAME, T_IDENTIFIER, + T_LEFT_BRACE, T_LEFT_PAREN, T_LEFT_BRACKET, + T_WHILE, +@@ -215,137 +215,137 @@ AST *Parser::parse(int startToken) + return 0; + } + +-#line 647 "./glsl.g" ++#line 641 "./glsl.g" + + void Parser::reduce(int ruleno) + { + switch(ruleno) { + +-#line 656 "./glsl.g" ++#line 650 "./glsl.g" + + case 0: { + ast(1) = makeAstNode<IdentifierExpressionAST>(string(1)); + } break; + +-#line 663 "./glsl.g" ++#line 657 "./glsl.g" + + case 1: { + ast(1) = makeAstNode<LiteralExpressionAST>(string(1)); + } break; + +-#line 670 "./glsl.g" ++#line 664 "./glsl.g" + + case 2: { + ast(1) = makeAstNode<LiteralExpressionAST>(_engine->identifier("true", 4)); + } break; + +-#line 677 "./glsl.g" ++#line 671 "./glsl.g" + + case 3: { + ast(1) = makeAstNode<LiteralExpressionAST>(_engine->identifier("false", 5)); + } break; + +-#line 684 "./glsl.g" ++#line 678 "./glsl.g" + + case 4: { + // nothing to do. + } break; + +-#line 691 "./glsl.g" ++#line 685 "./glsl.g" + + case 5: { + ast(1) = ast(2); + } break; + +-#line 698 "./glsl.g" ++#line 692 "./glsl.g" + + case 6: { + // nothing to do. + } break; + +-#line 705 "./glsl.g" ++#line 699 "./glsl.g" + + case 7: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_ArrayAccess, expression(1), expression(3)); + } break; + +-#line 712 "./glsl.g" ++#line 706 "./glsl.g" + + case 8: { + // nothing to do. + } break; + +-#line 719 "./glsl.g" ++#line 713 "./glsl.g" + + case 9: { + ast(1) = makeAstNode<MemberAccessExpressionAST>(expression(1), string(3)); + } break; + +-#line 726 "./glsl.g" ++#line 720 "./glsl.g" + + case 10: { + ast(1) = makeAstNode<UnaryExpressionAST>(AST::Kind_PostIncrement, expression(1)); + } break; + +-#line 733 "./glsl.g" ++#line 727 "./glsl.g" + + case 11: { + ast(1) = makeAstNode<UnaryExpressionAST>(AST::Kind_PostDecrement, expression(1)); + } break; + +-#line 740 "./glsl.g" ++#line 734 "./glsl.g" + + case 12: { + // nothing to do. + } break; + +-#line 747 "./glsl.g" ++#line 741 "./glsl.g" + + case 13: { + // nothing to do. + } break; + +-#line 754 "./glsl.g" ++#line 748 "./glsl.g" + + case 14: { + ast(1) = makeAstNode<FunctionCallExpressionAST> + (sym(1).function.id, sym(1).function.arguments); + } break; + +-#line 762 "./glsl.g" ++#line 756 "./glsl.g" + + case 15: { + ast(1) = makeAstNode<FunctionCallExpressionAST> + (expression(1), sym(3).function.id, sym(3).function.arguments); + } break; + +-#line 770 "./glsl.g" ++#line 764 "./glsl.g" + + case 16: { + // nothing to do. + } break; + +-#line 777 "./glsl.g" ++#line 771 "./glsl.g" + + case 17: { + // nothing to do. + } break; + +-#line 784 "./glsl.g" ++#line 778 "./glsl.g" + + case 18: { + sym(1).function.id = sym(1).function_identifier; + sym(1).function.arguments = 0; + } break; + +-#line 792 "./glsl.g" ++#line 786 "./glsl.g" + + case 19: { + sym(1).function.id = sym(1).function_identifier; + sym(1).function.arguments = 0; + } break; + +-#line 800 "./glsl.g" ++#line 794 "./glsl.g" + + case 20: { + sym(1).function.id = sym(1).function_identifier; +@@ -353,7 +353,7 @@ case 20: { + makeAstNode< List<ExpressionAST *> >(expression(2)); + } break; + +-#line 809 "./glsl.g" ++#line 803 "./glsl.g" + + case 21: { + sym(1).function.arguments = +@@ -361,379 +361,379 @@ case 21: { + (sym(1).function.arguments, expression(3)); + } break; + +-#line 818 "./glsl.g" ++#line 812 "./glsl.g" + + case 22: { + // nothing to do. + } break; + +-#line 825 "./glsl.g" ++#line 819 "./glsl.g" + + case 23: { + ast(1) = makeAstNode<FunctionIdentifierAST>(type(1)); + } break; + +-#line 832 "./glsl.g" ++#line 826 "./glsl.g" + + case 24: { + ast(1) = makeAstNode<FunctionIdentifierAST>(string(1)); + } break; + +-#line 839 "./glsl.g" ++#line 833 "./glsl.g" + + case 25: { + // nothing to do. + } break; + +-#line 846 "./glsl.g" ++#line 840 "./glsl.g" + + case 26: { + ast(1) = makeAstNode<UnaryExpressionAST>(AST::Kind_PreIncrement, expression(2)); + } break; + +-#line 853 "./glsl.g" ++#line 847 "./glsl.g" + + case 27: { + ast(1) = makeAstNode<UnaryExpressionAST>(AST::Kind_PreDecrement, expression(2)); + } break; + +-#line 860 "./glsl.g" ++#line 854 "./glsl.g" + + case 28: { + ast(1) = makeAstNode<UnaryExpressionAST>(sym(1).kind, expression(2)); + } break; + +-#line 867 "./glsl.g" ++#line 861 "./glsl.g" + + case 29: { + sym(1).kind = AST::Kind_UnaryPlus; + } break; + +-#line 874 "./glsl.g" ++#line 868 "./glsl.g" + + case 30: { + sym(1).kind = AST::Kind_UnaryMinus; + } break; + +-#line 881 "./glsl.g" ++#line 875 "./glsl.g" + + case 31: { + sym(1).kind = AST::Kind_LogicalNot; + } break; + +-#line 888 "./glsl.g" ++#line 882 "./glsl.g" + + case 32: { + sym(1).kind = AST::Kind_BitwiseNot; + } break; + +-#line 895 "./glsl.g" ++#line 889 "./glsl.g" + + case 33: { + // nothing to do. + } break; + +-#line 902 "./glsl.g" ++#line 896 "./glsl.g" + + case 34: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_Multiply, expression(1), expression(3)); + } break; + +-#line 909 "./glsl.g" ++#line 903 "./glsl.g" + + case 35: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_Divide, expression(1), expression(3)); + } break; + +-#line 916 "./glsl.g" ++#line 910 "./glsl.g" + + case 36: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_Modulus, expression(1), expression(3)); + } break; + +-#line 923 "./glsl.g" ++#line 917 "./glsl.g" + + case 37: { + // nothing to do. + } break; + +-#line 930 "./glsl.g" ++#line 924 "./glsl.g" + + case 38: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_Plus, expression(1), expression(3)); + } break; + +-#line 937 "./glsl.g" ++#line 931 "./glsl.g" + + case 39: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_Minus, expression(1), expression(3)); + } break; + +-#line 944 "./glsl.g" ++#line 938 "./glsl.g" + + case 40: { + // nothing to do. + } break; + +-#line 951 "./glsl.g" ++#line 945 "./glsl.g" + + case 41: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_ShiftLeft, expression(1), expression(3)); + } break; + +-#line 958 "./glsl.g" ++#line 952 "./glsl.g" + + case 42: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_ShiftRight, expression(1), expression(3)); + } break; + +-#line 965 "./glsl.g" ++#line 959 "./glsl.g" + + case 43: { + // nothing to do. + } break; + +-#line 972 "./glsl.g" ++#line 966 "./glsl.g" + + case 44: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_LessThan, expression(1), expression(3)); + } break; + +-#line 979 "./glsl.g" ++#line 973 "./glsl.g" + + case 45: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_GreaterThan, expression(1), expression(3)); + } break; + +-#line 986 "./glsl.g" ++#line 980 "./glsl.g" + + case 46: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_LessEqual, expression(1), expression(3)); + } break; + +-#line 993 "./glsl.g" ++#line 987 "./glsl.g" + + case 47: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_GreaterEqual, expression(1), expression(3)); + } break; + +-#line 1000 "./glsl.g" ++#line 994 "./glsl.g" + + case 48: { + // nothing to do. + } break; + +-#line 1007 "./glsl.g" ++#line 1001 "./glsl.g" + + case 49: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_Equal, expression(1), expression(3)); + } break; + +-#line 1014 "./glsl.g" ++#line 1008 "./glsl.g" + + case 50: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_NotEqual, expression(1), expression(3)); + } break; + +-#line 1021 "./glsl.g" ++#line 1015 "./glsl.g" + + case 51: { + // nothing to do. + } break; + +-#line 1028 "./glsl.g" ++#line 1022 "./glsl.g" + + case 52: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_BitwiseAnd, expression(1), expression(3)); + } break; + +-#line 1035 "./glsl.g" ++#line 1029 "./glsl.g" + + case 53: { + // nothing to do. + } break; + +-#line 1042 "./glsl.g" ++#line 1036 "./glsl.g" + + case 54: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_BitwiseXor, expression(1), expression(3)); + } break; + +-#line 1049 "./glsl.g" ++#line 1043 "./glsl.g" + + case 55: { + // nothing to do. + } break; + +-#line 1056 "./glsl.g" ++#line 1050 "./glsl.g" + + case 56: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_BitwiseOr, expression(1), expression(3)); + } break; + +-#line 1063 "./glsl.g" ++#line 1057 "./glsl.g" + + case 57: { + // nothing to do. + } break; + +-#line 1070 "./glsl.g" ++#line 1064 "./glsl.g" + + case 58: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_LogicalAnd, expression(1), expression(3)); + } break; + +-#line 1077 "./glsl.g" ++#line 1071 "./glsl.g" + + case 59: { + // nothing to do. + } break; + +-#line 1084 "./glsl.g" ++#line 1078 "./glsl.g" + + case 60: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_LogicalXor, expression(1), expression(3)); + } break; + +-#line 1091 "./glsl.g" ++#line 1085 "./glsl.g" + + case 61: { + // nothing to do. + } break; + +-#line 1098 "./glsl.g" ++#line 1092 "./glsl.g" + + case 62: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_LogicalOr, expression(1), expression(3)); + } break; + +-#line 1105 "./glsl.g" ++#line 1099 "./glsl.g" + + case 63: { + // nothing to do. + } break; + +-#line 1112 "./glsl.g" ++#line 1106 "./glsl.g" + + case 64: { + ast(1) = makeAstNode<TernaryExpressionAST>(AST::Kind_Conditional, expression(1), expression(3), expression(5)); + } break; + +-#line 1119 "./glsl.g" ++#line 1113 "./glsl.g" + + case 65: { + // nothing to do. + } break; + +-#line 1126 "./glsl.g" ++#line 1120 "./glsl.g" + + case 66: { + ast(1) = makeAstNode<AssignmentExpressionAST>(sym(2).kind, expression(1), expression(3)); + } break; + +-#line 1133 "./glsl.g" ++#line 1127 "./glsl.g" + + case 67: { + sym(1).kind = AST::Kind_Assign; + } break; + +-#line 1140 "./glsl.g" ++#line 1134 "./glsl.g" + + case 68: { + sym(1).kind = AST::Kind_AssignMultiply; + } break; + +-#line 1147 "./glsl.g" ++#line 1141 "./glsl.g" + + case 69: { + sym(1).kind = AST::Kind_AssignDivide; + } break; + +-#line 1154 "./glsl.g" ++#line 1148 "./glsl.g" + + case 70: { + sym(1).kind = AST::Kind_AssignModulus; + } break; + +-#line 1161 "./glsl.g" ++#line 1155 "./glsl.g" + + case 71: { + sym(1).kind = AST::Kind_AssignPlus; + } break; + +-#line 1168 "./glsl.g" ++#line 1162 "./glsl.g" + + case 72: { + sym(1).kind = AST::Kind_AssignMinus; + } break; + +-#line 1175 "./glsl.g" ++#line 1169 "./glsl.g" + + case 73: { + sym(1).kind = AST::Kind_AssignShiftLeft; + } break; + +-#line 1182 "./glsl.g" ++#line 1176 "./glsl.g" + + case 74: { + sym(1).kind = AST::Kind_AssignShiftRight; + } break; + +-#line 1189 "./glsl.g" ++#line 1183 "./glsl.g" + + case 75: { + sym(1).kind = AST::Kind_AssignAnd; + } break; + +-#line 1196 "./glsl.g" ++#line 1190 "./glsl.g" + + case 76: { + sym(1).kind = AST::Kind_AssignXor; + } break; + +-#line 1203 "./glsl.g" ++#line 1197 "./glsl.g" + + case 77: { + sym(1).kind = AST::Kind_AssignOr; + } break; + +-#line 1210 "./glsl.g" ++#line 1204 "./glsl.g" + + case 78: { + // nothing to do. + } break; + +-#line 1217 "./glsl.g" ++#line 1211 "./glsl.g" + + case 79: { + ast(1) = makeAstNode<BinaryExpressionAST>(AST::Kind_Comma, expression(1), expression(3)); + } break; + +-#line 1224 "./glsl.g" ++#line 1218 "./glsl.g" + + case 80: { + // nothing to do. + } break; + +-#line 1231 "./glsl.g" ++#line 1225 "./glsl.g" + + case 81: { + // nothing to do. + } break; + +-#line 1238 "./glsl.g" ++#line 1232 "./glsl.g" + + case 82: { + ast(1) = makeAstNode<InitDeclarationAST>(sym(1).declaration_list); + } break; + +-#line 1245 "./glsl.g" ++#line 1239 "./glsl.g" + + case 83: { + ast(1) = makeAstNode<PrecisionDeclarationAST>(sym(2).precision, type(3)); + } break; + +-#line 1252 "./glsl.g" ++#line 1246 "./glsl.g" + + case 84: { + if (sym(1).type_qualifier.qualifier != QualifiedTypeAST::Struct) { +@@ -743,7 +743,7 @@ case 84: { + ast(1) = makeAstNode<TypeDeclarationAST>(type); + } break; + +-#line 1263 "./glsl.g" ++#line 1257 "./glsl.g" + + case 85: { + if ((sym(1).type_qualifier.qualifier & QualifiedTypeAST::Struct) == 0) { +@@ -761,7 +761,7 @@ case 85: { + makeAstNode<VariableDeclarationAST>(qualtype, string(6))); + } break; + +-#line 1282 "./glsl.g" ++#line 1276 "./glsl.g" + + case 86: { + if ((sym(1).type_qualifier.qualifier & QualifiedTypeAST::Struct) == 0) { +@@ -780,7 +780,7 @@ case 86: { + (makeAstNode<ArrayTypeAST>(qualtype), string(6))); + } break; + +-#line 1302 "./glsl.g" ++#line 1296 "./glsl.g" + + case 87: { + if ((sym(1).type_qualifier.qualifier & QualifiedTypeAST::Struct) == 0) { +@@ -799,7 +799,7 @@ case 87: { + (makeAstNode<ArrayTypeAST>(qualtype, expression(8)), string(6))); + } break; + +-#line 1322 "./glsl.g" ++#line 1316 "./glsl.g" + + case 88: { + TypeAST *type = makeAstNode<QualifiedTypeAST> +@@ -808,59 +808,59 @@ case 88: { + ast(1) = makeAstNode<TypeDeclarationAST>(type); + } break; + +-#line 1332 "./glsl.g" ++#line 1326 "./glsl.g" + + case 89: { + function(1)->finishParams(); + } break; + +-#line 1339 "./glsl.g" ++#line 1333 "./glsl.g" + + case 90: { + // nothing to do. + } break; + +-#line 1346 "./glsl.g" ++#line 1340 "./glsl.g" + + case 91: { + // nothing to do. + } break; + +-#line 1353 "./glsl.g" ++#line 1347 "./glsl.g" + + case 92: { + function(1)->params = makeAstNode< List<ParameterDeclarationAST *> > + (sym(2).param_declaration); + } break; + +-#line 1361 "./glsl.g" ++#line 1355 "./glsl.g" + + case 93: { + function(1)->params = makeAstNode< List<ParameterDeclarationAST *> > + (function(1)->params, sym(3).param_declaration); + } break; + +-#line 1369 "./glsl.g" ++#line 1363 "./glsl.g" + + case 94: { + function(1) = makeAstNode<FunctionDeclarationAST>(type(1), string(2)); + } break; + +-#line 1376 "./glsl.g" ++#line 1370 "./glsl.g" + + case 95: { + sym(1).param_declarator.type = type(1); + sym(1).param_declarator.name = string(2); + } break; + +-#line 1384 "./glsl.g" ++#line 1378 "./glsl.g" + + case 96: { + sym(1).param_declarator.type = makeAstNode<ArrayTypeAST>(type(1), expression(4)); + sym(1).param_declarator.name = string(2); + } break; + +-#line 1392 "./glsl.g" ++#line 1386 "./glsl.g" + + case 97: { + ast(1) = makeAstNode<ParameterDeclarationAST> +@@ -871,7 +871,7 @@ case 97: { + sym(3).param_declarator.name); + } break; + +-#line 1404 "./glsl.g" ++#line 1398 "./glsl.g" + + case 98: { + ast(1) = makeAstNode<ParameterDeclarationAST> +@@ -880,7 +880,7 @@ case 98: { + sym(2).param_declarator.name); + } break; + +-#line 1414 "./glsl.g" ++#line 1408 "./glsl.g" + + case 99: { + ast(1) = makeAstNode<ParameterDeclarationAST> +@@ -890,7 +890,7 @@ case 99: { + (const QString *)0); + } break; + +-#line 1425 "./glsl.g" ++#line 1419 "./glsl.g" + + case 100: { + ast(1) = makeAstNode<ParameterDeclarationAST> +@@ -898,44 +898,44 @@ case 100: { + (const QString *)0); + } break; + +-#line 1434 "./glsl.g" ++#line 1428 "./glsl.g" + + case 101: { + sym(1).qualifier = ParameterDeclarationAST::In; + } break; + +-#line 1441 "./glsl.g" ++#line 1435 "./glsl.g" + + case 102: { + sym(1).qualifier = ParameterDeclarationAST::In; + } break; + +-#line 1448 "./glsl.g" ++#line 1442 "./glsl.g" + + case 103: { + sym(1).qualifier = ParameterDeclarationAST::Out; + } break; + +-#line 1455 "./glsl.g" ++#line 1449 "./glsl.g" + + case 104: { + sym(1).qualifier = ParameterDeclarationAST::InOut; + } break; + +-#line 1462 "./glsl.g" ++#line 1456 "./glsl.g" + + case 105: { + // nothing to do. + } break; + +-#line 1469 "./glsl.g" ++#line 1463 "./glsl.g" + + case 106: { + sym(1).declaration_list = makeAstNode< List<DeclarationAST *> > + (sym(1).declaration); + } break; + +-#line 1477 "./glsl.g" ++#line 1471 "./glsl.g" + + case 107: { + TypeAST *type = VariableDeclarationAST::declarationType(sym(1).declaration_list); +@@ -944,7 +944,7 @@ case 107: { + (sym(1).declaration_list, decl); + } break; + +-#line 1487 "./glsl.g" ++#line 1481 "./glsl.g" + + case 108: { + TypeAST *type = VariableDeclarationAST::declarationType(sym(1).declaration_list); +@@ -954,7 +954,7 @@ case 108: { + (sym(1).declaration_list, decl); + } break; + +-#line 1498 "./glsl.g" ++#line 1492 "./glsl.g" + + case 109: { + TypeAST *type = VariableDeclarationAST::declarationType(sym(1).declaration_list); +@@ -964,7 +964,7 @@ case 109: { + (sym(1).declaration_list, decl); + } break; + +-#line 1509 "./glsl.g" ++#line 1503 "./glsl.g" + + case 110: { + TypeAST *type = VariableDeclarationAST::declarationType(sym(1).declaration_list); +@@ -975,7 +975,7 @@ case 110: { + (sym(1).declaration_list, decl); + } break; + +-#line 1521 "./glsl.g" ++#line 1515 "./glsl.g" + + case 111: { + TypeAST *type = VariableDeclarationAST::declarationType(sym(1).declaration_list); +@@ -986,7 +986,7 @@ case 111: { + (sym(1).declaration_list, decl); + } break; + +-#line 1533 "./glsl.g" ++#line 1527 "./glsl.g" + + case 112: { + TypeAST *type = VariableDeclarationAST::declarationType(sym(1).declaration_list); +@@ -996,40 +996,40 @@ case 112: { + (sym(1).declaration_list, decl); + } break; + +-#line 1544 "./glsl.g" ++#line 1538 "./glsl.g" + + case 113: { + ast(1) = makeAstNode<TypeDeclarationAST>(type(1)); + } break; + +-#line 1551 "./glsl.g" ++#line 1545 "./glsl.g" + + case 114: { + ast(1) = makeAstNode<VariableDeclarationAST>(type(1), string(2)); + } break; + +-#line 1558 "./glsl.g" ++#line 1552 "./glsl.g" + + case 115: { + ast(1) = makeAstNode<VariableDeclarationAST> + (makeAstNode<ArrayTypeAST>(type(1)), string(2)); + } break; + +-#line 1566 "./glsl.g" ++#line 1560 "./glsl.g" + + case 116: { + ast(1) = makeAstNode<VariableDeclarationAST> + (makeAstNode<ArrayTypeAST>(type(1), expression(4)), string(2)); + } break; + +-#line 1574 "./glsl.g" ++#line 1568 "./glsl.g" + + case 117: { + ast(1) = makeAstNode<VariableDeclarationAST> + (makeAstNode<ArrayTypeAST>(type(1)), string(2), expression(6)); + } break; + +-#line 1582 "./glsl.g" ++#line 1576 "./glsl.g" + + case 118: { + ast(1) = makeAstNode<VariableDeclarationAST> +@@ -1037,26 +1037,26 @@ case 118: { + string(2), expression(7)); + } break; + +-#line 1591 "./glsl.g" ++#line 1585 "./glsl.g" + + case 119: { + ast(1) = makeAstNode<VariableDeclarationAST> + (type(1), string(2), expression(4)); + } break; + +-#line 1599 "./glsl.g" ++#line 1593 "./glsl.g" + + case 120: { + ast(1) = makeAstNode<InvariantDeclarationAST>(string(2)); + } break; + +-#line 1606 "./glsl.g" ++#line 1600 "./glsl.g" + + case 121: { + ast(1) = makeAstNode<QualifiedTypeAST>(0, type(1), (List<LayoutQualifierAST *> *)0); + } break; + +-#line 1613 "./glsl.g" ++#line 1607 "./glsl.g" + + case 122: { + ast(1) = makeAstNode<QualifiedTypeAST> +@@ -1064,207 +1064,207 @@ case 122: { + sym(1).type_qualifier.layout_list); + } break; + +-#line 1622 "./glsl.g" ++#line 1616 "./glsl.g" + + case 123: { + sym(1).qualifier = QualifiedTypeAST::Invariant; + } break; + +-#line 1629 "./glsl.g" ++#line 1623 "./glsl.g" + + case 124: { + sym(1).qualifier = QualifiedTypeAST::Smooth; + } break; + +-#line 1636 "./glsl.g" ++#line 1630 "./glsl.g" + + case 125: { + sym(1).qualifier = QualifiedTypeAST::Flat; + } break; + +-#line 1643 "./glsl.g" ++#line 1637 "./glsl.g" + + case 126: { + sym(1).qualifier = QualifiedTypeAST::NoPerspective; + } break; + +-#line 1650 "./glsl.g" ++#line 1644 "./glsl.g" + + case 127: { + sym(1) = sym(3); + } break; + +-#line 1657 "./glsl.g" ++#line 1651 "./glsl.g" + + case 128: { + sym(1).layout_list = makeAstNode< List<LayoutQualifierAST *> >(sym(1).layout); + } break; + +-#line 1664 "./glsl.g" ++#line 1658 "./glsl.g" + + case 129: { + sym(1).layout_list = makeAstNode< List<LayoutQualifierAST *> >(sym(1).layout_list, sym(3).layout); + } break; + +-#line 1671 "./glsl.g" ++#line 1665 "./glsl.g" + + case 130: { + sym(1).layout = makeAstNode<LayoutQualifierAST>(string(1), (const QString *)0); + } break; + +-#line 1678 "./glsl.g" ++#line 1672 "./glsl.g" + + case 131: { + sym(1).layout = makeAstNode<LayoutQualifierAST>(string(1), string(3)); + } break; + +-#line 1685 "./glsl.g" ++#line 1679 "./glsl.g" + + case 132: { + sym(1).qualifier = QualifiedTypeAST::Const; + } break; + +-#line 1692 "./glsl.g" ++#line 1686 "./glsl.g" + + case 133: { + sym(1).type_qualifier.qualifier = sym(1).qualifier; + sym(1).type_qualifier.layout_list = 0; + } break; + +-#line 1700 "./glsl.g" ++#line 1694 "./glsl.g" + + case 134: { + sym(1).type_qualifier.layout_list = sym(1).layout_list; + sym(1).type_qualifier.qualifier = 0; + } break; + +-#line 1708 "./glsl.g" ++#line 1702 "./glsl.g" + + case 135: { + sym(1).type_qualifier.layout_list = sym(1).layout_list; + sym(1).type_qualifier.qualifier = sym(2).qualifier; + } break; + +-#line 1716 "./glsl.g" ++#line 1710 "./glsl.g" + + case 136: { + sym(1).type_qualifier.qualifier = sym(1).qualifier | sym(2).qualifier; + sym(1).type_qualifier.layout_list = 0; + } break; + +-#line 1724 "./glsl.g" ++#line 1718 "./glsl.g" + + case 137: { + sym(1).type_qualifier.qualifier = sym(1).qualifier; + sym(1).type_qualifier.layout_list = 0; + } break; + +-#line 1732 "./glsl.g" ++#line 1726 "./glsl.g" + + case 138: { + sym(1).type_qualifier.qualifier = sym(1).qualifier | sym(2).qualifier; + sym(1).type_qualifier.layout_list = 0; + } break; + +-#line 1740 "./glsl.g" ++#line 1734 "./glsl.g" + + case 139: { + sym(1).type_qualifier.qualifier = sym(1).qualifier | sym(2).qualifier | sym(3).qualifier; + sym(1).type_qualifier.layout_list = 0; + } break; + +-#line 1748 "./glsl.g" ++#line 1742 "./glsl.g" + + case 140: { + sym(1).type_qualifier.qualifier = QualifiedTypeAST::Invariant; + sym(1).type_qualifier.layout_list = 0; + } break; + +-#line 1756 "./glsl.g" ++#line 1750 "./glsl.g" + + case 141: { + sym(1).qualifier = QualifiedTypeAST::Const; + } break; + +-#line 1763 "./glsl.g" ++#line 1757 "./glsl.g" + + case 142: { + sym(1).qualifier = QualifiedTypeAST::Attribute; + } break; + +-#line 1770 "./glsl.g" ++#line 1764 "./glsl.g" + + case 143: { + sym(1).qualifier = QualifiedTypeAST::Varying; + } break; + +-#line 1777 "./glsl.g" ++#line 1771 "./glsl.g" + + case 144: { + sym(1).qualifier = QualifiedTypeAST::CentroidVarying; + } break; + +-#line 1784 "./glsl.g" ++#line 1778 "./glsl.g" + + case 145: { + sym(1).qualifier = QualifiedTypeAST::In; + } break; + +-#line 1791 "./glsl.g" ++#line 1785 "./glsl.g" + + case 146: { + sym(1).qualifier = QualifiedTypeAST::Out; + } break; + +-#line 1798 "./glsl.g" ++#line 1792 "./glsl.g" + + case 147: { + sym(1).qualifier = QualifiedTypeAST::CentroidIn; + } break; + +-#line 1805 "./glsl.g" ++#line 1799 "./glsl.g" + + case 148: { + sym(1).qualifier = QualifiedTypeAST::CentroidOut; + } break; + +-#line 1812 "./glsl.g" ++#line 1806 "./glsl.g" + + case 149: { + sym(1).qualifier = QualifiedTypeAST::PatchIn; + } break; + +-#line 1819 "./glsl.g" ++#line 1813 "./glsl.g" + + case 150: { + sym(1).qualifier = QualifiedTypeAST::PatchOut; + } break; + +-#line 1826 "./glsl.g" ++#line 1820 "./glsl.g" + + case 151: { + sym(1).qualifier = QualifiedTypeAST::SampleIn; + } break; + +-#line 1833 "./glsl.g" ++#line 1827 "./glsl.g" + + case 152: { + sym(1).qualifier = QualifiedTypeAST::SampleOut; + } break; + +-#line 1840 "./glsl.g" ++#line 1834 "./glsl.g" + + case 153: { + sym(1).qualifier = QualifiedTypeAST::Uniform; + } break; + +-#line 1847 "./glsl.g" ++#line 1841 "./glsl.g" + + case 154: { + // nothing to do. + } break; + +-#line 1854 "./glsl.g" ++#line 1848 "./glsl.g" + + case 155: { + if (!type(2)->setPrecision(sym(1).precision)) { +@@ -1273,595 +1273,595 @@ case 155: { + ast(1) = type(2); + } break; + +-#line 1864 "./glsl.g" ++#line 1858 "./glsl.g" + + case 156: { + // nothing to do. + } break; + +-#line 1871 "./glsl.g" ++#line 1865 "./glsl.g" + + case 157: { + ast(1) = makeAstNode<ArrayTypeAST>(type(1)); + } break; + +-#line 1878 "./glsl.g" ++#line 1872 "./glsl.g" + + case 158: { + ast(1) = makeAstNode<ArrayTypeAST>(type(1), expression(3)); + } break; + +-#line 1885 "./glsl.g" ++#line 1879 "./glsl.g" + + case 159: { + ast(1) = makeBasicType(T_VOID); + } break; + +-#line 1892 "./glsl.g" ++#line 1886 "./glsl.g" + + case 160: { + ast(1) = makeBasicType(T_FLOAT); + } break; + +-#line 1899 "./glsl.g" ++#line 1893 "./glsl.g" + + case 161: { + ast(1) = makeBasicType(T_DOUBLE); + } break; + +-#line 1906 "./glsl.g" ++#line 1900 "./glsl.g" + + case 162: { + ast(1) = makeBasicType(T_INT); + } break; + +-#line 1913 "./glsl.g" ++#line 1907 "./glsl.g" + + case 163: { + ast(1) = makeBasicType(T_UINT); + } break; + +-#line 1920 "./glsl.g" ++#line 1914 "./glsl.g" + + case 164: { + ast(1) = makeBasicType(T_BOOL); + } break; + +-#line 1927 "./glsl.g" ++#line 1921 "./glsl.g" + + case 165: { + ast(1) = makeBasicType(T_VEC2); + } break; + +-#line 1934 "./glsl.g" ++#line 1928 "./glsl.g" + + case 166: { + ast(1) = makeBasicType(T_VEC3); + } break; + +-#line 1941 "./glsl.g" ++#line 1935 "./glsl.g" + + case 167: { + ast(1) = makeBasicType(T_VEC4); + } break; + +-#line 1948 "./glsl.g" ++#line 1942 "./glsl.g" + + case 168: { + ast(1) = makeBasicType(T_DVEC2); + } break; + +-#line 1955 "./glsl.g" ++#line 1949 "./glsl.g" + + case 169: { + ast(1) = makeBasicType(T_DVEC3); + } break; + +-#line 1962 "./glsl.g" ++#line 1956 "./glsl.g" + + case 170: { + ast(1) = makeBasicType(T_DVEC4); + } break; + +-#line 1969 "./glsl.g" ++#line 1963 "./glsl.g" + + case 171: { + ast(1) = makeBasicType(T_BVEC2); + } break; + +-#line 1976 "./glsl.g" ++#line 1970 "./glsl.g" + + case 172: { + ast(1) = makeBasicType(T_BVEC3); + } break; + +-#line 1983 "./glsl.g" ++#line 1977 "./glsl.g" + + case 173: { + ast(1) = makeBasicType(T_BVEC4); + } break; + +-#line 1990 "./glsl.g" ++#line 1984 "./glsl.g" + + case 174: { + ast(1) = makeBasicType(T_IVEC2); + } break; + +-#line 1997 "./glsl.g" ++#line 1991 "./glsl.g" + + case 175: { + ast(1) = makeBasicType(T_IVEC3); + } break; + +-#line 2004 "./glsl.g" ++#line 1998 "./glsl.g" + + case 176: { + ast(1) = makeBasicType(T_IVEC4); + } break; + +-#line 2011 "./glsl.g" ++#line 2005 "./glsl.g" + + case 177: { + ast(1) = makeBasicType(T_UVEC2); + } break; + +-#line 2018 "./glsl.g" ++#line 2012 "./glsl.g" + + case 178: { + ast(1) = makeBasicType(T_UVEC3); + } break; + +-#line 2025 "./glsl.g" ++#line 2019 "./glsl.g" + + case 179: { + ast(1) = makeBasicType(T_UVEC4); + } break; + +-#line 2032 "./glsl.g" ++#line 2026 "./glsl.g" + + case 180: { + ast(1) = makeBasicType(T_MAT2); + } break; + +-#line 2039 "./glsl.g" ++#line 2033 "./glsl.g" + + case 181: { + ast(1) = makeBasicType(T_MAT3); + } break; + +-#line 2046 "./glsl.g" ++#line 2040 "./glsl.g" + + case 182: { + ast(1) = makeBasicType(T_MAT4); + } break; + +-#line 2053 "./glsl.g" ++#line 2047 "./glsl.g" + + case 183: { + ast(1) = makeBasicType(T_MAT2); + } break; + +-#line 2060 "./glsl.g" ++#line 2054 "./glsl.g" + + case 184: { + ast(1) = makeBasicType(T_MAT2X3); + } break; + +-#line 2067 "./glsl.g" ++#line 2061 "./glsl.g" + + case 185: { + ast(1) = makeBasicType(T_MAT2X4); + } break; + +-#line 2074 "./glsl.g" ++#line 2068 "./glsl.g" + + case 186: { + ast(1) = makeBasicType(T_MAT3X2); + } break; + +-#line 2081 "./glsl.g" ++#line 2075 "./glsl.g" + + case 187: { + ast(1) = makeBasicType(T_MAT3); + } break; + +-#line 2088 "./glsl.g" ++#line 2082 "./glsl.g" + + case 188: { + ast(1) = makeBasicType(T_MAT3X4); + } break; + +-#line 2095 "./glsl.g" ++#line 2089 "./glsl.g" + + case 189: { + ast(1) = makeBasicType(T_MAT4X2); + } break; + +-#line 2102 "./glsl.g" ++#line 2096 "./glsl.g" + + case 190: { + ast(1) = makeBasicType(T_MAT4X3); + } break; + +-#line 2109 "./glsl.g" ++#line 2103 "./glsl.g" + + case 191: { + ast(1) = makeBasicType(T_MAT4); + } break; + +-#line 2116 "./glsl.g" ++#line 2110 "./glsl.g" + + case 192: { + ast(1) = makeBasicType(T_DMAT2); + } break; + +-#line 2123 "./glsl.g" ++#line 2117 "./glsl.g" + + case 193: { + ast(1) = makeBasicType(T_DMAT3); + } break; + +-#line 2130 "./glsl.g" ++#line 2124 "./glsl.g" + + case 194: { + ast(1) = makeBasicType(T_DMAT4); + } break; + +-#line 2137 "./glsl.g" ++#line 2131 "./glsl.g" + + case 195: { + ast(1) = makeBasicType(T_DMAT2); + } break; + +-#line 2144 "./glsl.g" ++#line 2138 "./glsl.g" + + case 196: { + ast(1) = makeBasicType(T_DMAT2X3); + } break; + +-#line 2151 "./glsl.g" ++#line 2145 "./glsl.g" + + case 197: { + ast(1) = makeBasicType(T_DMAT2X4); + } break; + +-#line 2158 "./glsl.g" ++#line 2152 "./glsl.g" + + case 198: { + ast(1) = makeBasicType(T_DMAT3X2); + } break; + +-#line 2165 "./glsl.g" ++#line 2159 "./glsl.g" + + case 199: { + ast(1) = makeBasicType(T_DMAT3); + } break; + +-#line 2172 "./glsl.g" ++#line 2166 "./glsl.g" + + case 200: { + ast(1) = makeBasicType(T_DMAT3X4); + } break; + +-#line 2179 "./glsl.g" ++#line 2173 "./glsl.g" + + case 201: { + ast(1) = makeBasicType(T_DMAT4X2); + } break; + +-#line 2186 "./glsl.g" ++#line 2180 "./glsl.g" + + case 202: { + ast(1) = makeBasicType(T_DMAT4X3); + } break; + +-#line 2193 "./glsl.g" ++#line 2187 "./glsl.g" + + case 203: { + ast(1) = makeBasicType(T_DMAT4); + } break; + +-#line 2200 "./glsl.g" ++#line 2194 "./glsl.g" + + case 204: { + ast(1) = makeBasicType(T_SAMPLER1D); + } break; + +-#line 2207 "./glsl.g" ++#line 2201 "./glsl.g" + + case 205: { + ast(1) = makeBasicType(T_SAMPLER2D); + } break; + +-#line 2214 "./glsl.g" ++#line 2208 "./glsl.g" + + case 206: { + ast(1) = makeBasicType(T_SAMPLER3D); + } break; + +-#line 2221 "./glsl.g" ++#line 2215 "./glsl.g" + + case 207: { + ast(1) = makeBasicType(T_SAMPLERCUBE); + } break; + +-#line 2228 "./glsl.g" ++#line 2222 "./glsl.g" + + case 208: { + ast(1) = makeBasicType(T_SAMPLER1DSHADOW); + } break; + +-#line 2235 "./glsl.g" ++#line 2229 "./glsl.g" + + case 209: { + ast(1) = makeBasicType(T_SAMPLER2DSHADOW); + } break; + +-#line 2242 "./glsl.g" ++#line 2236 "./glsl.g" + + case 210: { + ast(1) = makeBasicType(T_SAMPLERCUBESHADOW); + } break; + +-#line 2249 "./glsl.g" ++#line 2243 "./glsl.g" + + case 211: { + ast(1) = makeBasicType(T_SAMPLER1DARRAY); + } break; + +-#line 2256 "./glsl.g" ++#line 2250 "./glsl.g" + + case 212: { + ast(1) = makeBasicType(T_SAMPLER2DARRAY); + } break; + +-#line 2263 "./glsl.g" ++#line 2257 "./glsl.g" + + case 213: { + ast(1) = makeBasicType(T_SAMPLER1DARRAYSHADOW); + } break; + +-#line 2270 "./glsl.g" ++#line 2264 "./glsl.g" + + case 214: { + ast(1) = makeBasicType(T_SAMPLER2DARRAYSHADOW); + } break; + +-#line 2277 "./glsl.g" ++#line 2271 "./glsl.g" + + case 215: { + ast(1) = makeBasicType(T_SAMPLERCUBEARRAY); + } break; + +-#line 2284 "./glsl.g" ++#line 2278 "./glsl.g" + + case 216: { + ast(1) = makeBasicType(T_SAMPLERCUBEARRAYSHADOW); + } break; + +-#line 2291 "./glsl.g" ++#line 2285 "./glsl.g" + + case 217: { + ast(1) = makeBasicType(T_ISAMPLER1D); + } break; + +-#line 2298 "./glsl.g" ++#line 2292 "./glsl.g" + + case 218: { + ast(1) = makeBasicType(T_ISAMPLER2D); + } break; + +-#line 2305 "./glsl.g" ++#line 2299 "./glsl.g" + + case 219: { + ast(1) = makeBasicType(T_ISAMPLER3D); + } break; + +-#line 2312 "./glsl.g" ++#line 2306 "./glsl.g" + + case 220: { + ast(1) = makeBasicType(T_ISAMPLERCUBE); + } break; + +-#line 2319 "./glsl.g" ++#line 2313 "./glsl.g" + + case 221: { + ast(1) = makeBasicType(T_ISAMPLER1DARRAY); + } break; + +-#line 2326 "./glsl.g" ++#line 2320 "./glsl.g" + + case 222: { + ast(1) = makeBasicType(T_ISAMPLER2DARRAY); + } break; + +-#line 2333 "./glsl.g" ++#line 2327 "./glsl.g" + + case 223: { + ast(1) = makeBasicType(T_ISAMPLERCUBEARRAY); + } break; + +-#line 2340 "./glsl.g" ++#line 2334 "./glsl.g" + + case 224: { + ast(1) = makeBasicType(T_USAMPLER1D); + } break; + +-#line 2347 "./glsl.g" ++#line 2341 "./glsl.g" + + case 225: { + ast(1) = makeBasicType(T_USAMPLER2D); + } break; + +-#line 2354 "./glsl.g" ++#line 2348 "./glsl.g" + + case 226: { + ast(1) = makeBasicType(T_USAMPLER3D); + } break; + +-#line 2361 "./glsl.g" ++#line 2355 "./glsl.g" + + case 227: { + ast(1) = makeBasicType(T_USAMPLERCUBE); + } break; + +-#line 2368 "./glsl.g" ++#line 2362 "./glsl.g" + + case 228: { + ast(1) = makeBasicType(T_USAMPLER1DARRAY); + } break; + +-#line 2375 "./glsl.g" ++#line 2369 "./glsl.g" + + case 229: { + ast(1) = makeBasicType(T_USAMPLER2DARRAY); + } break; + +-#line 2382 "./glsl.g" ++#line 2376 "./glsl.g" + + case 230: { + ast(1) = makeBasicType(T_USAMPLERCUBEARRAY); + } break; + +-#line 2389 "./glsl.g" ++#line 2383 "./glsl.g" + + case 231: { + ast(1) = makeBasicType(T_SAMPLER2DRECT); + } break; + +-#line 2396 "./glsl.g" ++#line 2390 "./glsl.g" + + case 232: { + ast(1) = makeBasicType(T_SAMPLER2DRECTSHADOW); + } break; + +-#line 2403 "./glsl.g" ++#line 2397 "./glsl.g" + + case 233: { + ast(1) = makeBasicType(T_ISAMPLER2DRECT); + } break; + +-#line 2410 "./glsl.g" ++#line 2404 "./glsl.g" + + case 234: { + ast(1) = makeBasicType(T_USAMPLER2DRECT); + } break; + +-#line 2417 "./glsl.g" ++#line 2411 "./glsl.g" + + case 235: { + ast(1) = makeBasicType(T_SAMPLERBUFFER); + } break; + +-#line 2424 "./glsl.g" ++#line 2418 "./glsl.g" + + case 236: { + ast(1) = makeBasicType(T_ISAMPLERBUFFER); + } break; + +-#line 2431 "./glsl.g" ++#line 2425 "./glsl.g" + + case 237: { + ast(1) = makeBasicType(T_USAMPLERBUFFER); + } break; + +-#line 2438 "./glsl.g" ++#line 2432 "./glsl.g" + + case 238: { + ast(1) = makeBasicType(T_SAMPLER2DMS); + } break; + +-#line 2445 "./glsl.g" ++#line 2439 "./glsl.g" + + case 239: { + ast(1) = makeBasicType(T_ISAMPLER2DMS); + } break; + +-#line 2452 "./glsl.g" ++#line 2446 "./glsl.g" + + case 240: { + ast(1) = makeBasicType(T_USAMPLER2DMS); + } break; + +-#line 2459 "./glsl.g" ++#line 2453 "./glsl.g" + + case 241: { + ast(1) = makeBasicType(T_SAMPLER2DMSARRAY); + } break; + +-#line 2466 "./glsl.g" ++#line 2460 "./glsl.g" + + case 242: { + ast(1) = makeBasicType(T_ISAMPLER2DMSARRAY); + } break; + +-#line 2473 "./glsl.g" ++#line 2467 "./glsl.g" + + case 243: { + ast(1) = makeBasicType(T_USAMPLER2DMSARRAY); + } break; + +-#line 2480 "./glsl.g" ++#line 2474 "./glsl.g" + + case 244: { + // nothing to do. + } break; + +-#line 2487 "./glsl.g" ++#line 2481 "./glsl.g" + + case 245: { + ast(1) = makeAstNode<NamedTypeAST>(string(1)); + } break; + +-#line 2494 "./glsl.g" ++#line 2488 "./glsl.g" + + case 246: { + sym(1).precision = TypeAST::Highp; + } break; + +-#line 2501 "./glsl.g" ++#line 2495 "./glsl.g" + + case 247: { + sym(1).precision = TypeAST::Mediump; + } break; + +-#line 2508 "./glsl.g" ++#line 2502 "./glsl.g" + + case 248: { + sym(1).precision = TypeAST::Lowp; + } break; + +-#line 2515 "./glsl.g" ++#line 2509 "./glsl.g" + + case 249: { + ast(1) = makeAstNode<StructTypeAST>(string(2), sym(4).field_list); + } break; + +-#line 2522 "./glsl.g" ++#line 2516 "./glsl.g" + + case 250: { + ast(1) = makeAstNode<StructTypeAST>(sym(3).field_list); + } break; + +-#line 2529 "./glsl.g" ++#line 2523 "./glsl.g" + + case 251: { + // nothing to do. + } break; + +-#line 2536 "./glsl.g" ++#line 2530 "./glsl.g" + + case 252: { + sym(1).field_list = appendLists(sym(1).field_list, sym(2).field_list); + } break; + +-#line 2543 "./glsl.g" ++#line 2537 "./glsl.g" + + case 253: { + sym(1).field_list = StructTypeAST::fixInnerTypes(type(1), sym(2).field_list); + } break; + +-#line 2550 "./glsl.g" ++#line 2544 "./glsl.g" + + case 254: { + sym(1).field_list = StructTypeAST::fixInnerTypes +@@ -1870,106 +1870,106 @@ case 254: { + sym(1).type_qualifier.layout_list), sym(3).field_list); + } break; + +-#line 2560 "./glsl.g" ++#line 2554 "./glsl.g" + + case 255: { + // nothing to do. + sym(1).field_list = makeAstNode< List<StructTypeAST::Field *> >(sym(1).field); + } break; + +-#line 2568 "./glsl.g" ++#line 2562 "./glsl.g" + + case 256: { + sym(1).field_list = makeAstNode< List<StructTypeAST::Field *> >(sym(1).field_list, sym(3).field); + } break; + +-#line 2575 "./glsl.g" ++#line 2569 "./glsl.g" + + case 257: { + sym(1).field = makeAstNode<StructTypeAST::Field>(string(1)); + } break; + +-#line 2582 "./glsl.g" ++#line 2576 "./glsl.g" + + case 258: { + sym(1).field = makeAstNode<StructTypeAST::Field> + (string(1), makeAstNode<ArrayTypeAST>((TypeAST *)0)); + } break; + +-#line 2590 "./glsl.g" ++#line 2584 "./glsl.g" + + case 259: { + sym(1).field = makeAstNode<StructTypeAST::Field> + (string(1), makeAstNode<ArrayTypeAST>((TypeAST *)0, expression(3))); + } break; + +-#line 2598 "./glsl.g" ++#line 2592 "./glsl.g" + + case 260: { + // nothing to do. + } break; + +-#line 2605 "./glsl.g" ++#line 2599 "./glsl.g" + + case 261: { + ast(1) = makeAstNode<DeclarationStatementAST>(sym(1).declaration); + } break; + +-#line 2612 "./glsl.g" ++#line 2606 "./glsl.g" + + case 262: { + // nothing to do. + } break; + +-#line 2619 "./glsl.g" ++#line 2613 "./glsl.g" + + case 263: { + // nothing to do. + } break; + +-#line 2626 "./glsl.g" ++#line 2620 "./glsl.g" + + case 264: { + // nothing to do. + } break; + +-#line 2633 "./glsl.g" ++#line 2627 "./glsl.g" + + case 265: { + // nothing to do. + } break; + +-#line 2640 "./glsl.g" ++#line 2634 "./glsl.g" + + case 266: { + // nothing to do. + } break; + +-#line 2647 "./glsl.g" ++#line 2641 "./glsl.g" + + case 267: { + // nothing to do. + } break; + +-#line 2654 "./glsl.g" ++#line 2648 "./glsl.g" + + case 268: { + // nothing to do. + } break; + +-#line 2661 "./glsl.g" ++#line 2655 "./glsl.g" + + case 269: { + // nothing to do. + } break; + +-#line 2668 "./glsl.g" ++#line 2662 "./glsl.g" + + case 270: { + // nothing to do. + } break; + +-#line 2675 "./glsl.g" ++#line 2669 "./glsl.g" + + case 271: { + CompoundStatementAST *stmt = makeAstNode<CompoundStatementAST>(); +@@ -1978,7 +1978,7 @@ case 271: { + ast(1) = stmt; + } break; + +-#line 2685 "./glsl.g" ++#line 2679 "./glsl.g" + + case 272: { + CompoundStatementAST *stmt = makeAstNode<CompoundStatementAST>(sym(2).statement_list); +@@ -1987,19 +1987,19 @@ case 272: { + ast(1) = stmt; + } break; + +-#line 2695 "./glsl.g" ++#line 2689 "./glsl.g" + + case 273: { + // nothing to do. + } break; + +-#line 2702 "./glsl.g" ++#line 2696 "./glsl.g" + + case 274: { + // nothing to do. + } break; + +-#line 2709 "./glsl.g" ++#line 2703 "./glsl.g" + + case 275: { + CompoundStatementAST *stmt = makeAstNode<CompoundStatementAST>(); +@@ -2008,7 +2008,7 @@ case 275: { + ast(1) = stmt; + } break; + +-#line 2719 "./glsl.g" ++#line 2713 "./glsl.g" + + case 276: { + CompoundStatementAST *stmt = makeAstNode<CompoundStatementAST>(sym(2).statement_list); +@@ -2017,186 +2017,186 @@ case 276: { + ast(1) = stmt; + } break; + +-#line 2729 "./glsl.g" ++#line 2723 "./glsl.g" + + case 277: { + sym(1).statement_list = makeAstNode< List<StatementAST *> >(sym(1).statement); + } break; + +-#line 2736 "./glsl.g" ++#line 2730 "./glsl.g" + + case 278: { + sym(1).statement_list = makeAstNode< List<StatementAST *> >(sym(1).statement_list, sym(2).statement); + } break; + +-#line 2743 "./glsl.g" ++#line 2737 "./glsl.g" + + case 279: { + ast(1) = makeAstNode<CompoundStatementAST>(); // Empty statement + } break; + +-#line 2750 "./glsl.g" ++#line 2744 "./glsl.g" + + case 280: { + ast(1) = makeAstNode<ExpressionStatementAST>(expression(1)); + } break; + +-#line 2757 "./glsl.g" ++#line 2751 "./glsl.g" + + case 281: { + ast(1) = makeAstNode<IfStatementAST>(expression(3), sym(5).ifstmt.thenClause, sym(5).ifstmt.elseClause); + } break; + +-#line 2764 "./glsl.g" ++#line 2758 "./glsl.g" + + case 282: { + sym(1).ifstmt.thenClause = statement(1); + sym(1).ifstmt.elseClause = statement(3); + } break; + +-#line 2772 "./glsl.g" ++#line 2766 "./glsl.g" + + case 283: { + sym(1).ifstmt.thenClause = statement(1); + sym(1).ifstmt.elseClause = 0; + } break; + +-#line 2780 "./glsl.g" ++#line 2774 "./glsl.g" + + case 284: { + // nothing to do. + } break; + +-#line 2787 "./glsl.g" ++#line 2781 "./glsl.g" + + case 285: { + ast(1) = makeAstNode<DeclarationExpressionAST> + (type(1), string(2), expression(4)); + } break; + +-#line 2795 "./glsl.g" ++#line 2789 "./glsl.g" + + case 286: { + ast(1) = makeAstNode<SwitchStatementAST>(expression(3), statement(6)); + } break; + +-#line 2802 "./glsl.g" ++#line 2796 "./glsl.g" + + case 287: { + ast(1) = makeAstNode<CompoundStatementAST>(); + } break; + +-#line 2809 "./glsl.g" ++#line 2803 "./glsl.g" + + case 288: { + ast(1) = makeAstNode<CompoundStatementAST>(sym(1).statement_list); + } break; + +-#line 2816 "./glsl.g" ++#line 2810 "./glsl.g" + + case 289: { + ast(1) = makeAstNode<CaseLabelStatementAST>(expression(2)); + } break; + +-#line 2823 "./glsl.g" ++#line 2817 "./glsl.g" + + case 290: { + ast(1) = makeAstNode<CaseLabelStatementAST>(); + } break; + +-#line 2830 "./glsl.g" ++#line 2824 "./glsl.g" + + case 291: { + ast(1) = makeAstNode<WhileStatementAST>(expression(3), statement(5)); + } break; + +-#line 2837 "./glsl.g" ++#line 2831 "./glsl.g" + + case 292: { + ast(1) = makeAstNode<DoStatementAST>(statement(2), expression(5)); + } break; + +-#line 2844 "./glsl.g" ++#line 2838 "./glsl.g" + + case 293: { + ast(1) = makeAstNode<ForStatementAST>(statement(3), sym(4).forstmt.condition, sym(4).forstmt.increment, statement(6)); + } break; + +-#line 2851 "./glsl.g" ++#line 2845 "./glsl.g" + + case 294: { + // nothing to do. + } break; + +-#line 2858 "./glsl.g" ++#line 2852 "./glsl.g" + + case 295: { + // nothing to do. + } break; + +-#line 2865 "./glsl.g" ++#line 2859 "./glsl.g" + + case 296: { + // nothing to do. + } break; + +-#line 2872 "./glsl.g" ++#line 2866 "./glsl.g" + + case 297: { + // nothing to do. + } break; + +-#line 2879 "./glsl.g" ++#line 2873 "./glsl.g" + + case 298: { + sym(1).forstmt.condition = expression(1); + sym(1).forstmt.increment = 0; + } break; + +-#line 2887 "./glsl.g" ++#line 2881 "./glsl.g" + + case 299: { + sym(1).forstmt.condition = expression(1); + sym(1).forstmt.increment = expression(3); + } break; + +-#line 2895 "./glsl.g" ++#line 2889 "./glsl.g" + + case 300: { + ast(1) = makeAstNode<JumpStatementAST>(AST::Kind_Continue); + } break; + +-#line 2902 "./glsl.g" ++#line 2896 "./glsl.g" + + case 301: { + ast(1) = makeAstNode<JumpStatementAST>(AST::Kind_Break); + } break; + +-#line 2909 "./glsl.g" ++#line 2903 "./glsl.g" + + case 302: { + ast(1) = makeAstNode<ReturnStatementAST>(); + } break; + +-#line 2916 "./glsl.g" ++#line 2910 "./glsl.g" + + case 303: { + ast(1) = makeAstNode<ReturnStatementAST>(expression(2)); + } break; + +-#line 2923 "./glsl.g" ++#line 2917 "./glsl.g" + + case 304: { + ast(1) = makeAstNode<JumpStatementAST>(AST::Kind_Discard); + } break; + +-#line 2930 "./glsl.g" ++#line 2924 "./glsl.g" + + case 305: { + ast(1) = makeAstNode<TranslationUnitAST>(sym(1).declaration_list); + } break; + +-#line 2937 "./glsl.g" ++#line 2931 "./glsl.g" + + case 306: { + if (sym(1).declaration) { +@@ -2207,7 +2207,7 @@ case 306: { + } + } break; + +-#line 2949 "./glsl.g" ++#line 2943 "./glsl.g" + + case 307: { + if (sym(1).declaration_list && sym(2).declaration) { +@@ -2223,49 +2223,49 @@ case 307: { + } + } break; + +-#line 2966 "./glsl.g" ++#line 2960 "./glsl.g" + + case 308: { + // nothing to do. + } break; + +-#line 2973 "./glsl.g" ++#line 2967 "./glsl.g" + + case 309: { + // nothing to do. + } break; + +-#line 2980 "./glsl.g" ++#line 2974 "./glsl.g" + + case 310: { + ast(1) = 0; + } break; + +-#line 2987 "./glsl.g" ++#line 2981 "./glsl.g" + + case 311: { + function(1)->body = statement(2); + } break; + +-#line 2994 "./glsl.g" ++#line 2988 "./glsl.g" + + case 312: { + ast(1) = 0; + } break; + +-#line 3002 "./glsl.g" ++#line 2996 "./glsl.g" + + case 313: { + ast(1) = ast(2); + } break; + +-#line 3009 "./glsl.g" ++#line 3003 "./glsl.g" + + case 314: { + ast(1) = ast(2); + } break; + +-#line 3015 "./glsl.g" ++#line 3009 "./glsl.g" + + } // end switch + } // end Parser::reduce() +diff --git a/src/libs/glsl/glslparser.h b/src/libs/glsl/glslparser.h +index 7bf70e2..bab2616 100644 +--- a/src/libs/glsl/glslparser.h ++++ b/src/libs/glsl/glslparser.h +@@ -1,5 +1,5 @@ + +-#line 217 "./glsl.g" ++#line 215 "./glsl.g" + + /************************************************************************** + ** +-- +1.7.10 + diff --git a/community/qtcurve-kde4/PKGBUILD b/community/qtcurve-kde4/PKGBUILD index 74cf7c2f9..2291fe95e 100644 --- a/community/qtcurve-kde4/PKGBUILD +++ b/community/qtcurve-kde4/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 74842 2012-08-06 23:10:17Z andrea $ +# $Id: PKGBUILD 74971 2012-08-10 22:17:48Z svenstaro $ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=qtcurve-kde4 -pkgver=1.8.13 -pkgrel=3 +pkgver=1.8.14 +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') groups=('qtcurve') license=('GPL') @@ -16,7 +16,7 @@ makedepends=('cmake' 'automoc4') source=("http://craigd.wikispaces.com/file/view/QtCurve-KDE4-${pkgver}.tar.bz2" 'bypass-kde-config.patch' 'fix-kwin_decoration-macro.patch') -md5sums=('94ba22bc487a18f585249c2967878189' +md5sums=('b4d7924806058f39e842ce7ffe47a4f8' '3f6681147cc361bd2bfd4d7477f2a8d0' '7366e45ef9f24f53a36f87a539a937d6') diff --git a/community/r8168-lts/PKGBUILD b/community/r8168-lts/PKGBUILD index 646527e32..8f406ff9e 100644 --- a/community/r8168-lts/PKGBUILD +++ b/community/r8168-lts/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 74289 2012-07-23 14:15:48Z mtorromeo $ +# $Id: PKGBUILD 74880 2012-08-08 15:17:49Z tpowa $ # Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com> pkgname=r8168-lts _pkgname=r8168 pkgver=8.031.00 -pkgrel=3 +pkgrel=4 pkgdesc="A kernel module for Realtek 8168 network cards for linux-lts" url="http://www.realtek.com.tw" license=("GPL") diff --git a/community/rygel/PKGBUILD b/community/rygel/PKGBUILD index 43f6df9ce..07d5eb3ba 100644 --- a/community/rygel/PKGBUILD +++ b/community/rygel/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 72601 2012-06-17 12:53:20Z bgyorgy $ +# $Id: PKGBUILD 75009 2012-08-11 13:57:55Z bgyorgy $ # Maintainer: Balló György <ballogyor+arch at gmail dot com> pkgname=rygel -pkgver=0.14.2 +pkgver=0.14.3 pkgrel=1 pkgdesc="UPnP AV MediaServer and MediaRenderer that allows you to easily share audio, video and pictures, and control of media player on your home network" arch=('i686' 'x86_64' 'mips64el') @@ -19,7 +19,7 @@ backup=('etc/rygel.conf') options=('!libtool') install=$pkgname.install source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) -sha256sums=('ac7417ef95e767df2e6c87085e62e8f2948d01c88ce06326c751068ab1ed8f6e') +sha256sums=('e615d4fea616ecaedfaba57e70a455ac8339048490a423af66a70d05c7186ace') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/sage-mathematics/PKGBUILD b/community/sage-mathematics/PKGBUILD index 45c6dc52d..1c19fbf44 100644 --- a/community/sage-mathematics/PKGBUILD +++ b/community/sage-mathematics/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 74657 2012-08-01 15:35:10Z dwallace $ +# $Id: PKGBUILD 75012 2012-08-11 18:46:02Z dwallace $ # Maintainer: Daniel Wallace <danielwallace at gtmanfred dot com> # Contributor: Antonio Rojas < nqn1976 @ gmail.com > # Contributor: Thomas Dziedzic < gostrc at gmail > @@ -7,8 +7,8 @@ # Special thanks to Nareto for moving the compile from the .install to the PKGBUILD pkgname=sage-mathematics -pkgver=5.1 -pkgrel=3 +pkgver=5.2 +pkgrel=1 pkgdesc='SAGE: Open Source Mathematics Software, a viable free alternative to Magma, Maple, Mathematica, and Matlab.' url='http://www.sagemath.org' arch=('i686' 'x86_64') @@ -35,9 +35,6 @@ build() { # fix build errors unset LDFLAGS - # don't build GCC - export SAGE_INSTALL_GCC='no' - # enable multiple threads while building, is this really needed? check if uses MAKEFLAGS export SAGE_BUILD_THREADS=$(lscpu | awk '/^CPU\(s\):/ { print $2 }') export MAKE="make -j${SAGE_BUILD_THREADS}" @@ -99,5 +96,5 @@ package() { } # vim :set ts=2 sw=2 et: -md5sums=('fa612f36387218d07b84f76995914c93' +md5sums=('59f55ec8cdd1ca595c56cc72620b3576' 'dc391f12b7d17dd37326343ec0e99bbd') diff --git a/community/skrooge/PKGBUILD b/community/skrooge/PKGBUILD index 61e5c8343..6453e0c04 100644 --- a/community/skrooge/PKGBUILD +++ b/community/skrooge/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 70372 2012-05-05 12:26:17Z jlichtblau $ +# $Id: PKGBUILD 75015 2012-08-11 18:51:57Z ebelanger $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: Ray Rashif <schiv@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> @@ -6,7 +6,7 @@ pkgname=skrooge pkgver=1.3.0 -pkgrel=1 +pkgrel=2 pkgdesc="A personal finances manager for KDE" arch=('i686' 'x86_64' 'mips64el') url="http://skrooge.org/" @@ -19,7 +19,7 @@ source=(http://skrooge.org/files/$pkgname-$pkgver.tar.bz2) sha256sums=('7f8ec247084a005b743bb080ded5724f6c1ee3644c135e12002c80df93fddfe9') build() { - cd ${srcdir}/$pkgname-$pkgver + cd "${srcdir}/$pkgname-$pkgver" cmake . -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr @@ -27,7 +27,7 @@ build() { } package() { - cd ${srcdir}/$pkgname-$pkgver + cd "${srcdir}/$pkgname-$pkgver" - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install } diff --git a/community/skrooge/skrooge.changelog b/community/skrooge/skrooge.changelog index 946388d77..ffc491ba5 100644 --- a/community/skrooge/skrooge.changelog +++ b/community/skrooge/skrooge.changelog @@ -1,3 +1,6 @@ +2012-08-09 Eric Belanger <eric@archlinux.org> + * skrooge 1.3.0-2 Rebuild against libofx 0.9.5 + 2012-05-05 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> * skrooge 1.3.0-1 diff --git a/community/snort/PKGBUILD b/community/snort/PKGBUILD index 63477fdac..2716cd7ab 100644 --- a/community/snort/PKGBUILD +++ b/community/snort/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 74195 2012-07-22 19:47:59Z lfleischer $ +# $Id: PKGBUILD 74966 2012-08-10 17:25:48Z lfleischer $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Hugo Doria <hugo@archlinux.org> # Contributor: Kessia 'even' Pinheiro <kessiapinheiro at gmail.com> @@ -6,7 +6,7 @@ # Contributor: Gregor Ibic <gregor.ibic@intelicom.si> pkgname=snort -pkgver=2.9.3 +pkgver=2.9.3.1 pkgrel=1 pkgdesc='A lightweight network intrusion detection system.' arch=('i686' 'x86_64' 'mips64el') @@ -24,8 +24,8 @@ install='snort.install' source=("http://www.snort.org/dl/snort-current/${pkgname}-${pkgver}.tar.gz"{,.sig} 'snort' 'snort.conf.d') -md5sums=('e128f5d5d14dad335dc0c549c7fe2e98' - '8f8689efad6338ca76c344366c97d4ea' +md5sums=('b2102605a7ca023ad6a2429821061c29' + '2ae6566c4fbf40a863e9550f3a85340a' '361b8b9e40b9af0164f6b3e3da2e8277' 'b4fb8a68490589cd34df93de7609bfac') diff --git a/community/solfege/PKGBUILD b/community/solfege/PKGBUILD index 9cb6a966f..57cd498df 100644 --- a/community/solfege/PKGBUILD +++ b/community/solfege/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 68019 2012-03-17 01:01:55Z giovanni $ +# $Id: PKGBUILD 74889 2012-08-08 19:20:31Z giovanni $ # Maintainer: Ray Rashif <schiv@archlinux.org> # Contributor: Corrado Primier <bardo@aur.archlinux.org> # Contributor: sickhate <sickhate@tux-linux.net> @@ -6,14 +6,14 @@ # TODO: # bring in pyalsa, csound, mma pkgname=solfege -pkgver=3.20.4 -pkgrel=2 +pkgver=3.20.6 +pkgrel=1 pkgdesc="Music education and ear training software" arch=('i686' 'x86_64' 'mips64el') url="http://www.solfege.org/" license=('GPL3') -depends=('pygtk' 'libgtkhtml') -makedepends=('ghostscript' 'gnome-doc-utils' 'librsvg' 'libxslt' +depends=('pygtk' 'libgtkhtml' 'librsvg') +makedepends=('ghostscript' 'gnome-doc-utils' 'libxslt' 'swig' 'texinfo' 'txt2man') optdepends=('timidity++: or any MIDI player & MIDI-WAV converter' 'mpg123: or any MP3 player' @@ -22,7 +22,7 @@ optdepends=('timidity++: or any MIDI player & MIDI-WAV converter' 'lilypond: for generating print-outs & score sheets' 'texlive-bin: use LaTeX to replace HTML reports with DVI') source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz") -md5sums=('3a1914158ad218ad5b119ee4f719b567') +md5sums=('078e3bb06df0355e8ed53ee633ed3abd') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/tomoyo-tools/PKGBUILD b/community/tomoyo-tools/PKGBUILD index 1e4e50780..e5e46d471 100644 --- a/community/tomoyo-tools/PKGBUILD +++ b/community/tomoyo-tools/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 62767 2012-01-26 14:20:03Z spupykin $ +# $Id: PKGBUILD 74852 2012-08-07 13:20:49Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Jamie Nguyen <jamie AT tomoyolinux.co.uk> pkgname=tomoyo-tools _basever=2.5.0 -_timestamp=20111025 +_timestamp=20120805 _file=53357 pkgver=${_basever}.${_timestamp} pkgrel=1 @@ -17,11 +17,11 @@ depends=('ncurses') conflicts=('ccs-tools') install=tomoyo-tools.install source=("http://sourceforge.jp/frs/redir.php?f=/tomoyo/${_file}/${pkgname}-${_basever}-${_timestamp}.tar.gz") -md5sums=('99999779698ea5f44c74d49e8c640ec1') +md5sums=('cccc7cb7f9492dc53063065f7ccf7b21') build() { cd "${srcdir}/${pkgname}" - make -j1 + make } package() { diff --git a/community/vidalia/PKGBUILD b/community/vidalia/PKGBUILD index 9aada1a70..27caac2c7 100644 --- a/community/vidalia/PKGBUILD +++ b/community/vidalia/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 73256 2012-07-04 13:05:20Z tredaelli $ +# $Id: PKGBUILD 74865 2012-08-07 15:48:23Z tredaelli $ # Maintainer: Timothy Redaelli <timothy.redaelli@gmail.com> # Contributor: Rorschach <r0rschach@lavabit.com> pkgname=vidalia -pkgver=0.2.19 -pkgrel=3 +pkgver=0.2.20 +pkgrel=1 pkgdesc="Controller GUI for Tor" url="https://www.torproject.org/vidalia" arch=('i686' 'x86_64' 'mips64el') @@ -12,17 +12,13 @@ license=('GPL') depends=('qt' 'tor') makedepends=('cmake') install=vidalia.install -source=(https://www.torproject.org/vidalia/dist/$pkgname-$pkgver.tar.gz{,.asc} - bug6178.patch) -md5sums=('caf92b44ad2932bbc1c40d6405951c39' - '1ba45d7c91797e880d79a3fc85818dee' - 'bdc0855fef6b230ab63a5b523e853d4e') +source=(https://www.torproject.org/vidalia/dist/$pkgname-$pkgver.tar.gz{,.asc}) +md5sums=('f40a3a1c43f4a1f16322969c0cb6f5bf' + '703c872eb865f11027a6d6b02d2e5e72') build() { [[ -f /etc/profile.d/qt4.sh ]] && source /etc/profile.d/qt4.sh - patch -d "$srcdir/$pkgname-$pkgver" -i "$srcdir"/bug6178.patch -p1 - cd "$srcdir" mkdir build cd build diff --git a/community/wvstreams/PKGBUILD b/community/wvstreams/PKGBUILD index d6d506855..8bd07de60 100644 --- a/community/wvstreams/PKGBUILD +++ b/community/wvstreams/PKGBUILD @@ -1,25 +1,31 @@ -# $Id: PKGBUILD 59490 2011-11-26 18:58:32Z bluewind $ +# $Id: PKGBUILD 74964 2012-08-10 12:12:57Z bluewind $ # Maintainer: # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> pkgname=wvstreams pkgver=4.6.1 -pkgrel=3 +pkgrel=4 pkgdesc="A network programming library written in C++" arch=('i686' 'x86_64' 'mips64el') url="http://alumnit.ca/wiki/?page=WvStreams" license=('LGPL') depends=('zlib' 'pam' 'xplc' 'openssl' 'readline') source=(http://wvstreams.googlecode.com/files/${pkgname}-${pkgver}.tar.gz -wvstreams-4.6.1-glibc212.patch) +wvstreams-4.6.1-glibc212.patch wvstreams-4.6.1-gcc47.patch openssl-buildfix.patch) md5sums=('2760dac31a43d452a19a3147bfde571c' - '5f6e24864209055239cb4e7c9bbd4a41') + '5f6e24864209055239cb4e7c9bbd4a41' + '918be13d35205385a39077403ce36388' + 'df423c68134a09439b3961c34635e0b4') options=('!makeflags') build() { cd ${srcdir}/${pkgname}-${pkgver} + patch -p0 -i "$srcdir/wvstreams-4.6.1-glibc212.patch" + patch -p1 -i "$srcdir/wvstreams-4.6.1-gcc47.patch" + patch -p1 -i "$srcdir/openssl-buildfix.patch" + ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ diff --git a/community/wvstreams/openssl-buildfix.patch b/community/wvstreams/openssl-buildfix.patch new file mode 100644 index 000000000..1b0445d9e --- /dev/null +++ b/community/wvstreams/openssl-buildfix.patch @@ -0,0 +1,14 @@ +--- wvstreams-4.6.1/crypto/wvx509.cc 2008-10-23 22:23:49.000000000 +0200 ++++ wvstreams-4.6.1-1/crypto/wvx509.cc 2010-01-27 11:09:06.000000000 +0100 +@@ -1157,7 +1157,11 @@ + + if (ext) + { ++#if OPENSSL_VERSION_NUMBER >= 0x10000000L ++ const X509V3_EXT_METHOD *method = X509V3_EXT_get(ext); ++#else + X509V3_EXT_METHOD *method = X509V3_EXT_get(ext); ++#endif + if (!method) + { + WvDynBuf buf;
\ No newline at end of file diff --git a/community/wvstreams/wvstreams-4.6.1-gcc47.patch b/community/wvstreams/wvstreams-4.6.1-gcc47.patch new file mode 100644 index 000000000..3d6704832 --- /dev/null +++ b/community/wvstreams/wvstreams-4.6.1-gcc47.patch @@ -0,0 +1,10 @@ +--- wvstreams-4.6.1-dist/include/wvuid.h 2012-01-05 10:18:58.713661236 +0100 ++++ wvstreams-4.6.1/include/wvuid.h 2012-01-05 10:27:42.198435328 +0100 +@@ -7,6 +7,7 @@ + #ifndef __WVUID_H + #define __WVUID_H + ++#include <unistd.h> + #include "wvstring.h" + + #if WIN32 diff --git a/community/xfe/PKGBUILD b/community/xfe/PKGBUILD index d83edfe41..5ca0e3ab0 100644 --- a/community/xfe/PKGBUILD +++ b/community/xfe/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 69198 2012-04-10 02:25:31Z spupykin $ +# $Id: PKGBUILD 74893 2012-08-09 07:50:54Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Eric Belanger <belanger@astro.umontreal.ca> # Contributor: Ravi Desai <ravster3@hotmail.com> pkgname=xfe -pkgver=1.32.5 +pkgver=1.33 pkgrel=1 pkgdesc="X File Explorer (Xfe) is an MS-Explorer like file manager for X." arch=('i686' 'x86_64' 'mips64el') @@ -13,12 +13,13 @@ license=("GPL") depends=('fox') makedepends=('intltool') source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('3b80908b0ebaa78b7e8610d09ee2d154') +md5sums=('fb089ba73add411b08a6560eeb51742d') build() { cd $srcdir/$pkgname-$pkgver - LDFLAGS=-lX11 ./configure --prefix=/usr - sed -i 's|inline||' src/xfeutils.cpp +# LDFLAGS=-lX11 ./configure --prefix=/usr + ./configure --prefix=/usr +# sed -i 's|inline||' src/xfeutils.cpp make } diff --git a/core/cronie/PKGBUILD b/core/cronie/PKGBUILD index 2e7ea639b..6990571a3 100644 --- a/core/cronie/PKGBUILD +++ b/core/cronie/PKGBUILD @@ -3,13 +3,14 @@ pkgname='cronie' pkgver=1.4.8 -pkgrel=2 +pkgrel=3 pkgdesc='Daemon that runs specified programs at scheduled times and related tools' url='https://fedorahosted.org/cronie/' license=('custom:BSD') arch=('i686' 'x86_64' 'mips64el') depends=('pam' 'bash' 'run-parts') -optdepends=('smtp-server: sending cron job output via email') +optdepends=('pm-utils: defer anacron when on battery power' + 'smtp-server: sending cron job output via email') source=("https://fedorahosted.org/releases/c/r/${pkgname}/${pkgname}-${pkgver}.tar.gz" 'cron.deny' @@ -65,4 +66,7 @@ package() { install -Dm755 contrib/0anacron "${pkgdir}"/etc/cron.hourly/0anacron install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/cronie/COPYING + + # Provide native service for arch-daemons generator + ln -s cronie.service "$pkgdir/usr/lib/systemd/system/crond.service" } diff --git a/core/krb5/PKGBUILD b/core/krb5/PKGBUILD index cb2fa1547..b2d9349dd 100644 --- a/core/krb5/PKGBUILD +++ b/core/krb5/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 164510 2012-08-01 10:29:03Z stephane $ +# $Id: PKGBUILD 165136 2012-08-11 13:41:56Z stephane $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> pkgname=krb5 -pkgver=1.10.2 -pkgrel=3 +pkgver=1.10.3 +pkgrel=1 pkgdesc="The Kerberos network authentication system" arch=('i686' 'x86_64' 'mips64el') url="http://web.mit.edu/kerberos/" @@ -20,9 +20,8 @@ source=(http://web.mit.edu/kerberos/dist/${pkgname}/1.10/${pkgname}-${pkgver}-si krb5-kpropd krb5-kpropd.service krb5-kpropd@.service - krb5-kpropd.socket - MITKRB5-SA-2012-001.patch) -sha1sums=('8b6e2c5bf0c65aacd368b3698add7888f2a7332d' + krb5-kpropd.socket) +sha1sums=('04ab9837e5d1958158bcb30bd6480201089a0cbb' '78b759d566b1fdefd9bbcd06df14f07f12effe96' '2aa229369079ed1bbb201a1ef72c47bf143f4dbe' 'a2a01e7077d9e89cda3457ea0e216debb3dc353c' @@ -31,8 +30,7 @@ sha1sums=('8b6e2c5bf0c65aacd368b3698add7888f2a7332d' '7f402078fa65bb9ff1beb6cbbbb017450df78560' '614401dd4ac18e310153240bb26eb32ff1e8cf5b' '023a8164f8ee7066ac814486a68bc605e79f6101' - 'f3677d30dbbd7106c581379c2c6ebb1bf7738912' - '7b32dd24e68dc801efb8be280083e4d8067e392a') + 'f3677d30dbbd7106c581379c2c6ebb1bf7738912') options=('!emptydirs') build() { @@ -48,9 +46,6 @@ build() { # FS#25384 sed -i "/KRB5ROOT=/s/\/local//" util/ac_check_krb5.m4 - # Fix KDC heap corruption and crash vulnerabilities - patch -Np2 -i ../../MITKRB5-SA-2012-001.patch - export CFLAGS+=" -fPIC -fno-strict-aliasing -fstack-protector-all" export CPPFLAGS+=" -I/usr/include/et" ./configure --prefix=/usr \ diff --git a/core/logrotate/PKGBUILD b/core/logrotate/PKGBUILD index 99d82c718..79f75cdd4 100644 --- a/core/logrotate/PKGBUILD +++ b/core/logrotate/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 162089 2012-06-19 15:44:03Z allan $ +# $Id: PKGBUILD 165168 2012-08-11 22:51:08Z pierre $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=logrotate -pkgver=3.8.1 -pkgrel=2 +pkgver=3.8.2 +pkgrel=1 pkgdesc="Rotates system logs automatically" arch=('i686' 'x86_64' 'mips64el') url="https://fedorahosted.org/logrotate/" @@ -12,23 +12,21 @@ groups=('base') depends=('popt' 'cron' 'gzip') backup=('etc/logrotate.conf') source=("https://fedorahosted.org/releases/l/o/logrotate/logrotate-${pkgver}.tar.gz" - 'logrotate-3.8.1-noasprintf.patch' + 'noasprintf.patch' + 'paths.patch' 'logrotate.conf' 'logrotate.cron.daily') -md5sums=('bd2e20d8dc644291b08f9215397d28a5' - 'fc8e4e15211d8aefd431d0e2e96223c4' +md5sums=('ddd4dcf28c38b3ac6bc6ff4e0148308a' + 'cd76976b5ce37d328b452c806b55a015' + 'e76526bcd6fc33c9d921e1cb1eff1ffb' '462a5f364717461537eb2ae6394ad23e' 'aa8ac8283908b6114483a293adcb650f') build() { cd "$srcdir/${pkgname}-${pkgver}" - patch -p1 -i "$srcdir"/logrotate-3.8.1-noasprintf.patch - - sed -e 's|#define DEFAULT_MAIL_COMMAND .*|#define DEFAULT_MAIL_COMMAND "/usr/bin/mail"|'\ - -e 's|#define COMPRESS_COMMAND .*|#define COMPRESS_COMMAND "/usr/bin/gzip"|'\ - -e 's|#define UNCOMPRESS_COMMAND .*|#define UNCOMPRESS_COMMAND "/usr/bin/gunzip"|'\ - -i config.h + patch -p0 -i "$srcdir/noasprintf.patch" + patch -p0 -i "$srcdir/paths.patch" make RPM_OPT_FLAGS="$CFLAGS" EXTRA_LDFLAGS="$LDFLAGS" } @@ -40,7 +38,7 @@ check() { package() { cd "$srcdir/${pkgname}-${pkgver}" - make PREFIX="$pkgdir" MANDIR="usr/share/man" install + make PREFIX="$pkgdir" MANDIR="/usr/share/man" install install -Dm644 "$srcdir/logrotate.conf" "$pkgdir/etc/logrotate.conf" install -Dm744 "$srcdir/logrotate.cron.daily" "$pkgdir/etc/cron.daily/logrotate" diff --git a/core/logrotate/noasprintf.patch b/core/logrotate/noasprintf.patch new file mode 100644 index 000000000..3df943b64 --- /dev/null +++ b/core/logrotate/noasprintf.patch @@ -0,0 +1,53 @@ +--- config.c 2011-06-21 04:12:02.000000000 -0400 ++++ config.c 2011-07-12 13:47:36.274319050 -0400 +@@ -41,39 +41,6 @@ + #include "asprintf.c" + #endif + +-#if !defined(asprintf) +-#include <stdarg.h> +- +-int asprintf(char **string_ptr, const char *format, ...) +-{ +- va_list arg; +- char *str; +- int size; +- int rv; +- +- va_start(arg, format); +- size = vsnprintf(NULL, 0, format, arg); +- size++; +- va_start(arg, format); +- str = malloc(size); +- if (str == NULL) { +- va_end(arg); +- /* +- * Strictly speaking, GNU asprintf doesn't do this, +- * but the caller isn't checking the return value. +- */ +- fprintf(stderr, "failed to allocate memory\\n"); +- exit(1); +- } +- rv = vsnprintf(str, size, format, arg); +- va_end(arg); +- +- *string_ptr = str; +- return (rv); +-} +- +-#endif +- + #if !defined(strndup) + char *strndup(const char *s, size_t n) + { +--- logrotate.h 2011-06-21 04:12:02.000000000 -0400 ++++ logrotate.h 2011-07-12 13:47:38.949285608 -0400 +@@ -66,8 +66,5 @@ extern int numLogs; + extern int debug; + + int readAllConfigPaths(const char **paths); +-#if !defined(asprintf) +-int asprintf(char **string_ptr, const char *format, ...); +-#endif + + #endif diff --git a/core/logrotate/paths.patch b/core/logrotate/paths.patch new file mode 100644 index 000000000..83166b095 --- /dev/null +++ b/core/logrotate/paths.patch @@ -0,0 +1,25 @@ +--- config.h 2012-08-01 12:56:47.000000000 +0200 ++++ config.h 2012-08-03 09:53:05.025039199 +0200 +@@ -27,11 +27,11 @@ + * Default settings for Linux - leave these last. + */ + #ifndef DEFAULT_MAIL_COMMAND +-#define DEFAULT_MAIL_COMMAND "/bin/mail" ++#define DEFAULT_MAIL_COMMAND "/usr/bin/mail" + #endif + + #ifndef COMPRESS_COMMAND +-#define COMPRESS_COMMAND "/bin/gzip" ++#define COMPRESS_COMMAND "/usr/bin/gzip" + #endif + + #ifndef COMPRESS_EXT +@@ -39,7 +39,7 @@ + #endif + + #ifndef UNCOMPRESS_COMMAND +-#define UNCOMPRESS_COMMAND "/bin/gunzip" ++#define UNCOMPRESS_COMMAND "/usr/bin/gunzip" + #endif + + #ifndef STATEFILE diff --git a/core/perl/PKGBUILD b/core/perl/PKGBUILD index 4da090d64..80a480f20 100644 --- a/core/perl/PKGBUILD +++ b/core/perl/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 160587 2012-06-02 10:54:59Z bluewind $ +# $Id: PKGBUILD 165149 2012-08-11 20:00:01Z bluewind $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: kevin <kevin.archlinux.org> # Contributor: judd <jvinet.zeroflux.org> # Contributor: francois <francois.archlinux.org> pkgname=perl -pkgver=5.16.0 -pkgrel=2 +pkgver=5.16.1 +pkgrel=1 pkgdesc="A highly capable, feature-rich programming language" arch=(i686 x86_64 'mips64el') license=('GPL' 'PerlArtistic') @@ -19,7 +19,7 @@ perlbin.csh provides.pl) install=perl.install options=('makeflags' '!purge') -md5sums=('15a2f95fb27231e10998240f13acf961' +md5sums=('b87358e2c461a898cfd7c334e7dd8993' '5ed2542fdb9a60682f215bd33701e61a' '1f0cbbee783e8a6d32f01be5118e0d5e' '999c3eea6464860704abbb055a0f0896') diff --git a/extra/audacity/PKGBUILD b/extra/audacity/PKGBUILD index 8bb25db14..914a7be95 100644 --- a/extra/audacity/PKGBUILD +++ b/extra/audacity/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 162721 2012-06-29 02:41:45Z eric $ +# $Id: PKGBUILD 164991 2012-08-08 01:06:53Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=audacity pkgver=2.0.1 -pkgrel=1 +pkgrel=2 pkgdesc="A program that lets you manipulate digital audio waveforms" arch=('i686' 'x86_64' 'mips64el') url="http://audacity.sourceforge.net/" license=('GPL') depends=('libmad' 'libid3tag' 'wxgtk' 'lame' 'hicolor-icon-theme' - 'desktop-file-utils' 'jack' 'soundtouch' 'ffmpeg') + 'desktop-file-utils' 'jack' 'soundtouch' 'ffmpeg-compat') options=('!makeflags') install=audacity.install source=(http://audacity.googlecode.com/files/${pkgname}-minsrc-${pkgver}.tar.bz2) @@ -17,8 +17,11 @@ sha1sums=('366a10f3bd71c4d84c29437fff1e27a8560f691b') build() { cd "${srcdir}/${pkgname}-src-${pkgver}" + [ "$CARCH" = "mips64el" ] && extra="--disable-sse" - WX_CONFIG=/usr/bin/wx-config ./configure --prefix=/usr \ + + WX_CONFIG=/usr/bin/wx-config PKG_CONFIG_PATH+="/usr/lib/ffmpeg-compat/pkgconfig" \ + ./configure --prefix=/usr \ --with-portaudio --with-libsamplerate \ --without-libresample --with-libmad \ --with-ffmpeg --with-id3tag --with-libflac \ diff --git a/extra/cmake/PKGBUILD b/extra/cmake/PKGBUILD index 4b8a39a66..3c39c107e 100644 --- a/extra/cmake/PKGBUILD +++ b/extra/cmake/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 157165 2012-04-25 06:58:42Z andrea $ +# $Id: PKGBUILD 165140 2012-08-11 16:15:35Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=cmake -pkgver=2.8.8 -pkgrel=2 +pkgver=2.8.9 +pkgrel=1 pkgdesc="A cross-platform open-source make system" arch=('i686' 'x86_64' 'mips64el') url="http://www.cmake.org/" @@ -13,17 +13,12 @@ depends=('curl' 'libarchive' 'shared-mime-info') makedepends=('qt') optdepends=('qt: cmake-gui') install="${pkgname}.install" -source=("http://www.cmake.org/files/v2.8/${pkgname}-${pkgver}.tar.gz" - 'fix-pkg-config.patch') -md5sums=('ba74b22c788a0c8547976b880cd02b17' - '32c6a4360a2ba12dc77b6a840fa7672b') +source=("http://www.cmake.org/files/v2.8/${pkgname}-${pkgver}.tar.gz") +md5sums=('801f4c87f8b604f727df5bf1f05a59e7') build() { cd "${srcdir}"/${pkgname}-${pkgver} - # FS#29545 - patch -p1 -i "${srcdir}"/fix-pkg-config.patch - ./bootstrap --prefix=/usr \ --mandir=/share/man \ --docdir=/share/doc/cmake \ diff --git a/extra/cscope/PKGBUILD b/extra/cscope/PKGBUILD index 1dc2d8d63..12f4c236b 100644 --- a/extra/cscope/PKGBUILD +++ b/extra/cscope/PKGBUILD @@ -3,18 +3,19 @@ # Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=cscope -pkgver=15.8 +pkgver=15.8.a +_realver=15.8a pkgrel=1 pkgdesc="A developers tool for browsing program code" arch=('i686' 'x86_64' 'mips64el') url="http://cscope.sourceforge.net/" license=('BSD') depends=('ncurses' 'sh') -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('7114b5838b3edcb3f5821efd444fff06') +source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${_realver}.tar.gz) +md5sums=('b5c898ccedcfe2d4aa69537dad73b610') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${_realver}" sed -i 's|/usr/local/lib/cs|/usr/lib/cs|' contrib/ocs ./configure --prefix=/usr @@ -22,7 +23,7 @@ build() { } package() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}/${pkgname}-${_realver}" make DESTDIR="${pkgdir}" install install -d ${pkgdir}/usr/lib/cs @@ -32,3 +33,4 @@ package() { install -Dm644 xcscope.el "${pkgdir}"/usr/share/emacs/site-lisp/xcscope.el install -m755 cscope-indexer "${pkgdir}"/usr/bin } + diff --git a/extra/cups/PKGBUILD b/extra/cups/PKGBUILD index 5c9612235..877673b1b 100644 --- a/extra/cups/PKGBUILD +++ b/extra/cups/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 164782 2012-08-05 08:32:04Z andyrtr $ +# $Id: PKGBUILD 165095 2012-08-10 13:32:19Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgbase="cups" pkgname=('libcups' 'cups') pkgver=1.6.1 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64' 'mips64el') license=('GPL') url="http://www.cups.org/" @@ -18,7 +18,8 @@ source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2 cups cups.logrotate cups.pam cupsd-conf-remove-obsolete-browse-directives.patch avahi-missing-in-conditionals.patch - recognize-remote-cups-queue-via-dnssd-uri.patch) + recognize-remote-cups-queue-via-dnssd-uri.patch + usb-backend-reset-after-job-only-for-specific-devices.patch) #options=('!emptydirs') md5sums=('87ade07e3d1efd03c9c3add949cf9c00' '9b8467a1e51d360096b70e2c3c081e6c' @@ -30,7 +31,8 @@ md5sums=('87ade07e3d1efd03c9c3add949cf9c00' '96f82c38f3f540b53f3e5144900acf17' '6bef262b5081051e88cd2ae94fed1867' '9c91b1319f4b20dc323986cb4abbe806' - 'dcef8dd5614461166cada8a706eebb49') + 'dcef8dd5614461166cada8a706eebb49' + '0779ef8ba1d724ebb3b9bf360deba52b') build() { cd ${srcdir}/${pkgbase}-${pkgver} @@ -54,6 +56,8 @@ build() { patch -Np1 -i ${srcdir}/avahi-missing-in-conditionals.patch # http://www.cups.org/str.php?L4158 - DNS-SD-based print queues pointing to CUPS server are not considered remote printers with driver on server patch -Np1 -i ${srcdir}/recognize-remote-cups-queue-via-dnssd-uri.patch + # http://cups.org/str.php?L4155 / https://bugs.archlinux.org/task/30965 + patch -Np0 -i ${srcdir}/usb-backend-reset-after-job-only-for-specific-devices.patch # Rebuild configure script for not zipping man-pages. aclocal -I config-scripts diff --git a/extra/cups/cups.install b/extra/cups/cups.install index cea52282e..fc015f951 100644 --- a/extra/cups/cups.install +++ b/extra/cups/cups.install @@ -24,6 +24,11 @@ post_upgrade() { echo "* check your config with cupsd -t" echo " and fix all Browsing related settings" fi + if [ "`vercmp $2 1.6.1-3`" -lt 0 ]; then + # important upgrade notice + echo "> It's now safe to load usblp kernel module." + echo "> There's no more need to blacklist it." + fi } post_remove() { diff --git a/extra/cups/usb-backend-reset-after-job-only-for-specific-devices.patch b/extra/cups/usb-backend-reset-after-job-only-for-specific-devices.patch new file mode 100644 index 000000000..dcf91c833 --- /dev/null +++ b/extra/cups/usb-backend-reset-after-job-only-for-specific-devices.patch @@ -0,0 +1,74 @@ +--- backend/usb-libusb.c.orig 2012-07-16 19:10:55.000000000 +0200 ++++ backend/usb-libusb.c 2012-08-06 11:01:58.034150159 +0200 +@@ -70,7 +70,7 @@ + read_endp, /* Read endpoint */ + protocol, /* Protocol: 1 = Uni-di, 2 = Bi-di. */ + usblp_attached, /* "usblp" kernel module attached? */ +- opened_for_job; /* Set to 1 by print_device() */ ++ reset_after_job; /* Set to 1 by print_device() */ + unsigned int quirks; /* Quirks flags */ + struct libusb_device_handle *handle; /* Open handle to device */ + } usb_printer_t; +@@ -122,6 +122,8 @@ + #define USBLP_QUIRK_USB_INIT 0x2 /* needs vendor USB init string */ + #define USBLP_QUIRK_BAD_CLASS 0x4 /* descriptor uses vendor-specific + Class or SubClass */ ++#define USBLP_QUIRK_RESET 0x4000 /* After printing do a reset ++ for clean-up */ + #define USBLP_QUIRK_NO_REATTACH 0x8000 /* After printing we cannot re-attach + the usblp kernel module */ + +@@ -147,9 +149,11 @@ + { 0x04b8, 0x0202, USBLP_QUIRK_BAD_CLASS }, /* Seiko Epson Receipt + Printer M129C */ + { 0x067b, 0x2305, USBLP_QUIRK_BIDIR | +- USBLP_QUIRK_NO_REATTACH }, ++ USBLP_QUIRK_NO_REATTACH | ++ USBLP_QUIRK_RESET }, + /* Prolific Technology, Inc. PL2305 Parallel Port + (USB -> Parallel adapter) */ ++ { 0x04e8, 0x0000, USBLP_QUIRK_RESET }, /* All Samsung devices */ + { 0, 0 } + }; + +@@ -256,7 +260,12 @@ + } + + g.print_fd = print_fd; +- g.printer->opened_for_job = 1; ++ ++ /* ++ * Some devices need a reset after finishing a job, these devices are ++ * marked with the USBLP_QUIRK_RESET quirk. ++ */ ++ g.printer->reset_after_job = (g.printer->quirks & USBLP_QUIRK_RESET ? 1 : 0); + + /* + * If we are printing data from a print driver on stdin, ignore SIGTERM +@@ -772,7 +781,7 @@ + * Reset the device to clean up after the job + */ + +- if (printer->opened_for_job == 1) ++ if (printer->reset_after_job == 1) + { + if ((errcode = libusb_reset_device(printer->handle)) < 0) + fprintf(stderr, +@@ -1288,7 +1297,7 @@ + } + + printer->usblp_attached = 0; +- printer->opened_for_job = 0; ++ printer->reset_after_job = 0; + + if (verbose) + fputs("STATE: +connecting-to-device\n", stderr); +@@ -1586,7 +1595,7 @@ + for (i = 0; quirk_printers[i].vendorId; i++) + { + if (vendor == quirk_printers[i].vendorId && +- product == quirk_printers[i].productId) ++ (product == 0x0000 || product == quirk_printers[i].productId)) + return quirk_printers[i].quirks; + } + return 0; diff --git a/extra/digikam/PKGBUILD b/extra/digikam/PKGBUILD index ae18211dd..300f2c081 100644 --- a/extra/digikam/PKGBUILD +++ b/extra/digikam/PKGBUILD @@ -1,12 +1,12 @@ -# $Id: PKGBUILD 164839 2012-08-06 23:09:37Z andrea $ +# $Id: PKGBUILD 165014 2012-08-08 19:37:59Z ronald $ # Maintainer: Ronald van Haren <ronald@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Tobias Powalowski <tpowa@archlinux.org> pkgbase=digikam pkgname=('digikam' 'kipi-plugins' 'libkface' 'libkgeomap' 'libkvkontakte' 'libmediawiki') -pkgver=2.7.0 -pkgrel=2 +pkgver=2.8.0 +pkgrel=1 pkgdesc="Digital photo management application for KDE" arch=('i686' 'x86_64' 'mips64el') license=('GPL') @@ -15,7 +15,7 @@ makedepends=('kdepimlibs' 'libkexiv2' 'libkdcraw' 'libkipi' 'libksane' 'liblqr' 'kdeedu-marble' 'opencv' 'boost' 'libgpod' 'qjson' 'hugin' 'cmake' 'automoc4' 'doxygen') source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -sha1sums=('43f51c389984538025f185acf8902a923eb0268b') +sha1sums=('43672f7f46e53f9a71516f79aa700d77143cecf5') build() { cd "${srcdir}" diff --git a/extra/gnucash/PKGBUILD b/extra/gnucash/PKGBUILD index d37be36ab..93502f0a3 100644 --- a/extra/gnucash/PKGBUILD +++ b/extra/gnucash/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 150910 2012-02-23 13:59:07Z juergen $ +# $Id: PKGBUILD 165143 2012-08-11 18:49:18Z eric $ # Maintainer: Aaron Griffin <aaron@archlinux.org> # Contributor: Mark Schneider <queueRAM@gmail.com> pkgname=gnucash -pkgver=2.4.10 +pkgver=2.4.11 pkgrel=1 pkgdesc="A personal and small-business financial-accounting application" arch=('i686' 'x86_64' 'mips64el') @@ -17,7 +17,7 @@ optdepends=('evince: for print preview' options=('!libtool' '!makeflags' '!emptydirs') install=gnucash.install source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('b1906f8143406fdf8cb5217233143cc08e708b99') +sha1sums=('c157ad7ea0960c71966f5071acd9018580ece538') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/gparted/PKGBUILD b/extra/gparted/PKGBUILD index afa6e4e8b..c210e7909 100644 --- a/extra/gparted/PKGBUILD +++ b/extra/gparted/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 163532 2012-07-14 18:17:58Z giovanni $ +# $Id: PKGBUILD 165018 2012-08-08 23:33:07Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Andrew Simmons <andrew.simmons@gmail.com> # Contributor: György Balló <ballogy@freestart.hu> pkgname=gparted -pkgver=0.13.0 +pkgver=0.13.1 pkgrel=1 pkgdesc="A Partition Magic clone, frontend to GNU Parted" arch=('i686' 'x86_64' 'mips64el') @@ -24,7 +24,7 @@ optdepends=('dosfstools: for FAT16 and FAT32 partitions' install=gparted.install source=("http://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.bz2" 'org.archlinux.pkexec.gparted.policy') -md5sums=('6977d89ade1c81ccb8310dae0a0d3509' +md5sums=('2c3f88fbdd0b43bfe4d843f6dc8063f2' '27c264cfad8fa413d75954dda7a2dd50') build() { diff --git a/extra/imagemagick/PKGBUILD b/extra/imagemagick/PKGBUILD index bd7a46067..b55b56812 100644 --- a/extra/imagemagick/PKGBUILD +++ b/extra/imagemagick/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 164013 2012-07-23 22:32:35Z eric $ +# $Id: PKGBUILD 165104 2012-08-11 06:10:43Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgbase=imagemagick pkgname=('imagemagick' 'imagemagick-doc') -pkgver=6.7.8.7 +pkgver=6.7.8.9 pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url="http://www.imagemagick.org/" @@ -12,6 +12,8 @@ makedepends=('libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript' \ 'openexr' 'libwmf' 'librsvg' 'libxml2' 'jasper' 'liblqr') source=(ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz \ perlmagick.rpath.patch) +sha1sums=('531a150014119573a04eed28df6192137f4799bc' + '23405f80904b1de94ebd7bd6fe2a332471b8c283') build() { cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.} @@ -78,5 +80,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=('c12aa1fafac9ebdca42464ba872fac86' - 'ff9974decbfe9846f8e347239d87e4eb') diff --git a/extra/kdeadmin/PKGBUILD b/extra/kdeadmin/PKGBUILD index 48a88ebb9..2e1e4ffe9 100644 --- a/extra/kdeadmin/PKGBUILD +++ b/extra/kdeadmin/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 164873 2012-08-06 23:16:11Z andrea $ +# $Id: PKGBUILD 164959 2012-08-07 15:57:09Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> @@ -8,9 +8,8 @@ pkgname=('kdeadmin-kcron' 'kdeadmin-kuser' 'kdeadmin-system-config-printer-kde') pkgver=4.9.0 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64' 'mips64el') -url='http://www.kde.org' license=('GPL' 'LGPL' 'FDL') groups=('kde' 'kdeadmin') makedepends=('cmake' 'automoc4' 'kdebindings-python2' 'system-config-printer-common') @@ -37,6 +36,7 @@ build() { package_kdeadmin-kcron() { pkgdesc='Configure and schedule tasks' + url='http://userbase.kde.org/KCron' depends=('kdelibs') cd $srcdir/build/kcron make DESTDIR=$pkgdir install @@ -71,6 +71,8 @@ package_kdeadmin-system-config-printer-kde() { url="http://kde.org/applications/system/printerapplet/" cd $srcdir/build/system-config-printer-kde make DESTDIR=$pkgdir install + cd $srcdir/build/doc/system-config-printer-kde + make DESTDIR=$pkgdir install # Use the python2 executable sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' \ diff --git a/extra/kdepim/PKGBUILD b/extra/kdepim/PKGBUILD index 5555bbf7a..2d1c1703d 100644 --- a/extra/kdepim/PKGBUILD +++ b/extra/kdepim/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 164921 2012-08-06 23:20:54Z andrea $ +# $Id: PKGBUILD 164965 2012-08-07 16:32:21Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> @@ -18,9 +18,10 @@ pkgname=('kdepim-akonadiconsole' 'kdepim-korganizer' 'kdepim-kresources' 'kdepim-ktimetracker' + 'kdepim-ktnef' 'kdepim-libkdepim') pkgver=4.9.0 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64' 'mips64el') url='http://pim.kde.org' license=('GPL' 'LGPL' 'FDL') @@ -89,6 +90,10 @@ package_kdepim-console() { install='kdepim.install' cd "${srcdir}"/build/console make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/kabcclient + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/konsolekalendar + make DESTDIR="${pkgdir}" install } package_kdepim-kaddressbook() { @@ -137,6 +142,8 @@ package_kdepim-kleopatra() { make DESTDIR="${pkgdir}" install cd "${srcdir}"/build/doc/kleopatra make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/kwatchgnupg + make DESTDIR="${pkgdir}" install } package_kdepim-kmail() { @@ -148,8 +155,9 @@ package_kdepim-kmail() { 'kdepim-mimelib' 'kdepim-plugins') replaces=('kdepim-kmailcvt' 'kdepim-ksendemail' 'kdepim-libksieve' 'kdepim-mimelib' 'kdepim-plugins') - for i in kmail doc/kmail kmailcvt importwizard ksendemail libksieve \ - messagelist mailfilteragent mailimporter ontologies kontact/plugins/kmail; do + for i in kmail doc/kmail kmailcvt archivemailagent backupmail \ + importwizard ksendemail libksieve messagelist mailfilteragent \ + mailimporter ontologies kontact/plugins/kmail; do cd "${srcdir}"/build/${i} make DESTDIR="${pkgdir}" install done @@ -164,6 +172,8 @@ package_kdepim-knode() { make DESTDIR="${pkgdir}" install cd "${srcdir}"/build/doc/knode make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/kioslave/news + make DESTDIR="${pkgdir}" install cd "${srcdir}"/build/kontact/plugins/knode make DESTDIR="${pkgdir}" install } @@ -189,7 +199,7 @@ package_kdepim-kontact() { conflcits=('kdepim-kontactinterfaces') replaces=('kdepim-kontactinterfaces') for i in kontact/src doc/kontact kontact/plugins/summary \ - kontact/plugins/specialdates; do + kontact/plugins/specialdates doc/kontact-admin; do cd "${srcdir}"/build/${i} make DESTDIR="${pkgdir}" install done @@ -228,6 +238,16 @@ package_kdepim-ktimetracker() { make DESTDIR="${pkgdir}" install } +package_kdepim-ktnef() { + pkgdesc='A viewer/extractor for TNEF files' + depends=('kdepim-libkdepim') + url="https://projects.kde.org/projects/kde/kdepim/ktnef" + cd "${srcdir}"/build/ktnef + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/ktnef + make DESTDIR="${pkgdir}" install +} + package_kdepim-libkdepim() { pkgdesc='Library for KDE PIM' groups=() @@ -238,10 +258,10 @@ package_kdepim-libkdepim() { replaces=('kdepim-icons' 'kdepim-libkleo' 'kdepim-libkpgp' 'kdepim-strigi-analyzer' 'kdepim-akonadi') for i in akonadi_next calendarsupport incidenceeditor-ng \ - kdgantt2 libkdepim libkdepimdbusinterfaces libkleo libkpgp \ - mailcommon messagecomposer messagecore messageviewer icons \ - strigi-analyzer templateparser plugins/messageviewer \ - plugins/ktexteditor; do + kdgantt2 libkdepim libkdepimdbusinterfaces libkleo libkpgp \ + mailcommon messagecomposer messagecore messageviewer icons \ + strigi-analyzer templateparser plugins/messageviewer \ + plugins/ktexteditor; do cd "${srcdir}"/build/${i} make DESTDIR="${pkgdir}" install done diff --git a/extra/kradio/PKGBUILD b/extra/kradio/PKGBUILD index 75e8b759d..5c268a48b 100644 --- a/extra/kradio/PKGBUILD +++ b/extra/kradio/PKGBUILD @@ -1,21 +1,21 @@ -# $Id: PKGBUILD 163153 2012-07-08 09:31:40Z ibiru $ +# $Id: PKGBUILD 164981 2012-08-07 18:56:07Z eric $ # Maintainer: # Contributor: Tobias Powalowski <tpowa@archlinux.org> pkgname=kradio -pkgver=4.0.4 -pkgrel=2 +pkgver=4.0.5 +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') license=('GPL2') pkgdesc="A comfortable KDE internet and AM/FM radio application" url="http://kradio.sourceforge.net/" depends=('kdebase-runtime' 'libmms' 'ffmpeg') [ "$CARCH" != "mips64el" ] && depends+=('lirc-utils') -makedepends=('automoc4' 'cmake') +makedepends=('automoc4' 'cmake' 'boost') install=$pkgname.install source=("http://downloads.sourceforge.net/$pkgname/kradio4-$pkgver.tar.bz2"{,.asc}) -md5sums=('4b5495a4f1dda21f7201bc8db0d4f95e' - '51c6d4ec0047d2df595b458bde285012') +md5sums=('d2ce6b9c12e66c8cdb300013aa0cb26a' + '3faef5c46547b14804839f367fd09d29') build() { cd "$srcdir" diff --git a/extra/libexif/PKGBUILD b/extra/libexif/PKGBUILD index 03a2ea626..5526df989 100644 --- a/extra/libexif/PKGBUILD +++ b/extra/libexif/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 151067 2012-02-24 17:47:48Z ibiru $ +# $Id: PKGBUILD 165030 2012-08-09 08:16:11Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Tobias Kieslich <tobias@justdreams.de> pkgname=libexif -pkgver=0.6.20 -pkgrel=2 +pkgver=0.6.21 +pkgrel=1 pkgdesc="A library to parse an EXIF file and read the data from those tags" arch=(i686 x86_64 'mips64el') license=('LGPL') @@ -12,7 +12,7 @@ url="http://sourceforge.net/projects/libexif" depends=('glibc') options=('!libtool') source=(http://downloads.sf.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('19844ce6b5d075af16f0d45de1e8a6a3') +md5sums=('27339b89850f28c8f1c237f233e05b27') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/libguess/PKGBUILD b/extra/libguess/PKGBUILD index 4cd4ec315..ac0e00aa2 100644 --- a/extra/libguess/PKGBUILD +++ b/extra/libguess/PKGBUILD @@ -1,14 +1,14 @@ -# $Id: PKGBUILD 144020 2011-12-02 00:37:26Z bisson $ +# $Id: PKGBUILD 165081 2012-08-10 03:55:30Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Kemka Andrey <dr.andru@gmail.com> pkgname=libguess pkgver=1.1 -pkgrel=1 +pkgrel=2 pkgdesc='High-speed character set detection library' url='http://atheme.org/project/libguess' -license=('BSD') +license=('custom') depends=('libmowgli') arch=('i686' 'x86_64' 'mips64el') source=("http://distfiles.atheme.org/libguess-${pkgver}.tar.gz") @@ -16,6 +16,7 @@ sha1sums=('2760e63b71497506208f9d6269ec52f83bfc6f0b') build() { cd "${srcdir}/${pkgname}-${pkgver}" + sed 's/libmowgli >= 0.9.50/libmowgli-2/g' -i configure ./configure --prefix=/usr make } diff --git a/extra/libimobiledevice/HOME-segfault.patch b/extra/libimobiledevice/HOME-segfault.patch new file mode 100644 index 000000000..e48e6cb42 --- /dev/null +++ b/extra/libimobiledevice/HOME-segfault.patch @@ -0,0 +1,14 @@ +The patch fixes segfault when both $XDG_CONFIG_HOME and $HOME are unset +Signed-off-by: Maxim Mikityanskiy <maxtram95@gmail.com> +--- src/userpref.c.orig 2012-06-04 17:04:57.387303630 +0300 ++++ src/userpref.c 2012-06-04 17:06:05.741301627 +0300 +@@ -125,6 +125,9 @@ + const char *cdir = getenv("XDG_CONFIG_HOME"); + if (!cdir) { + cdir = getenv("HOME"); ++ if (!cdir) { ++ cdir="/root"; ++ } + strcpy(__config_dir, cdir); + strcat(__config_dir, DIR_SEP_S); + strcat(__config_dir, ".config"); diff --git a/extra/libmowgli/PKGBUILD b/extra/libmowgli/PKGBUILD index 7d4ca777a..aa8778f3e 100644 --- a/extra/libmowgli/PKGBUILD +++ b/extra/libmowgli/PKGBUILD @@ -1,19 +1,19 @@ -# $Id: PKGBUILD 144018 2011-12-02 00:36:56Z bisson $ +# $Id: PKGBUILD 165079 2012-08-10 03:54:41Z bisson $ # Contributor: Alexander Fehr <pizzapunk gmail com> # Contributor: Brad Gordon <brad@rpgcyco.net> # Maintainer: Gaetan Bisson <bisson@archlinux.org> pkgname=libmowgli -pkgver=1.0.0 +pkgver=2.0.0 pkgrel=1 pkgdesc='Performance and usability-oriented extensions to C' url='http://www.atheme.org/project/mowgli' license=('custom') depends=('glibc') arch=('i686' 'x86_64' 'mips64el') -source=("http://distfiles.atheme.org/${pkgname}-${pkgver}.tar.gz") -sha1sums=('403473582e3086c1acaafed59b9915f29a5d0ce0') +source=("http://atheme.org/downloads/${pkgname}-${pkgver}.tar.gz") +sha1sums=('5a697380f253f0456a5d8a38006a9d12847fb538') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/libofx/PKGBUILD b/extra/libofx/PKGBUILD index 2d8983d95..b82443e8b 100644 --- a/extra/libofx/PKGBUILD +++ b/extra/libofx/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 127929 2011-06-20 00:18:32Z eric $ +# $Id: PKGBUILD 165144 2012-08-11 18:49:23Z eric $ # Maintainer: Aaron Griffin <aaron@archlinux.org> pkgbase=libofx pkgname=('libofx' 'libofx-doc') -pkgver=0.9.4 +pkgver=0.9.5 pkgrel=1 pkgdesc="API for the OFX banking standard" arch=('i686' 'x86_64' 'mips64el') @@ -11,12 +11,13 @@ url="http://libofx.sourceforge.net" license=('GPL') depends=('opensp' 'curl' 'libxml++') checkdepends=('gnupg') -source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('f2419bf8d01c0cff74efe7084e0a26c5') -sha1sums=('7370245c011ac4ea9313ba24a88c70e0eb9c317b') +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz libofx-gcc47.patch) +sha1sums=('7e5245d68a0f3f7efad2fd809b2afbbff6ba0e73' + '6c327e24543cb8ba901bfb204343a85c68264654') build() { cd "$srcdir/$pkgbase-$pkgver" + patch -p1 -i "$srcdir/libofx-gcc47.patch" ./configure --prefix=/usr make } diff --git a/extra/libofx/libofx-gcc47.patch b/extra/libofx/libofx-gcc47.patch new file mode 100644 index 000000000..899fe09e0 --- /dev/null +++ b/extra/libofx/libofx-gcc47.patch @@ -0,0 +1,11 @@ +diff -Nru libofx-0.9.4/debian/patches/fix-ftbfs-gcc4.7.diff libofx-0.9.4/debian/patches/fix-ftbfs-gcc4.7.diff +--- libofx-0.9.4.orig/ofxconnect/ofxpartner.cpp 2011-03-30 22:30:50.000000000 +0000 ++++ libofx-0.9.4/ofxconnect/ofxpartner.cpp 2012-04-17 06:08:38.711940892 +0000 +@@ -37,6 +37,7 @@ + #include <vector> + #include <algorithm> + #include <string.h> ++#include <unistd.h> + + using std::string; + using std::vector; diff --git a/extra/libspectre/PKGBUILD b/extra/libspectre/PKGBUILD index dc0eb14fb..f645f8d0f 100644 --- a/extra/libspectre/PKGBUILD +++ b/extra/libspectre/PKGBUILD @@ -1,17 +1,17 @@ -# $Id: PKGBUILD 151274 2012-02-25 10:45:30Z allan $ +# $Id: PKGBUILD 165038 2012-08-09 11:32:27Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libspectre -pkgver=0.2.6 -pkgrel=3 +pkgver=0.2.7 +pkgrel=1 pkgdesc="Small library for rendering Postscript documents" arch=('i686' 'x86_64' 'mips64el') license=('GPL2') -url="http://libspectre.freedesktop.org/wiki/" +url="http://www.freedesktop.org/wiki/Software/libspectre" depends=('ghostscript>=9.00') options=('!libtool') source=(http://libspectre.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz) -sha1sums=('819475c7e34a1e9bc2e876110fee530b42aecabd') +sha1sums=('a7efd97b82b84ff1bb7a0d88c7e35ad10cc84ea8') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/libxrandr/PKGBUILD b/extra/libxrandr/PKGBUILD index 21f4de688..babd12df0 100644 --- a/extra/libxrandr/PKGBUILD +++ b/extra/libxrandr/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 143893 2011-11-30 19:05:26Z andrea $ +# $Id: PKGBUILD 165113 2012-08-11 08:21:35Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: Alexander Baldeck <alexander@archlinux.org> pkgname=libxrandr -pkgver=1.3.2 -pkgrel=2 +pkgver=1.4.0 +pkgrel=1 pkgdesc="X11 RandR extension library" arch=('i686' 'x86_64' 'mips64el') license=('custom') url="http://xorg.freedesktop.org/" -depends=('libxext' 'libxrender' 'randrproto') +depends=('libxext' 'libxrender' 'randrproto>=1.4.0') makedepends=('xorg-util-macros') options=('!libtool') source=(${url}/releases/individual/lib/libXrandr-${pkgver}.tar.bz2) -sha1sums=('0c844a4c5237f96794f0c18a5af16dc5ab7a36ec') +sha256sums=('033ad0ac2f012afb05268660f6d78705c85f84689f92fa7b47ce12959b15f5c3') build() { cd "${srcdir}/libXrandr-${pkgver}" diff --git a/extra/lilv/PKGBUILD b/extra/lilv/PKGBUILD new file mode 100644 index 000000000..d9db5de53 --- /dev/null +++ b/extra/lilv/PKGBUILD @@ -0,0 +1,42 @@ +# $Id: PKGBUILD 72422 2012-06-14 07:51:14Z speps $ +# Maintainer: speps <speps at aur dot archlinux dot org> + +pkgname=lilv +pkgver=0.14.2 +pkgrel=1 +pkgdesc="A library to make the use of LV2 plugins as simple as possible for applications." +arch=(i686 x86_64) +url="http://drobilla.net/software/$pkgname/" +license=('custom:ISC') +depends=('python2' 'sratom' 'jack') +makedepends=('swig') +optdepends=('bash-completion: auto-complete words') +source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2") +md5sums=('1aea6761f3e44007c0fb4eb20630655d') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + export PYTHON="/usr/bin/python2" + + # remove ldconfig + sed -i "/ldconfig/d" wscript + + python2 ./waf configure --prefix=/usr \ + --mandir=/usr/share/man \ + --configdir=/etc \ + --dyn-manifest \ + --bindings + python2 ./waf +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + DESTDIR="$pkgdir" python2 ./waf install + + # license + install -Dm644 COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/extra/live-media/PKGBUILD b/extra/live-media/PKGBUILD index ba7a8357d..20b4da0ae 100644 --- a/extra/live-media/PKGBUILD +++ b/extra/live-media/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 164191 2012-07-27 09:30:54Z giovanni $ +# $Id: PKGBUILD 165022 2012-08-09 00:07:34Z giovanni $ # Maintainer: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Gilles CHAUVIN <gcnweb@gmail.com> pkgname=live-media -pkgver=2012.07.26 +pkgver=2012.08.08 pkgrel=1 pkgdesc="A set of C++ libraries for multimedia streaming" arch=('i686' 'x86_64' 'mips64el') @@ -11,7 +11,7 @@ license=('LGPL') url="http://live555.com/liveMedia" depends=('gcc-libs') source=("http://live555.com/liveMedia/public/live.${pkgver}.tar.gz") -md5sums=('18374e9f6681f62ab7c987ca0029d494') +md5sums=('4736e19a3d38c7f9a8b81d78685d8aee') build() { cd ${srcdir}/live diff --git a/extra/llvm/PKGBUILD b/extra/llvm/PKGBUILD index cae3d2931..5f5306e5e 100644 --- a/extra/llvm/PKGBUILD +++ b/extra/llvm/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 163974 2012-07-23 03:57:55Z foutrelis $ +# $Id: PKGBUILD 165098 2012-08-10 21:21:52Z foutrelis $ # Maintainer: Evangelos Foutras <evangelos@foutrelis.com> # Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> # Contributor: Sebastian Nowicki <sebnow@gmail.com> @@ -11,7 +11,7 @@ pkgname=('llvm' 'llvm-ocaml' 'clang' 'clang-analyzer') pkgver=3.1 -pkgrel=3 +pkgrel=4 arch=('i686' 'x86_64' 'mips64el') url="http://llvm.org/" license=('custom:University of Illinois/NCSA Open Source License') @@ -24,6 +24,7 @@ source=(http://llvm.org/releases/$pkgver/$pkgname-$pkgver.src.tar.gz cindexer-clang-path.patch clang-pure64.patch enable-lto.patch + llvm-3.1-fix-debug-line-info.patch clang-3.1-fix-libprofile_rt.a-location.patch) sha256sums=('1ea05135197b5400c1f88d00ff280d775ce778f8f9ea042e25a1e1e734a4b9ab' 'ff63e215dcd3e2838ffdea38502f8d35bab17e487f3c3799579961e452d5a786' @@ -33,6 +34,7 @@ sha256sums=('1ea05135197b5400c1f88d00ff280d775ce778f8f9ea042e25a1e1e734a4b9ab' '3074df5322900e087377a8e03a02115463ccc0011c25917c2f06df11facd9b92' '288a82fbff17bc554f5863734246500e637882af33ee8511019d5e0d6cd20524' 'f7145e203ffb4ce2c01976027f7840a9520e5341a9945f2459b6b11e5422d5b7' + 'db1f1aadebbc4c4232bdad49fb9b7dc61eac727085c63154b870fa9ce64fd18d' '0d32ad283566357ca1bfbeb4cbe6b0b961943b79d3d718ed0435101c05629137') build() { @@ -79,6 +81,10 @@ build() { patch -d tools/clang -Np1 -i \ "$srcdir/clang-3.1-fix-libprofile_rt.a-location.patch" + # Fix FS#31098: LLVM 3.1 produces invalid debug information + # http://llvm.org/bugs/show_bug.cgi?id=13211 + patch -Np1 -i "$srcdir/llvm-3.1-fix-debug-line-info.patch" + # Apply strip option to configure _optimized_switch="enable" [[ $(check_option strip) == n ]] && _optimized_switch="disable" diff --git a/extra/llvm/llvm-3.1-fix-debug-line-info.patch b/extra/llvm/llvm-3.1-fix-debug-line-info.patch new file mode 100644 index 000000000..de2d46b61 --- /dev/null +++ b/extra/llvm/llvm-3.1-fix-debug-line-info.patch @@ -0,0 +1,65 @@ +From 737fdba46f2b2b7d39bc728d15ea2334c44779e0 Mon Sep 17 00:00:00 2001 +From: Ben Longbons <b.r.longbons@gmail.com> +Date: Fri, 29 Jun 2012 12:58:34 -0700 +Subject: [PATCH] Revert "Patch to set is_stmt a little better for prologue + lines in a function." + +This meants that the debugger could find meaningful line information. + +This reverts commit 60b35f408bc3194e7ea4e96367c0b42dc5e7f850. +--- + lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 7 ++----- + test/DebugInfo/X86/ending-run.ll | 6 ++---- + 2 files changed, 4 insertions(+), 9 deletions(-) + +diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +index 3e79a6d..24aedfb 100644 +--- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp ++++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +@@ -1093,15 +1093,12 @@ void DwarfDebug::beginInstruction(const MachineInstr *MI) { + if (!MI->isDebugValue()) { + DebugLoc DL = MI->getDebugLoc(); + if (DL != PrevInstLoc && (!DL.isUnknown() || UnknownLocations)) { +- unsigned Flags = 0; ++ unsigned Flags = DWARF2_FLAG_IS_STMT; + PrevInstLoc = DL; + if (DL == PrologEndLoc) { + Flags |= DWARF2_FLAG_PROLOGUE_END; + PrologEndLoc = DebugLoc(); + } +- if (PrologEndLoc.isUnknown()) +- Flags |= DWARF2_FLAG_IS_STMT; +- + if (!DL.isUnknown()) { + const MDNode *Scope = DL.getScope(Asm->MF->getFunction()->getContext()); + recordSourceLine(DL.getLine(), DL.getCol(), Scope, Flags); +@@ -1382,7 +1379,7 @@ void DwarfDebug::beginFunction(const MachineFunction *MF) { + MF->getFunction()->getContext()); + recordSourceLine(FnStartDL.getLine(), FnStartDL.getCol(), + FnStartDL.getScope(MF->getFunction()->getContext()), +- 0); ++ DWARF2_FLAG_IS_STMT); + } + } + +diff --git a/test/DebugInfo/X86/ending-run.ll b/test/DebugInfo/X86/ending-run.ll +index 6935c47..0cd3de1 100644 +--- a/test/DebugInfo/X86/ending-run.ll ++++ b/test/DebugInfo/X86/ending-run.ll +@@ -1,11 +1,9 @@ + ; RUN: llc -mtriple=x86_64-apple-darwin %s -o %t -filetype=obj + ; RUN: llvm-dwarfdump %t | FileCheck %s + +-; Check that the line table starts at 7, not 4, but that the first +-; statement isn't until line 8. ++; Check that the line table starts at 7, not 4. + +-; CHECK-NOT: 0x0000000000000000 7 0 1 0 is_stmt +-; CHECK: 0x0000000000000000 7 0 1 0 ++; CHECK: 0x0000000000000000 7 0 1 0 is_stmt + ; CHECK: 0x0000000000000004 8 18 1 0 is_stmt prologue_end + + define i32 @callee(i32 %x) nounwind uwtable ssp { +-- +1.7.10 + diff --git a/extra/metacity/PKGBUILD b/extra/metacity/PKGBUILD index 1df8330b8..8ff77f984 100644 --- a/extra/metacity/PKGBUILD +++ b/extra/metacity/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 156930 2012-04-23 09:09:17Z ibiru $ +# $Id: PKGBUILD 165026 2012-08-09 07:46:44Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=metacity -pkgver=2.34.3 +pkgver=2.34.5 pkgrel=1 pkgdesc="A window manager for GNOME" arch=(i686 x86_64 'mips64el') @@ -14,7 +14,7 @@ groups=('gnome') options=('!libtool' '!emptydirs') install=metacity.install source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz) -sha256sums=('aeac2548b62a98375fb5c832ee26ab4cb6d59f0dd96edcefb5f7bef2416576e7') +sha256sums=('8e0712d4e3a4402b6b818348019dd864999585dda624a6ac0d44bf6a37ed2534') build() { cd "$pkgname-$pkgver" diff --git a/extra/monodevelop-debugger-gdb/PKGBUILD b/extra/monodevelop-debugger-gdb/PKGBUILD index ada06e80e..6170cb7b6 100644 --- a/extra/monodevelop-debugger-gdb/PKGBUILD +++ b/extra/monodevelop-debugger-gdb/PKGBUILD @@ -1,16 +1,18 @@ +# $Id: PKGBUILD 165115 2012-08-11 08:21:45Z andyrtr $ # Maintainer: Daniel Isenmann <daniel@archlinux.org> pkgname=monodevelop-debugger-gdb -pkgver=2.8.8.4 +pkgver=3.0.3.5 pkgrel=1 pkgdesc="Mono Debugger support" -arch=('i686' 'x86_64') +arch=('i686' 'x86_64') # also "any" pkg? url="http://monodevelop.com" license=('GPL') -depends=('monodevelop>=2.8.8.4' 'gdb') +depends=('monodevelop>=3.0.3.5-2' 'gdb') makedepends=('mono') +options=('!makeflags') source=(http://download.mono-project.com/sources/$pkgname/$pkgname-$pkgver.tar.bz2) -md5sums=('c198ea4970d3fc307ce0fa457ed52e61') +md5sums=('c16da5cdbda46fb32e0dc730bb433203') build() { export MONO_SHARED_DIR="${srcdir}/.wabi" @@ -19,7 +21,7 @@ build() { cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr - make || return 1 + make } package() { diff --git a/extra/monodevelop/PKGBUILD b/extra/monodevelop/PKGBUILD index 5ee06b122..2ba30d678 100644 --- a/extra/monodevelop/PKGBUILD +++ b/extra/monodevelop/PKGBUILD @@ -1,32 +1,41 @@ +# $Id: PKGBUILD 165114 2012-08-11 08:21:42Z andyrtr $ # Maintainer: Daniel Isenmann <daniel@archlinux.org> # Contributor: Timm Preetz <timm@preetz.us> # Contributor: Giovanni Scafora <giovanni@archlinux.org> pkgname=monodevelop -pkgver=2.8.8.4 -pkgrel=1 +pkgver=3.0.3.5 +pkgrel=2 pkgdesc="An IDE primarily designed for C# and other .NET languages" + +# should probably changed to "any" - no ELF files - OpenSUSE builds it as NOARCH arch=('i686' 'x86_64') + url="http://www.monodevelop.com" license=('GPL') -depends=('mono>=2.10.5' 'mono-addins>=0.6.2' 'gnome-sharp') +depends=('mono>=2.10.8' 'mono-addins>=0.6.2' 'gnome-sharp' 'desktop-file-utils' 'hicolor-icon-theme') options=(!makeflags) install=monodevelop.install -source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('106a1eed3f8ad6ff5caa71b34cde95cf') +source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2 + monodevelop-core-addins.pc.in.patch) +md5sums=('ca46b77b49266112b63a8f5c451c5565' + '8466d032735130e37d4091a793a7966c') build() { export MONO_SHARED_DIR=$srcdir/src/.wabi mkdir -p $MONO_SHARED_DIR cd $srcdir/$pkgname-$pkgver + # fix location for MonoDevelop.Gettext.dll - breaks gdb build + patch -Np0 -i ${srcdir}/monodevelop-core-addins.pc.in.patch + ./configure --prefix=/usr --disable-update-mimedb --disable-update-desktopdb - make || return 1 + LD_PRELOAD="" make } package() { cd $srcdir/$pkgname-$pkgver - make DESTDIR=$pkgdir install + LD_PRELOAD="" make DESTDIR=$pkgdir install rm -r $MONO_SHARED_DIR } diff --git a/extra/monodevelop/monodevelop-core-addins.pc.in.patch b/extra/monodevelop/monodevelop-core-addins.pc.in.patch new file mode 100644 index 000000000..c1da3bf1f --- /dev/null +++ b/extra/monodevelop/monodevelop-core-addins.pc.in.patch @@ -0,0 +1,8 @@ +--- monodevelop-core-addins.pc.in 2012-07-27 21:33:41.000000000 +0200 ++++ monodevelop-core-addins.pc.in.new 2012-08-04 12:42:36.086516667 +0200 +@@ -6,4 +6,4 @@ + Name: MonoDevelop Core Add-ins + Description: MonoDevelop Core Add-ins + Version: @VERSION@ +-Libs: -r:${libdir}/AddIns/VersionControl/MonoDevelop.VersionControl.dll -r:${libdir}/AddIns/NUnit/MonoDevelop.NUnit.dll -r:${libdir}/AddIns/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.dll -r:${libdir}/AddIns/MonoDevelop.AspNet/MonoDevelop.AspNet.dll -r:${libdir}/AddIns/DisplayBindings/Gettext/MonoDevelop.Gettext.dll -r:${libdir}/AddIns/MonoDevelop.Deployment/MonoDevelop.Deployment.dll -r:${libdir}/AddIns/MonoDevelop.Deployment/MonoDevelop.Deployment.Linux.dll -r:${libdir}/AddIns/MonoDevelop.GtkCore/MonoDevelop.GtkCore.dll -r:${libdir}/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll -r:${libdir}/AddIns/BackendBindings/MonoDevelop.VBNetBinding.dll -r:${libdir}/AddIns/BackendBindings/MonoDevelop.CBinding.dll -r:${libdir}/AddIns/BackendBindings/MonoDevelop.CSharpBinding.dll -r:${libdir}/AddIns/MonoDevelop.Autotools/MonoDevelop.Autotools.dll -r:${libdir}/AddIns/DisplayBindings/SourceEditor/MonoDevelop.SourceEditor2.dll -r:${libdir}/AddIns/MonoDevelop.Debugger/MonoDevelop.Debugger.dll -r:${libdir}/AddIns/MonoDevelop.Refactoring/MonoDevelop.Refactoring.dll -r:${libdir}/AddIns/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft.dll -r:${libdir}/AddIns/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.dll -r:${libdir}/AddIns/MonoDevelop.Debugger.Soft/Mono.Debugger.Soft.dll ++Libs: -r:${libdir}/AddIns/VersionControl/MonoDevelop.VersionControl.dll -r:${libdir}/AddIns/NUnit/MonoDevelop.NUnit.dll -r:${libdir}/AddIns/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.dll -r:${libdir}/AddIns/MonoDevelop.AspNet/MonoDevelop.AspNet.dll -r:${libdir}/AddIns/DisplayBindings/MonoDevelop.Gettext/MonoDevelop.Gettext.dll -r:${libdir}/AddIns/MonoDevelop.Deployment/MonoDevelop.Deployment.dll -r:${libdir}/AddIns/MonoDevelop.Deployment/MonoDevelop.Deployment.Linux.dll -r:${libdir}/AddIns/MonoDevelop.GtkCore/MonoDevelop.GtkCore.dll -r:${libdir}/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll -r:${libdir}/AddIns/BackendBindings/MonoDevelop.VBNetBinding.dll -r:${libdir}/AddIns/BackendBindings/MonoDevelop.CBinding.dll -r:${libdir}/AddIns/BackendBindings/MonoDevelop.CSharpBinding.dll -r:${libdir}/AddIns/MonoDevelop.Autotools/MonoDevelop.Autotools.dll -r:${libdir}/AddIns/DisplayBindings/SourceEditor/MonoDevelop.SourceEditor2.dll -r:${libdir}/AddIns/MonoDevelop.Debugger/MonoDevelop.Debugger.dll -r:${libdir}/AddIns/MonoDevelop.Refactoring/MonoDevelop.Refactoring.dll -r:${libdir}/AddIns/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft.dll -r:${libdir}/AddIns/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.dll -r:${libdir}/AddIns/MonoDevelop.Debugger.Soft/Mono.Debugger.Soft.dll diff --git a/extra/monodevelop/monodevelop.install b/extra/monodevelop/monodevelop.install index 765dfb9bd..070e6202c 100644 --- a/extra/monodevelop/monodevelop.install +++ b/extra/monodevelop/monodevelop.install @@ -2,6 +2,7 @@ post_install() { update-mime-database /usr/share/mime 1> /dev/null echo "update desktop mime database..." update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor } post_upgrade() { diff --git a/extra/opennx/PKGBUILD b/extra/opennx/PKGBUILD index 6ee27c93e..d98915bcd 100644 --- a/extra/opennx/PKGBUILD +++ b/extra/opennx/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 164356 2012-07-31 16:14:21Z andyrtr $ +# $Id: PKGBUILD 165108 2012-08-11 08:07:32Z andyrtr $ # Maintainer: AndyRTR <andyrtr@archlinux.org> # Contributor: Armin Luntzer # Original opennx PKGBUILD: Tomas Groth tomasgroth.at.yahoo.dk pkgname=opennx -pkgver=0.16.0.719 +pkgver=0.16.0.724 pkgrel=1 pkgdesc="A GPL replacement for the NoMachine client, patched to always show the session chooser" url="http://opennx.sf.net/" @@ -14,7 +14,7 @@ depends=('wxgtk' 'libcups' 'libxext' 'libxft' 'xorg-xauth' 'curl') makedepends=('zip' 'opensc' 'libpulse' 'smbclient' 'libusb-compat') #optdepends=('cups: for full local printing support') source=(http://downloads.sourceforge.net/project/opennx/opennx/CI-source/opennx-$pkgver.tar.gz) -md5sums=('bb0ca1df36f4d9246c6f88d734be937b') +md5sums=('ad3962cda69e38857b244a1b7eb41f2c') build() { cd $srcdir/opennx* diff --git a/extra/pekwm/PKGBUILD b/extra/pekwm/PKGBUILD index 6132269d2..3dce361ff 100644 --- a/extra/pekwm/PKGBUILD +++ b/extra/pekwm/PKGBUILD @@ -1,26 +1,31 @@ -# $Id: PKGBUILD 151921 2012-03-04 10:39:20Z andrea $ +# $Id: PKGBUILD 164983 2012-08-07 19:26:08Z eric $ # Maintainer: # Contributor: Kevin Piche <kevin@archlinux.org> # Contributor: Eddie Lozon <almostlucky@attbi.com> pkgname=pekwm -pkgver=0.1.14 +pkgver=0.1.15 pkgrel=1 pkgdesc="A small, fast, functional, and flexible window manager" arch=('i686' 'x86_64' 'mips64el') license=('GPL') url='https://www.pekwm.org/projects/pekwm' depends=('gcc-libs' 'libjpeg' 'libpng' 'libxft' 'libxinerama' 'libxpm' 'libxrandr') -backup=(etc/pekwm/config - etc/pekwm/vars - etc/pekwm/autoproperties - etc/pekwm/start - etc/pekwm/keys - etc/pekwm/mouse - etc/pekwm/menu) +backup=(etc/pekwm/autoproperties + etc/pekwm/autoproperties_typerules + etc/pekwm/config + etc/pekwm/config_system + etc/pekwm/keys + etc/pekwm/menu + etc/pekwm/mouse + etc/pekwm/mouse_click + etc/pekwm/mouse_sloppy + etc/pekwm/mouse_system + etc/pekwm/start + etc/pekwm/vars) source=("http://www.pekwm.org/projects/pekwm/files/${pkgname}-${pkgver}.tar.bz2" 'pekwm.desktop') -md5sums=('bb9c01c81fe47620bcd9be0e2e4a10e6' +md5sums=('4db10ad191b77120429abd5a65c73cec' '5a78fc6653fbb0b7282ecf7f1f81e2c5') build() { diff --git a/extra/perl-alien-sdl/PKGBUILD b/extra/perl-alien-sdl/PKGBUILD index 971a38206..f55c87e80 100644 --- a/extra/perl-alien-sdl/PKGBUILD +++ b/extra/perl-alien-sdl/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 147156 2012-01-23 14:30:07Z heftig $ +# $Id: PKGBUILD 165067 2012-08-09 23:13:02Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Allan McRae <allan@archlinux.org> # Contributor: Sarah Hay <sarahhay@mb.sympatico.ca> @@ -8,7 +8,7 @@ pkgname=perl-alien-sdl _realname=Alien-SDL -pkgver=1.430 +pkgver=1.436 pkgrel=1 pkgdesc="Building, finding and using SDL binaries" arch=(i686 x86_64 'mips64el') @@ -18,7 +18,7 @@ depends=(sdl=1.2.15 perl-file-sharedir perl-capture-tiny) makedepends=(perl-file-which perl-text-patch) options=(!emptydirs) source=(http://search.cpan.org/CPAN/authors/id/F/FR/FROGGS/$_realname-$pkgver.tar.gz) -md5sums=('9d7774212fb4e1c46325746c953a808b') +md5sums=('eedfebaf00dca8a8e4806e8dc47bf1ed') package() { cd "$srcdir/$_realname-$pkgver" diff --git a/extra/perl-sdl/PKGBUILD b/extra/perl-sdl/PKGBUILD index 7ba058034..d8c85a055 100644 --- a/extra/perl-sdl/PKGBUILD +++ b/extra/perl-sdl/PKGBUILD @@ -1,29 +1,29 @@ -# $Id: PKGBUILD 160549 2012-06-02 10:28:09Z bluewind $ +# $Id: PKGBUILD 165069 2012-08-09 23:15:16Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Allan McRae <allan@archlinux.org> # Contributor: Sarah Hay <sarahhay@mb.sympatico.ca> pkgname=perl-sdl -pkgver=2.536 +pkgver=2.540 pkgrel=1 pkgdesc="Simple DirectMedia Layer for Perl" arch=(i686 x86_64 'mips64el') license=(LGPL) url="http://sdl.perl.org" depends=(perl-alien-sdl perl-tie-simple - sdl_{net,ttf,image,mixer,gfx,pango} mesa smpeg) -#makedepends=(perl-yaml) + sdl_net sdl_ttf sdl_image sdl_mixer sdl_gfx sdl_pango mesa smpeg) +makedepends=('perl-module-build>=0.40') options=('!emptydirs') replaces=(sdl_perl) conflicts=(sdl_perl) provides=("sdl_perl=$pkgver") # http://search.cpan.org/dist/SDL/ -_author=FROGGS -source=(http://search.cpan.org/CPAN/authors/id/${_author:0:1}/${_author:0:2}/$_author/SDL-$pkgver.tar.gz) -md5sums=('5c682e8a96cd655e959497b034b978ce') +_author=JTPALMER +source=(http://search.cpan.org/CPAN/authors/id/${_author::1}/${_author::2}/$_author/SDL-$pkgver.tar.gz) +md5sums=('1a5d7849cbdfde4982b28458e38ab172') build() { - cd "$srcdir/SDL-$pkgver" + cd SDL-$pkgver # Perl selects the proper CFLAGS set for binary modules unset CFLAGS # install module in vendor directories @@ -32,11 +32,11 @@ build() { } check() { - cd "$srcdir/SDL-$pkgver" + cd SDL-$pkgver perl Build test || true } package() { - cd "$srcdir/SDL-$pkgver" + cd SDL-$pkgver perl Build install destdir="$pkgdir" } diff --git a/extra/perl-template-toolkit/PKGBUILD b/extra/perl-template-toolkit/PKGBUILD index c02a64158..072f8604c 100644 --- a/extra/perl-template-toolkit/PKGBUILD +++ b/extra/perl-template-toolkit/PKGBUILD @@ -1,32 +1,34 @@ +# $Id: PKGBUILD 165152 2012-08-11 20:28:19Z eric $ # Maintainer: Firmicus <francois.archlinux.org> # Contributor: Tom Killian <tomk@runbox.com> # Contributor: FJ <joostef@gmail.com> pkgname=perl-template-toolkit _realname=Template-Toolkit -pkgver=2.22 -pkgrel=5 +pkgver=2.24 +pkgrel=1 pkgdesc="Perl template processing system" arch=(i686 x86_64 'mips64el') license=('PerlArtistic') url="http://search.cpan.org/dist/${_realname}/" depends=('perl-appconfig' 'perl>=5.10.0') options=(!emptydirs) -source=(http://search.cpan.org/CPAN/authors/id/A/AB/ABW/${_realname}-$pkgver.tar.gz) -md5sums=('d98277f6420e5da6b93d99a8db2b3934') +source=(http://search.cpan.org/CPAN/authors/id/A/AB/ABW/${_realname}-$pkgver.tar.gz) +md5sums=('c25fdab1beebf8818c2e624bc9f9d212') build() { - cd ${srcdir}/${_realname}-$pkgver + cd "${srcdir}/${_realname}-$pkgver" # install module in vendor directories. PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor make } -package() { - cd ${srcdir}/${_realname}-$pkgver - make install DESTDIR=${startdir}/pkg +check() { + cd "${srcdir}/${_realname}-${pkgver}" + make test +} - # remove perllocal.pod and .packlist - find ${startdir}/pkg -name perllocal.pod -delete - find ${startdir}/pkg -name .packlist -delete +package() { + cd "${srcdir}/${_realname}-$pkgver" + make install DESTDIR="${pkgdir}" } diff --git a/extra/phonon-vlc/PKGBUILD b/extra/phonon-vlc/PKGBUILD index 4267a8111..d7bf91f92 100644 --- a/extra/phonon-vlc/PKGBUILD +++ b/extra/phonon-vlc/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 160656 2012-06-03 09:29:44Z andrea $ +# $Id: PKGBUILD 165106 2012-08-11 07:25:00Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> pkgname=phonon-vlc -pkgver=0.5.0 -pkgrel=2 +pkgver=0.6.0 +pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url='http://phonon.kde.org/' pkgdesc="Phonon VLC backend" @@ -12,7 +12,7 @@ depends=('vlc') makedepends=('cmake' 'automoc4' 'phonon') provides=('phonon-backend') source=("http://download.kde.org/stable/phonon/phonon-backend-vlc/${pkgver}/src/phonon-backend-vlc-${pkgver}.tar.xz") -md5sums=('fc5dc2b353fa0d9e428ecfc3c485eb66') +md5sums=('13c7adb90f62cb568d17bc9ced9406e9') build() { cd "${srcdir}" diff --git a/extra/proftpd/PKGBUILD b/extra/proftpd/PKGBUILD index e157d47d4..30d2b469f 100644 --- a/extra/proftpd/PKGBUILD +++ b/extra/proftpd/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 161293 2012-06-08 23:31:04Z tomegun $ +# $Id: PKGBUILD 164987 2012-08-07 20:14:43Z eric $ # Maintainer: # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=proftpd -pkgver=1.3.4a -pkgrel=5 +pkgver=1.3.4b +pkgrel=1 epoch=1 pkgdesc="A high-performance, scalable FTP server" arch=('i686' 'x86_64' 'mips64el') @@ -12,8 +12,13 @@ url="http://www.proftpd.org" license=('GPL') depends=('libldap' 'libmysqlclient' 'postgresql-libs') backup=('etc/proftpd.conf' 'etc/conf.d/proftpd') -source=(ftp://ftp.proftpd.org/distrib/source/${pkgname}-${pkgver}.tar.bz2{,.asc} +source=(ftp://ftp.proftpd.org/distrib/source/${pkgname}-${pkgver}.tar.gz{,.asc} 'proftpd' 'proftpd.logrotate' 'proftpd.conf.d') +md5sums=('0871e0b93c9c3c88ca950b6d9a04aed2' + 'e5b9bd78029a15f82994efcb7ed2e9fb' + '8177292919acb2f087ded0bb7b2dcc32' + 'ddb09eb13131becdf0e081eef413116b' + '71d5932b0461c318ed68c2c0c2660736') build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -47,8 +52,3 @@ package() { # /var/run is a symlink to /run now rm -rf "${pkgdir}/var" } -md5sums=('4e3235dc1ef95d36e59721d70c5c489c' - '3b0f44496adb36640b7a6cc165556bcf' - '8177292919acb2f087ded0bb7b2dcc32' - 'ddb09eb13131becdf0e081eef413116b' - '71d5932b0461c318ed68c2c0c2660736') diff --git a/extra/pycrypto/PKGBUILD b/extra/pycrypto/PKGBUILD index 408e9fd04..b011e10d1 100644 --- a/extra/pycrypto/PKGBUILD +++ b/extra/pycrypto/PKGBUILD @@ -1,27 +1,52 @@ -# $Id: PKGBUILD 151452 2012-02-26 11:26:30Z pierre $ +# $Id: PKGBUILD 165053 2012-08-09 19:15:19Z jgc $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Kritoke <kritoke@gamebox.net> -pkgname=pycrypto -pkgver=2.5 -pkgrel=1 -pkgdesc="Collection of cryptographic algorithms and protocols, implemented for use from Python." +pkgbase=pycrypto +pkgname=('python2-crypto' 'python-crypto') +pkgver=2.6 +pkgrel=2 arch=('i686' 'x86_64' 'mips64el') -depends=('python2') +makedepends=('python2' 'python') url="http://www.dlitz.net/software/pycrypto/" license=('custom') -source=("http://ftp.dlitz.net/pub/dlitz/crypto/${pkgname}/${pkgname}-${pkgver}.tar.gz") -sha256sums=('e950a78184e2a7defccf5d45e0c29c1e9edeb29984433f0d110a21e9631e38de') +source=("http://ftp.dlitz.net/pub/dlitz/crypto/${pkgbase}/${pkgbase}-${pkgver}.tar.gz") +sha256sums=('7293c9d7e8af2e44a82f86eb9c3b058880f4bcc884bf3ad6c8a34b64986edde8') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd "${srcdir}" + find ${pkgbase}-${pkgver}/LEGAL -type f -exec chmod 644 {} \; + find ${pkgbase}-${pkgver}/LEGAL -type d -exec chmod 755 {} \; + + cp -r ${pkgbase}-${pkgver} ${pkgbase}-${pkgver}-py3 + cd "${srcdir}/${pkgbase}-${pkgver}" python2 setup.py build + + cd "${srcdir}/${pkgbase}-${pkgver}-py3" + python setup.py build } -package() { - cd "${srcdir}/${pkgname}-${pkgver}" +package_python2-crypto() { + pkgdesc="Collection of cryptographic algorithms and protocols, implemented for use from Python 2." + depends=('python2') + replaces=('pycrypto') + conflicts=('pycrypto') + provides=("pycrypto=${pkgver}") + + cd "${srcdir}/${pkgbase}-${pkgver}" python2 setup.py install --root="${pkgdir}" --optimize=1 install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" install -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/" cp -r LEGAL "${pkgdir}/usr/share/licenses/${pkgname}/" } + +package_python-crypto() { + pkgdesc="Collection of cryptographic algorithms and protocols, implemented for use from Pythoni 3." + depends=('python') + + cd "${srcdir}/${pkgbase}-${pkgver}-py3" + python setup.py install --root="${pkgdir}" --optimize=1 + install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" + install -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/" + cp -r LEGAL "${pkgdir}/usr/share/licenses/${pkgname}/" +} diff --git a/extra/racket/PKGBUILD b/extra/racket/PKGBUILD index a5db6e3cb..45f67c278 100644 --- a/extra/racket/PKGBUILD +++ b/extra/racket/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 161957 2012-06-17 01:21:57Z eric $ +# $Id: PKGBUILD 164993 2012-08-08 04:47:49Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=racket -pkgver=5.2.1 -pkgrel=3 +pkgver=5.3 +pkgrel=1 pkgdesc="A programming language environment (formerly known as PLT Scheme) suitable for tasks ranging from scripting to application development" arch=('i686' 'x86_64' 'mips64el') url="http://racket-lang.org/" @@ -13,14 +13,14 @@ makedepends=('gsfonts') options=('!libtool' '!strip') install=racket.install source=(http://download.racket-lang.org/installers/${pkgver}/racket/${pkgname}-${pkgver}-src-unix.tgz \ - drracket.desktop drracket-normal.rkt) -sha1sums=('b51cdd8b9825edb60e5c2c80472cec8220918cd1' - 'a20808f6b250225704856f82a544681a962a299d' - '6699e80e424479d45f427ba341003235e0d475cf') + drracket.desktop) +sha1sums=('16883898c0cc418ba44732e3f62a54cf043a1de8' + 'a20808f6b250225704856f82a544681a962a299d') build() { cd "${srcdir}/${pkgname}-${pkgver}/src" [ "$CARCH" == "x86_64" ] && export CFLAGS+="-fPIC" + sed -i 's/struct siginfo/siginfo_t/' racket/gc2/sighand.c ./configure --prefix=/usr --enable-shared make } @@ -29,9 +29,6 @@ package() { cd "${srcdir}/${pkgname}-${pkgver}/src" make DESTDIR="${pkgdir}" install - # FS#30245 - install -D -m644 "${srcdir}/drracket-normal.rkt" "${pkgdir}/usr/lib/racket/collects/drracket/private/drracket-normal.rkt" - install -D -m644 ../collects/icons/plt.xpm "${pkgdir}/usr/share/pixmaps/drracket.xpm" install -D -m644 "${srcdir}/drracket.desktop" "${pkgdir}/usr/share/applications/drracket.desktop" } diff --git a/extra/rtkit/PKGBUILD b/extra/rtkit/PKGBUILD index ab17a8a55..debe6ffc0 100644 --- a/extra/rtkit/PKGBUILD +++ b/extra/rtkit/PKGBUILD @@ -1,33 +1,33 @@ -# $Id: PKGBUILD 157777 2012-04-29 10:12:33Z allan $ +# $Id: PKGBUILD 165071 2012-08-09 23:24:40Z heftig $ # Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> # Contributor: Corrado Primier <bardo@aur.archlinux.org> pkgname=rtkit -pkgver=0.10 -pkgrel=4 +pkgver=0.11 +pkgrel=1 pkgdesc="Realtime Policy and Watchdog Daemon" arch=('i686' 'x86_64' 'mips64el') url="http://git.0pointer.de/?p=rtkit.git" license=(GPL 'custom:BSD') depends=(dbus polkit) install=rtkit.install -source=(http://0pointer.de/public/$pkgname-$pkgver.tar.gz) -md5sums=('9ab7f2a25ddf05584ea2216dfe4cefd4') +source=(http://0pointer.de/public/$pkgname-$pkgver.tar.xz) +md5sums=('a96c33b9827de66033d2311f82d79a5d') build() { - cd "$srcdir/$pkgname-$pkgver" + cd $pkgname-$pkgver ./configure \ --prefix=/usr \ --sysconfdir=/etc \ - --libexecdir=/usr/lib \ + --libexecdir=/usr/lib/$pkgname \ --with-systemdsystemunitdir=/usr/lib/systemd/system make } package() { - cd "$srcdir/$pkgname-$pkgver" + cd $pkgname-$pkgver make DESTDIR="$pkgdir" install # DBus configuration @@ -36,6 +36,6 @@ package() { > "$pkgdir/usr/share/dbus-1/interfaces/org.freedesktop.RealtimeKit1.xml" # Client license - mkdir -p "$pkgdir/usr/share/licenses/rtkit" - sed -ne '4,25p' rtkit.c >"$pkgdir/usr/share/licenses/rtkit/COPYING" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + sed -ne '4,25p' rtkit.c >"$pkgdir/usr/share/licenses/$pkgname/COPYING" } diff --git a/extra/samba/PKGBUILD b/extra/samba/PKGBUILD index 977ed421f..2da1b26db 100644 --- a/extra/samba/PKGBUILD +++ b/extra/samba/PKGBUILD @@ -1,13 +1,13 @@ -# $Id: PKGBUILD 162373 2012-06-26 05:39:58Z tpowa $ +# $Id: PKGBUILD 164956 2012-08-07 10:42:12Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgbase=samba pkgname=('libwbclient' 'smbclient' 'samba') -pkgver=3.6.6 +pkgver=3.6.7 # We use the 'A' to fake out pacman's version comparators. Samba chooses # to append 'a','b',etc to their subsequent releases, which pamcan # misconstrues as alpha, beta, etc. Bad samba! -_realver=3.6.6 +_realver=3.6.7 pkgrel=1 arch=(i686 x86_64 mips64el) url="http://www.samba.org" @@ -157,7 +157,7 @@ install='samba.install' install -D -m644 ${srcdir}/samba.conf ${pkgdir}/usr/lib/tmpfiles.d/samba.conf rm -rf ${pkgdir}/var/run } -md5sums=('0bea52842d172231c0c0e23ee570d7af' +md5sums=('b23be56c15dd52f64eb7ba54c0ea1ed5' 'a45a4283723be2b0ae32439dc4496a09' '5697da77590ec092cc8a883bae06093c' 'a4bbfa39fee95bba2e7ad6b535fae7e6' diff --git a/extra/serd/PKGBUILD b/extra/serd/PKGBUILD new file mode 100644 index 000000000..70d658de4 --- /dev/null +++ b/extra/serd/PKGBUILD @@ -0,0 +1,36 @@ +# $Id: PKGBUILD 72422 2012-06-14 07:51:14Z speps $ +# Maintainer: speps <speps at aur dot archlinux dot org> + +pkgname=serd +pkgver=0.14.0 +pkgrel=1 +pkgdesc="A lightweight C library for RDF syntax which supports reading and writing Turtle and NTriples." +arch=(i686 x86_64) +url="http://drobilla.net/software/$pkgname/" +license=('custom:ISC') +depends=('glibc') +makedepends=('python2') +source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2") +md5sums=('405b11ee92f3f19ce4a757ba34953886') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # remove ldconfig + sed -i "/ldconfig/d" wscript + + python2 ./waf configure --prefix=/usr \ + --mandir=/usr/share/man + python2 ./waf +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + DESTDIR="$pkgdir" python2 ./waf install + + # license + install -Dm644 COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/extra/sord/PKGBUILD b/extra/sord/PKGBUILD new file mode 100644 index 000000000..ec9cdcad0 --- /dev/null +++ b/extra/sord/PKGBUILD @@ -0,0 +1,36 @@ +# $Id: PKGBUILD 72422 2012-06-14 07:51:14Z speps $ +# Maintainer: speps <speps at aur dot archlinux dot org> + +pkgname=sord +pkgver=0.8.0 +pkgrel=1 +pkgdesc="A lightweight C library for storing RDF data in memory." +arch=(i686 x86_64) +url="http://drobilla.net/software/$pkgname/" +license=('custom:ISC') +depends=('serd' 'pcre') +makedepends=('python2') +source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2") +md5sums=('62be6a2cd6e9bc2933d1297afeacda30') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # remove ldconfig + sed -i "/ldconfig/d" wscript + + python2 ./waf configure --prefix=/usr \ + --mandir=/usr/share/man + python2 ./waf +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + DESTDIR="$pkgdir" python2 ./waf install + + # license + install -Dm644 COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/extra/sratom/PKGBUILD b/extra/sratom/PKGBUILD new file mode 100644 index 000000000..e384bdf1c --- /dev/null +++ b/extra/sratom/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 72422 2012-06-14 07:51:14Z speps $ +# Maintainer: speps <speps at aur dot archlinux dot org> + +pkgname=sratom +pkgver=0.2.0 +pkgrel=1 +pkgdesc="An LV2 Atom RDF serialisation library" +arch=(i686 x86_64) +url="http://drobilla.net/software/$pkgname/" +license=('custom:ISC') +depends=('lv2' 'sord') +makedepends=('python2') +source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2") +md5sums=('c03cf2849186818610ffe889be4f5b55') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # remove ldconfig + sed -i '/ldconfig/d' wscript + + python2 waf configure --prefix=/usr + python2 waf +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + DESTDIR="$pkgdir/" python2 waf install + + # license + install -Dm644 COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/extra/suil/PKGBUILD b/extra/suil/PKGBUILD new file mode 100644 index 000000000..a963f543a --- /dev/null +++ b/extra/suil/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 73980 2012-07-18 00:34:26Z speps $ +# Maintainer: speps <speps at aur dot archlinux dot org> + +pkgname=suil +pkgver=0.6.4 +pkgrel=1 +pkgdesc="A lightweight C library for loading and wrapping LV2 plugin UIs" +arch=(i686 x86_64) +url="http://drobilla.net/software/$pkgname/" +license=('custom:ISC') +depends=('lv2') +makedepends=('python2' 'qt' 'gtk2') +optdepends=('qt: Qt UIs wrapping support' + 'gtk2: Gtk2 UIs wrapping support') +source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2") +md5sums=('9f34d3f15b4266e7cce59e3ac8f1fb3a') + +build() { + cd "$srcdir/$pkgname-$pkgver" + + # remove ldconfig + sed -i "/ldconfig/d" wscript + + python2 ./waf configure --prefix=/usr \ + --mandir=/usr/share/man + python2 ./waf +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + DESTDIR="$pkgdir" python2 ./waf install + + # license + install -Dm644 COPYING \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim:set ts=2 sw=2 et: diff --git a/extra/valgrind/PKGBUILD b/extra/valgrind/PKGBUILD index ad9b7dc46..0d702e470 100644 --- a/extra/valgrind/PKGBUILD +++ b/extra/valgrind/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 164063 2012-07-26 04:17:07Z allan $ +# $Id: PKGBUILD 165089 2012-08-10 08:30:57Z allan $ # Maintainer: Dan McGee <dan@archlinux.org> # Maintainer: Allan McRae <allan@archlinux.org> pkgname=valgrind -pkgver=3.7.0 -pkgrel=4 +pkgver=3.8.0 +pkgrel=1 pkgdesc="A tool to help find memory-management problems in programs" arch=('i686' 'x86_64') license=('GPL') @@ -12,24 +12,18 @@ url="http://valgrind.org/" depends=('glibc>=2.16' 'glibc<2.17' 'perl') makedepends=('gdb') options=('!emptydirs') -source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2 - valgrind-3.7.0-glibc-2.16.patch - valgrind-3.7.0-supp.patch) -md5sums=('a855fda56edf05614f099dca316d1775' - '8362c9c10b8d7d08d1be628a717cfba7' - '6cf8d3ace0cdc4c7fd69d61ca0692577') +source=(http://valgrind.org/downloads/${pkgname}-${pkgver}.tar.bz2) +md5sums=('ec04dfd1256307432b2a7b520398c526') build() { cd ${srcdir}/${pkgname}-${pkgver} - - patch -Np1 -i ${srcdir}/valgrind-3.7.0-glibc-2.16.patch - patch -Np1 -i ${srcdir}/valgrind-3.7.0-supp.patch if [ "${CARCH}" = "x86_64" ]; then ./configure --prefix=/usr --mandir=/usr/share/man --enable-only64bit else ./configure --prefix=/usr --mandir=/usr/share/man fi + make } diff --git a/extra/webmin/PKGBUILD b/extra/webmin/PKGBUILD index cafaabb48..f667d8d4a 100644 --- a/extra/webmin/PKGBUILD +++ b/extra/webmin/PKGBUILD @@ -1,13 +1,13 @@ -# $Id: PKGBUILD 163000 2012-07-05 07:23:19Z tpowa $ +# $Id: PKGBUILD 164995 2012-08-08 06:41:05Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> pkgname=webmin pkgver=1.590 -pkgrel=1 +pkgrel=2 pkgdesc="a web-based interface for system administration" arch=(i686 x86_64 'mips64el') license=('custom:webmin') url="http://www.webmin.com/" -depends=('perl') +depends=('perl' 'perl-perl4-corelibs') makedepends=('perl-net-ssleay') backup=('etc/webmin/miniserv.conf' 'etc/webmin/miniserv.users' 'etc/webmin/config' 'etc/webmin/webmin.cats' \ 'etc/webmin/pacman/config' \ diff --git a/extra/wget/PKGBUILD b/extra/wget/PKGBUILD new file mode 100644 index 000000000..87f617417 --- /dev/null +++ b/extra/wget/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 165091 2012-08-10 09:03:30Z allan $ +# Maintainer: Allan McRae <allan@archlinux.org> +# Contributor: Judd Vinet <jvinet@zeroflux.org> + +pkgname=wget +pkgver=1.14 +pkgrel=1 +pkgdesc="A network utility to retrieve files from the Web" +arch=('i686' 'x86_64') +url="http://www.gnu.org/software/wget/wget.html" +license=('GPL3') +depends=('glibc' 'openssl') +optdepends=('ca-certificates: HTTPS downloads') +backup=('etc/wgetrc') +install=wget.install +source=(ftp://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.xz{,.sig}) +md5sums=('316f6f59292c9098ad81fd54f658c579' + '3e121933d69f32fa58776bff76bcebd0') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # Note : We do not build with --enable-nls, because there is a bug in wget causing + # international domain names to be not properly converted to punycode if + # the current locale is a UTF-8 one + # See : http://lists.gnu.org/archive/html/bug-wget/2011-02/msg00026.html + + ./configure -with-ssl=openssl --prefix=/usr --sysconfdir=/etc + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + + cat >> "$pkgdir/etc/wgetrc" <<EOF + +# default root certs location +ca_certificate=/etc/ssl/certs/ca-certificates.crt +EOF + + # remove IRI option from wgetrc as it does not work (see above) + sed -i '118,120d' $pkgdir/etc/wgetrc + +} diff --git a/extra/wget/wget.install b/extra/wget/wget.install new file mode 100644 index 000000000..8eb6a2c3f --- /dev/null +++ b/extra/wget/wget.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(wget.info) + +post_install() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file $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 $infodir/dir 2> /dev/null + done +} diff --git a/extra/xf86-video-intel/PKGBUILD b/extra/xf86-video-intel/PKGBUILD index caade620d..7bfb6ed50 100644 --- a/extra/xf86-video-intel/PKGBUILD +++ b/extra/xf86-video-intel/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 164223 2012-07-27 19:15:17Z andyrtr $ +# $Id: PKGBUILD 165096 2012-08-10 18:33:15Z andyrtr $ # Maintainer: AndyRTR <andyrtr@archlinux.org> # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=xf86-video-intel -pkgver=2.20.2 -pkgrel=2 +pkgver=2.20.3 +pkgrel=1 arch=(i686 x86_64) url="http://xorg.freedesktop.org/" license=('custom') @@ -17,14 +17,11 @@ provides=('xf86-video-intel-uxa' 'xf86-video-intel-sna') conflicts=('xf86-video-intel-sna' 'xf86-video-intel-uxa' 'xorg-server<1.12.0' 'xf86-video-i810' 'xf86-video-intel-legacy') options=('!libtool') groups=('xorg-drivers' 'xorg') -source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2 - fix_gen4.diff) -sha256sums=('4c30cce0b5f7b427d76898c439f2c9fd31a8b45babd8ef82ec4c0004ae0a26a9' - '0c5b98e4980c8108aee12b1e46a78c23029034439dcd277f8ae1264ca3fff8a4') +source=(${url}/archive/individual/driver/${pkgname}-${pkgver}.tar.bz2) +sha256sums=('effca1382e595cc071b109818150db229ffb54f92769e4758398abbe69acb92c') build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -Np1 -i ${srcdir}/fix_gen4.diff ./configure --prefix=/usr \ --enable-dri make diff --git a/extra/xorg-server/PKGBUILD b/extra/xorg-server/PKGBUILD index b480c74ca..3861a4c49 100644 --- a/extra/xorg-server/PKGBUILD +++ b/extra/xorg-server/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 163203 2012-07-09 16:05:50Z andyrtr $ +# $Id: PKGBUILD 165118 2012-08-11 08:22:01Z andyrtr $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgbase=xorg-server pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xdmx' 'xorg-server-xvfb' 'xorg-server-xnest' 'xorg-server-common' 'xorg-server-devel') -pkgver=1.12.3 +pkgver=1.12.3.901 pkgrel=1 arch=('i686' 'x86_64' 'mips64el') license=('custom') @@ -17,13 +17,11 @@ options=('!libtool') source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2 autoconfig-nvidia.patch autoconfig-sis.patch - #EXA_Fall_back_earlier_and_more_thoroughly_from_exaGlyphsV2.diff - #git-fixes.patch xvfb-run xvfb-run.1 10-quirks.conf - loongson.patch) -sha256sums=('3654b613393734ce0c7c23e81ca4ceb6e8afefb5f0649233ffd105c1220544fe' + loongson.patch) +sha256sums=('5265cfe935e2ad54a287dd3026917c6bfe6191a4f943ca893d1477fdfbe94b2b' '66e25f76a7496c429e0aff4b0670f168719bb0ceaeb88c6f2272f2bf3ed21162' 'd027776fac1f7675b0a9ee817502290b1c45f9c09b0f0a6bb058c35f92361e84' 'ff0156309470fc1d378fd2e104338020a884295e285972cc88e250e031cc35b9' @@ -40,14 +38,6 @@ build() { # Use unofficial imedia SiS driver for supported SiS devices patch -Np0 -i "${srcdir}/autoconfig-sis.patch" - # fix glitches and crashes with EXA and cairo 1.12 - # taken from https://bugs.freedesktop.org/show_bug.cgi?id=47266 - # and reworked for 1.12.1 changes -# patch -Np1 -i ${srcdir}/EXA_Fall_back_earlier_and_more_thoroughly_from_exaGlyphsV2.diff - - # Add post-release patches from 1.12 branch -# patch -Np1 -i ${srcdir}/git-fixes.patch - # Based on http://lists.freedesktop.org/archives/xorg-devel/2011-October/026249.html patch -Np1 -i "${srcdir}/loongson.patch" diff --git a/kernels/linux-libre-aufs_friendly/PKGBUILD b/kernels/linux-libre-aufs_friendly/PKGBUILD index f02fe9a0b..4605cfba5 100644 --- a/kernels/linux-libre-aufs_friendly/PKGBUILD +++ b/kernels/linux-libre-aufs_friendly/PKGBUILD @@ -8,15 +8,13 @@ # Maintainer (Parabola): Michał Masłowski <mtjm@mtjm.eu> # Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -pkgbase=linux-libre-aufs_friendly -pkgname=('linux-libre-aufs_friendly' 'linux-libre-aufs_friendly-headers') # Build stock -LIBRE kernel with AUFS-libre support -# pkgname=linux-custom # Build kernel with a different name -_kernelname=-LIBRE-AUFS_FRIENDLY +pkgbase=linux-libre-aufs_friendly # Build stock -LIBRE-AUFS_FRIENDLY kernel +#pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.3 _sublevel=4 pkgver=${_basekernel}.${_sublevel} +pkgrel=1.2 _lxopkgver=${_basekernel}.4 # nearly always the same as pkgver -pkgrel=1.1 arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -29,14 +27,17 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn # patches exporting symbols for the aufs module (reason for this package) 'aufs3-libre-base.patch' 'aufs3-libre-standalone.patch' # standard config files for mkinitcpio ramdisk - "${pkgname}.preset" + "${pkgbase}.preset" 'Kbuild' 'Kbuild.platforms' 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' 'ext4-options.patch' - "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE-AUFS_FRIENDLY md5sums=('5487da14ca81715a469c7594d39722fa' 'ce7d959667b9f158b1fb814b5806950a' '9824d09d2a659db17a6468e27ccc29ad' @@ -107,7 +108,7 @@ build() { sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -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=\"${_kernelname}\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else @@ -115,7 +116,8 @@ build() { fi if [ "${_kernelname}" != "" ]; then - sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config fi # set extraversion to pkgrel @@ -135,15 +137,22 @@ build() { #make oldconfig # using old config from previous kernel version # ... or manually edit .config + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + if [ "${CARCH}" = "x86_64" ]; then + cat .config > "${startdir}/config.x86_64.last" + else + cat .config > "${startdir}/config.i686.last" + fi + #################### # stop here # this is useful to configure the kernel - #msg "Stopping build" - #return 1 + #msg "Stopping build"; return 1 #################### - yes "" | make config - # build! if [ "$CARCH" == "mips64el" ]; then # The build system passes it directly to linker, disable to avoid @@ -151,21 +160,22 @@ build() { export LDFLAGS="" # bzImage is arch-specific and not supported on mips; vmlinux is # useful for oprofile. - make ${MAKEFLAGS} vmlinux vmlinuz modules + make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules else - make ${MAKEFLAGS} bzImage modules + make ${MAKEFLAGS} LOCALVERSION= bzImage modules fi } -package_linux-libre-aufs_friendly() { - pkgdesc="The Linux-libre Kernel and modules, with symbols exported for AUFS3-libre" +_package() { + pkgdesc="The ${pkgbase} kernel and modules with symbols exported for aufs3" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') depends=('coreutils' 'kmod') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26-aufs_friendly' "linux-aufs_friendly=$pkgver") - conflicts=('kernel26-aufs_friendly' 'kernel26-libre-aufs_friendly' 'linux-aufs_friendly') - replaces=('kernel26-aufs_friendly' 'kernel26-libre-aufs_friendly' 'linux-aufs_friendly') - backup=("etc/mkinitcpio.d/${pkgname}.preset") - install=${pkgname}.install + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=${pkgbase}.install if [ "$CARCH" = "mips64el" ]; then optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)') conflicts+=('mkinitcpio<0.7') @@ -179,35 +189,42 @@ package_linux-libre-aufs_friendly() { [ $CARCH = "mips64el" ] && KARCH=mips # get kernel version - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} - make INSTALL_MOD_PATH="${pkgdir}" modules_install + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install if [ "$CARCH" == "mips64el" ]; then - cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgname}" - cp vmlinux "${pkgdir}/boot/vmlinux-${pkgname}" + cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}" + cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}" else - cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgname}" + cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" fi # add vmlinux install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" # install fallback mkinitcpio.conf file and preset file for kernel - install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # set correct depmod command for install sed \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${pkgbase}.install" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # mkinitcpio 0.7 relies on bzImage to find the kernel version if [ "$CARCH" == "mips64el" ]; then - sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" fi # remove build and source links @@ -229,11 +246,11 @@ package_linux-libre-aufs_friendly() { depmod -b "$pkgdir" -F System.map "$_kernver" } -package_linux-libre-aufs_friendly-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre-aufs_friendly kernel" - provides=('kernel26-aufs_friendly-headers' "linux-aufs_friendly-headers=${pkgver}") - conflicts=('kernel26-aufs_friendly-headers' 'kernel26-libre-aufs_friendly-headers' 'linux-aufs_friendly-headers') - replaces=('kernel26-aufs_friendly-headers' 'kernel26-libre-aufs_friendly-headers' 'linux-aufs_friendly-headers') +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") KARCH=x86 [ $CARCH = "mips64el" ] && KARCH=mips @@ -241,7 +258,7 @@ package_linux-libre-aufs_friendly-headers() { # In case of repackaging this is empty if [ -z "${_kernver}" ]; then cd "${srcdir}/linux-${_basekernel}" - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" fi install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" @@ -380,3 +397,11 @@ package_linux-libre-aufs_friendly-headers() { fi } +pkgname=("${pkgbase}" "${pkgbase}-headers") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/kernels/linux-libre-aufs_friendly/linux-libre-aufs_friendly.install b/kernels/linux-libre-aufs_friendly/linux-libre-aufs_friendly.install index ba8593dbf..50ac390e7 100644 --- a/kernels/linux-libre-aufs_friendly/linux-libre-aufs_friendly.install +++ b/kernels/linux-libre-aufs_friendly/linux-libre-aufs_friendly.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-aufs_friendly -KERNEL_VERSION=3.3.4-1.1-LIBRE-AUFS_FRIENDLY +KERNEL_VERSION=3.3.4-1.2-LIBRE-AUFS_FRIENDLY post_install () { # updating module dependencies diff --git a/kernels/linux-libre-lts-rt/.directory b/kernels/linux-libre-lts-rt/.directory new file mode 100644 index 000000000..7a883fed9 --- /dev/null +++ b/kernels/linux-libre-lts-rt/.directory @@ -0,0 +1,6 @@ +[Dolphin] +Timestamp=2012,8,9,23,59,18 +Version=3 + +[Settings] +HiddenFilesShown=true diff --git a/kernels/linux-libre-lts-rt/PKGBUILD b/kernels/linux-libre-lts-rt/PKGBUILD index aee3a19ed..c7d6e75ef 100644 --- a/kernels/linux-libre-lts-rt/PKGBUILD +++ b/kernels/linux-libre-lts-rt/PKGBUILD @@ -8,17 +8,15 @@ # Maintainer (Parabola): André Silva <emulatorman@lavabit.com> # Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -pkgbase=linux-libre-lts-rt -pkgname=('linux-libre-lts-rt' 'linux-libre-lts-rt-headers') # Build stock -LIBRE-LTS kernel with RT support -# pkgname=linux-custom # Build kernel with a different name -_kernelname=-LIBRE-LTS-RT +pkgbase=linux-libre-lts-rt # Build stock -LIBRE-LTS-RT kernel +#pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.0 -_releasever=36 -_rtpatchver=rt57 +_releasever=40 +_rtpatchver=rt60 _pkgver=${_basekernel}.${_releasever} pkgver=${_basekernel}.${_releasever}_${_rtpatchver} -_lxopkgver=${_basekernel}.36 # nearly always the same as pkgver pkgrel=1 +_lxopkgver=${_basekernel}.39 # nearly always the same as pkgver arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -30,19 +28,22 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn # the main kernel config files 'config.i686' 'config.x86_64' # standard config files for mkinitcpio ramdisk - "${pkgname}.preset" + "${pkgbase}.preset" 'Kbuild' 'Kbuild.platforms' 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' 'ext4-options.patch' - "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE-LTS-RT md5sums=('5f64180fe7df4e574dac5911b78f5067' - '150413437fe54d4822e9e43189e37319' - '52679525b6b1049f5d54f270fad43423' - '37c2f6a089bc5d7632bcea4510c73e59' - 'ffbd1f905ffb0bc0eccbbd729de7d116' + '4c42d5680df7921c20dda6f5fa44b275' + 'b7e3a739f569ecac90880624ab05ec6c' + '7266f5e7af09cc6e4b15d7a952e3b350' + '5387f0cf51652c071190789569adf9c7' '85f04a9555bdc295f7c387a6564f0c81' '2967cecc3af9f954ccc822fd63dca6ff' '8267264d9a8966e57fdacd1fa1fc65c4' @@ -50,7 +51,7 @@ md5sums=('5f64180fe7df4e574dac5911b78f5067' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' 'c8299cf750a84e12d60b372c8ca7e1e8' - '7102cdd847f0bd7102f0ad01fa43f454') + 'eea9aa0065f636fc924a23b3ffd24343') if [ "$CARCH" != "mips64el" ]; then # Don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] @@ -103,7 +104,7 @@ build() { sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -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=\"${_kernelname}\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else @@ -111,7 +112,8 @@ build() { fi if [ "${_kernelname}" != "" ]; then - sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config fi # set extraversion to pkgrel @@ -131,15 +133,22 @@ build() { #make oldconfig # using old config from previous kernel version # ... or manually edit .config + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + if [ "${CARCH}" = "x86_64" ]; then + cat .config > "${startdir}/config.x86_64.last" + else + cat .config > "${startdir}/config.i686.last" + fi + #################### # stop here # this is useful to configure the kernel - #msg "Stopping build" - #return 1 + #msg "Stopping build"; return 1 #################### - yes "" | make config - # build! if [ "$CARCH" == "mips64el" ]; then # The build system passes it directly to linker, disable to avoid @@ -147,21 +156,22 @@ build() { export LDFLAGS="" # bzImage is arch-specific and not supported on mips; vmlinux is # useful for oprofile. - make ${MAKEFLAGS} vmlinux vmlinuz modules + make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules else - make ${MAKEFLAGS} bzImage modules + make ${MAKEFLAGS} LOCALVERSION= bzImage modules fi } -package_linux-libre-lts-rt() { - pkgdesc="The Linux-libre Kernel and modules (with full realtime preemption) - stable longtime supported kernel package suitable for servers" +_package() { + pkgdesc="The ${pkgbase} kernel and modules with full realtime preemption - stable longtime supported kernel package suitable for servers" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') depends=('coreutils' 'kmod') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26-rt-lts' "linux-rt-lts=$_pkgver") - conflicts=('kernel26-rt-lts' 'kernel26-libre-lts-rt' 'linux-rt-lts') - replaces=('kernel26-rt-lts' 'kernel26-libre-lts-rt' 'linux-rt-lts') - backup=("etc/mkinitcpio.d/${pkgname}.preset") - install=${pkgname}.install + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=${pkgbase}.install if [ "$CARCH" = "mips64el" ]; then optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)') conflicts+=('mkinitcpio<0.7') @@ -175,35 +185,42 @@ package_linux-libre-lts-rt() { [ $CARCH = "mips64el" ] && KARCH=mips # get kernel version - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} - make INSTALL_MOD_PATH="${pkgdir}" modules_install + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install if [ "$CARCH" == "mips64el" ]; then - cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgname}" - cp vmlinux "${pkgdir}/boot/vmlinux-${pkgname}" + cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}" + cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}" else - cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgname}" + cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" fi # add vmlinux install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" # install fallback mkinitcpio.conf file and preset file for kernel - install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # set correct depmod command for install sed \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${pkgbase}.install" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # mkinitcpio 0.7 relies on bzImage to find the kernel version if [ "$CARCH" == "mips64el" ]; then - sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" fi # remove build and source links @@ -225,11 +242,11 @@ package_linux-libre-lts-rt() { depmod -b "$pkgdir" -F System.map "$_kernver" } -package_linux-libre-lts-rt-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre-lts longtime supported kernel (with realtime preemption)" - provides=('kernel26-rt-lts-headers' "linux-rt-lts-headers=${_pkgver}") - conflicts=('kernel26-rt-lts-headers' 'kernel26-libre-lts-rt-headers' 'linux-rt-lts-headers') - replaces=('kernel26-rt-lts-headers' 'kernel26-libre-lts-rt-headers' 'linux-rt-lts-headers') +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") KARCH=x86 [ $CARCH = "mips64el" ] && KARCH=mips @@ -237,7 +254,7 @@ package_linux-libre-lts-rt-headers() { # In case of repackaging this is empty if [ -z "${_kernver}" ]; then cd "${srcdir}/linux-${_basekernel}" - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" fi install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" @@ -375,3 +392,12 @@ package_linux-libre-lts-rt-headers() { rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/mips fi } + +pkgname=("${pkgbase}" "${pkgbase}-headers") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/kernels/linux-libre-lts-rt/config.i686 b/kernels/linux-libre-lts-rt/config.i686 index a7a870b8a..39bc1c678 100644 --- a/kernels/linux-libre-lts-rt/config.i686 +++ b/kernels/linux-libre-lts-rt/config.i686 @@ -1,6 +1,6 @@ # # Automatically generated make config: don't edit -# Linux/i386 3.0.36-1 Kernel Configuration +# Linux/i386 3.0.39-1 Kernel Configuration # # CONFIG_64BIT is not set CONFIG_X86_32=y @@ -132,7 +132,6 @@ CONFIG_CGROUP_MEM_RES_CTLR_SWAP=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_SCHED=y CONFIG_FAIR_GROUP_SCHED=y -CONFIG_RT_GROUP_SCHED=y CONFIG_BLK_CGROUP=y # CONFIG_DEBUG_BLK_CGROUP is not set CONFIG_NAMESPACES=y diff --git a/kernels/linux-libre-lts-rt/config.x86_64 b/kernels/linux-libre-lts-rt/config.x86_64 index 6f3957bb7..826a006b2 100644 --- a/kernels/linux-libre-lts-rt/config.x86_64 +++ b/kernels/linux-libre-lts-rt/config.x86_64 @@ -1,6 +1,6 @@ # # Automatically generated make config: don't edit -# Linux/x86_64 3.0.36-1 Kernel Configuration +# Linux/x86_64 3.0.39-1 Kernel Configuration # CONFIG_64BIT=y # CONFIG_X86_32 is not set @@ -133,7 +133,6 @@ CONFIG_CGROUP_MEM_RES_CTLR_SWAP=y CONFIG_CGROUP_PERF=y CONFIG_CGROUP_SCHED=y CONFIG_FAIR_GROUP_SCHED=y -CONFIG_RT_GROUP_SCHED=y CONFIG_BLK_CGROUP=y # CONFIG_DEBUG_BLK_CGROUP is not set CONFIG_NAMESPACES=y diff --git a/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install b/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install index ffd8c1c66..83072298b 100644 --- a/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install +++ b/kernels/linux-libre-lts-rt/linux-libre-lts-rt.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-lts-rt -KERNEL_VERSION=3.0.36-1-rt57-LIBRE-LTS-RT +KERNEL_VERSION=3.0.40-1-rt60-LIBRE-LTS-RT # set a sane PATH to ensure that critical utils like depmod will be found export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' diff --git a/kernels/linux-libre-lts-xen/PKGBUILD b/kernels/linux-libre-lts-xen/PKGBUILD index 160353e50..186614bc0 100644 --- a/kernels/linux-libre-lts-xen/PKGBUILD +++ b/kernels/linux-libre-lts-xen/PKGBUILD @@ -3,13 +3,11 @@ # Contributor: Thomas Baechler <thomas@archlinux.org> # Maintainer (Parabola): André Silva <emulatorman@lavabit.com> -pkgbase=linux-libre-lts-xen -pkgname=('linux-libre-lts-xen' 'linux-libre-lts-xen-headers') # Build stock -LIBRE kernel with Xen guest support -# pkgname=linux-custom # Build kernel with a different name -_kernelname=-LIBRE-LTS-XEN +pkgbase=linux-libre-lts-xen # Build stock -LIBRE-LTS-XEN kernel +#pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.0 pkgver=${_basekernel}.31 -pkgrel=1.1 +pkgrel=1.2 arch=('i686') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -20,11 +18,14 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn # the main kernel config files 'config.i686' # standard config files for mkinitcpio ramdisk - "${pkgname}.preset" + "${pkgbase}.preset" 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' 'ext4-options.patch') + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE-LTS-XEN md5sums=('5f64180fe7df4e574dac5911b78f5067' '2748e4e15dada12fe284e9ae341a4652' '162fda63a1b6f9e0bf801e30cbb52195' @@ -65,7 +66,8 @@ build() { cat "${srcdir}/config.${CARCH}" > ./.config # simpler if [ "${_kernelname}" != "" ]; then - sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config fi # set extraversion to pkgrel @@ -85,52 +87,63 @@ build() { #make oldconfig # using old config from previous kernel version # ... or manually edit .config + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + cat .config > "${startdir}/config.i686.last" + #################### # stop here # this is useful to configure the kernel - #msg "Stopping build" - #return 1 + #msg "Stopping build"; return 1 #################### - yes "" | make config - # build! - make ${MAKEFLAGS} bzImage modules + make ${MAKEFLAGS} LOCALVERSION= bzImage modules } -package_linux-libre-lts-xen() { - pkgdesc="The Linux-libre Kernel and modules with Xen guest support - stable longtime supported kernel package suitable for servers" - depends=('coreutils' 'module-init-tools>=3.16' 'mkinitcpio>=0.7') +_package() { + pkgdesc="The ${pkgbase} kernel and modules with xen guest support - stable longtime supported kernel package suitable for servers" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') + depends=('coreutils' 'kmod' 'mkinitcpio>=0.7') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26-lts-xen' "linux-lts-xen=$pkgver") - conflicts=('kernel26-lts-xen' 'kernel26-libre-lts-xen' 'linux-lts-xen') - replaces=('kernel26-lts-xen' 'kernel26-libre-lts-xen' 'linux-lts-xen') - backup=("etc/mkinitcpio.d/${pkgname}.preset") - install=${pkgname}.install + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=${pkgbase}.install cd "${srcdir}/linux-${_basekernel}" KARCH=x86 # get kernel version - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} - make INSTALL_MOD_PATH="${pkgdir}" modules_install - cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgname}" + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install + cp "arch/$KARCH/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" # add vmlinux install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" # install fallback mkinitcpio.conf file and preset file for kernel - install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # set correct depmod command for install sed \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${pkgbase}.install" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # remove build and source links rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build} @@ -151,11 +164,11 @@ package_linux-libre-lts-xen() { depmod -b "$pkgdir" -F System.map "$_kernver" } -package_linux-libre-lts-xen-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre-lts-xen longtime supported kernel" - provides=('kernel26-lts-xen-headers' "linux-lts-xen-headers=${pkgver}") - conflicts=('kernel26-lts-xen-headers' 'kernel26-libre-lts-xen-headers' 'linux-lts-xen-headers') - replaces=('kernel26-lts-xen-headers' 'kernel26-libre-lts-xen-headers' 'linux-lts-xen-headers') +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" @@ -179,7 +192,7 @@ package_linux-libre-lts-xen-headers() { # copy arch includes for external modules mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/x86" - cp -a arch/x86/include "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/" + cp -a "arch/x86/include" "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/" # copy files necessary for later builds cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}" @@ -281,3 +294,12 @@ package_linux-libre-lts-xen-headers() { # remove unneeded architectures rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa} } + +pkgname=("${pkgbase}" "${pkgbase}-headers") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/kernels/linux-libre-lts-xen/linux-libre-lts-xen.install b/kernels/linux-libre-lts-xen/linux-libre-lts-xen.install index a63eba08e..0eb1f2870 100644 --- a/kernels/linux-libre-lts-xen/linux-libre-lts-xen.install +++ b/kernels/linux-libre-lts-xen/linux-libre-lts-xen.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-lts-xen -KERNEL_VERSION=3.0.31-1.1-LIBRE-LTS-XEN +KERNEL_VERSION=3.0.31-1.2-LIBRE-LTS-XEN post_install () { # updating module dependencies diff --git a/kernels/linux-libre-rt/PKGBUILD b/kernels/linux-libre-rt/PKGBUILD index 40746f814..503d1d30a 100644 --- a/kernels/linux-libre-rt/PKGBUILD +++ b/kernels/linux-libre-rt/PKGBUILD @@ -8,17 +8,15 @@ # Maintainer (Parabola): André Silva <emulatorman@lavabit.com> # Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -pkgbase=linux-libre-rt -pkgname=('linux-libre-rt' 'linux-libre-rt-headers') # Build stock -LIBRE kernel with RT support -# pkgname=linux-custom # Build kernel with a different name -_kernelname=-LIBRE-RT +pkgbase=linux-libre-rt # Build stock -LIBRE-RT kernel +#pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.4 -_releasever=4 -_rtpatchver=rt13 +_releasever=8 +_rtpatchver=rt16 _pkgver=${_basekernel}.${_releasever} pkgver=${_basekernel}.${_releasever}_${_rtpatchver} -_lxopkgver=${_basekernel}.4 # nearly always the same as pkgver -pkgrel=1.1 +pkgrel=1 +_lxopkgver=${_basekernel}.8 # nearly always the same as pkgver arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -30,17 +28,20 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn # the main kernel config files 'config.i686' 'config.x86_64' # standard config files for mkinitcpio ramdisk - "${pkgname}.preset" + "${pkgbase}.preset" 'Kbuild' 'Kbuild.platforms' 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' '3.4.4-fix-backlight-regression.patch' - "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE-RT md5sums=('a5e128ca059cceb8b69148b41ff4ac6f' - 'e9bb311ab329555a61696b1a18df2d34' - '6d4beaa5ec54f86f91f66c77a5bcc8f4' + '15c770a780368718e99997fddb38245a' + '563c761c01333ca3b88a5544675ebf47' 'd176ceb303ecfb2303d9659ea2dd91c7' 'bcb219ab37ed19912126189cfca30538' '82496e68851d1960543a07ba51cdb44a' @@ -50,7 +51,7 @@ md5sums=('a5e128ca059cceb8b69148b41ff4ac6f' '9d3c56a4b999c8bfbd4018089a62f662' '263725f20c0b9eb9c353040792d644e5' '80a46681386bb87813989faeb92bdd9a' - '86910efeadb5d1e5d5416ff1a9dacb33') + '7c8fc7c55a9102831e5cef2f4033aa70') if [ "$CARCH" != "mips64el" ]; then # Don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] @@ -103,7 +104,7 @@ build() { sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -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=\"${_kernelname}\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else @@ -111,7 +112,8 @@ build() { fi if [ "${_kernelname}" != "" ]; then - sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config fi # set extraversion to pkgrel @@ -131,15 +133,22 @@ build() { #make oldconfig # using old config from previous kernel version # ... or manually edit .config + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + if [ "${CARCH}" = "x86_64" ]; then + cat .config > "${startdir}/config.x86_64.last" + else + cat .config > "${startdir}/config.i686.last" + fi + #################### # stop here # this is useful to configure the kernel - #msg "Stopping build" - #return 1 + #msg "Stopping build"; return 1 #################### - yes "" | make config - # build! if [ "$CARCH" == "mips64el" ]; then # The build system passes it directly to linker, disable to avoid @@ -147,21 +156,22 @@ build() { export LDFLAGS="" # bzImage is arch-specific and not supported on mips; vmlinux is # useful for oprofile. - make ${MAKEFLAGS} vmlinux vmlinuz modules + make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules else - make ${MAKEFLAGS} bzImage modules + make ${MAKEFLAGS} LOCALVERSION= bzImage modules fi } -package_linux-libre-rt() { - pkgdesc="The Linux-libre Kernel and modules (with realtime preemption)" +_package() { + pkgdesc="The ${pkgbase} kernel and modules with realtime preemption" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') depends=('coreutils' 'kmod') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26-rt' "linux-rt=$_pkgver") - conflicts=('kernel26-rt' 'kernel26-libre-rt' 'linux-rt') - replaces=('kernel26-rt' 'kernel26-libre-rt' 'linux-rt') - backup=("etc/mkinitcpio.d/${pkgname}.preset") - install=${pkgname}.install + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=${pkgbase}.install if [ "$CARCH" = "mips64el" ]; then optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)') conflicts+=('mkinitcpio<0.7') @@ -175,35 +185,42 @@ package_linux-libre-rt() { [ $CARCH = "mips64el" ] && KARCH=mips # get kernel version - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} - make INSTALL_MOD_PATH="${pkgdir}" modules_install + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install if [ "$CARCH" == "mips64el" ]; then - cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgname}" - cp vmlinux "${pkgdir}/boot/vmlinux-${pkgname}" + cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}" + cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}" else - cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgname}" + cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" fi # add vmlinux install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" # install fallback mkinitcpio.conf file and preset file for kernel - install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # set correct depmod command for install sed \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${pkgbase}.install" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # mkinitcpio 0.7 relies on bzImage to find the kernel version if [ "$CARCH" == "mips64el" ]; then - sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" fi # remove build and source links @@ -225,11 +242,11 @@ package_linux-libre-rt() { depmod -b "$pkgdir" -F System.map "$_kernver" } -package_linux-libre-rt-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre kernel (with realtime preemption)" - provides=('kernel26-rt-headers' "linux-rt-headers=${_pkgver}") - conflicts=('kernel26-rt-headers' 'kernel26-libre-rt-headers' 'linux-rt-headers') - replaces=('kernel26-rt-headers' 'kernel26-libre-rt-headers' 'linux-rt-headers') +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") KARCH=x86 [ $CARCH = "mips64el" ] && KARCH=mips @@ -237,7 +254,7 @@ package_linux-libre-rt-headers() { # In case of repackaging this is empty if [ -z "${_kernver}" ]; then cd "${srcdir}/linux-${_basekernel}" - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" fi install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" @@ -375,3 +392,12 @@ package_linux-libre-rt-headers() { rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/mips fi } + +pkgname=("${pkgbase}" "${pkgbase}-headers") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/kernels/linux-libre-rt/linux-libre-rt.install b/kernels/linux-libre-rt/linux-libre-rt.install index 7d448d7c6..9321a1c8b 100644 --- a/kernels/linux-libre-rt/linux-libre-rt.install +++ b/kernels/linux-libre-rt/linux-libre-rt.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-rt -KERNEL_VERSION=3.4.4-1.1-rt13-LIBRE-RT +KERNEL_VERSION=3.4.8-1-rt16-LIBRE-RT # set a sane PATH to ensure that critical utils like depmod will be found export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' diff --git a/kernels/linux-libre-xen/PKGBUILD b/kernels/linux-libre-xen/PKGBUILD index 72a788341..85475feb8 100644 --- a/kernels/linux-libre-xen/PKGBUILD +++ b/kernels/linux-libre-xen/PKGBUILD @@ -4,15 +4,13 @@ # Maintainer (Parabola): Nicolás Reynolds <fauno@kiwwwi.com.ar> # Maintainer (Parabola): Sorin-Mihai Vârgolici <smv@yobicore.org> # Maintainer (Parabola): André Silva <emulatorman@lavabit.com> -# Contributor (Parabola): Márcio Silva <coadde@lavabit.com> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -pkgbase=linux-libre-xen -pkgname=('linux-libre-xen' 'linux-libre-xen-headers') # Build stock -LIBRE kernel with Xen guest support -# pkgname=linux-custom # Build kernel with a different name -_kernelname=-LIBRE-XEN +pkgbase=linux-libre-xen # Build stock -LIBRE-XEN kernel +#pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.3 pkgver=${_basekernel}.6 -pkgrel=1.1 +pkgrel=1.2 arch=('i686') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -23,11 +21,14 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn # the main kernel config files 'config.i686' # standard config files for mkinitcpio ramdisk - "${pkgname}.preset" + "${pkgbase}.preset" 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' 'ext4-options.patch') + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE-XEN md5sums=('5487da14ca81715a469c7594d39722fa' '6d9d139e4b53802615833372728cc0e4' '08169715a665016e8e54a92f98768494' @@ -68,7 +69,8 @@ build() { cat "${srcdir}/config.${CARCH}" > ./.config # simpler if [ "${_kernelname}" != "" ]; then - sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config fi # set extraversion to pkgrel @@ -88,52 +90,63 @@ build() { #make oldconfig # using old config from previous kernel version # ... or manually edit .config + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + cat .config > "${startdir}/config.i686.last" + #################### # stop here # this is useful to configure the kernel - #msg "Stopping build" - #return 1 + #msg "Stopping build"; return 1 #################### - yes "" | make config - # build! - make ${MAKEFLAGS} bzImage modules + make ${MAKEFLAGS} LOCALVERSION= bzImage modules } -package_linux-libre-xen() { - pkgdesc="The Linux-libre Kernel and modules with Xen guest support" - depends=('coreutils' 'module-init-tools>=3.16' 'mkinitcpio>=0.7') +_package() { + pkgdesc="The ${pkgbase} kernel and modules with xen guest support" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') + depends=('coreutils' 'kmod' 'mkinitcpio>=0.7') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26-xen' "linux-xen=$pkgver") - conflicts=('kernel26-xen' 'kernel26-libre-xen' 'linux-xen') - replaces=('kernel26-xen' 'kernel26-libre-xen' 'linux-xen') - backup=("etc/mkinitcpio.d/${pkgname}.preset") - install=${pkgname}.install + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=${pkgbase}.install cd "${srcdir}/linux-${_basekernel}" KARCH=x86 # get kernel version - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} - make INSTALL_MOD_PATH="${pkgdir}" modules_install - cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgname}" + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install + cp "arch/$KARCH/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" # add vmlinux install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" # install fallback mkinitcpio.conf file and preset file for kernel - install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # set correct depmod command for install sed \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${pkgbase}.install" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # remove build and source links rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build} @@ -154,11 +167,11 @@ package_linux-libre-xen() { depmod -b "$pkgdir" -F System.map "$_kernver" } -package_linux-libre-xen-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre-xen kernel" - provides=('kernel26-xen-headers' "linux-xen-headers=${pkgver}") - conflicts=('kernel26-xen-headers' 'kernel26-libre-xen-headers' 'linux-xen-headers') - replaces=('kernel26-xen-headers' 'kernel26-libre-xen-headers' 'linux-xen-headers') +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" @@ -182,7 +195,7 @@ package_linux-libre-xen-headers() { # copy arch includes for external modules mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/arch/x86" - cp -a arch/x86/include "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/" + cp -a "arch/x86/include" "${pkgdir}/usr/src/linux-${_kernver}/arch/x86/" # copy files necessary for later builds cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}" @@ -284,3 +297,12 @@ package_linux-libre-xen-headers() { # remove unneeded architectures rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa} } + +pkgname=("${pkgbase}" "${pkgbase}-headers") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/kernels/linux-libre-xen/linux-libre-xen.install b/kernels/linux-libre-xen/linux-libre-xen.install index 474d4af1e..7683e4527 100644 --- a/kernels/linux-libre-xen/linux-libre-xen.install +++ b/kernels/linux-libre-xen/linux-libre-xen.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-xen -KERNEL_VERSION=3.3.6-1.1-LIBRE-XEN +KERNEL_VERSION=3.3.6-1.2-LIBRE-XEN post_install () { # updating module dependencies diff --git a/libre/audacious-plugins-libre/PKGBUILD b/libre/audacious-plugins-libre/PKGBUILD index 59011736c..d5b1e5313 100644 --- a/libre/audacious-plugins-libre/PKGBUILD +++ b/libre/audacious-plugins-libre/PKGBUILD @@ -7,7 +7,7 @@ _pkgname=audacious-plugins pkgname=audacious-plugins-libre -pkgver=3.3 +pkgver=3.3.1 pkgrel=1 pkgdesc='Plugins for Audacious without unfree plugins' url='http://audacious-media-player.org/' @@ -60,7 +60,7 @@ optdepends=('oss: Open Sound System v4 output' 'libcue: CUE playlist format') source=("http://distfiles.audacious-media-player.org/${_pkgname}-${pkgver}.tar.bz2") -sha1sums=('2ce65a9d9a2d5d5cbe41befa70c89f36fff43286') +sha1sums=('7775ff82a7fe2a1de7eb8a76322718c845a1f225') build() { # Retrieve upstream & remove plugin 'psf' due to issues mentioned above. sed -i s/enable_psf=yes/enable_psf=no/ ${_pkgname}-$pkgver/configure diff --git a/libre/clementine-libre/PKGBUILD b/libre/clementine-libre/PKGBUILD index 53ab2a644..307000501 100644 --- a/libre/clementine-libre/PKGBUILD +++ b/libre/clementine-libre/PKGBUILD @@ -8,7 +8,7 @@ _pkgname=clementine pkgname=clementine-libre pkgver=1.0.1 -pkgrel=6 +pkgrel=7 pkgdesc="A music player and library organizer, without spotify support" url="http://www.clementine-player.org/" license=('GPL') @@ -27,11 +27,13 @@ provides=("clementine=$pkgver") source=(http://clementine-player.googlecode.com/files/${_pkgname}-${pkgver}.tar.gz clementine-fix-albumcoverfetch-crash.patch clementine-fresh-start.patch + imobiledevice.patch remove-and-disable-spotify.patch remove-nonfree-references-on-translations.patch) sha1sums=('e05320da689e2fad744fd3e68518bc4103ecf0fd' 'fddd2e784181ce1dcc7809e7122cbade0af7b01f' 'd8abab4b8fb2d5284a2f43107505325e62d4af5f' + 'a04cec00e38651de78bfaa6b6d73532c3786de11' '2fef46eaffa7b5cd61afbf19b1dc909d11972a34' '745bc4fd639d7ef3230592c6275fb43b8956f3d5') install=clementine.install @@ -45,6 +47,9 @@ build() { # http://code.google.com/p/clementine-player/issues/detail?id=2752 patch -Np1 -i ../clementine-fix-albumcoverfetch-crash.patch + # Use libimobiledevice new "udid" field instead of "uuid". + patch -Np1 -i ../imobiledevice.patch + # https://labs.parabola.nu/issues/99 patch -Np1 -i ../remove-and-disable-spotify.patch patch -Np1 -i ../remove-nonfree-references-on-translations.patch diff --git a/libre/clementine-libre/imobiledevice.patch b/libre/clementine-libre/imobiledevice.patch new file mode 100644 index 000000000..9d387fd2f --- /dev/null +++ b/libre/clementine-libre/imobiledevice.patch @@ -0,0 +1,50 @@ +--- clementine-1.0.1/src/CMakeLists.txt.orig 2012-04-12 09:26:47.932990539 +0100 ++++ clementine-1.0.1/src/CMakeLists.txt 2012-04-12 09:28:40.553993173 +0100 +@@ -17,6 +17,10 @@ + include_directories(../3rdparty/qtwin) + endif(WIN32) + ++if(ENABLE_IMOBILEDEVICE AND IMOBILEDEVICE_VERSION VERSION_GREATER 1.1.1) ++ set(IMOBILEDEVICE_USES_UDIDS ON) ++endif() ++ + include_directories(${CMAKE_BINARY_DIR}) + include_directories(${GLIB_INCLUDE_DIRS}) + include_directories(${LIBXML_INCLUDE_DIRS}) +@@ -1008,6 +1012,7 @@ + ${USBMUXD_LIBRARIES} + gstafcsrc + ) ++ link_directories(${IMOBILEDEVICE_LIBRARY_DIRS}) + link_directories(${USBMUXD_LIBRARY_DIRS}) + endif(HAVE_IMOBILEDEVICE) + +--- clementine-1.0.1/src/config.h.in.orig 2011-12-02 21:24:43.000000000 +0000 ++++ clementine-1.0.1/src/config.h.in 2012-04-12 09:28:40.554993154 +0100 +@@ -38,6 +38,7 @@ + #cmakedefine HAVE_SPOTIFY + #cmakedefine HAVE_STATIC_SQLITE + #cmakedefine HAVE_WIIMOTEDEV ++#cmakedefine IMOBILEDEVICE_USES_UDIDS + #cmakedefine LEOPARD + #cmakedefine SNOW_LEOPARD + #cmakedefine USE_INSTALL_PREFIX +--- clementine-1.0.1/src/devices/ilister.cpp.orig 2012-04-12 09:28:38.407993781 +0100 ++++ clementine-1.0.1/src/devices/ilister.cpp 2012-04-12 09:28:40.554993154 +0100 +@@ -1,3 +1,4 @@ ++#include "config.h" + #include "ilister.h" + #include "imobiledeviceconnection.h" + +@@ -17,7 +18,11 @@ + void iLister::EventCallback(const idevice_event_t* event, void* context) { + iLister* me = reinterpret_cast<iLister*>(context); + ++#ifdef IMOBILEDEVICE_USES_UDIDS ++ const char* uuid = event->udid; ++#else + const char* uuid = event->uuid; ++#endif + + switch (event->event) { + case IDEVICE_DEVICE_ADD: diff --git a/libre/ghostscript-libre/PKGBUILD b/libre/ghostscript-libre/PKGBUILD index b89a3095b..656f49fb5 100644 --- a/libre/ghostscript-libre/PKGBUILD +++ b/libre/ghostscript-libre/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 149732 2012-02-09 20:34:33Z andyrtr $ +# $Id: PKGBUILD 165015 2012-08-08 19:40:10Z andyrtr $ # Maintainer: AndyRTR <andyrtr@archlinux.org> -# Maintainer (Parabola): xihh -# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy> +# Maintainer (Parabola): Joshua Haase <hahj87@gmail.com> +# Maintainer (Parabola): André Silva <emulatorman@lavabit.com> _pkgname=ghostscript pkgname=ghostscript-libre -pkgver=9.05 +pkgver=9.06 pkgrel=1 pkgdesc="An interpreter for the PostScript language without non-free files" arch=('i686' 'x86_64' 'mips64el') @@ -15,18 +15,19 @@ makedepends=('gtk2' 'gnutls') optdepends=('texlive-core: needed for dvipdf' 'gtk2: needed for gsx') conflicts=('ghostscript') -replaces=('ghostscript-lrpng' 'ghostscript') -provides=('ghostscript-lprng' "ghostscript=$pkgver") +replaces=('ghostscript') +provides=("ghostscript=$pkgver") url="http://www.ghostscript.com/" source=(http://downloads.ghostscript.com/public/ghostscript-${pkgver}.tar.bz2) options=('!libtool' '!makeflags') -md5sums=('8bcef1f33ddf8a4d12b2cf8da385c191') +md5sums=('46f9ebe40dc52755287b30704270db11') build() { cd ${srcdir}/ghostscript-${pkgver} # delete non-free packages grep -l "are not altered" Resource/CMap/* | xargs rm -fv + grep -l "not be copied" Resource/CMap/* | xargs rm -fv # force it to use system-libs rm -rf jpeg libpng zlib jasper expat tiff lcms freetype diff --git a/libre/linux-libre-lts/.directory b/libre/linux-libre-lts/.directory index 89e875be9..3bbc4dedd 100644 --- a/libre/linux-libre-lts/.directory +++ b/libre/linux-libre-lts/.directory @@ -1,2 +1,3 @@ [Dolphin] -Timestamp=2012,4,16,17,55,34 +Timestamp=2012,8,9,22,54,43 +Version=3 diff --git a/libre/linux-libre-lts/PKGBUILD b/libre/linux-libre-lts/PKGBUILD index 93ee3ad0a..065ca3fc0 100644 --- a/libre/linux-libre-lts/PKGBUILD +++ b/libre/linux-libre-lts/PKGBUILD @@ -4,15 +4,13 @@ # Maintainer (Parabola): André Silva <emulatorman@lavabit.com> # Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -pkgbase=linux-libre-lts -pkgname=('linux-libre-lts' 'linux-libre-lts-headers') # Build stock -LIBRE-LTS kernel -# pkgname=linux-custom # Build kernel with a different name -_kernelname=-LIBRE-LTS +pkgbase=linux-libre-lts # Build stock -LIBRE-LTS kernel +#pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.0 -_sublevel=39 +_sublevel=40 pkgver=${_basekernel}.${_sublevel} -_lxopkgver=${_basekernel}.39 # nearly always the same as pkgver pkgrel=1 +_lxopkgver=${_basekernel}.39 # nearly always the same as pkgver arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') @@ -23,16 +21,19 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn # the main kernel config files 'config.i686' 'config.x86_64' # standard config files for mkinitcpio ramdisk - "${pkgname}.preset" + "${pkgbase}.preset" 'Kbuild' 'Kbuild.platforms' 'boot-logo.patch' 'change-default-console-loglevel.patch' 'i915-fix-ghost-tv-output.patch' 'ext4-options.patch' - "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE-LTS md5sums=('5f64180fe7df4e574dac5911b78f5067' - '9259948f76db87052be56da4c525d07a' + '4c42d5680df7921c20dda6f5fa44b275' '5e3362ef81c99563852f1b7a8c5b5837' '3d078c10d51f9c2f4d0ec6be531caf1d' 'c072b17032e80debc6a8626299245d46' @@ -92,7 +93,7 @@ build() { sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -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=\"${_kernelname}\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else @@ -100,7 +101,8 @@ build() { fi if [ "${_kernelname}" != "" ]; then - sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config fi # set extraversion to pkgrel @@ -120,15 +122,22 @@ build() { #make oldconfig # using old config from previous kernel version # ... or manually edit .config + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + if [ "${CARCH}" = "x86_64" ]; then + cat .config > "${startdir}/config.x86_64.last" + else + cat .config > "${startdir}/config.i686.last" + fi + #################### # stop here # this is useful to configure the kernel - #msg "Stopping build" - #return 1 + #msg "Stopping build"; return 1 #################### - yes "" | make config - # build! if [ "$CARCH" == "mips64el" ]; then # The build system passes it directly to linker, disable to avoid @@ -136,21 +145,22 @@ build() { export LDFLAGS="" # bzImage is arch-specific and not supported on mips; vmlinux is # useful for oprofile. - make ${MAKEFLAGS} vmlinux vmlinuz modules + make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules else - make ${MAKEFLAGS} bzImage modules + make ${MAKEFLAGS} LOCALVERSION= bzImage modules fi } -package_linux-libre-lts() { - pkgdesc="The Linux-libre Kernel and modules - stable longtime supported kernel package suitable for servers" +_package() { + pkgdesc="The ${pkgbase} kernel and modules - stable longtime supported kernel package suitable for servers" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') depends=('coreutils' 'kmod') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26-lts' "linux-lts=$pkgver") - conflicts=('kernel26-lts' 'kernel26-libre-lts' 'linux-lts') - replaces=('kernel26-lts' 'kernel26-libre-lts' 'linux-lts') - backup=("etc/mkinitcpio.d/${pkgname}.preset") - install=${pkgname}.install + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=${pkgbase}.install if [ "$CARCH" = "mips64el" ]; then optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)') conflicts+=('mkinitcpio<0.7') @@ -164,35 +174,42 @@ package_linux-libre-lts() { [ $CARCH = "mips64el" ] && KARCH=mips # get kernel version - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} - make INSTALL_MOD_PATH="${pkgdir}" modules_install + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install if [ "$CARCH" == "mips64el" ]; then - cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgname}" - cp vmlinux "${pkgdir}/boot/vmlinux-${pkgname}" + cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}" + cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}" else - cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgname}" + cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" fi # add vmlinux install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" # install fallback mkinitcpio.conf file and preset file for kernel - install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # set correct depmod command for install sed \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${pkgbase}.install" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # mkinitcpio 0.7 relies on bzImage to find the kernel version if [ "$CARCH" == "mips64el" ]; then - sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" fi # remove build and source links @@ -214,11 +231,11 @@ package_linux-libre-lts() { depmod -b "$pkgdir" -F System.map "$_kernver" } -package_linux-libre-lts-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre-lts longtime supported kernel" - provides=('kernel26-lts-headers' "linux-lts-headers=${pkgver}") - conflicts=('kernel26-lts-headers' 'kernel26-libre-lts-headers' 'linux-lts-headers') - replaces=('kernel26-lts-headers' 'kernel26-libre-lts-headers' 'linux-lts-headers') +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") KARCH=x86 [ $CARCH = "mips64el" ] && KARCH=mips @@ -226,7 +243,7 @@ package_linux-libre-lts-headers() { # In case of repackaging this is empty if [ -z "${_kernver}" ]; then cd "${srcdir}/linux-${_basekernel}" - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" fi install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" @@ -364,3 +381,12 @@ package_linux-libre-lts-headers() { rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/mips fi } + +pkgname=("${pkgbase}" "${pkgbase}-headers") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/libre/linux-libre-lts/linux-libre-lts.install b/libre/linux-libre-lts/linux-libre-lts.install index 6f7899fe6..58b0a302a 100644 --- a/libre/linux-libre-lts/linux-libre-lts.install +++ b/libre/linux-libre-lts/linux-libre-lts.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME=-lts -KERNEL_VERSION=3.0.39-1-LIBRE-LTS +KERNEL_VERSION=3.0.40-1-LIBRE-LTS # set a sane PATH to ensure that critical utils like depmod will be found export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' diff --git a/libre/linux-libre/.directory b/libre/linux-libre/.directory index f39ceed05..e6f3e33d1 100644 --- a/libre/linux-libre/.directory +++ b/libre/linux-libre/.directory @@ -1,5 +1,6 @@ [Dolphin] -Timestamp=2012,4,8,18,21,16 +Timestamp=2012,8,9,22,54,19 +Version=3 [Settings] HiddenFilesShown=true diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD index e50322b17..ad9bb852e 100644 --- a/libre/linux-libre/PKGBUILD +++ b/libre/linux-libre/PKGBUILD @@ -7,34 +7,35 @@ # Maintainer (Parabola): Michał Masłowski <mtjm@mtjm.eu> # Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -pkgbase=linux-libre -pkgname=('linux-libre' 'linux-libre-headers' 'linux-libre-docs') # Build stock -LIBRE kernel -# pkgname=linux-custom # Build kernel with a different name -_kernelname=-LIBRE +pkgbase=linux-libre # Build stock -LIBRE kernel +#pkgbase=linux-libre-custom # Build kernel with a different name _basekernel=3.5 -#_sublevel=6 -#pkgver=${_basekernel}.${_sublevel} -pkgver=${_basekernel} -_lxopkgver=${_basekernel}.0 # nearly always the same as pkgver -pkgrel=2 +_sublevel=1 +pkgver=${_basekernel}.${_sublevel} +pkgrel=1 +_lxopkgver=${_basekernel}.1 # nearly always the same as pkgver arch=('i686' 'x86_64' 'mips64el') url="http://linux-libre.fsfla.org/" license=('GPL2') makedepends=('xmlto' 'docbook-xsl') options=('!strip') source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gnu/linux-libre-${_basekernel}-gnu.tar.xz" - #"http://linux-libre.fsfla.org/pub/linux-libre/releases/${pkgver}-gnu/patch-${_basekernel}-gnu-${pkgver}-gnu.xz" + "http://linux-libre.fsfla.org/pub/linux-libre/releases/${pkgver}-gnu/patch-${_basekernel}-gnu-${pkgver}-gnu.xz" # the main kernel config files 'config.i686' 'config.x86_64' # standard config files for mkinitcpio ramdisk - "${pkgname}.preset" + "${pkgbase}.preset" 'Kbuild' 'Kbuild.platforms' 'boot-logo.patch' 'change-default-console-loglevel.patch' 'avmfritz-only-few-bytes-are-transfered-on-a-conn.patch' - "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2") + +_kernelname=${pkgbase#linux-libre} +_localversionname=-LIBRE md5sums=('2407fc9563a74acaf38aa0c06516eb1c' + '67b650dd355fbca16035510df063420b' '7f0b7950bc9d2a20cdb6b850e6e4eb5a' 'a796ea383eb136cb38fab0a52b6d2f52' 'e49ac236dfeef709f91a3d993ea7b62c' @@ -43,7 +44,7 @@ md5sums=('2407fc9563a74acaf38aa0c06516eb1c' '04b21c79df0a952c22d681dd4f4562df' '9d3c56a4b999c8bfbd4018089a62f662' '2afcc001cc178be72e3a19d95f4bd5eb' - 'a9338d11a2b23fe0cd43cc4fee5aed42') + 'eb25429666af638b01baa663eca74d08') if [ "$CARCH" != "mips64el" ]; then # Don't use the Loongson-specific patches on non-mips64el arches. unset source[${#source[@]}-1] @@ -67,6 +68,7 @@ build() { patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch" # fix avmfritz capi20 functionallity + # will be added to 3.5.2 # https://bugzilla.kernel.org/show_bug.cgi?id=45271 patch -Np1 -i "${srcdir}/avmfritz-only-few-bytes-are-transfered-on-a-conn.patch" @@ -85,7 +87,7 @@ build() { sed -ri -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \ -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=\"${_kernelname}\"|g" \ + -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \ -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \ ./.config else @@ -93,7 +95,8 @@ build() { fi if [ "${_kernelname}" != "" ]; then - sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" ./.config + sed -i "s|CONFIG_LOCALVERSION_AUTO=.*|CONFIG_LOCALVERSION_AUTO=n|" ./.config fi # set extraversion to pkgrel @@ -113,15 +116,22 @@ build() { #make oldconfig # using old config from previous kernel version # ... or manually edit .config + # rewrite configuration + yes "" | make config >/dev/null + + # save configuration for later reuse + if [ "${CARCH}" = "x86_64" ]; then + cat .config > "${startdir}/config.x86_64.last" + else + cat .config > "${startdir}/config.i686.last" + fi + #################### # stop here # this is useful to configure the kernel - #msg "Stopping build" - #return 1 + #msg "Stopping build"; return 1 #################### - yes "" | make config - # build! if [ "$CARCH" == "mips64el" ]; then # The build system passes it directly to linker, disable to avoid @@ -129,22 +139,22 @@ build() { export LDFLAGS="" # bzImage is arch-specific and not supported on mips; vmlinux is # useful for oprofile. - make ${MAKEFLAGS} vmlinux vmlinuz modules + make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules else - make ${MAKEFLAGS} bzImage modules + make ${MAKEFLAGS} LOCALVERSION= bzImage modules fi } -package_linux-libre() { - pkgdesc="The Linux-libre Kernel and modules" - groups=('base') +_package() { + pkgdesc="The ${pkgbase} kernel and modules" + [ "${pkgbase}" = "linux-libre" ] && groups=('base') depends=('coreutils' 'kmod') optdepends=('crda: to set the correct wireless channels of your country') - provides=('kernel26' "linux=$pkgver") - conflicts=('kernel26' 'kernel26-libre' 'linux') - replaces=('kernel26' 'kernel26-libre' 'linux') - backup=("etc/mkinitcpio.d/${pkgname}.preset") - install=${pkgname}.install + provides=("kernel26${_kernelname}=${pkgver}" "linux${_kernelname}=${pkgver}") + conflicts=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + replaces=("kernel26${_kernelname}" "kernel26-libre${_kernelname}" "linux${_kernelname}") + backup=("etc/mkinitcpio.d/${pkgbase}.preset") + install=${pkgbase}.install if [ "$CARCH" = "mips64el" ]; then optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)') conflicts+=('mkinitcpio<0.7') @@ -158,35 +168,42 @@ package_linux-libre() { [ $CARCH = "mips64el" ] && KARCH=mips # get kernel version - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" + _basekernel=${_kernver%%-*} + _basekernel=${_basekernel%.*} mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot} - make INSTALL_MOD_PATH="${pkgdir}" modules_install + make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install if [ "$CARCH" == "mips64el" ]; then - cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgname}" - cp vmlinux "${pkgdir}/boot/vmlinux-${pkgname}" + cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}" + cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}" else - cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgname}" + cp "arch/${KARCH}/boot/bzImage" "${pkgdir}/boot/vmlinuz-${pkgbase}" fi # add vmlinux install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux" # install fallback mkinitcpio.conf file and preset file for kernel - install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + install -D -m644 "${srcdir}/${pkgbase}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # set correct depmod command for install sed \ - -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \ - -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \ - -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + -e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/" \ + -e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/" \ + -i "${startdir}/${pkgbase}.install" + sed \ + -e "1s|'linux*.*'|'${pkgbase}'|" \ + -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgbase}\"|" \ + -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgbase}.img\"|" \ + -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" # mkinitcpio 0.7 relies on bzImage to find the kernel version if [ "$CARCH" == "mips64el" ]; then - sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|g" \ - -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset" + sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \ + -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset" fi # remove build and source links @@ -208,11 +225,11 @@ package_linux-libre() { depmod -b "$pkgdir" -F System.map "$_kernver" } -package_linux-libre-headers() { - pkgdesc="Header files and scripts for building modules for linux-libre kernel" - provides=('kernel26-headers' "linux-headers=${pkgver}") - conflicts=('kernel26-headers' 'kernel26-libre-headers' 'linux-headers') - replaces=('kernel26-headers' 'kernel26-libre-headers' 'linux-headers') +_package-headers() { + pkgdesc="Header files and scripts for building modules for ${pkgbase} kernel" + provides=("kernel26${_kernelname}-headers=${pkgver}" "linux${_kernelname}-headers=${pkgver}") + conflicts=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") + replaces=("kernel26${_kernelname}-headers" "kernel26-libre${_kernelname}-headers" "linux${_kernelname}-headers") KARCH=x86 [ $CARCH = "mips64el" ] && KARCH=mips @@ -220,7 +237,7 @@ package_linux-libre-headers() { # In case of repackaging this is empty if [ -z "${_kernver}" ]; then cd "${srcdir}/linux-${_basekernel}" - _kernver="$(make kernelrelease)" + _kernver="$(make LOCALVERSION= kernelrelease)" fi install -dm755 "${pkgdir}/usr/lib/modules/${_kernver}" @@ -359,11 +376,11 @@ package_linux-libre-headers() { fi } -package_linux-libre-docs() { - pkgdesc="Kernel hackers manual - HTML documentation that comes with the Linux-libre kernel." - provides=('kernel26-docs' "linux-docs=$pkgver") - conflicts=('kernel26-docs' 'kernel26-libre-docs' 'linux-docs') - replaces=('kernel26-docs' 'kernel26-libre-docs' 'linux-docs') +_package-docs() { + pkgdesc="Kernel hackers manual - HTML documentation that comes with the ${pkgbase} kernel" + provides=("kernel26${_kernelname}-docs=${pkgver}" "linux${_kernelname}-docs=${pkgver}") + conflicts=("kernel26${_kernelname}-docs" "kernel26-libre${_kernelname}-docs" "linux${_kernelname}-docs") + replaces=("kernel26${_kernelname}-docs" "kernel26-libre${_kernelname}-docs" "linux${_kernelname}-docs") cd "${srcdir}/linux-${_basekernel}" @@ -375,13 +392,12 @@ package_linux-libre-docs() { # remove a file already in linux package rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile" } -md5sums=('2407fc9563a74acaf38aa0c06516eb1c' - '7f0b7950bc9d2a20cdb6b850e6e4eb5a' - 'a796ea383eb136cb38fab0a52b6d2f52' - 'e49ac236dfeef709f91a3d993ea7b62c' - '2967cecc3af9f954ccc822fd63dca6ff' - '8267264d9a8966e57fdacd1fa1fc65c4' - '04b21c79df0a952c22d681dd4f4562df' - '9d3c56a4b999c8bfbd4018089a62f662' - '2afcc001cc178be72e3a19d95f4bd5eb' - 'dd81d72d74a5989d9b623d0996a4e989') + +pkgname=("${pkgbase}" "${pkgbase}-headers" "${pkgbase}-docs") +for _p in ${pkgname[@]}; do + eval "package_${_p}() { + _package${_p#${pkgbase}} + }" +done + +# vim:set ts=8 sts=2 sw=2 et: diff --git a/libre/linux-libre/linux-libre.install b/libre/linux-libre/linux-libre.install index 5f1005477..9d56698c6 100644 --- a/libre/linux-libre/linux-libre.install +++ b/libre/linux-libre/linux-libre.install @@ -2,7 +2,7 @@ # arg 2: the old package version KERNEL_NAME= -KERNEL_VERSION=3.5.0-2-LIBRE +KERNEL_VERSION=3.5.1-1-LIBRE # set a sane PATH to ensure that critical utils like depmod will be found export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' diff --git a/libre/syslinux/PKGBUILD b/libre/syslinux/PKGBUILD index 3fbbafb04..12b89be90 100644 --- a/libre/syslinux/PKGBUILD +++ b/libre/syslinux/PKGBUILD @@ -1,11 +1,10 @@ -# $Id$ -# Maintainer: Thomas Bächler <thomas@archlinux.org> +# $Id: PKGBUILD 165001 2012-08-08 15:45:08Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> -# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy> +# Maintainer (Parabola): André Silva <emulatorman@lavabit.com> pkgname=syslinux pkgver=4.05 -pkgrel=4.3 +pkgrel=6 arch=('i686' 'x86_64' 'mips64el') pkgdesc="Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE (Parabola rebranded)" url="http://syslinux.zytor.com/" @@ -14,7 +13,8 @@ depends=('perl' 'glibc') optdepends=('perl-passwd-md5: For md5pass' 'perl-digest-sha1: For sha1pass' 'mtools: For mkdiskimage and syslinux support' - ) + 'gptfdisk: For GPT support' + 'util-linux: For isohybrid') makedepends=('nasm') backup=('boot/syslinux/syslinux.cfg' 'boot/syslinux/splash.png') @@ -23,14 +23,9 @@ source=(http://www.kernel.org/pub/linux/utils/boot/syslinux/$pkgname-${pkgver}.t syslinux-dont-build-dos-windows-targets.patch syslinux.cfg syslinux-install_update - splash.png - fix-undefined-type-umode_t.patch) -md5sums=('82299242418385da1274c9479a778cb2' - '1528c376e43f0eaccaa80d8ad1bc13b4' - '8dc2afca3739667e892faf04eb97e7b1' - '680750f73dc2e587ac567d057d485813' - '0035b6cac6756a384b861eda8d33e4f7' - '8674f8a0f480f26b705570d699c78a2c') + avoid-using-ext2_fs.patch + handle-ctors-dtors-via-init_array-and-fini_array.patch + splash.png) build() { # Do not try to build syslinux with our default LDFLAGS, it will fail @@ -38,8 +33,10 @@ build() { cd "$srcdir"/$pkgname-${pkgver} # Do not try to build the Windows or DOS installers patch -p1 -i "$srcdir"/syslinux-dont-build-dos-windows-targets.patch - # Fix unknown type name 'umode_t' error - patch -p1 -i "$srcdir"/fix-undefined-type-umode_t.patch + # fix #30084 + patch -Np1 -i "$srcdir"/avoid-using-ext2_fs.patch + # fix #31065 (booting breaks with gcc 4.7) + patch -Np1 -i "$srcdir"/handle-ctors-dtors-via-init_array-and-fini_array.patch # Fix FHS manpage path sed 's|/usr/man|/usr/share/man|g' -i mk/syslinux.mk make @@ -58,4 +55,12 @@ package() { install -D -m755 "$srcdir"/syslinux-install_update "$pkgdir"/usr/sbin/syslinux-install_update # move extlinux binary to /usr/sbin mv "$pkgdir"/sbin/extlinux "$pkgdir"/usr/sbin/extlinux + rmdir "$pkgdir"/sbin } +md5sums=('82299242418385da1274c9479a778cb2' + '1528c376e43f0eaccaa80d8ad1bc13b4' + '8dc2afca3739667e892faf04eb97e7b1' + '680750f73dc2e587ac567d057d485813' + '2e2c674a71c0c0bf265d96cfc19ce985' + '12a2dbd3fe59230df2f470600dd62dac' + '0035b6cac6756a384b861eda8d33e4f7') diff --git a/libre/syslinux/avoid-using-ext2_fs.patch b/libre/syslinux/avoid-using-ext2_fs.patch new file mode 100644 index 000000000..9a166eefc --- /dev/null +++ b/libre/syslinux/avoid-using-ext2_fs.patch @@ -0,0 +1,965 @@ +From a1006762fa6f98750bb77d76dd992cb8ea9f9c99 Mon Sep 17 00:00:00 2001 +From: "H. Peter Anvin" <hpa@zytor.com> +Date: Mon, 26 Mar 2012 22:51:09 -0700 +Subject: [PATCH] libinstaller: Avoid using <linux/ext2_fs.h> + +Don't use <linux/ext2_fs.h> if we can avoid it. + +The ioctl constants have been globalized and moved to <linux/fs.h>. +Use a private copy of ext2_fs.h from e2fsprogs with the ioctl +constants removed for the data structures. + +Do at least attempt backward compatibility for old kernel headers, but +no real hope of proper operation there... + +Signed-off-by: H. Peter Anvin <hpa@zytor.com> +--- + libinstaller/ext2fs/ext2_fs.h | 856 ++++++++++++++++++++++++++++++++++++++++++ + libinstaller/linuxioctl.h | 29 +- + libinstaller/syslxcom.c | 12 +- + 3 files changed, 886 insertions(+), 11 deletions(-) + create mode 100644 libinstaller/ext2fs/ext2_fs.h + +diff -urpN syslinux-4.05/libinstaller/ext2fs/ext2_fs.h.ext2 syslinux-4.05/libinstaller/ext2fs/ext2_fs.h +--- syslinux-4.05/libinstaller/ext2fs/ext2_fs.h.ext2 2012-08-06 09:48:43.797645032 -0400 ++++ syslinux-4.05/libinstaller/ext2fs/ext2_fs.h 2012-08-06 09:48:43.797645032 -0400 +@@ -0,0 +1,856 @@ ++/* ++ * linux/include/linux/ext2_fs.h ++ * ++ * Copyright (C) 1992, 1993, 1994, 1995 ++ * Remy Card (card@masi.ibp.fr) ++ * Laboratoire MASI - Institut Blaise Pascal ++ * Universite Pierre et Marie Curie (Paris VI) ++ * ++ * from ++ * ++ * linux/include/linux/minix_fs.h ++ * ++ * Copyright (C) 1991, 1992 Linus Torvalds ++ */ ++ ++#ifndef _EXT2FS_EXT2_FS_H ++#define _EXT2FS_EXT2_FS_H ++ ++#include <linux/types.h> ++ ++/* ++ * The second extended filesystem constants/structures ++ */ ++ ++/* ++ * Define EXT2FS_DEBUG to produce debug messages ++ */ ++#undef EXT2FS_DEBUG ++ ++/* ++ * Define EXT2_PREALLOCATE to preallocate data blocks for expanding files ++ */ ++#define EXT2_PREALLOCATE ++#define EXT2_DEFAULT_PREALLOC_BLOCKS 8 ++ ++/* ++ * The second extended file system version ++ */ ++#define EXT2FS_DATE "95/08/09" ++#define EXT2FS_VERSION "0.5b" ++ ++/* ++ * Special inode numbers ++ */ ++#define EXT2_BAD_INO 1 /* Bad blocks inode */ ++#define EXT2_ROOT_INO 2 /* Root inode */ ++#define EXT4_USR_QUOTA_INO 3 /* User quota inode */ ++#define EXT4_GRP_QUOTA_INO 4 /* Group quota inode */ ++#define EXT2_BOOT_LOADER_INO 5 /* Boot loader inode */ ++#define EXT2_UNDEL_DIR_INO 6 /* Undelete directory inode */ ++#define EXT2_RESIZE_INO 7 /* Reserved group descriptors inode */ ++#define EXT2_JOURNAL_INO 8 /* Journal inode */ ++#define EXT2_EXCLUDE_INO 9 /* The "exclude" inode, for snapshots */ ++#define EXT4_REPLICA_INO 10 /* Used by non-upstream feature */ ++ ++/* First non-reserved inode for old ext2 filesystems */ ++#define EXT2_GOOD_OLD_FIRST_INO 11 ++ ++/* ++ * The second extended file system magic number ++ */ ++#define EXT2_SUPER_MAGIC 0xEF53 ++ ++#ifdef __KERNEL__ ++#define EXT2_SB(sb) (&((sb)->u.ext2_sb)) ++#else ++/* Assume that user mode programs are passing in an ext2fs superblock, not ++ * a kernel struct super_block. This will allow us to call the feature-test ++ * macros from user land. */ ++#define EXT2_SB(sb) (sb) ++#endif ++ ++/* ++ * Maximal count of links to a file ++ */ ++#define EXT2_LINK_MAX 65000 ++ ++/* ++ * Macro-instructions used to manage several block sizes ++ */ ++#define EXT2_MIN_BLOCK_LOG_SIZE 10 /* 1024 */ ++#define EXT2_MAX_BLOCK_LOG_SIZE 16 /* 65536 */ ++#define EXT2_MIN_BLOCK_SIZE (1 << EXT2_MIN_BLOCK_LOG_SIZE) ++#define EXT2_MAX_BLOCK_SIZE (1 << EXT2_MAX_BLOCK_LOG_SIZE) ++#ifdef __KERNEL__ ++#define EXT2_BLOCK_SIZE(s) ((s)->s_blocksize) ++#define EXT2_BLOCK_SIZE_BITS(s) ((s)->s_blocksize_bits) ++#define EXT2_ADDR_PER_BLOCK_BITS(s) (EXT2_SB(s)->addr_per_block_bits) ++#define EXT2_INODE_SIZE(s) (EXT2_SB(s)->s_inode_size) ++#define EXT2_FIRST_INO(s) (EXT2_SB(s)->s_first_ino) ++#else ++#define EXT2_BLOCK_SIZE(s) (EXT2_MIN_BLOCK_SIZE << (s)->s_log_block_size) ++#define EXT2_BLOCK_SIZE_BITS(s) ((s)->s_log_block_size + 10) ++#define EXT2_INODE_SIZE(s) (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \ ++ EXT2_GOOD_OLD_INODE_SIZE : (s)->s_inode_size) ++#define EXT2_FIRST_INO(s) (((s)->s_rev_level == EXT2_GOOD_OLD_REV) ? \ ++ EXT2_GOOD_OLD_FIRST_INO : (s)->s_first_ino) ++#endif ++#define EXT2_ADDR_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s) / sizeof(__u32)) ++ ++/* ++ * Macro-instructions used to manage allocation clusters ++ */ ++#define EXT2_MIN_CLUSTER_LOG_SIZE EXT2_MIN_BLOCK_LOG_SIZE ++#define EXT2_MAX_CLUSTER_LOG_SIZE 29 /* 512MB */ ++#define EXT2_MIN_CLUSTER_SIZE EXT2_MIN_BLOCK_SIZE ++#define EXT2_MAX_CLUSTER_SIZE (1 << EXT2_MAX_CLUSTER_LOG_SIZE) ++#define EXT2_CLUSTER_SIZE(s) (EXT2_MIN_BLOCK_SIZE << \ ++ (s)->s_log_cluster_size) ++#define EXT2_CLUSTER_SIZE_BITS(s) ((s)->s_log_cluster_size + 10) ++ ++/* ++ * Macro-instructions used to manage fragments ++ * ++ * Note: for backwards compatibility only, for the dump program. ++ * Ext2/3/4 will never support fragments.... ++ */ ++#define EXT2_MIN_FRAG_SIZE EXT2_MIN_BLOCK_SIZE ++#define EXT2_MAX_FRAG_SIZE EXT2_MAX_BLOCK_SIZE ++#define EXT2_MIN_FRAG_LOG_SIZE EXT2_MIN_BLOCK_LOG_SIZE ++#define EXT2_FRAG_SIZE(s) EXT2_BLOCK_SIZE(s) ++#define EXT2_FRAGS_PER_BLOCK(s) 1 ++ ++/* ++ * ACL structures ++ */ ++struct ext2_acl_header /* Header of Access Control Lists */ ++{ ++ __u32 aclh_size; ++ __u32 aclh_file_count; ++ __u32 aclh_acle_count; ++ __u32 aclh_first_acle; ++}; ++ ++struct ext2_acl_entry /* Access Control List Entry */ ++{ ++ __u32 acle_size; ++ __u16 acle_perms; /* Access permissions */ ++ __u16 acle_type; /* Type of entry */ ++ __u16 acle_tag; /* User or group identity */ ++ __u16 acle_pad1; ++ __u32 acle_next; /* Pointer on next entry for the */ ++ /* same inode or on next free entry */ ++}; ++ ++/* ++ * Structure of a blocks group descriptor ++ */ ++struct ext2_group_desc ++{ ++ __u32 bg_block_bitmap; /* Blocks bitmap block */ ++ __u32 bg_inode_bitmap; /* Inodes bitmap block */ ++ __u32 bg_inode_table; /* Inodes table block */ ++ __u16 bg_free_blocks_count; /* Free blocks count */ ++ __u16 bg_free_inodes_count; /* Free inodes count */ ++ __u16 bg_used_dirs_count; /* Directories count */ ++ __u16 bg_flags; ++ __u32 bg_exclude_bitmap_lo; /* Exclude bitmap for snapshots */ ++ __u16 bg_block_bitmap_csum_lo;/* crc32c(s_uuid+grp_num+bitmap) LSB */ ++ __u16 bg_inode_bitmap_csum_lo;/* crc32c(s_uuid+grp_num+bitmap) LSB */ ++ __u16 bg_itable_unused; /* Unused inodes count */ ++ __u16 bg_checksum; /* crc16(s_uuid+grouo_num+group_desc)*/ ++}; ++ ++/* ++ * Structure of a blocks group descriptor ++ */ ++struct ext4_group_desc ++{ ++ __u32 bg_block_bitmap; /* Blocks bitmap block */ ++ __u32 bg_inode_bitmap; /* Inodes bitmap block */ ++ __u32 bg_inode_table; /* Inodes table block */ ++ __u16 bg_free_blocks_count; /* Free blocks count */ ++ __u16 bg_free_inodes_count; /* Free inodes count */ ++ __u16 bg_used_dirs_count; /* Directories count */ ++ __u16 bg_flags; /* EXT4_BG_flags (INODE_UNINIT, etc) */ ++ __u32 bg_exclude_bitmap_lo; /* Exclude bitmap for snapshots */ ++ __u16 bg_block_bitmap_csum_lo;/* crc32c(s_uuid+grp_num+bitmap) LSB */ ++ __u16 bg_inode_bitmap_csum_lo;/* crc32c(s_uuid+grp_num+bitmap) LSB */ ++ __u16 bg_itable_unused; /* Unused inodes count */ ++ __u16 bg_checksum; /* crc16(sb_uuid+group+desc) */ ++ __u32 bg_block_bitmap_hi; /* Blocks bitmap block MSB */ ++ __u32 bg_inode_bitmap_hi; /* Inodes bitmap block MSB */ ++ __u32 bg_inode_table_hi; /* Inodes table block MSB */ ++ __u16 bg_free_blocks_count_hi;/* Free blocks count MSB */ ++ __u16 bg_free_inodes_count_hi;/* Free inodes count MSB */ ++ __u16 bg_used_dirs_count_hi; /* Directories count MSB */ ++ __u16 bg_itable_unused_hi; /* Unused inodes count MSB */ ++ __u32 bg_exclude_bitmap_hi; /* Exclude bitmap block MSB */ ++ __u16 bg_block_bitmap_csum_hi;/* crc32c(s_uuid+grp_num+bitmap) MSB */ ++ __u16 bg_inode_bitmap_csum_hi;/* crc32c(s_uuid+grp_num+bitmap) MSB */ ++ __u32 bg_reserved; ++}; ++ ++#define EXT2_BG_INODE_UNINIT 0x0001 /* Inode table/bitmap not initialized */ ++#define EXT2_BG_BLOCK_UNINIT 0x0002 /* Block bitmap not initialized */ ++#define EXT2_BG_INODE_ZEROED 0x0004 /* On-disk itable initialized to zero */ ++ ++/* ++ * Data structures used by the directory indexing feature ++ * ++ * Note: all of the multibyte integer fields are little endian. ++ */ ++ ++/* ++ * Note: dx_root_info is laid out so that if it should somehow get ++ * overlaid by a dirent the two low bits of the hash version will be ++ * zero. Therefore, the hash version mod 4 should never be 0. ++ * Sincerely, the paranoia department. ++ */ ++struct ext2_dx_root_info { ++ __u32 reserved_zero; ++ __u8 hash_version; /* 0 now, 1 at release */ ++ __u8 info_length; /* 8 */ ++ __u8 indirect_levels; ++ __u8 unused_flags; ++}; ++ ++#define EXT2_HASH_LEGACY 0 ++#define EXT2_HASH_HALF_MD4 1 ++#define EXT2_HASH_TEA 2 ++#define EXT2_HASH_LEGACY_UNSIGNED 3 /* reserved for userspace lib */ ++#define EXT2_HASH_HALF_MD4_UNSIGNED 4 /* reserved for userspace lib */ ++#define EXT2_HASH_TEA_UNSIGNED 5 /* reserved for userspace lib */ ++ ++#define EXT2_HASH_FLAG_INCOMPAT 0x1 ++ ++struct ext2_dx_entry { ++ __u32 hash; ++ __u32 block; ++}; ++ ++struct ext2_dx_countlimit { ++ __u16 limit; ++ __u16 count; ++}; ++ ++ ++/* ++ * Macro-instructions used to manage group descriptors ++ */ ++#define EXT2_MIN_DESC_SIZE 32 ++#define EXT2_MIN_DESC_SIZE_64BIT 64 ++#define EXT2_MAX_DESC_SIZE EXT2_MIN_BLOCK_SIZE ++#define EXT2_DESC_SIZE(s) \ ++ ((EXT2_SB(s)->s_feature_incompat & EXT4_FEATURE_INCOMPAT_64BIT) ? \ ++ (s)->s_desc_size : EXT2_MIN_DESC_SIZE) ++ ++#define EXT2_BLOCKS_PER_GROUP(s) (EXT2_SB(s)->s_blocks_per_group) ++#define EXT2_INODES_PER_GROUP(s) (EXT2_SB(s)->s_inodes_per_group) ++#define EXT2_CLUSTERS_PER_GROUP(s) (EXT2_SB(s)->s_clusters_per_group) ++#define EXT2_INODES_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s)/EXT2_INODE_SIZE(s)) ++/* limits imposed by 16-bit value gd_free_{blocks,inode}_count */ ++#define EXT2_MAX_BLOCKS_PER_GROUP(s) ((((unsigned) 1 << 16) - 8) * \ ++ (EXT2_CLUSTER_SIZE(s) / \ ++ EXT2_BLOCK_SIZE(s))) ++#define EXT2_MAX_CLUSTERS_PER_GROUP(s) (((unsigned) 1 << 16) - 8) ++#define EXT2_MAX_INODES_PER_GROUP(s) (((unsigned) 1 << 16) - \ ++ EXT2_INODES_PER_BLOCK(s)) ++#ifdef __KERNEL__ ++#define EXT2_DESC_PER_BLOCK(s) (EXT2_SB(s)->s_desc_per_block) ++#define EXT2_DESC_PER_BLOCK_BITS(s) (EXT2_SB(s)->s_desc_per_block_bits) ++#else ++#define EXT2_DESC_PER_BLOCK(s) (EXT2_BLOCK_SIZE(s) / EXT2_DESC_SIZE(s)) ++#endif ++ ++/* ++ * Constants relative to the data blocks ++ */ ++#define EXT2_NDIR_BLOCKS 12 ++#define EXT2_IND_BLOCK EXT2_NDIR_BLOCKS ++#define EXT2_DIND_BLOCK (EXT2_IND_BLOCK + 1) ++#define EXT2_TIND_BLOCK (EXT2_DIND_BLOCK + 1) ++#define EXT2_N_BLOCKS (EXT2_TIND_BLOCK + 1) ++ ++/* ++ * Inode flags ++ */ ++#define EXT2_SECRM_FL 0x00000001 /* Secure deletion */ ++#define EXT2_UNRM_FL 0x00000002 /* Undelete */ ++#define EXT2_COMPR_FL 0x00000004 /* Compress file */ ++#define EXT2_SYNC_FL 0x00000008 /* Synchronous updates */ ++#define EXT2_IMMUTABLE_FL 0x00000010 /* Immutable file */ ++#define EXT2_APPEND_FL 0x00000020 /* writes to file may only append */ ++#define EXT2_NODUMP_FL 0x00000040 /* do not dump file */ ++#define EXT2_NOATIME_FL 0x00000080 /* do not update atime */ ++/* Reserved for compression usage... */ ++#define EXT2_DIRTY_FL 0x00000100 ++#define EXT2_COMPRBLK_FL 0x00000200 /* One or more compressed clusters */ ++#define EXT2_NOCOMPR_FL 0x00000400 /* Access raw compressed data */ ++#define EXT2_ECOMPR_FL 0x00000800 /* Compression error */ ++/* End compression flags --- maybe not all used */ ++#define EXT2_BTREE_FL 0x00001000 /* btree format dir */ ++#define EXT2_INDEX_FL 0x00001000 /* hash-indexed directory */ ++#define EXT2_IMAGIC_FL 0x00002000 ++#define EXT3_JOURNAL_DATA_FL 0x00004000 /* file data should be journaled */ ++#define EXT2_NOTAIL_FL 0x00008000 /* file tail should not be merged */ ++#define EXT2_DIRSYNC_FL 0x00010000 /* Synchronous directory modifications */ ++#define EXT2_TOPDIR_FL 0x00020000 /* Top of directory hierarchies*/ ++#define EXT4_HUGE_FILE_FL 0x00040000 /* Set to each huge file */ ++#define EXT4_EXTENTS_FL 0x00080000 /* Inode uses extents */ ++#define EXT4_EA_INODE_FL 0x00200000 /* Inode used for large EA */ ++/* EXT4_EOFBLOCKS_FL 0x00400000 was here */ ++#define EXT4_SNAPFILE_FL 0x01000000 /* Inode is a snapshot */ ++#define EXT4_SNAPFILE_DELETED_FL 0x04000000 /* Snapshot is being deleted */ ++#define EXT4_SNAPFILE_SHRUNK_FL 0x08000000 /* Snapshot shrink has completed */ ++#define EXT2_RESERVED_FL 0x80000000 /* reserved for ext2 lib */ ++ ++#define EXT2_FL_USER_VISIBLE 0x004BDFFF /* User visible flags */ ++#define EXT2_FL_USER_MODIFIABLE 0x004B80FF /* User modifiable flags */ ++ ++/* ++ * ioctl commands ++ */ ++ ++/* Used for online resize */ ++struct ext2_new_group_input { ++ __u32 group; /* Group number for this data */ ++ __u32 block_bitmap; /* Absolute block number of block bitmap */ ++ __u32 inode_bitmap; /* Absolute block number of inode bitmap */ ++ __u32 inode_table; /* Absolute block number of inode table start */ ++ __u32 blocks_count; /* Total number of blocks in this group */ ++ __u16 reserved_blocks; /* Number of reserved blocks in this group */ ++ __u16 unused; /* Number of reserved GDT blocks in group */ ++}; ++ ++struct ext4_new_group_input { ++ __u32 group; /* Group number for this data */ ++ __u64 block_bitmap; /* Absolute block number of block bitmap */ ++ __u64 inode_bitmap; /* Absolute block number of inode bitmap */ ++ __u64 inode_table; /* Absolute block number of inode table start */ ++ __u32 blocks_count; /* Total number of blocks in this group */ ++ __u16 reserved_blocks; /* Number of reserved blocks in this group */ ++ __u16 unused; ++}; ++ ++#ifdef __GNU__ /* Needed for the Hurd */ ++#define _IOT_ext2_new_group_input _IOT (_IOTS(__u32), 5, _IOTS(__u16), 2, 0, 0) ++#endif ++ ++#define EXT2_IOC_GETFLAGS _IOR('f', 1, long) ++#define EXT2_IOC_SETFLAGS _IOW('f', 2, long) ++#define EXT2_IOC_GETVERSION _IOR('v', 1, long) ++#define EXT2_IOC_SETVERSION _IOW('v', 2, long) ++#define EXT2_IOC_GETVERSION_NEW _IOR('f', 3, long) ++#define EXT2_IOC_SETVERSION_NEW _IOW('f', 4, long) ++#define EXT2_IOC_GROUP_EXTEND _IOW('f', 7, unsigned long) ++#define EXT2_IOC_GROUP_ADD _IOW('f', 8,struct ext2_new_group_input) ++#define EXT4_IOC_GROUP_ADD _IOW('f', 8,struct ext4_new_group_input) ++#define EXT4_IOC_RESIZE_FS _IOW('f', 16, __u64) ++ ++/* ++ * Structure of an inode on the disk ++ */ ++struct ext2_inode { ++ __u16 i_mode; /* File mode */ ++ __u16 i_uid; /* Low 16 bits of Owner Uid */ ++ __u32 i_size; /* Size in bytes */ ++ __u32 i_atime; /* Access time */ ++ __u32 i_ctime; /* Inode change time */ ++ __u32 i_mtime; /* Modification time */ ++ __u32 i_dtime; /* Deletion Time */ ++ __u16 i_gid; /* Low 16 bits of Group Id */ ++ __u16 i_links_count; /* Links count */ ++ __u32 i_blocks; /* Blocks count */ ++ __u32 i_flags; /* File flags */ ++ union { ++ struct { ++ __u32 l_i_version; /* was l_i_reserved1 */ ++ } linux1; ++ struct { ++ __u32 h_i_translator; ++ } hurd1; ++ } osd1; /* OS dependent 1 */ ++ __u32 i_block[EXT2_N_BLOCKS];/* Pointers to blocks */ ++ __u32 i_generation; /* File version (for NFS) */ ++ __u32 i_file_acl; /* File ACL */ ++ __u32 i_size_high; /* Formerly i_dir_acl, directory ACL */ ++ __u32 i_faddr; /* Fragment address */ ++ union { ++ struct { ++ __u16 l_i_blocks_hi; ++ __u16 l_i_file_acl_high; ++ __u16 l_i_uid_high; /* these 2 fields */ ++ __u16 l_i_gid_high; /* were reserved2[0] */ ++ __u16 l_i_checksum_lo; /* crc32c(uuid+inum+inode) */ ++ __u16 l_i_reserved; ++ } linux2; ++ struct { ++ __u8 h_i_frag; /* Fragment number */ ++ __u8 h_i_fsize; /* Fragment size */ ++ __u16 h_i_mode_high; ++ __u16 h_i_uid_high; ++ __u16 h_i_gid_high; ++ __u32 h_i_author; ++ } hurd2; ++ } osd2; /* OS dependent 2 */ ++}; ++ ++/* ++ * Permanent part of an large inode on the disk ++ */ ++struct ext2_inode_large { ++ __u16 i_mode; /* File mode */ ++ __u16 i_uid; /* Low 16 bits of Owner Uid */ ++ __u32 i_size; /* Size in bytes */ ++ __u32 i_atime; /* Access time */ ++ __u32 i_ctime; /* Inode Change time */ ++ __u32 i_mtime; /* Modification time */ ++ __u32 i_dtime; /* Deletion Time */ ++ __u16 i_gid; /* Low 16 bits of Group Id */ ++ __u16 i_links_count; /* Links count */ ++ __u32 i_blocks; /* Blocks count */ ++ __u32 i_flags; /* File flags */ ++ union { ++ struct { ++ __u32 l_i_version; /* was l_i_reserved1 */ ++ } linux1; ++ struct { ++ __u32 h_i_translator; ++ } hurd1; ++ } osd1; /* OS dependent 1 */ ++ __u32 i_block[EXT2_N_BLOCKS];/* Pointers to blocks */ ++ __u32 i_generation; /* File version (for NFS) */ ++ __u32 i_file_acl; /* File ACL */ ++ __u32 i_size_high; /* Formerly i_dir_acl, directory ACL */ ++ __u32 i_faddr; /* Fragment address */ ++ union { ++ struct { ++ __u16 l_i_blocks_hi; ++ __u16 l_i_file_acl_high; ++ __u16 l_i_uid_high; /* these 2 fields */ ++ __u16 l_i_gid_high; /* were reserved2[0] */ ++ __u16 l_i_checksum_lo; /* crc32c(uuid+inum+inode) */ ++ __u16 l_i_reserved; ++ } linux2; ++ struct { ++ __u8 h_i_frag; /* Fragment number */ ++ __u8 h_i_fsize; /* Fragment size */ ++ __u16 h_i_mode_high; ++ __u16 h_i_uid_high; ++ __u16 h_i_gid_high; ++ __u32 h_i_author; ++ } hurd2; ++ } osd2; /* OS dependent 2 */ ++ __u16 i_extra_isize; ++ __u16 i_checksum_hi; /* crc32c(uuid+inum+inode) */ ++ __u32 i_ctime_extra; /* extra Change time (nsec << 2 | epoch) */ ++ __u32 i_mtime_extra; /* extra Modification time (nsec << 2 | epoch) */ ++ __u32 i_atime_extra; /* extra Access time (nsec << 2 | epoch) */ ++ __u32 i_crtime; /* File creation time */ ++ __u32 i_crtime_extra; /* extra File creation time (nsec << 2 | epoch)*/ ++ __u32 i_version_hi; /* high 32 bits for 64-bit version */ ++}; ++ ++#define i_dir_acl i_size_high ++ ++#if defined(__KERNEL__) || defined(__linux__) ++#define i_reserved1 osd1.linux1.l_i_reserved1 ++#define i_frag osd2.linux2.l_i_frag ++#define i_fsize osd2.linux2.l_i_fsize ++#define i_uid_low i_uid ++#define i_gid_low i_gid ++#define i_uid_high osd2.linux2.l_i_uid_high ++#define i_gid_high osd2.linux2.l_i_gid_high ++#else ++#if defined(__GNU__) ++ ++#define i_translator osd1.hurd1.h_i_translator ++#define i_frag osd2.hurd2.h_i_frag; ++#define i_fsize osd2.hurd2.h_i_fsize; ++#define i_uid_high osd2.hurd2.h_i_uid_high ++#define i_gid_high osd2.hurd2.h_i_gid_high ++#define i_author osd2.hurd2.h_i_author ++ ++#endif /* __GNU__ */ ++#endif /* defined(__KERNEL__) || defined(__linux__) */ ++ ++#define inode_uid(inode) ((inode).i_uid | (inode).osd2.linux2.l_i_uid_high << 16) ++#define inode_gid(inode) ((inode).i_gid | (inode).osd2.linux2.l_i_gid_high << 16) ++#define ext2fs_set_i_uid_high(inode,x) ((inode).osd2.linux2.l_i_uid_high = (x)) ++#define ext2fs_set_i_gid_high(inode,x) ((inode).osd2.linux2.l_i_gid_high = (x)) ++ ++/* ++ * File system states ++ */ ++#define EXT2_VALID_FS 0x0001 /* Unmounted cleanly */ ++#define EXT2_ERROR_FS 0x0002 /* Errors detected */ ++#define EXT3_ORPHAN_FS 0x0004 /* Orphans being recovered */ ++ ++/* ++ * Misc. filesystem flags ++ */ ++#define EXT2_FLAGS_SIGNED_HASH 0x0001 /* Signed dirhash in use */ ++#define EXT2_FLAGS_UNSIGNED_HASH 0x0002 /* Unsigned dirhash in use */ ++#define EXT2_FLAGS_TEST_FILESYS 0x0004 /* OK for use on development code */ ++#define EXT2_FLAGS_IS_SNAPSHOT 0x0010 /* This is a snapshot image */ ++#define EXT2_FLAGS_FIX_SNAPSHOT 0x0020 /* Snapshot inodes corrupted */ ++#define EXT2_FLAGS_FIX_EXCLUDE 0x0040 /* Exclude bitmaps corrupted */ ++ ++/* ++ * Mount flags ++ */ ++#define EXT2_MOUNT_CHECK 0x0001 /* Do mount-time checks */ ++#define EXT2_MOUNT_GRPID 0x0004 /* Create files with directory's group */ ++#define EXT2_MOUNT_DEBUG 0x0008 /* Some debugging messages */ ++#define EXT2_MOUNT_ERRORS_CONT 0x0010 /* Continue on errors */ ++#define EXT2_MOUNT_ERRORS_RO 0x0020 /* Remount fs ro on errors */ ++#define EXT2_MOUNT_ERRORS_PANIC 0x0040 /* Panic on errors */ ++#define EXT2_MOUNT_MINIX_DF 0x0080 /* Mimics the Minix statfs */ ++#define EXT2_MOUNT_NO_UID32 0x0200 /* Disable 32-bit UIDs */ ++ ++#define clear_opt(o, opt) o &= ~EXT2_MOUNT_##opt ++#define set_opt(o, opt) o |= EXT2_MOUNT_##opt ++#define test_opt(sb, opt) (EXT2_SB(sb)->s_mount_opt & \ ++ EXT2_MOUNT_##opt) ++/* ++ * Maximal mount counts between two filesystem checks ++ */ ++#define EXT2_DFL_MAX_MNT_COUNT 20 /* Allow 20 mounts */ ++#define EXT2_DFL_CHECKINTERVAL 0 /* Don't use interval check */ ++ ++/* ++ * Behaviour when detecting errors ++ */ ++#define EXT2_ERRORS_CONTINUE 1 /* Continue execution */ ++#define EXT2_ERRORS_RO 2 /* Remount fs read-only */ ++#define EXT2_ERRORS_PANIC 3 /* Panic */ ++#define EXT2_ERRORS_DEFAULT EXT2_ERRORS_CONTINUE ++ ++#if (__GNUC__ >= 4) ++#define ext4_offsetof(TYPE,MEMBER) __builtin_offsetof(TYPE,MEMBER) ++#else ++#define ext4_offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) ++#endif ++ ++/* ++ * Structure of the super block ++ */ ++struct ext2_super_block { ++ __u32 s_inodes_count; /* Inodes count */ ++ __u32 s_blocks_count; /* Blocks count */ ++ __u32 s_r_blocks_count; /* Reserved blocks count */ ++ __u32 s_free_blocks_count; /* Free blocks count */ ++ __u32 s_free_inodes_count; /* Free inodes count */ ++ __u32 s_first_data_block; /* First Data Block */ ++ __u32 s_log_block_size; /* Block size */ ++ __u32 s_log_cluster_size; /* Allocation cluster size */ ++ __u32 s_blocks_per_group; /* # Blocks per group */ ++ __u32 s_clusters_per_group; /* # Fragments per group */ ++ __u32 s_inodes_per_group; /* # Inodes per group */ ++ __u32 s_mtime; /* Mount time */ ++ __u32 s_wtime; /* Write time */ ++ __u16 s_mnt_count; /* Mount count */ ++ __s16 s_max_mnt_count; /* Maximal mount count */ ++ __u16 s_magic; /* Magic signature */ ++ __u16 s_state; /* File system state */ ++ __u16 s_errors; /* Behaviour when detecting errors */ ++ __u16 s_minor_rev_level; /* minor revision level */ ++ __u32 s_lastcheck; /* time of last check */ ++ __u32 s_checkinterval; /* max. time between checks */ ++ __u32 s_creator_os; /* OS */ ++ __u32 s_rev_level; /* Revision level */ ++ __u16 s_def_resuid; /* Default uid for reserved blocks */ ++ __u16 s_def_resgid; /* Default gid for reserved blocks */ ++ /* ++ * These fields are for EXT2_DYNAMIC_REV superblocks only. ++ * ++ * Note: the difference between the compatible feature set and ++ * the incompatible feature set is that if there is a bit set ++ * in the incompatible feature set that the kernel doesn't ++ * know about, it should refuse to mount the filesystem. ++ * ++ * e2fsck's requirements are more strict; if it doesn't know ++ * about a feature in either the compatible or incompatible ++ * feature set, it must abort and not try to meddle with ++ * things it doesn't understand... ++ */ ++ __u32 s_first_ino; /* First non-reserved inode */ ++ __u16 s_inode_size; /* size of inode structure */ ++ __u16 s_block_group_nr; /* block group # of this superblock */ ++ __u32 s_feature_compat; /* compatible feature set */ ++ __u32 s_feature_incompat; /* incompatible feature set */ ++ __u32 s_feature_ro_compat; /* readonly-compatible feature set */ ++ __u8 s_uuid[16]; /* 128-bit uuid for volume */ ++ char s_volume_name[16]; /* volume name */ ++ char s_last_mounted[64]; /* directory where last mounted */ ++ __u32 s_algorithm_usage_bitmap; /* For compression */ ++ /* ++ * Performance hints. Directory preallocation should only ++ * happen if the EXT2_FEATURE_COMPAT_DIR_PREALLOC flag is on. ++ */ ++ __u8 s_prealloc_blocks; /* Nr of blocks to try to preallocate*/ ++ __u8 s_prealloc_dir_blocks; /* Nr to preallocate for dirs */ ++ __u16 s_reserved_gdt_blocks; /* Per group table for online growth */ ++ /* ++ * Journaling support valid if EXT2_FEATURE_COMPAT_HAS_JOURNAL set. ++ */ ++ __u8 s_journal_uuid[16]; /* uuid of journal superblock */ ++ __u32 s_journal_inum; /* inode number of journal file */ ++ __u32 s_journal_dev; /* device number of journal file */ ++ __u32 s_last_orphan; /* start of list of inodes to delete */ ++ __u32 s_hash_seed[4]; /* HTREE hash seed */ ++ __u8 s_def_hash_version; /* Default hash version to use */ ++ __u8 s_jnl_backup_type; /* Default type of journal backup */ ++ __u16 s_desc_size; /* Group desc. size: INCOMPAT_64BIT */ ++ __u32 s_default_mount_opts; ++ __u32 s_first_meta_bg; /* First metablock group */ ++ __u32 s_mkfs_time; /* When the filesystem was created */ ++ __u32 s_jnl_blocks[17]; /* Backup of the journal inode */ ++ __u32 s_blocks_count_hi; /* Blocks count high 32bits */ ++ __u32 s_r_blocks_count_hi; /* Reserved blocks count high 32 bits*/ ++ __u32 s_free_blocks_hi; /* Free blocks count */ ++ __u16 s_min_extra_isize; /* All inodes have at least # bytes */ ++ __u16 s_want_extra_isize; /* New inodes should reserve # bytes */ ++ __u32 s_flags; /* Miscellaneous flags */ ++ __u16 s_raid_stride; /* RAID stride */ ++ __u16 s_mmp_update_interval; /* # seconds to wait in MMP checking */ ++ __u64 s_mmp_block; /* Block for multi-mount protection */ ++ __u32 s_raid_stripe_width; /* blocks on all data disks (N*stride)*/ ++ __u8 s_log_groups_per_flex; /* FLEX_BG group size */ ++ __u8 s_reserved_char_pad; ++ __u16 s_reserved_pad; /* Padding to next 32bits */ ++ __u64 s_kbytes_written; /* nr of lifetime kilobytes written */ ++ __u32 s_snapshot_inum; /* Inode number of active snapshot */ ++ __u32 s_snapshot_id; /* sequential ID of active snapshot */ ++ __u64 s_snapshot_r_blocks_count; /* reserved blocks for active ++ snapshot's future use */ ++ __u32 s_snapshot_list; /* inode number of the head of the on-disk snapshot list */ ++#define EXT4_S_ERR_START ext4_offsetof(struct ext2_super_block, s_error_count) ++ __u32 s_error_count; /* number of fs errors */ ++ __u32 s_first_error_time; /* first time an error happened */ ++ __u32 s_first_error_ino; /* inode involved in first error */ ++ __u64 s_first_error_block; /* block involved of first error */ ++ __u8 s_first_error_func[32]; /* function where the error happened */ ++ __u32 s_first_error_line; /* line number where error happened */ ++ __u32 s_last_error_time; /* most recent time of an error */ ++ __u32 s_last_error_ino; /* inode involved in last error */ ++ __u32 s_last_error_line; /* line number where error happened */ ++ __u64 s_last_error_block; /* block involved of last error */ ++ __u8 s_last_error_func[32]; /* function where the error happened */ ++#define EXT4_S_ERR_END ext4_offsetof(struct ext2_super_block, s_mount_opts) ++ __u8 s_mount_opts[64]; ++ __u32 s_usr_quota_inum; /* inode number of user quota file */ ++ __u32 s_grp_quota_inum; /* inode number of group quota file */ ++ __u32 s_overhead_blocks; /* overhead blocks/clusters in fs */ ++ __u32 s_reserved[108]; /* Padding to the end of the block */ ++ __u32 s_checksum; /* crc32c(superblock) */ ++}; ++ ++#define EXT4_S_ERR_LEN (EXT4_S_ERR_END - EXT4_S_ERR_START) ++ ++/* ++ * Codes for operating systems ++ */ ++#define EXT2_OS_LINUX 0 ++#define EXT2_OS_HURD 1 ++#define EXT2_OBSO_OS_MASIX 2 ++#define EXT2_OS_FREEBSD 3 ++#define EXT2_OS_LITES 4 ++ ++/* ++ * Revision levels ++ */ ++#define EXT2_GOOD_OLD_REV 0 /* The good old (original) format */ ++#define EXT2_DYNAMIC_REV 1 /* V2 format w/ dynamic inode sizes */ ++ ++#define EXT2_CURRENT_REV EXT2_GOOD_OLD_REV ++#define EXT2_MAX_SUPP_REV EXT2_DYNAMIC_REV ++ ++#define EXT2_GOOD_OLD_INODE_SIZE 128 ++ ++/* ++ * Journal inode backup types ++ */ ++#define EXT3_JNL_BACKUP_BLOCKS 1 ++ ++/* ++ * Feature set definitions ++ */ ++ ++#define EXT2_HAS_COMPAT_FEATURE(sb,mask) \ ++ ( EXT2_SB(sb)->s_feature_compat & (mask) ) ++#define EXT2_HAS_RO_COMPAT_FEATURE(sb,mask) \ ++ ( EXT2_SB(sb)->s_feature_ro_compat & (mask) ) ++#define EXT2_HAS_INCOMPAT_FEATURE(sb,mask) \ ++ ( EXT2_SB(sb)->s_feature_incompat & (mask) ) ++ ++#define EXT2_FEATURE_COMPAT_DIR_PREALLOC 0x0001 ++#define EXT2_FEATURE_COMPAT_IMAGIC_INODES 0x0002 ++#define EXT3_FEATURE_COMPAT_HAS_JOURNAL 0x0004 ++#define EXT2_FEATURE_COMPAT_EXT_ATTR 0x0008 ++#define EXT2_FEATURE_COMPAT_RESIZE_INODE 0x0010 ++#define EXT2_FEATURE_COMPAT_DIR_INDEX 0x0020 ++#define EXT2_FEATURE_COMPAT_LAZY_BG 0x0040 ++/* #define EXT2_FEATURE_COMPAT_EXCLUDE_INODE 0x0080 not used, legacy */ ++#define EXT2_FEATURE_COMPAT_EXCLUDE_BITMAP 0x0100 ++ ++ ++#define EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER 0x0001 ++#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE 0x0002 ++/* #define EXT2_FEATURE_RO_COMPAT_BTREE_DIR 0x0004 not used */ ++#define EXT4_FEATURE_RO_COMPAT_HUGE_FILE 0x0008 ++#define EXT4_FEATURE_RO_COMPAT_GDT_CSUM 0x0010 ++#define EXT4_FEATURE_RO_COMPAT_DIR_NLINK 0x0020 ++#define EXT4_FEATURE_RO_COMPAT_EXTRA_ISIZE 0x0040 ++#define EXT4_FEATURE_RO_COMPAT_HAS_SNAPSHOT 0x0080 ++#define EXT4_FEATURE_RO_COMPAT_QUOTA 0x0100 ++#define EXT4_FEATURE_RO_COMPAT_BIGALLOC 0x0200 ++#define EXT4_FEATURE_RO_COMPAT_METADATA_CSUM 0x0400 ++#define EXT4_FEATURE_RO_COMPAT_REPLICA 0x0800 ++ ++#define EXT2_FEATURE_INCOMPAT_COMPRESSION 0x0001 ++#define EXT2_FEATURE_INCOMPAT_FILETYPE 0x0002 ++#define EXT3_FEATURE_INCOMPAT_RECOVER 0x0004 /* Needs recovery */ ++#define EXT3_FEATURE_INCOMPAT_JOURNAL_DEV 0x0008 /* Journal device */ ++#define EXT2_FEATURE_INCOMPAT_META_BG 0x0010 ++#define EXT3_FEATURE_INCOMPAT_EXTENTS 0x0040 ++#define EXT4_FEATURE_INCOMPAT_64BIT 0x0080 ++#define EXT4_FEATURE_INCOMPAT_MMP 0x0100 ++#define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200 ++#define EXT4_FEATURE_INCOMPAT_EA_INODE 0x0400 ++#define EXT4_FEATURE_INCOMPAT_DIRDATA 0x1000 ++ ++#define EXT2_FEATURE_COMPAT_SUPP 0 ++#define EXT2_FEATURE_INCOMPAT_SUPP (EXT2_FEATURE_INCOMPAT_FILETYPE| \ ++ EXT4_FEATURE_INCOMPAT_MMP) ++#define EXT2_FEATURE_RO_COMPAT_SUPP (EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER| \ ++ EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \ ++ EXT4_FEATURE_RO_COMPAT_DIR_NLINK| \ ++ EXT2_FEATURE_RO_COMPAT_BTREE_DIR) ++ ++/* ++ * Default values for user and/or group using reserved blocks ++ */ ++#define EXT2_DEF_RESUID 0 ++#define EXT2_DEF_RESGID 0 ++ ++/* ++ * Default mount options ++ */ ++#define EXT2_DEFM_DEBUG 0x0001 ++#define EXT2_DEFM_BSDGROUPS 0x0002 ++#define EXT2_DEFM_XATTR_USER 0x0004 ++#define EXT2_DEFM_ACL 0x0008 ++#define EXT2_DEFM_UID16 0x0010 ++#define EXT3_DEFM_JMODE 0x0060 ++#define EXT3_DEFM_JMODE_DATA 0x0020 ++#define EXT3_DEFM_JMODE_ORDERED 0x0040 ++#define EXT3_DEFM_JMODE_WBACK 0x0060 ++#define EXT4_DEFM_NOBARRIER 0x0100 ++#define EXT4_DEFM_BLOCK_VALIDITY 0x0200 ++#define EXT4_DEFM_DISCARD 0x0400 ++#define EXT4_DEFM_NODELALLOC 0x0800 ++ ++/* ++ * Structure of a directory entry ++ */ ++#define EXT2_NAME_LEN 255 ++ ++struct ext2_dir_entry { ++ __u32 inode; /* Inode number */ ++ __u16 rec_len; /* Directory entry length */ ++ __u16 name_len; /* Name length */ ++ char name[EXT2_NAME_LEN]; /* File name */ ++}; ++ ++/* ++ * The new version of the directory entry. Since EXT2 structures are ++ * stored in intel byte order, and the name_len field could never be ++ * bigger than 255 chars, it's safe to reclaim the extra byte for the ++ * file_type field. ++ */ ++struct ext2_dir_entry_2 { ++ __u32 inode; /* Inode number */ ++ __u16 rec_len; /* Directory entry length */ ++ __u8 name_len; /* Name length */ ++ __u8 file_type; ++ char name[EXT2_NAME_LEN]; /* File name */ ++}; ++ ++/* ++ * Ext2 directory file types. Only the low 3 bits are used. The ++ * other bits are reserved for now. ++ */ ++#define EXT2_FT_UNKNOWN 0 ++#define EXT2_FT_REG_FILE 1 ++#define EXT2_FT_DIR 2 ++#define EXT2_FT_CHRDEV 3 ++#define EXT2_FT_BLKDEV 4 ++#define EXT2_FT_FIFO 5 ++#define EXT2_FT_SOCK 6 ++#define EXT2_FT_SYMLINK 7 ++ ++#define EXT2_FT_MAX 8 ++ ++/* ++ * EXT2_DIR_PAD defines the directory entries boundaries ++ * ++ * NOTE: It must be a multiple of 4 ++ */ ++#define EXT2_DIR_PAD 4 ++#define EXT2_DIR_ROUND (EXT2_DIR_PAD - 1) ++#define EXT2_DIR_REC_LEN(name_len) (((name_len) + 8 + EXT2_DIR_ROUND) & \ ++ ~EXT2_DIR_ROUND) ++ ++/* ++ * This structure is used for multiple mount protection. It is written ++ * into the block number saved in the s_mmp_block field in the superblock. ++ * Programs that check MMP should assume that if SEQ_FSCK (or any unknown ++ * code above SEQ_MAX) is present then it is NOT safe to use the filesystem, ++ * regardless of how old the timestamp is. ++ * ++ * The timestamp in the MMP structure will be updated by e2fsck at some ++ * arbitary intervals (start of passes, after every few groups of inodes ++ * in pass1 and pass1b). There is no guarantee that e2fsck is updating ++ * the MMP block in a timely manner, and the updates it does are purely ++ * for the convenience of the sysadmin and not for automatic validation. ++ * ++ * Note: Only the mmp_seq value is used to determine whether the MMP block ++ * is being updated. The mmp_time, mmp_nodename, and mmp_bdevname ++ * fields are only for informational purposes for the administrator, ++ * due to clock skew between nodes and hostname HA service takeover. ++ */ ++#define EXT4_MMP_MAGIC 0x004D4D50U /* ASCII for MMP */ ++#define EXT4_MMP_SEQ_CLEAN 0xFF4D4D50U /* mmp_seq value for clean unmount */ ++#define EXT4_MMP_SEQ_FSCK 0xE24D4D50U /* mmp_seq value when being fscked */ ++#define EXT4_MMP_SEQ_MAX 0xE24D4D4FU /* maximum valid mmp_seq value */ ++ ++struct mmp_struct { ++ __u32 mmp_magic; /* Magic number for MMP */ ++ __u32 mmp_seq; /* Sequence no. updated periodically */ ++ __u64 mmp_time; /* Time last updated */ ++ char mmp_nodename[64]; /* Node which last updated MMP block */ ++ char mmp_bdevname[32]; /* Bdev which last updated MMP block */ ++ __u16 mmp_check_interval; /* Changed mmp_check_interval */ ++ __u16 mmp_pad1; ++ __u32 mmp_pad2[227]; ++}; ++ ++/* ++ * Default interval for MMP update in seconds. ++ */ ++#define EXT4_MMP_UPDATE_INTERVAL 5 ++ ++/* ++ * Maximum interval for MMP update in seconds. ++ */ ++#define EXT4_MMP_MAX_UPDATE_INTERVAL 300 ++ ++/* ++ * Minimum interval for MMP checking in seconds. ++ */ ++#define EXT4_MMP_MIN_CHECK_INTERVAL 5 ++ ++#endif /* _EXT2FS_EXT2_FS_H */ +diff -urpN syslinux-4.05/libinstaller/linuxioctl.h.ext2 syslinux-4.05/libinstaller/linuxioctl.h +--- syslinux-4.05/libinstaller/linuxioctl.h.ext2 2011-12-09 13:28:17.000000000 -0500 ++++ syslinux-4.05/libinstaller/linuxioctl.h 2012-08-06 09:52:42.653335110 -0400 +@@ -9,17 +9,33 @@ + + #include <sys/ioctl.h> + ++#ifdef __linux__ ++ + #define statfs _kernel_statfs /* HACK to deal with broken 2.4 distros */ + + #include <linux/fd.h> /* Floppy geometry */ + #include <linux/hdreg.h> /* Hard disk geometry */ + +-#include <linux/fs.h> /* FIGETBSZ, FIBMAP, FS_IOC_FIEMAP */ ++#include <linux/fs.h> /* FIGETBSZ, FIBMAP, FS_IOC_* */ + #include <linux/msdos_fs.h> /* FAT_IOCTL_SET_ATTRIBUTES */ + + #undef SECTOR_SIZE /* Defined in msdos_fs.h for no good reason */ + #undef SECTOR_BITS +-#include <linux/ext2_fs.h> /* EXT2_IOC_* */ ++ ++#ifndef FS_IOC_GETFLAGS ++/* Old kernel headers, these were once ext2-specific... */ ++# include <linux/ext2_fs.h> /* EXT2_IOC_* */ ++ ++# define FS_IOC_GETFLAGS EXT2_IOC_GETFLAGS ++# define FS_IOC_SETFLAGS EXT2_IOC_SETFLAGS ++ ++# define FS_IMMUTABLE_FL EXT2_IMMUTABLE_FL ++ ++#else ++ ++# include <ext2fs/ext2_fs.h> ++ ++#endif + + #ifndef FAT_IOCTL_GET_ATTRIBUTES + # define FAT_IOCTL_GET_ATTRIBUTES _IOR('r', 0x10, __u32) +@@ -37,11 +53,13 @@ + + #undef statfs + +-#if defined(__linux__) && !defined(BLKGETSIZE64) ++#ifndef BLKGETSIZE64 + /* This takes a u64, but the size field says size_t. Someone screwed big. */ + # define BLKGETSIZE64 _IOR(0x12,114,size_t) + #endif + + #include <linux/loop.h> + ++#endif /* __linux__ */ ++ + #endif /* LIBINSTALLER_LINUXIOCTL_H */ +diff -urpN syslinux-4.05/libinstaller/syslxcom.c.ext2 syslinux-4.05/libinstaller/syslxcom.c +--- syslinux-4.05/libinstaller/syslxcom.c.ext2 2011-12-09 13:28:17.000000000 -0500 ++++ syslinux-4.05/libinstaller/syslxcom.c 2012-08-06 09:48:43.797645032 -0400 +@@ -121,9 +121,9 @@ void clear_attributes(int fd) + { + int flags; + +- if (!ioctl(fd, EXT2_IOC_GETFLAGS, &flags)) { +- flags &= ~EXT2_IMMUTABLE_FL; +- ioctl(fd, EXT2_IOC_SETFLAGS, &flags); ++ if (!ioctl(fd, FS_IOC_GETFLAGS, &flags)) { ++ flags &= ~FS_IMMUTABLE_FL; ++ ioctl(fd, FS_IOC_SETFLAGS, &flags); + } + break; + } +@@ -151,9 +151,9 @@ void set_attributes(int fd) + { + int flags; + +- if (st.st_uid == 0 && !ioctl(fd, EXT2_IOC_GETFLAGS, &flags)) { +- flags |= EXT2_IMMUTABLE_FL; +- ioctl(fd, EXT2_IOC_SETFLAGS, &flags); ++ if (st.st_uid == 0 && !ioctl(fd, FS_IOC_GETFLAGS, &flags)) { ++ flags |= FS_IMMUTABLE_FL; ++ ioctl(fd, FS_IOC_SETFLAGS, &flags); + } + break; + } diff --git a/libre/syslinux/handle-ctors-dtors-via-init_array-and-fini_array.patch b/libre/syslinux/handle-ctors-dtors-via-init_array-and-fini_array.patch new file mode 100644 index 000000000..99e0d4777 --- /dev/null +++ b/libre/syslinux/handle-ctors-dtors-via-init_array-and-fini_array.patch @@ -0,0 +1,66 @@ +From b6be466444740a34bacd140dccbe57f6629b15bc Mon Sep 17 00:00:00 2001 +From: "H. Peter Anvin" <hpa@zytor.com> +Date: Mon, 28 May 2012 21:28:52 -0700 +Subject: [PATCH 1/1] com32.ld: handle .init_array and .fini_array + +Handle constructors/destructors via .init_array and .fini_array, as +generated by newer gccs. + +Signed-off-by: H. Peter Anvin <hpa@zytor.com> +--- + com32/lib/com32.ld | 33 ++++++++++----------------------- + 1 files changed, 10 insertions(+), 23 deletions(-) + +diff --git a/com32/lib/com32.ld b/com32/lib/com32.ld +index 37ee46c..008e4ce 100644 +--- a/com32/lib/com32.ld ++++ b/com32/lib/com32.ld +@@ -36,36 +36,23 @@ SECTIONS + .rodata1 : { *(.rodata1) } + __rodata_end = .; + +- /* Ensure the __preinit_array_start label is properly aligned. We +- could instead move the label definition inside the section, but +- the linker would then create the section even if it turns out to +- be empty, which isn't pretty. */ ++ /* ++ * The difference betwee .ctors/.dtors and .init_array/.fini_array ++ * is the ordering, but we don't use prioritization for libcom32, so ++ * just lump them all together and hope that's okay. ++ */ + . = ALIGN(4); +- .preinit_array : { +- PROVIDE (__preinit_array_start = .); +- *(.preinit_array) +- PROVIDE (__preinit_array_end = .); +- } +- .init_array : { +- PROVIDE (__init_array_start = .); +- *(.init_array) +- PROVIDE (__init_array_end = .); +- } +- .fini_array : { +- PROVIDE (__fini_array_start = .); +- *(.fini_array) +- PROVIDE (__fini_array_end = .); +- } + .ctors : { + PROVIDE (__ctors_start = .); +- KEEP (*(SORT(.ctors.*))) +- KEEP (*(.ctors)) ++ KEEP (*(SORT(.preinit_array*))) ++ KEEP (*(SORT(.init_array*))) ++ KEEP (*(SORT(.ctors*))) + PROVIDE (__ctors_end = .); + } + .dtors : { + PROVIDE (__dtors_start = .); +- KEEP (*(SORT(.dtors.*))) +- KEEP (*(.dtors)) ++ KEEP (*(SORT(.fini_array*))) ++ KEEP (*(SORT(.dtors*))) + PROVIDE (__dtors_end = .); + } + +-- +1.7.6.5
\ No newline at end of file diff --git a/libre/syslinux/rePKGBUILD b/libre/syslinux/rePKGBUILD index a8eb152d5..33a96d1a1 100644 --- a/libre/syslinux/rePKGBUILD +++ b/libre/syslinux/rePKGBUILD @@ -3,23 +3,23 @@ # NOTE: Please fill out the license field for your package! If it is unknown, # then please put 'unknown'. -# Maintainer (Parabola): André Silva <andre.paulista@adinet.com.uy> +# Maintainer (Parabola): André Silva <emulatorman@lavabit.com> source PKGBUILD unset build package md5sums source check _repo=core pkgname='syslinux' options=(!strip) source=(PKGBUILD -# http://mirrors.kernel.org/archlinux/${_repo}/os/$CARCH/${pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT} - http://mirrors.kernel.org/archlinux/${_repo}/os/$CARCH/${pkgname}-${pkgver}-4-${CARCH}${PKGEXT} + http://mirrors.kernel.org/archlinux/${_repo}/os/$CARCH/${pkgname}-${pkgver}-${pkgrel}-${CARCH}${PKGEXT} +# http://mirrors.kernel.org/archlinux/${_repo}/os/$CARCH/${pkgname}-${pkgver}-4-${CARCH}${PKGEXT} # files for pkg modifications syslinux.cfg splash.png) build() { cd "${srcdir}/" -# rm -v .{INSTALL,PKGINFO} ${pkgname%}-$pkgver-$pkgrel-$CARCH$PKGEXT || true - rm -v .{INSTALL,PKGINFO} ${pkgname%}-$pkgver-4-$CARCH$PKGEXT || true + rm -v .{INSTALL,PKGINFO} ${pkgname%}-$pkgver-$pkgrel-$CARCH$PKGEXT || true +# rm -v .{INSTALL,PKGINFO} ${pkgname%}-$pkgver-4-$CARCH$PKGEXT || true # put actions for package modifications below this line rm -v boot/syslinux/syslinux.cfg @@ -27,13 +27,8 @@ build() { package_syslinux() { pkgdesc="Collection of boot loaders that boot from FAT, ext2/3/4 and btrfs filesystems, from CDs and via PXE (Parabola rebranded)" - install=syslinux.install backup=('boot/syslinux/syslinux.cfg' 'boot/syslinux/splash.png') - optdepends=('perl-passwd-md5: For md5pass' - 'perl-digest-sha1: For sha1pass' - 'mtools: For mkdiskimage and syslinux support' - ) # Install the default configuration install -D -m644 "$srcdir"/syslinux.cfg "$pkgdir"/boot/syslinux/syslinux.cfg # Install Parabola splash diff --git a/libre/vhba-module-libre/PKGBUILD b/libre/vhba-module-libre/PKGBUILD index 2de64bc38..9b86cc51e 100644 --- a/libre/vhba-module-libre/PKGBUILD +++ b/libre/vhba-module-libre/PKGBUILD @@ -7,7 +7,7 @@ _pkgname=vhba-module pkgname=vhba-module-libre pkgver=20120422 _extramodules=extramodules-3.5-LIBRE -pkgrel=6 +pkgrel=7 pkgdesc="Kernel module that emulates SCSI devices" arch=('i686' 'x86_64') url="http://cdemu.sourceforge.net/" diff --git a/libre/vhba-module-libre/vhba-module.install b/libre/vhba-module-libre/vhba-module.install index ac27991cc..b2a49a261 100644 --- a/libre/vhba-module-libre/vhba-module.install +++ b/libre/vhba-module-libre/vhba-module.install @@ -9,7 +9,7 @@ post_install() { } post_upgrade() { - getent group cdemu &>/dev/null || groupadd cdemu + getent group cdemu &>/dev/null || groupadd -r cdemu _updatemod } diff --git a/libre/virtualbox-libre-modules-lts/PKGBUILD b/libre/virtualbox-libre-modules-lts/PKGBUILD index 3de090703..588f72271 100644 --- a/libre/virtualbox-libre-modules-lts/PKGBUILD +++ b/libre/virtualbox-libre-modules-lts/PKGBUILD @@ -7,7 +7,7 @@ pkgbase=virtualbox-libre-modules-lts pkgname=('virtualbox-libre-modules-lts' 'virtualbox-libre-parabola-modules-lts') pkgver=4.1.18 -pkgrel=4 +pkgrel=4.1 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL') @@ -107,7 +107,7 @@ package_virtualbox-libre-parabola-modules-lts(){ depends=('linux-libre-lts>=3.0' 'linux-libre-lts<3.1') replaces=('virtualbox-archlinux-modules-lts') conflicts=('virtualbox-archlinux-modules-lts') - provides=("virtualbox-archlinux-modules-lts=$pkgver" "virtualbox-archlinux-modules=$pkgver") + provides=("virtualbox-archlinux-modules-lts=$pkgver" 'virtualbox-archlinux-modules') source "$srcdir/VirtualBox-${pkgver}/env.sh" @@ -131,7 +131,7 @@ package_virtualbox-libre-modules-lts(){ depends=('linux-libre-lts>=3.0' 'linux-libre-lts<3.1') replaces=('virtualbox-modules-lts') conflicts=('virtualbox-modules-lts') - provides=("virtualbox-modules-lts=$pkgver" "virtualbox-modules=$pkgver") + provides=("virtualbox-modules-lts=$pkgver" 'virtualbox-modules') source "$srcdir/VirtualBox-${pkgver}/env.sh" diff --git a/libre/virtualbox-libre/.directory b/libre/virtualbox-libre/.directory index 0de6ba6b0..502696f2f 100644 --- a/libre/virtualbox-libre/.directory +++ b/libre/virtualbox-libre/.directory @@ -1,3 +1,4 @@ [Dolphin] -Timestamp=2012,7,26,5,49,47 +Timestamp=2012,8,8,14,52,43 +Version=3 ViewMode=2 diff --git a/libre/virtualbox-libre/PKGBUILD b/libre/virtualbox-libre/PKGBUILD index c3aa1a69c..80de2315f 100644 --- a/libre/virtualbox-libre/PKGBUILD +++ b/libre/virtualbox-libre/PKGBUILD @@ -1,9 +1,9 @@ # $Id$ +# Maintainer: Ionut Biru <ibiru@archlinux.org> # Maintainer (Parabola): Nicolas Reynolds <fauno@kiwwwi.com.ar> # Maintainer (Parabola): Jorge López <jorginho@lavabit.com> # Maintainer (Parabola): André Silva <emulatorman@lavabit.com> -# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -# Maintainer: Ionut Biru <ibiru@archlinux.org> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> pkgbase=virtualbox-libre pkgname=('virtualbox-libre' 'virtualbox-libre-parabola-additions' @@ -11,7 +11,7 @@ pkgname=('virtualbox-libre' 'virtualbox-libre-source' 'virtualbox-libre-parabola-source') pkgver=4.1.18 -pkgrel=4.2 +pkgrel=5 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL' 'custom') @@ -33,7 +33,7 @@ _extramodules=extramodules-3.5-LIBRE _kernver="$(cat /usr/lib/modules/${_extramodules}/version)" || true build() { - cd "$srcdir/VirtualBox-${pkgver}" + cd "VirtualBox-$pkgver" patch -Np1 -i "$srcdir/vboxdrv-reference.patch" patch -Np1 -i "$srcdir/change_default_driver_dir.patch" @@ -72,6 +72,10 @@ build() { source ./env.sh kmk all sed -i 's_^#!.*/usr/bin/python_#!/usr/bin/python2_' "out/linux.$BUILD_PLATFORM_ARCH/release/bin/vboxshell.py" + # build rdesktop-vrdp (broken from LocalConfig.kmk) + cd src/VBox/RDP/client + cp "$srcdir/LocalConfig.kmk" . + kmk all } package_virtualbox-libre() { @@ -83,25 +87,26 @@ package_virtualbox-libre() { 'virtualbox-libre-source: host kernel source modules for non-stock kernels' 'net-tools: for host-only or bridged networking') - backup=('etc/vbox/vbox.cfg') + backup=('etc/vbox/vbox.cfg' 'etc/conf.d/vboxweb') replaces=('virtualbox' 'virtualbox-ose') conflicts=('virtualbox' 'virtualbox-ose') provides=("virtualbox=$pkgver") install=virtualbox-libre.install - source "$srcdir/VirtualBox-${pkgver}/env.sh" - - cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin" - install -dm755 "$pkgdir"/usr/{bin,lib/virtualbox/components,share/virtualbox/nls} + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + install -dm755 "$pkgdir"/usr/{bin,lib/virtualbox/components,share/virtualbox/nls,share/virtualbox/rdesktop-vrdp-keymaps} #Binaries and Wrapper with Launchers install -m 0755 VBox.sh "$pkgdir/usr/bin/VBox" - for i in VBoxHeadless vboxheadless VBoxManage vboxmanage VBoxSDL vboxsdl VirtualBox virtualbox vboxwebsrv VBoxBalloonCtrl vboxballoonctrl; do + for i in VBoxHeadless VBoxManage VBoxSDL VirtualBox vboxwebsrv VBoxBalloonCtrl; do ln -sf VBox "$pkgdir/usr/bin/$i" + ln -sf VBox "$pkgdir/usr/bin/${i,,}" done install -m 0755 VBoxTunctl "$pkgdir/usr/bin" + install -m 0755 rdesktop-vrdp "$pkgdir/usr/bin" #components install -m 0755 components/* -t "$pkgdir/usr/lib/virtualbox/components" @@ -118,6 +123,9 @@ package_virtualbox-libre() { #language install -m 0755 nls/*.qm -t "$pkgdir/usr/share/virtualbox/nls" + #rdesktop keymaps + install -m 0644 rdesktop-vrdp-keymaps/* "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps" + #useless scripts install -m 0755 VBoxCreateUSBNode.sh VBoxSysInfo.sh -t "$pkgdir/usr/share/virtualbox" @@ -160,14 +168,14 @@ package_virtualbox-libre-source() { depends=(dkms gcc make) replaces=('virtualbox-source') conflicts=('virtualbox-source') - provides=("virtualbox-source=$pkgver" "virtualbox-modules=$pkgver") + provides=("virtualbox-source=$pkgver" 'virtualbox-modules') optdepends=('linux-libre-headers' 'linux-libre-lts-headers') install=virtualbox-libre-source.install install -dm755 "$pkgdir/var/lib/dkms/vboxhost/$pkgver" - source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin" cp -r src "$pkgdir/var/lib/dkms/vboxhost/$pkgver/source" } @@ -180,8 +188,8 @@ package_virtualbox-libre-sdk() { install -dm755 "$pkgdir/usr/lib/virtualbox" - source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin" install -D -m 0755 vboxshell.py "$pkgdir/usr/lib/virtualbox/vboxshell.py" #python sdk @@ -201,17 +209,17 @@ package_virtualbox-libre-parabola-additions(){ backup=('etc/conf.d/vboxservice') install=virtualbox-libre-parabola-additions.install - source "$srcdir/VirtualBox-${pkgver}/env.sh" + source "VirtualBox-$pkgver/env.sh" - cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" install -d "$pkgdir"/{usr/bin,sbin} install -m755 VBoxClient VBoxControl VBoxService "$pkgdir/usr/bin" install -m755 mount.vboxsf "$pkgdir/sbin" - install -m755 -D "$srcdir"/VirtualBox-${pkgver}/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ + install -m755 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ "$pkgdir"/usr/bin/VBoxClient-all - install -m755 -D "$srcdir"/VirtualBox-${pkgver}/src/VBox/Additions/x11/Installer/vboxclient.desktop \ + install -m755 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/vboxclient.desktop \ "$pkgdir"/etc/xdg/autostart/vboxclient.desktop install -D vboxvideo_drv_112.so \ "$pkgdir/usr/lib/xorg/modules/drivers/vboxvideo.so" @@ -236,14 +244,14 @@ package_virtualbox-libre-parabola-source() { depends=(dkms gcc make) replaces=('virtualbox-archlinux-source') conflicts=('virtualbox-archlinux-source') - provides=("virtualbox-archlinux-source=${pkgver}" "virtualbox-archlinux-modules=${pkgver}") + provides=("virtualbox-archlinux-source=${pkgver}" 'virtualbox-archlinux-modules') optdepends=('linux-libre-headers' 'linux-libre-lts-headers') install=virtualbox-libre-parabola-source.install install -dm755 "$pkgdir/var/lib/dkms/vboxguest/$pkgver" - source "$srcdir/VirtualBox-${pkgver}/env.sh" - cd "$srcdir/VirtualBox-${pkgver}/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" cp -r src "$pkgdir/var/lib/dkms/vboxguest/$pkgver/source" } @@ -256,7 +264,7 @@ md5sums=('38db0a87cba659b484af868b0c2bd3ac' '3c08ad30b89add47d3f45121200a5360' '7d9823507206de9b8528a72af2f18d74' '07c5f6d86c4b7839d719c8ee0c53653b' - '3ac185709bfe688bb753c46e170d0546' + '7e9483b1069a54f181546083ac7e5469' 'c159d683ba1947290fc2ad2c64194150' 'bc9efed88e0469cd7fc460d5a5cd7b4b' '8538dba8686d7449cb481c9bae9d722a' diff --git a/libre/virtualbox-libre/vboxweb.conf b/libre/virtualbox-libre/vboxweb.conf index 49d82d828..c36f6a143 100644 --- a/libre/virtualbox-libre/vboxweb.conf +++ b/libre/virtualbox-libre/vboxweb.conf @@ -3,9 +3,9 @@ # WebService Variables #VBOXWEB_LOGFILE= -#$VBOXWEB_HOST= -#$VBOXWEB_PORT= -#$VBOXWEB_TIMEOUT= -#$VBOXWEB_CHECK_INTERVAL= -#$VBOXWEB_THREADS= -#$VBOXWEB_KEEPALIVE= +#VBOXWEB_HOST= +#VBOXWEB_PORT= +#VBOXWEB_TIMEOUT= +#VBOXWEB_CHECK_INTERVAL= +#VBOXWEB_THREADS= +#VBOXWEB_KEEPALIVE= diff --git a/multilib-staging/binutils-multilib/PKGBUILD b/multilib-staging/binutils-multilib/PKGBUILD new file mode 100644 index 000000000..53017964d --- /dev/null +++ b/multilib-staging/binutils-multilib/PKGBUILD @@ -0,0 +1,89 @@ +# $Id: PKGBUILD 75001 2012-08-11 11:24:40Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Allan McRae <allan@archlinux.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc + +pkgname=binutils-multilib +pkgver=2.22 +pkgrel=10 +_date=20120323 +pkgdesc="A set of programs to assemble and manipulate binary and object files for multilib" +arch=('x86_64') +url="http://www.gnu.org/software/binutils/" +license=('GPL') +groups=('multilib-devel') +provides=("binutils=$pkgver-$pkgrel") +conflicts=('binutils') +depends=('glibc>=2.16' 'zlib') +makedepends=('gcc-multilib') # Make sure we compile this with gcc-multilib +checkdepends=('dejagnu') +options=('!libtool' '!distcc' '!ccache') +install=binutils.install +source=(http://mirrors.kernel.org/archlinux/other/binutils/binutils-${pkgver}_${_date}.tar.bz2) +md5sums=('de2ac4298732827f8af706fc24020330') + +build() { + cd ${srcdir} + mkdir binutils-build && cd binutils-build + + ${srcdir}/binutils/configure --prefix=/usr \ + --with-lib-path=/usr/lib:/usr/local/lib \ + --enable-ld=default --enable-gold \ + --enable-plugins --enable-threads \ + --enable-shared \ + --enable-64-bit-bfd --enable-multilib + + # check the host environment and makes sure all the necessary tools are available + make configure-host + + make tooldir=${pkgdir}/usr + + # Rebuild libiberty.a with -fPIC + cp -a libiberty libiberty-pic + make -C libiberty-pic clean + make CFLAGS="$CFLAGS -fPIC" -C libiberty-pic + + # Rebuild libbfd.a with -fPIC + # hidden visability prevent 3rd party shared libraries exporting bfd non-stable API + cp -a bfd bfd-pic + make -C bfd-pic clean + make CFLAGS="$CFLAGS -fPIC -fvisibility=hidden" -C bfd-pic + + # Rebuild libopcodes.a with -fPIC + cp -a opcodes opcodes-pic + make -C opcodes-pic clean + make CFLAGS="$CFLAGS -fPIC" -C opcodes-pic +} + +check() { + cd ${srcdir}/binutils-build + + # do not abort on errors - manually check log files + # gold testsuite does not build with _FORTIFY_SOURCE (due to -O0 -Werror) + make CFLAGS="${CFLAGS/-D_FORTIFY_SOURCE=2/}" \ + CXXFLAGS="${CXXFLAGS/-D_FORTIFY_SOURCE=2/}" -k check || true +} + +package() { + cd ${srcdir}/binutils-build + make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install + + # Add some useful headers + install -m644 ${srcdir}/binutils/include/libiberty.h ${pkgdir}/usr/include + install -m644 ${srcdir}/binutils/include/demangle.h ${pkgdir}/usr/include + + # install libraries rebuilt with -fPIC + install -m644 libiberty-pic/libiberty.a ${pkgdir}/usr/lib + install -m644 bfd-pic/libbfd.a ${pkgdir}/usr/lib + install -m644 opcodes/libopcodes.a ${pkgdir}/usr/lib + + # Remove Windows/Novell specific man pages + rm -f ${pkgdir}/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}* + + # Remove these symlinks, they are not ABI stable. + # Programs should compile static to the .a file. + rm -f ${pkgdir}/usr/lib/lib{bfd,opcodes}.so + echo "INPUT ( /usr/lib/libbfd.a -liberty -lz )" >${pkgdir}/usr/lib/libbfd.so + echo "INPUT ( /usr/lib/libopcodes.a -lbfd )" >${pkgdir}/usr/lib/libopcodes.so +} diff --git a/multilib-staging/binutils-multilib/binutils.install b/multilib-staging/binutils-multilib/binutils.install new file mode 100644 index 000000000..8bf9f3a47 --- /dev/null +++ b/multilib-staging/binutils-multilib/binutils.install @@ -0,0 +1,17 @@ +infodir=usr/share/info +filelist=(as.info bfd.info binutils.info configure.info gprof.info ld.info standards.info) + +post_upgrade() { + [ -x usr/bin/install-info ] || return 0 + for file in ${filelist[@]}; do + install-info $infodir/$file.gz $infodir/dir 2> /dev/null + done +} + +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/multilib-staging/gcc-multilib/gcc-4.7.1-libgo-mksysinfo.patch b/multilib-staging/gcc-multilib/gcc-4.7.1-libgo-mksysinfo.patch new file mode 100644 index 000000000..427efe8a6 --- /dev/null +++ b/multilib-staging/gcc-multilib/gcc-4.7.1-libgo-mksysinfo.patch @@ -0,0 +1,15 @@ +--- libgo/mksysinfo.sh 2012-06-29 14:23:30.684708901 +0200 ++++ libgo/mksysinfo.sh 2012-06-29 14:23:20.782761973 +0200 +@@ -522,10 +522,10 @@ grep '^const _DT_' gen-sysinfo.go | + # The rusage struct. + rusage=`grep '^type _rusage struct' gen-sysinfo.go` + if test "$rusage" != ""; then +- rusage=`echo $rusage | sed -e 's/type _rusage struct //' -e 's/[{}]//g'` +- rusage=`echo $rusage | sed -e 's/^ *//'` + # Remove anonymous unions from GNU/Linux <bits/resource.h>. + rusage=`echo $rusage | sed -e 's/Godump_[0-9]* struct {\([^}]*\)};/\1/g'` ++ rusage=`echo $rusage | sed -e 's/type _rusage struct //' -e 's/[{}]//g'` ++ rusage=`echo $rusage | sed -e 's/^ *//'` + nrusage= + while test -n "$rusage"; do + field=`echo $rusage | sed -e 's/^\([^;]*\);.*$/\1/'` diff --git a/multilib-staging/lib32-glibc/PKGBUILD b/multilib-staging/lib32-glibc/PKGBUILD new file mode 100644 index 000000000..23f0b9dff --- /dev/null +++ b/multilib-staging/lib32-glibc/PKGBUILD @@ -0,0 +1,128 @@ +# $Id: PKGBUILD 75000 2012-08-11 11:23:15Z heftig $ +# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com> +# Contributor: Jan de Groot <jgc@archlinux.org> +# Contributor: Allan McRae <allan@archlinux.org> + +# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc +# NOTE: valgrind requires rebuilt with each major glibc version + +_pkgbasename=glibc +pkgname=lib32-$_pkgbasename +pkgver=2.16.0 +pkgrel=3 +pkgdesc="GNU C Library for multilib" +arch=('x86_64') +url="http://www.gnu.org/software/libc" +license=('GPL' 'LGPL') +makedepends=('gcc-multilib>=4.7') +options=('!strip' '!emptydirs') +source=(http://ftp.gnu.org/gnu/libc/${_pkgbasename}-${pkgver}.tar.xz{,.sig} + glibc-2.15-fix-res_query-assert.patch + glibc-2.15-revert-c5a0802a.patch + glibc-2.16-rpcgen-cpp-path.patch + lib32-glibc.conf) +md5sums=('80b181b02ab249524ec92822c0174cf7' + '2a1221a15575820751c325ef4d2fbb90' + '31f415b41197d85d3bbee3d1eecd06a3' + '0a0383d50d63f1c02919fe9943b82014' + 'ea6a43915474e8276e9361eed6a01280' + '6e052f1cb693d5d3203f50f9d4e8c33b') + +build() { + cd ${srcdir}/${_pkgbasename}-${pkgver} + + # fix res_query assertion + # http://sourceware.org/bugzilla/show_bug.cgi?id=13013 + patch -p1 -i ${srcdir}/glibc-2.15-fix-res_query-assert.patch + + # revert commit c5a0802a - causes various hangs + # https://bugzilla.redhat.com/show_bug.cgi?id=552960 + patch -p1 -i ${srcdir}/glibc-2.15-revert-c5a0802a.patch + + # prevent need for /lib/cpp symlink + # http://sourceware.org/git/?p=glibc.git;a=commit;h=bf9b740a + patch -p1 -i ${srcdir}/glibc-2.16-rpcgen-cpp-path.patch + + cd ${srcdir} + mkdir glibc-build + cd glibc-build + + + # Hack to fix NPTL issues with Xen, only required on 32bit platforms + # TODO: make separate glibc-xen package for i686 + export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs" + + export CC="gcc -m32" + export CXX="g++ -m32" + echo "slibdir=/usr/lib32" >> configparms + + # remove hardening options from CFLAGS for building libraries + CFLAGS=${CFLAGS/-fstack-protector/} + CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/} + + ${srcdir}/${_pkgbasename}-${pkgver}/configure --prefix=/usr \ + --libdir=/usr/lib32 --libexecdir=/usr/lib32 \ + --with-headers=/usr/include \ + --enable-add-ons=nptl,libidn \ + --enable-obsolete-rpc \ + --enable-kernel=2.6.32 \ + --enable-bind-now --disable-profile \ + --enable-stackguard-randomization \ + --enable-multi-arch i686-unknown-linux-gnu + + # build libraries with hardening disabled + echo "build-programs=no" >> configparms + make + + # re-enable hardening for programs + sed -i "/build-programs=/s#no#yes#" configparms + echo "CC += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms + echo "CXX += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms + make + + # remove harding in preparation to run test-suite + sed -i '2,4d' configparms +} + +check() { + cd ${srcdir}/glibc-build + make -k check +} + +package() { + cd ${srcdir}/glibc-build + make install_root=${pkgdir} install + + rm -rf ${pkgdir}/{etc,sbin,usr/{bin,sbin,share},var} + + # We need one 32 bit specific header file + find ${pkgdir}/usr/include -type f -not -name stubs-32.h -delete + + # Do not strip the following files for improved debugging support + # ("improved" as in not breaking gdb and valgrind...): + # ld-${pkgver}.so + # libc-${pkgver}.so + # libpthread-${pkgver}.so + # libthread_db-1.0.so + + cd $pkgdir + strip $STRIP_BINARIES usr/lib32/getconf/* + + strip $STRIP_STATIC usr/lib32/*.a + + strip $STRIP_SHARED usr/lib32/{libanl,libBrokenLocale,libcidn,libcrypt}-*.so \ + usr/lib32/libnss_{compat,db,dns,files,hesiod,nis,nisplus}-*.so \ + usr/lib32/{libdl,libm,libnsl,libresolv,librt,libutil}-*.so \ + usr/lib32/{libmemusage,libpcprofile,libSegFault}.so \ + usr/lib32/{pt_chown,{audit,gconv}/*.so} + + # Dynamic linker + mkdir ${pkgdir}/usr/lib + ln -s ../lib32/ld-linux.so.2 ${pkgdir}/usr/lib/ + + # Add lib32 paths to the default library search path + install -Dm644 "$srcdir/lib32-glibc.conf" "$pkgdir/etc/ld.so.conf.d/lib32-glibc.conf" + + # Symlink /usr/lib32/locale to /usr/lib/locale + ln -s ../lib/locale "$pkgdir/usr/lib32/locale" +} diff --git a/multilib-staging/lib32-glibc/glibc-2.15-fix-res_query-assert.patch b/multilib-staging/lib32-glibc/glibc-2.15-fix-res_query-assert.patch new file mode 100644 index 000000000..a894da9c7 --- /dev/null +++ b/multilib-staging/lib32-glibc/glibc-2.15-fix-res_query-assert.patch @@ -0,0 +1,51 @@ +--- a/resolv/res_query.c ++++ a/resolv/res_query.c +@@ -122,6 +122,7 @@ __libc_res_nquery(res_state statp, + int *resplen2) + { + HEADER *hp = (HEADER *) answer; ++ HEADER *hp2; + int n, use_malloc = 0; + u_int oflags = statp->_flags; + +@@ -239,26 +240,25 @@ __libc_res_nquery(res_state statp, + /* __libc_res_nsend might have reallocated the buffer. */ + hp = (HEADER *) *answerp; + +- /* We simplify the following tests by assigning HP to HP2. It +- is easy to verify that this is the same as ignoring all +- tests of HP2. */ +- HEADER *hp2 = answerp2 ? (HEADER *) *answerp2 : hp; +- +- if (n < (int) sizeof (HEADER) && answerp2 != NULL +- && *resplen2 > (int) sizeof (HEADER)) ++ /* We simplify the following tests by assigning HP to HP2 or ++ vice versa. It is easy to verify that this is the same as ++ ignoring all tests of HP or HP2. */ ++ if (answerp2 == NULL || *resplen2 < (int) sizeof (HEADER)) + { +- /* Special case of partial answer. */ +- assert (hp != hp2); +- hp = hp2; ++ hp2 = hp; + } +- else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER) +- && n > (int) sizeof (HEADER)) ++ else + { +- /* Special case of partial answer. */ +- assert (hp != hp2); +- hp2 = hp; ++ hp2 = (HEADER *) *answerp2; ++ if (n < (int) sizeof (HEADER)) ++ { ++ hp = hp2; ++ } + } + ++ /* Make sure both hp and hp2 are defined */ ++ assert((hp != NULL) && (hp2 != NULL)); ++ + if ((hp->rcode != NOERROR || ntohs(hp->ancount) == 0) + && (hp2->rcode != NOERROR || ntohs(hp2->ancount) == 0)) { + #ifdef DEBUG diff --git a/multilib-staging/lib32-glibc/glibc-2.15-revert-c5a0802a.patch b/multilib-staging/lib32-glibc/glibc-2.15-revert-c5a0802a.patch new file mode 100644 index 000000000..d8894723a --- /dev/null +++ b/multilib-staging/lib32-glibc/glibc-2.15-revert-c5a0802a.patch @@ -0,0 +1,226 @@ +diff -rup a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S +--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2011-12-22 18:04:12.937212834 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S 2011-12-22 18:04:42.104222278 +0000 +@@ -137,7 +137,6 @@ __pthread_cond_wait: + cmpl $PI_BIT, %eax + jne 18f + +-90: + movl $(FUTEX_WAIT_REQUEUE_PI|FUTEX_PRIVATE_FLAG), %ecx + movl %ebp, %edx + xorl %esi, %esi +@@ -151,9 +150,6 @@ __pthread_cond_wait: + sete 16(%esp) + je 19f + +- cmpl $-EAGAIN, %eax +- je 91f +- + /* Normal and PI futexes dont mix. Use normal futex functions only + if the kernel does not support the PI futex functions. */ + cmpl $-ENOSYS, %eax +@@ -398,78 +394,6 @@ __pthread_cond_wait: + #endif + call __lll_unlock_wake + jmp 11b +- +-91: +-.LcleanupSTART2: +- /* FUTEX_WAIT_REQUEUE_PI returned EAGAIN. We need to +- call it again. */ +- +- /* Get internal lock. */ +- movl $1, %edx +- xorl %eax, %eax +- LOCK +-#if cond_lock == 0 +- cmpxchgl %edx, (%ebx) +-#else +- cmpxchgl %edx, cond_lock(%ebx) +-#endif +- jz 92f +- +-#if cond_lock == 0 +- movl %ebx, %edx +-#else +- leal cond_lock(%ebx), %edx +-#endif +-#if (LLL_SHARED-LLL_PRIVATE) > 255 +- xorl %ecx, %ecx +-#endif +- cmpl $-1, dep_mutex(%ebx) +- setne %cl +- subl $1, %ecx +- andl $(LLL_SHARED-LLL_PRIVATE), %ecx +-#if LLL_PRIVATE != 0 +- addl $LLL_PRIVATE, %ecx +-#endif +- call __lll_lock_wait +- +-92: +- /* Increment the cond_futex value again, so it can be used as a new +- expected value. */ +- addl $1, cond_futex(%ebx) +- movl cond_futex(%ebx), %ebp +- +- /* Unlock. */ +- LOCK +-#if cond_lock == 0 +- subl $1, (%ebx) +-#else +- subl $1, cond_lock(%ebx) +-#endif +- je 93f +-#if cond_lock == 0 +- movl %ebx, %eax +-#else +- leal cond_lock(%ebx), %eax +-#endif +-#if (LLL_SHARED-LLL_PRIVATE) > 255 +- xorl %ecx, %ecx +-#endif +- cmpl $-1, dep_mutex(%ebx) +- setne %cl +- subl $1, %ecx +- andl $(LLL_SHARED-LLL_PRIVATE), %ecx +-#if LLL_PRIVATE != 0 +- addl $LLL_PRIVATE, %ecx +-#endif +- call __lll_unlock_wake +- +-93: +- /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */ +- xorl %ecx, %ecx +- movl dep_mutex(%ebx), %edi +- jmp 90b +-.LcleanupEND2: +- + .size __pthread_cond_wait, .-__pthread_cond_wait + versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait, + GLIBC_2_3_2) +@@ -642,10 +566,6 @@ __condvar_w_cleanup: + .long .LcleanupEND-.Lsub_cond_futex + .long __condvar_w_cleanup-.LSTARTCODE + .uleb128 0 +- .long .LcleanupSTART2-.LSTARTCODE +- .long .LcleanupEND2-.LcleanupSTART2 +- .long __condvar_w_cleanup-.LSTARTCODE +- .uleb128 0 + .long .LcallUR-.LSTARTCODE + .long .LENDCODE-.LcallUR + .long 0 +Only in b/nptl/sysdeps/unix/sysv/linux/i386/i486: pthread_cond_wait.S.orig +diff -rup a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S +--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2011-12-22 18:04:12.941212837 +0000 ++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S 2011-12-22 18:05:05.155229737 +0000 +@@ -23,7 +23,6 @@ + #include <lowlevelcond.h> + #include <tcb-offsets.h> + #include <pthread-pi-defines.h> +-#include <pthread-errnos.h> + #include <stap-probe.h> + + #include <kernel-features.h> +@@ -137,14 +136,11 @@ __pthread_cond_wait: + cmpl $PI_BIT, %eax + jne 61f + +-90: + movl $(FUTEX_WAIT_REQUEUE_PI|FUTEX_PRIVATE_FLAG), %esi + movl $SYS_futex, %eax + syscall + + movl $1, %r8d +- cmpq $-EAGAIN, %rax +- je 91f + #ifdef __ASSUME_REQUEUE_PI + jmp 62f + #else +@@ -331,70 +327,6 @@ __pthread_cond_wait: + + 13: movq %r10, %rax + jmp 14b +- +-91: +-.LcleanupSTART2: +- /* FUTEX_WAIT_REQUEUE_PI returned EAGAIN. We need to +- call it again. */ +- movq 8(%rsp), %rdi +- +- /* Get internal lock. */ +- movl $1, %esi +- xorl %eax, %eax +- LOCK +-#if cond_lock == 0 +- cmpxchgl %esi, (%rdi) +-#else +- cmpxchgl %esi, cond_lock(%rdi) +-#endif +- jz 92f +- +-#if cond_lock != 0 +- addq $cond_lock, %rdi +-#endif +- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi) +- movl $LLL_PRIVATE, %eax +- movl $LLL_SHARED, %esi +- cmovne %eax, %esi +- callq __lll_lock_wait +-#if cond_lock != 0 +- subq $cond_lock, %rdi +-#endif +-92: +- /* Increment the cond_futex value again, so it can be used as a new +- expected value. */ +- incl cond_futex(%rdi) +- movl cond_futex(%rdi), %edx +- +- /* Release internal lock. */ +- LOCK +-#if cond_lock == 0 +- decl (%rdi) +-#else +- decl cond_lock(%rdi) +-#endif +- jz 93f +- +-#if cond_lock != 0 +- addq $cond_lock, %rdi +-#endif +- LP_OP(cmp) $-1, dep_mutex-cond_lock(%rdi) +- movl $LLL_PRIVATE, %eax +- movl $LLL_SHARED, %esi +- cmovne %eax, %esi +- /* The call preserves %rdx. */ +- callq __lll_unlock_wake +-#if cond_lock != 0 +- subq $cond_lock, %rdi +-#endif +-93: +- /* Set the rest of SYS_futex args for FUTEX_WAIT_REQUEUE_PI. */ +- xorq %r10, %r10 +- mov dep_mutex(%rdi), %R8_LP +- leaq cond_futex(%rdi), %rdi +- jmp 90b +-.LcleanupEND2: +- + .size __pthread_cond_wait, .-__pthread_cond_wait + versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait, + GLIBC_2_3_2) +@@ -547,15 +479,11 @@ __condvar_cleanup1: + .uleb128 .LcleanupSTART-.LSTARTCODE + .uleb128 .LcleanupEND-.LcleanupSTART + .uleb128 __condvar_cleanup1-.LSTARTCODE +- .uleb128 0 +- .uleb128 .LcleanupSTART2-.LSTARTCODE +- .uleb128 .LcleanupEND2-.LcleanupSTART2 +- .uleb128 __condvar_cleanup1-.LSTARTCODE +- .uleb128 0 ++ .uleb128 0 + .uleb128 .LcallUR-.LSTARTCODE + .uleb128 .LENDCODE-.LcallUR + .uleb128 0 +- .uleb128 0 ++ .uleb128 0 + .Lcstend: + diff --git a/multilib-staging/lib32-glibc/glibc-2.16-rpcgen-cpp-path.patch b/multilib-staging/lib32-glibc/glibc-2.16-rpcgen-cpp-path.patch new file mode 100644 index 000000000..822b57294 --- /dev/null +++ b/multilib-staging/lib32-glibc/glibc-2.16-rpcgen-cpp-path.patch @@ -0,0 +1,68 @@ +diff --git a/sunrpc/rpc_main.c b/sunrpc/rpc_main.c +index 06d951a..2103b10 100644 +--- a/sunrpc/rpc_main.c ++++ b/sunrpc/rpc_main.c +@@ -75,12 +75,9 @@ struct commandline + + static const char *cmdname; + +-#define SVR4_CPP "/usr/ccs/lib/cpp" +-#define SUNOS_CPP "/lib/cpp" +- + static const char *svcclosetime = "120"; + static int cppDefined; /* explicit path for C preprocessor */ +-static const char *CPP = SUNOS_CPP; ++static const char *CPP = "/lib/cpp"; + static const char CPPFLAGS[] = "-C"; + static char *pathbuf; + static int cpp_pid; +@@ -327,23 +324,17 @@ find_cpp (void) + { + struct stat buf; + +- if (stat (CPP, &buf) < 0) +- { /* /lib/cpp or explicit cpp does not exist */ +- if (cppDefined) +- { +- fprintf (stderr, _ ("cannot find C preprocessor: %s \n"), CPP); +- crash (); +- } +- else +- { /* try the other one */ +- CPP = SVR4_CPP; +- if (stat (CPP, &buf) < 0) +- { /* can't find any cpp */ +- fputs (_ ("cannot find any C preprocessor (cpp)\n"), stdout); +- crash (); +- } +- } ++ if (stat (CPP, &buf) == 0) ++ return; ++ ++ if (cppDefined) /* user specified cpp but it does not exist */ ++ { ++ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP); ++ crash (); + } ++ ++ /* fall back to system CPP */ ++ CPP = "cpp"; + } + + /* +@@ -374,8 +365,13 @@ open_input (const char *infile, const char *define) + close (1); + dup2 (pd[1], 1); + close (pd[0]); +- execv (arglist[0], (char **) arglist); +- perror ("execv"); ++ execvp (arglist[0], (char **) arglist); ++ if (errno == ENOENT) ++ { ++ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP); ++ exit (1); ++ } ++ perror ("execvp"); + exit (1); + case -1: + perror ("fork"); diff --git a/multilib-staging/lib32-glibc/lib32-glibc.conf b/multilib-staging/lib32-glibc/lib32-glibc.conf new file mode 100644 index 000000000..9b08c3f43 --- /dev/null +++ b/multilib-staging/lib32-glibc/lib32-glibc.conf @@ -0,0 +1 @@ +/usr/lib32 diff --git a/staging/glibc/glibc-2.16-rpcgen-cpp-path.patch b/staging/glibc/glibc-2.16-rpcgen-cpp-path.patch new file mode 100644 index 000000000..822b57294 --- /dev/null +++ b/staging/glibc/glibc-2.16-rpcgen-cpp-path.patch @@ -0,0 +1,68 @@ +diff --git a/sunrpc/rpc_main.c b/sunrpc/rpc_main.c +index 06d951a..2103b10 100644 +--- a/sunrpc/rpc_main.c ++++ b/sunrpc/rpc_main.c +@@ -75,12 +75,9 @@ struct commandline + + static const char *cmdname; + +-#define SVR4_CPP "/usr/ccs/lib/cpp" +-#define SUNOS_CPP "/lib/cpp" +- + static const char *svcclosetime = "120"; + static int cppDefined; /* explicit path for C preprocessor */ +-static const char *CPP = SUNOS_CPP; ++static const char *CPP = "/lib/cpp"; + static const char CPPFLAGS[] = "-C"; + static char *pathbuf; + static int cpp_pid; +@@ -327,23 +324,17 @@ find_cpp (void) + { + struct stat buf; + +- if (stat (CPP, &buf) < 0) +- { /* /lib/cpp or explicit cpp does not exist */ +- if (cppDefined) +- { +- fprintf (stderr, _ ("cannot find C preprocessor: %s \n"), CPP); +- crash (); +- } +- else +- { /* try the other one */ +- CPP = SVR4_CPP; +- if (stat (CPP, &buf) < 0) +- { /* can't find any cpp */ +- fputs (_ ("cannot find any C preprocessor (cpp)\n"), stdout); +- crash (); +- } +- } ++ if (stat (CPP, &buf) == 0) ++ return; ++ ++ if (cppDefined) /* user specified cpp but it does not exist */ ++ { ++ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP); ++ crash (); + } ++ ++ /* fall back to system CPP */ ++ CPP = "cpp"; + } + + /* +@@ -374,8 +365,13 @@ open_input (const char *infile, const char *define) + close (1); + dup2 (pd[1], 1); + close (pd[0]); +- execv (arglist[0], (char **) arglist); +- perror ("execv"); ++ execvp (arglist[0], (char **) arglist); ++ if (errno == ENOENT) ++ { ++ fprintf (stderr, _ ("cannot find C preprocessor: %s\n"), CPP); ++ exit (1); ++ } ++ perror ("execvp"); + exit (1); + case -1: + perror ("fork"); diff --git a/staging/gnucash/PKGBUILD b/staging/gnucash/PKGBUILD new file mode 100644 index 000000000..829e4439e --- /dev/null +++ b/staging/gnucash/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 165077 2012-08-10 00:52:20Z eric $ +# Maintainer: Aaron Griffin <aaron@archlinux.org> +# Contributor: Mark Schneider <queueRAM@gmail.com> + +pkgname=gnucash +pkgver=2.4.11 +pkgrel=1 +pkgdesc="A personal and small-business financial-accounting application" +arch=('i686' 'x86_64') +url="http://www.gnucash.org" +license=("GPL") +depends=('gtkhtml' 'slib' 'goffice' 'libgnomeui' 'libdbi-drivers' 'aqbanking' 'desktop-file-utils') +makedepends=('intltool') +optdepends=('evince: for print preview' + 'perl-finance-quote: for stock information lookups' + 'perl-date-manip: for stock information lookups') +options=('!libtool' '!makeflags' '!emptydirs') +install=gnucash.install +source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2) +sha1sums=('c157ad7ea0960c71966f5071acd9018580ece538') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc \ + --libexecdir=/usr/lib --disable-schemas-install --enable-ofx --enable-aqbanking + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install + cd src/doc/design + make DESTDIR="${pkgdir}" install-info + + install -dm755 "${pkgdir}/usr/share/gconf/schemas" + gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnucash "${pkgdir}"/etc/gconf/schemas/*.schemas + rm -f "${pkgdir}"/etc/gconf/schemas/*.schemas +} diff --git a/staging/gnucash/gnucash.install b/staging/gnucash/gnucash.install new file mode 100644 index 000000000..d6a48c31b --- /dev/null +++ b/staging/gnucash/gnucash.install @@ -0,0 +1,34 @@ +pkgname=gnucash +info_dir=usr/share/info +info_files=(gnucash-design.info) + +post_install() { + usr/sbin/gconfpkg --install ${pkgname} + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q + [ -x usr/bin/install-info ] || return 0 + for f in ${info_files[@]}; do + usr/bin/install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null + done +} + +pre_upgrade() { + pre_remove $1 +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + usr/sbin/gconfpkg --uninstall ${pkgname} + [ -x usr/bin/install-info ] || return 0 + for f in ${info_files[@]}; do + usr/bin/install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null + done +} + +post_remove() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} diff --git a/staging/libmpc/PKGBUILD b/staging/libmpc/PKGBUILD new file mode 100644 index 000000000..6a77bce43 --- /dev/null +++ b/staging/libmpc/PKGBUILD @@ -0,0 +1,32 @@ +# $Id: PKGBUILD 165110 2012-08-11 08:18:39Z allan $ +# Maintainer: Allan McRae <allan@archlinux.org> + +pkgname=libmpc +pkgver=1.0 +pkgrel=1 +pkgdesc="Library for the arithmetic of complex numbers with arbitrarily high precision" +arch=('i686' 'x86_64') +url="http://www.multiprecision.org/" +license=('LGPL') +depends=('mpfr>=3.0.0') +options=('!libtool') +install=libmpc.install +source=(http://www.multiprecision.org/mpc/download/mpc-${pkgver/_/-}.tar.gz) +md5sums=('13370ceb2e266c5eeb2f7e78c24b7858') + +build() { + cd "${srcdir}/mpc-${pkgver}" + ./configure --prefix=/usr + make +} + +check() { + cd "${srcdir}/mpc-${pkgver}" + make check +} + +package() { + cd "${srcdir}/mpc-${pkgver}" + make DESTDIR="${pkgdir}" install + mv ${pkgdir}/usr/share/info/{mpc,libmpc}.info +} diff --git a/staging/libmpc/libmpc-0.9-configure_cflags_egrep_issue.patch b/staging/libmpc/libmpc-0.9-configure_cflags_egrep_issue.patch new file mode 100644 index 000000000..3bf324728 --- /dev/null +++ b/staging/libmpc/libmpc-0.9-configure_cflags_egrep_issue.patch @@ -0,0 +1,63 @@ +--- trunk/configure.ac 2011/02/21 12:18:31 932 ++++ trunk/configure.ac 2011/02/21 16:41:09 936 +@@ -33,7 +33,7 @@ + AC_CANONICAL_HOST + AC_CONFIG_MACRO_DIR([m4]) + +-dnl Extra arguments to configure ++# Extra arguments to configure + AC_ARG_WITH([mpfr_include], + [AC_HELP_STRING([--with-mpfr-include=DIR], + [MPFR include directory])], +@@ -85,18 +85,19 @@ + ) + + +-dnl Setup CC and CFLAGS ++# Setup CC and CFLAGS ++AC_PROG_CC ++AC_LANG(C) + +-dnl Check for user specification of CC or CFLAGS ++# Set up LibTool ++AC_PROG_LIBTOOL ++ ++# Check for user specification of CC or CFLAGS + if test -n "$CFLAGS" || test -n "$CC" ; then + user_redefine_cc=yes + fi + +-# Check for programs +-AC_PROG_CC +-AC_LANG(C) +- +-dnl Check GMP Header ++# Check GMP Header + AC_MSG_CHECKING(for gmp.h) + AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ + #include "gmp.h" +@@ -105,22 +106,19 @@ + AC_MSG_ERROR([gmp.h can't be found, or is unusable.]) + ]) + +-dnl Check for GMP CFLAGS in gmp.h ++# Check for GMP CFLAGS in gmp.h + if test -z "$user_redefine_cc" ; then + MPC_GMP_CC_CFLAGS + fi + + +-dnl Configs for Windows DLLs ++# Configs for Windows DLLs + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) + MPC_WINDOWS + esac + + +-dnl Finally set up LibTool +-AC_PROG_LIBTOOL +- + # Checks for header files. + AC_HEADER_STDC + AC_CHECK_HEADERS([complex.h locale.h inttypes.h stdint.h limits.h unistd.h sys/time.h]) diff --git a/staging/libmpc/libmpc.install b/staging/libmpc/libmpc.install new file mode 100644 index 000000000..b0718c745 --- /dev/null +++ b/staging/libmpc/libmpc.install @@ -0,0 +1,20 @@ +infodir=usr/share/info +filelist=(libmpc.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/staging/libofx/PKGBUILD b/staging/libofx/PKGBUILD new file mode 100644 index 000000000..eeeca6a9e --- /dev/null +++ b/staging/libofx/PKGBUILD @@ -0,0 +1,44 @@ +# $Id: PKGBUILD 165073 2012-08-09 23:42:01Z eric $ +# Maintainer: Aaron Griffin <aaron@archlinux.org> + +pkgbase=libofx +pkgname=('libofx' 'libofx-doc') +pkgver=0.9.5 +pkgrel=1 +pkgdesc="API for the OFX banking standard" +arch=('i686' 'x86_64') +url="http://libofx.sourceforge.net" +license=('GPL') +depends=('opensp' 'curl' 'libxml++') +checkdepends=('gnupg') +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz libofx-gcc47.patch) +sha1sums=('7e5245d68a0f3f7efad2fd809b2afbbff6ba0e73' + '6c327e24543cb8ba901bfb204343a85c68264654') + +build() { + cd "$srcdir/$pkgbase-$pkgver" + patch -p1 -i "$srcdir/libofx-gcc47.patch" + ./configure --prefix=/usr + make +} + +check() { + cd "$srcdir/$pkgbase-$pkgver" + make check +} + +package_libofx() { + options=('!libtool' '!docs') + + cd "$srcdir/$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install +} + +package_libofx-doc() { + pkgdesc="Documention of the OFX banking standard API" + depends=() + + cd "$srcdir/$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install-docDATA + make -C doc DESTDIR="$pkgdir" install +} diff --git a/staging/libofx/libofx-gcc47.patch b/staging/libofx/libofx-gcc47.patch new file mode 100644 index 000000000..899fe09e0 --- /dev/null +++ b/staging/libofx/libofx-gcc47.patch @@ -0,0 +1,11 @@ +diff -Nru libofx-0.9.4/debian/patches/fix-ftbfs-gcc4.7.diff libofx-0.9.4/debian/patches/fix-ftbfs-gcc4.7.diff +--- libofx-0.9.4.orig/ofxconnect/ofxpartner.cpp 2011-03-30 22:30:50.000000000 +0000 ++++ libofx-0.9.4/ofxconnect/ofxpartner.cpp 2012-04-17 06:08:38.711940892 +0000 +@@ -37,6 +37,7 @@ + #include <vector> + #include <algorithm> + #include <string.h> ++#include <unistd.h> + + using std::string; + using std::vector; diff --git a/testing/gnucash/PKGBUILD b/testing/gnucash/PKGBUILD new file mode 100644 index 000000000..23745c948 --- /dev/null +++ b/testing/gnucash/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 165082 2012-08-10 05:02:38Z eric $ +# Maintainer: Aaron Griffin <aaron@archlinux.org> +# Contributor: Mark Schneider <queueRAM@gmail.com> + +pkgname=gnucash +pkgver=2.4.11 +pkgrel=1 +pkgdesc="A personal and small-business financial-accounting application" +arch=('i686' 'x86_64') +url="http://www.gnucash.org" +license=("GPL") +depends=('gtkhtml' 'slib' 'goffice' 'libgnomeui' 'libdbi-drivers' 'aqbanking' 'desktop-file-utils') +makedepends=('intltool') +optdepends=('evince: for print preview' + 'perl-finance-quote: for stock information lookups' + 'perl-date-manip: for stock information lookups') +options=('!libtool' '!makeflags' '!emptydirs') +install=gnucash.install +source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2) +sha1sums=('c157ad7ea0960c71966f5071acd9018580ece538') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + ./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc \ + --libexecdir=/usr/lib --disable-schemas-install --enable-ofx --enable-aqbanking + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install + cd src/doc/design + make DESTDIR="${pkgdir}" install-info + + install -dm755 "${pkgdir}/usr/share/gconf/schemas" + gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnucash "${pkgdir}"/etc/gconf/schemas/*.schemas + rm -f "${pkgdir}"/etc/gconf/schemas/*.schemas +} diff --git a/testing/gnucash/gnucash.install b/testing/gnucash/gnucash.install new file mode 100644 index 000000000..d6a48c31b --- /dev/null +++ b/testing/gnucash/gnucash.install @@ -0,0 +1,34 @@ +pkgname=gnucash +info_dir=usr/share/info +info_files=(gnucash-design.info) + +post_install() { + usr/sbin/gconfpkg --install ${pkgname} + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor + update-desktop-database -q + [ -x usr/bin/install-info ] || return 0 + for f in ${info_files[@]}; do + usr/bin/install-info ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null + done +} + +pre_upgrade() { + pre_remove $1 +} + +post_upgrade() { + post_install $1 +} + +pre_remove() { + usr/sbin/gconfpkg --uninstall ${pkgname} + [ -x usr/bin/install-info ] || return 0 + for f in ${info_files[@]}; do + usr/bin/install-info --delete ${info_dir}/$f.gz ${info_dir}/dir 2> /dev/null + done +} + +post_remove() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} diff --git a/testing/libofx/PKGBUILD b/testing/libofx/PKGBUILD new file mode 100644 index 000000000..218fa0cd3 --- /dev/null +++ b/testing/libofx/PKGBUILD @@ -0,0 +1,44 @@ +# $Id: PKGBUILD 165083 2012-08-10 05:02:43Z eric $ +# Maintainer: Aaron Griffin <aaron@archlinux.org> + +pkgbase=libofx +pkgname=('libofx' 'libofx-doc') +pkgver=0.9.5 +pkgrel=1 +pkgdesc="API for the OFX banking standard" +arch=('i686' 'x86_64') +url="http://libofx.sourceforge.net" +license=('GPL') +depends=('opensp' 'curl' 'libxml++') +checkdepends=('gnupg') +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz libofx-gcc47.patch) +sha1sums=('7e5245d68a0f3f7efad2fd809b2afbbff6ba0e73' + '6c327e24543cb8ba901bfb204343a85c68264654') + +build() { + cd "$srcdir/$pkgbase-$pkgver" + patch -p1 -i "$srcdir/libofx-gcc47.patch" + ./configure --prefix=/usr + make +} + +check() { + cd "$srcdir/$pkgbase-$pkgver" + make check +} + +package_libofx() { + options=('!libtool' '!docs') + + cd "$srcdir/$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install +} + +package_libofx-doc() { + pkgdesc="Documention of the OFX banking standard API" + depends=() + + cd "$srcdir/$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install-docDATA + make -C doc DESTDIR="$pkgdir" install +} diff --git a/testing/libofx/libofx-gcc47.patch b/testing/libofx/libofx-gcc47.patch new file mode 100644 index 000000000..899fe09e0 --- /dev/null +++ b/testing/libofx/libofx-gcc47.patch @@ -0,0 +1,11 @@ +diff -Nru libofx-0.9.4/debian/patches/fix-ftbfs-gcc4.7.diff libofx-0.9.4/debian/patches/fix-ftbfs-gcc4.7.diff +--- libofx-0.9.4.orig/ofxconnect/ofxpartner.cpp 2011-03-30 22:30:50.000000000 +0000 ++++ libofx-0.9.4/ofxconnect/ofxpartner.cpp 2012-04-17 06:08:38.711940892 +0000 +@@ -37,6 +37,7 @@ + #include <vector> + #include <algorithm> + #include <string.h> ++#include <unistd.h> + + using std::string; + using std::vector; diff --git a/testing/libxml2/PKGBUILD b/testing/libxml2/PKGBUILD new file mode 100644 index 000000000..38700a682 --- /dev/null +++ b/testing/libxml2/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 165055 2012-08-09 21:18:17Z jgc $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: John Proctor <jproctor@prium.net> + +pkgname=libxml2 +pkgver=2.8.0 +pkgrel=1 +pkgdesc="XML parsing library, version 2" +arch=(i686 x86_64) +license=('custom') +depends=('zlib>=1.2.4' 'readline>=6.1' 'ncurses>=5.7' 'xz') +makedepends=('python2') +options=('!libtool') +url="http://www.xmlsoft.org/" +source=(ftp://ftp.xmlsoft.org/${pkgname}/${pkgname}-${pkgver}.tar.gz + http://www.w3.org/XML/Test/xmlts20080205.tar.gz) +md5sums=('c62106f02ee00b6437f0fb9d370c1093' + 'b255be9a1c7f7021e52448e4ec8d7a0d') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -e 's|/usr/bin/python -u|/usr/bin/python2 -u|g' -e 's|/usr/bin/python$|/usr/bin/python2|g' -i python/tests/*.py + ./configure --prefix=/usr --with-threads --with-history \ + --with-python=/usr/bin/python2 + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + mv "${srcdir}/xmlconf" . + make check +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" +} diff --git a/testing/lvm2/lvm-on-crypt.service b/testing/lvm2/lvm-on-crypt.service new file mode 100644 index 000000000..4ade6c5b0 --- /dev/null +++ b/testing/lvm2/lvm-on-crypt.service @@ -0,0 +1,16 @@ +[Unit] +Description=LVM activation of encrypted devices +DefaultDependencies=no +Requires=systemd-udev-settle.service +After=systemd-udev-settle.service cryptsetup.target +Before=shutdown.target +Conflicts=shutdown.target + +[Service] +ExecStart=/sbin/vgchange --sysinit --available y +Type=oneshot +TimeoutSec=0 +RemainAfterExit=yes + +[Install] +WantedBy=basic.target diff --git a/testing/net-tools/Makefile.patch b/testing/net-tools/Makefile.patch new file mode 100644 index 000000000..aaacd6b78 --- /dev/null +++ b/testing/net-tools/Makefile.patch @@ -0,0 +1,17 @@ +--- Makefile.old 2012-08-07 22:07:58.235437087 +0200 ++++ Makefile 2012-08-07 22:10:21.192104345 +0200 +@@ -239,12 +239,12 @@ + install -m 0755 -d ${BASEDIR}/bin + install -m 0755 arp ${BASEDIR}/sbin + install -m 0755 hostname ${BASEDIR}/bin +- install -m 0755 ifconfig ${BASEDIR}/bin ++ install -m 0755 ifconfig ${BASEDIR}/sbin + install -m 0755 nameif ${BASEDIR}/sbin + install -m 0755 netstat ${BASEDIR}/bin + install -m 0755 plipconfig $(BASEDIR)/sbin + install -m 0755 rarp ${BASEDIR}/sbin +- install -m 0755 route ${BASEDIR}/bin ++ install -m 0755 route ${BASEDIR}/sbin + install -m 0755 slattach $(BASEDIR)/sbin + ifeq ($(HAVE_IP_TOOLS),1) + install -m 0755 ipmaddr $(BASEDIR)/sbin diff --git a/testing/network-manager-applet/PKGBUILD b/testing/network-manager-applet/PKGBUILD new file mode 100644 index 000000000..ff89e15c3 --- /dev/null +++ b/testing/network-manager-applet/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 165064 2012-08-09 22:48:27Z heftig $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: Arjan Timmerman <arjan@archlinux.org> +# Contributor: Wael Nasreddine <gandalf@siemens-mobiles.org> +# Contributor: Tor Krill <tor@krill.nu> +# Contributor: Will Rea <sillywilly@gmail.com> + +pkgname=network-manager-applet +pkgver=0.9.6.2 +pkgrel=1 +pkgdesc="GNOME frontends to NetWorkmanager" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver::5}" 'libgnome-keyring' 'polkit-gnome' 'gtk3' 'libnotify' + 'gnome-icon-theme' 'mobile-broadband-provider-info' 'iso-codes') +makedepends=('intltool' 'gnome-bluetooth') +optdepends=('gnome-bluetooth: for PAN/DUN support') +options=('!libtool' '!emptydirs') +install=network-manager-applet.install +source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/0.9/$pkgname-$pkgver.tar.xz) +sha256sums=('96c79ce199fe7770b66f2ddc5ee0a4b07a0ea1eaf5e2186b78d8dd69e38a3069') + +build() { + cd ${pkgname}-${pkgver} + ./configure --prefix=/usr --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static \ + --disable-maintainer-mode \ + --disable-migration + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/testing/network-manager-applet/network-manager-applet.install b/testing/network-manager-applet/network-manager-applet.install new file mode 100644 index 000000000..255ea1f9a --- /dev/null +++ b/testing/network-manager-applet/network-manager-applet.install @@ -0,0 +1,18 @@ +post_install() { + glib-compile-schemas /usr/share/glib-2.0/schemas + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +pre_upgrade() { + if (( $(vercmp $2 0.9.6.0) < 0 )); then + gconfpkg --uninstall network-manager-applet + fi +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/testing/networkmanager-openconnect/PKGBUILD b/testing/networkmanager-openconnect/PKGBUILD new file mode 100644 index 000000000..48d521bcf --- /dev/null +++ b/testing/networkmanager-openconnect/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 165062 2012-08-09 22:47:07Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-openconnect +pkgver=0.9.6.2 +pkgrel=1 +pkgdesc="NetworkManager VPN integration for openconnect" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver::5}" 'openconnect' 'gconf' 'libgnome-keyring') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +options=('!libtool') +install=$pkgname.install +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-openconnect/0.9/NetworkManager-openconnect-${pkgver}.tar.xz) +sha256sums=('3f53d87dbeb00fc841ef5981e6f1a1a192c65d273386246d48245cca84fa41b0') + +build() { + cd NetworkManager-openconnect-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-openconnect-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/testing/networkmanager-openconnect/networkmanager-openconnect.install b/testing/networkmanager-openconnect/networkmanager-openconnect.install new file mode 100644 index 000000000..7bd4d44f9 --- /dev/null +++ b/testing/networkmanager-openconnect/networkmanager-openconnect.install @@ -0,0 +1,16 @@ +pkgname=networkmanager-openconnect + +post_install() { + getent group nm-openconnect >/dev/null 2>&1 || groupadd -g 104 nm-openconnect + getent passwd nm-openconnect > /dev/null 2>&1 || useradd -u 104 -s /sbin/nologin -d / -M -c 'NetworkManager user for OpenConnect' -g nm-openconnect nm-openconnect + passwd -l nm-openconnect > /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + getent passwd nm-openconnect >/dev/null 2>&1 && userdel nm-openconnect + getent group nm-openconnect >/dev/null 2>&1 && groupdel nm-openconnect +} diff --git a/testing/networkmanager-openvpn/PKGBUILD b/testing/networkmanager-openvpn/PKGBUILD new file mode 100644 index 000000000..16f27e614 --- /dev/null +++ b/testing/networkmanager-openvpn/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 164976 2012-08-07 18:09:27Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-openvpn +pkgver=0.9.6.0 +pkgrel=1 +pkgdesc="NetworkManager VPN plugin for OpenVPN" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver}" 'openvpn' 'gtk3' 'libgnome-keyring') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +install=networkmanager-openvpn.install +options=('!libtool') +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-openvpn/0.9/NetworkManager-openvpn-${pkgver}.tar.xz) +sha256sums=('8fb88705793399574b3de2af93f87b63c0eae342d549a1c79bc59f6a1fad87a3') + +build() { + cd NetworkManager-openvpn-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-openvpn-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/testing/networkmanager-openvpn/networkmanager-openvpn.install b/testing/networkmanager-openvpn/networkmanager-openvpn.install new file mode 100644 index 000000000..931c0517c --- /dev/null +++ b/testing/networkmanager-openvpn/networkmanager-openvpn.install @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/testing/networkmanager-pptp/PKGBUILD b/testing/networkmanager-pptp/PKGBUILD new file mode 100644 index 000000000..b4f975a2c --- /dev/null +++ b/testing/networkmanager-pptp/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 164977 2012-08-07 18:10:19Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-pptp +pkgver=0.9.6.0 +pkgrel=1 +pkgdesc="NetworkManager VPN plugin for pptp " +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver}" 'pptpclient' 'gtk3' 'libgnome-keyring') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +options=('!libtool') +install=networkmanager-pptp.install +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-pptp/0.9/NetworkManager-pptp-${pkgver}.tar.xz) +sha256sums=('a84cbbf24827229e3dd3611bbde191398275c3b7ecd03913047197644f27a2b4') + +build() { + cd NetworkManager-pptp-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-pptp-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/testing/networkmanager-pptp/networkmanager-pptp.install b/testing/networkmanager-pptp/networkmanager-pptp.install new file mode 100644 index 000000000..931c0517c --- /dev/null +++ b/testing/networkmanager-pptp/networkmanager-pptp.install @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/testing/networkmanager-vpnc/PKGBUILD b/testing/networkmanager-vpnc/PKGBUILD new file mode 100644 index 000000000..db34ef9c2 --- /dev/null +++ b/testing/networkmanager-vpnc/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 164978 2012-08-07 18:11:11Z heftig $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgname=networkmanager-vpnc +pkgver=0.9.6.0 +pkgrel=1 +pkgdesc="NetworkManager VPN plugin for vpnc" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/NetworkManager/" +depends=("networkmanager>=${pkgver}" 'vpnc' 'hicolor-icon-theme' 'gtk3' 'libgnome-keyring') +makedepends=('intltool') +optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager') +options=('!libtool') +install=networkmanager-vpnc.install +source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-vpnc/0.9/NetworkManager-vpnc-${pkgver}.tar.xz) +sha256sums=('6c8e35862330e17ee8f4dc44b1ac47470da703e436d339c7b3e2dac7d1b148a2') + +build() { + cd NetworkManager-vpnc-${pkgver} + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --libexecdir=/usr/lib/networkmanager \ + --disable-static + make +} + +package() { + cd NetworkManager-vpnc-${pkgver} + make DESTDIR="${pkgdir}" install +} diff --git a/testing/networkmanager-vpnc/networkmanager-vpnc.install b/testing/networkmanager-vpnc/networkmanager-vpnc.install new file mode 100644 index 000000000..931c0517c --- /dev/null +++ b/testing/networkmanager-vpnc/networkmanager-vpnc.install @@ -0,0 +1,11 @@ +post_install() { + gtk-update-icon-cache -f -q -t /usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/testing/networkmanager/NetworkManager.conf b/testing/networkmanager/NetworkManager.conf new file mode 100644 index 000000000..c37b59680 --- /dev/null +++ b/testing/networkmanager/NetworkManager.conf @@ -0,0 +1,2 @@ +[main] +plugins=keyfile diff --git a/testing/networkmanager/PKGBUILD b/testing/networkmanager/PKGBUILD new file mode 100644 index 000000000..e4c927db3 --- /dev/null +++ b/testing/networkmanager/PKGBUILD @@ -0,0 +1,72 @@ +# $Id: PKGBUILD 164974 2012-08-07 18:07:41Z heftig $ +# Maintainer: Jan de Groot <jgc@archlinxu.org> +# Contributor: Wael Nasreddine <gandalf@siemens-mobiles.org> +# Contributor: Tor Krill <tor@krill.nu> +# Contributor: Will Rea <sillywilly@gmail.com> +# Contributor: Valentine Sinitsyn <e_val@inbox.ru> + +pkgname=networkmanager +_pkgname=NetworkManager +pkgver=0.9.6.0 +pkgrel=1 +pkgdesc="Network Management daemon" +arch=('i686' 'x86_64') +license=('GPL') +url="http://www.gnome.org/projects/$_pkgname/" +depends=('dbus-glib' 'iproute2' 'libnl' 'nss' 'polkit' 'udev' 'wpa_supplicant' 'ppp' 'dhcpcd' + 'libsoup') +makedepends=('intltool' 'dhclient' 'iptables' 'gobject-introspection') +optdepends=('modemmanager: for modem management service' + 'dhclient: alternative DHCP/DHCPv6 client' + 'iptables: Connection sharing' + 'dnsmasq: Connection sharing' + 'bluez: Bluetooth support' + 'openresolv: openresolv support') +options=('!libtool') +backup=('etc/NetworkManager/NetworkManager.conf') +install=networkmanager.install +source=(http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver:0:3}/$_pkgname-$pkgver.tar.xz + NetworkManager.conf disable_set_hostname.patch dnsmasq-path.patch) +sha256sums=('3982b623b7b199ac99e2ddd0840fe7d088245a49e3f680237e8baebf0cf86d07' + '44b048804c7c0b8b3b0c29b8632b6ad613c397d0a1635ec918e10c0fbcdadf21' + '25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460' + '65124505048cc8396daf0242c9f5d532fa669b4bbca305998c248ab2329490cb') + +build() { + cd $_pkgname-$pkgver + + patch -Np1 -i ../disable_set_hostname.patch + patch -Np1 -i ../dnsmasq-path.patch + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --libexecdir=/usr/lib/networkmanager \ + --with-crypto=nss \ + --with-distro=arch \ + --with-dhclient=/usr/sbin/dhclient \ + --with-dhcpcd=/sbin/dhcpcd \ + --with-iptables=/usr/sbin/iptables \ + --with-systemdsystemunitdir=/usr/lib/systemd/system \ + --with-udev-dir=/usr/lib/udev \ + --with-resolvconf=/usr/sbin/resolvconf \ + --with-session-tracking=ck \ + --disable-static \ + --enable-more-warnings=no \ + --disable-wimax + + make +} + +package() { + cd $_pkgname-$pkgver + make DESTDIR="$pkgdir" install + + install -m644 ../NetworkManager.conf "$pkgdir/etc/NetworkManager/" + + rm -r "$pkgdir/var/run" + + # Provide native service for arch-daemons generator + ln -s NetworkManager.service "$pkgdir/usr/lib/systemd/system/networkmanager.service" +} diff --git a/testing/networkmanager/disable_set_hostname.patch b/testing/networkmanager/disable_set_hostname.patch new file mode 100644 index 000000000..ee95dd0e1 --- /dev/null +++ b/testing/networkmanager/disable_set_hostname.patch @@ -0,0 +1,19 @@ +diff -Nur NetworkManager-0.9.0.orig/src/nm-policy.c NetworkManager-0.9.0/src/nm-policy.c +--- NetworkManager-0.9.0.orig/src/nm-policy.c 2011-08-23 06:41:02.099686450 +0000 ++++ NetworkManager-0.9.0/src/nm-policy.c 2011-08-23 06:43:38.227791737 +0000 +@@ -302,6 +302,7 @@ + return; + } + ++#if 0 + /* Try automatically determined hostname from the best device's IP config */ + if (!best4) + best4 = get_best_ip4_device (policy->manager, &best_req4); +@@ -356,6 +357,7 @@ + } + } + ++#endif + /* If no automatically-configured hostname, try using the hostname from + * when NM started up. + */ diff --git a/testing/networkmanager/dnsmasq-path.patch b/testing/networkmanager/dnsmasq-path.patch new file mode 100644 index 000000000..c0e713266 --- /dev/null +++ b/testing/networkmanager/dnsmasq-path.patch @@ -0,0 +1,30 @@ +diff -u -r NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c +--- NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c 2011-10-10 23:38:20.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c 2012-03-06 09:07:24.137460927 +0100 +@@ -52,8 +52,11 @@ + find_dnsmasq (void) + { + static const char *paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; +diff -u -r NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c +--- NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c 2011-04-19 07:06:22.000000000 +0200 ++++ NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c 2012-03-06 09:07:58.603851818 +0100 +@@ -170,8 +170,11 @@ + nm_find_dnsmasq (void) + { + static const char *dnsmasq_binary_paths[] = { ++ "/usr/local/bin/dnsmasq", + "/usr/local/sbin/dnsmasq", ++ "/usr/bin/dnsmasq", + "/usr/sbin/dnsmasq", ++ "/bin/dnsmasq", + "/sbin/dnsmasq", + NULL + }; diff --git a/testing/networkmanager/networkmanager.install b/testing/networkmanager/networkmanager.install new file mode 100644 index 000000000..de40c17ed --- /dev/null +++ b/testing/networkmanager/networkmanager.install @@ -0,0 +1,9 @@ +post_upgrade() { + (( $(vercmp 0.8.3 $2) > 0 )) && cat <<MSG +ATTENTION: + /etc/NetworkManager/nm-system-settings.conf has been replaced + by /etc/NetworkManager/NetworkManager.conf. Make sure you move + any custom settings to the new config file. +MSG + true +} diff --git a/testing/networkmanager/systemd-fallback.patch b/testing/networkmanager/systemd-fallback.patch new file mode 100644 index 000000000..f5acc9dc6 --- /dev/null +++ b/testing/networkmanager/systemd-fallback.patch @@ -0,0 +1,470 @@ +diff -u -Nr NetworkManager-0.9.3.995/configure.ac NetworkManager-0.9.3.995-systemd-fallback/configure.ac +--- NetworkManager-0.9.3.995/configure.ac 2012-03-02 01:05:21.000000000 +0100 ++++ NetworkManager-0.9.3.995-systemd-fallback/configure.ac 2012-03-06 16:55:58.294793902 +0100 +@@ -344,7 +344,7 @@ + case $with_session_tracking in + ck|none) ;; + systemd) +- PKG_CHECK_MODULES(SYSTEMD, [libsystemd-login]) ++ PKG_CHECK_MODULES(SYSTEMD, [libsystemd-daemon libsystemd-login]) + ;; + *) + AC_MSG_ERROR(--with-session-tracking must be one of [none, ck, systemd]) +diff -u -Nr NetworkManager-0.9.3.995/src/nm-session-monitor-systemd.c NetworkManager-0.9.3.995-systemd-fallback/src/nm-session-monitor-systemd.c +--- NetworkManager-0.9.3.995/src/nm-session-monitor-systemd.c 2012-02-27 16:57:16.000000000 +0100 ++++ NetworkManager-0.9.3.995-systemd-fallback/src/nm-session-monitor-systemd.c 2012-03-06 16:55:01.285264295 +0100 +@@ -28,6 +28,10 @@ + #include <glib/gstdio.h> + #include <systemd/sd-login.h> + #include <stdlib.h> ++#include <systemd/sd-daemon.h> ++#include <sys/stat.h> ++#include <gio/gio.h> ++#include "nm-logging.h" + + #include "nm-session-utils.h" + #include "nm-session-monitor.h" +@@ -107,10 +111,20 @@ + return source; + } + ++/********************************************************************/ ++ ++#define CKDB_PATH "/var/run/ConsoleKit/database" ++ + struct _NMSessionMonitor { + GObject parent_instance; + + GSource *sd_source; ++ ++ GKeyFile *database; ++ GFileMonitor *database_monitor; ++ time_t database_mtime; ++ GHashTable *sessions_by_uid; ++ GHashTable *sessions_by_user; + }; + + struct _NMSessionMonitorClass { +@@ -130,6 +144,215 @@ + + /* ---------------------------------------------------------------------------------------------------- */ + ++typedef struct { ++ char *user; ++ uid_t uid; ++ gboolean local; ++ gboolean active; ++} Session; ++ ++static void ++session_free (Session *s) ++{ ++ g_free (s->user); ++ memset (s, 0, sizeof (Session)); ++ g_free (s); ++} ++ ++static gboolean ++check_key (GKeyFile *keyfile, const char *group, const char *key, GError **error) ++{ ++ if (g_key_file_has_key (keyfile, group, key, error)) ++ return TRUE; ++ ++ if (!error) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_MALFORMED_DATABASE, ++ "ConsoleKit database " CKDB_PATH " group '%s' had no '%s' key", ++ group, key); ++ } ++ return FALSE; ++} ++ ++static Session * ++session_new (GKeyFile *keyfile, const char *group, GError **error) ++{ ++ GError *local = NULL; ++ Session *s; ++ const char *uname = NULL; ++ ++ s = g_new0 (Session, 1); ++ g_assert (s); ++ ++ s->uid = G_MAXUINT; /* paranoia */ ++ if (!check_key (keyfile, group, "uid", &local)) ++ goto error; ++ s->uid = (uid_t) g_key_file_get_integer (keyfile, group, "uid", &local); ++ if (local) ++ goto error; ++ ++ if (!check_key (keyfile, group, "is_active", &local)) ++ goto error; ++ s->active = g_key_file_get_boolean (keyfile, group, "is_active", &local); ++ if (local) ++ goto error; ++ ++ if (!check_key (keyfile, group, "is_local", &local)) ++ goto error; ++ s->local = g_key_file_get_boolean (keyfile, group, "is_local", &local); ++ if (local) ++ goto error; ++ ++ if (!nm_session_uid_to_user (s->uid, &uname, error)) ++ return FALSE; ++ s->user = g_strdup (uname); ++ ++ return s; ++ ++error: ++ session_free (s); ++ g_propagate_error (error, local); ++ return NULL; ++} ++ ++static void ++session_merge (Session *src, Session *dest) ++{ ++ g_return_if_fail (src != NULL); ++ g_return_if_fail (dest != NULL); ++ ++ g_warn_if_fail (g_strcmp0 (src->user, dest->user) == 0); ++ g_warn_if_fail (src->uid == dest->uid); ++ ++ dest->local = (dest->local || src->local); ++ dest->active = (dest->active || src->active); ++} ++ ++/********************************************************************/ ++ ++static void ++free_database (NMSessionMonitor *self) ++{ ++ if (self->database != NULL) { ++ g_key_file_free (self->database); ++ self->database = NULL; ++ } ++ ++ g_hash_table_remove_all (self->sessions_by_uid); ++ g_hash_table_remove_all (self->sessions_by_user); ++} ++ ++static gboolean ++reload_database (NMSessionMonitor *self, GError **error) ++{ ++ struct stat statbuf; ++ char **groups = NULL; ++ gsize len = 0, i; ++ Session *s; ++ ++ free_database (self); ++ ++ errno = 0; ++ if (stat (CKDB_PATH, &statbuf) != 0) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ errno == ENOENT ? NM_SESSION_MONITOR_ERROR_NO_DATABASE : NM_SESSION_MONITOR_ERROR_IO_ERROR, ++ "Error statting file " CKDB_PATH ": %s", ++ strerror (errno)); ++ goto error; ++ } ++ self->database_mtime = statbuf.st_mtime; ++ ++ self->database = g_key_file_new (); ++ if (!g_key_file_load_from_file (self->database, CKDB_PATH, G_KEY_FILE_NONE, error)) ++ goto error; ++ ++ groups = g_key_file_get_groups (self->database, &len); ++ if (!groups) { ++ g_set_error_literal (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_IO_ERROR, ++ "Could not load groups from " CKDB_PATH ""); ++ goto error; ++ } ++ ++ for (i = 0; i < len; i++) { ++ Session *found; ++ ++ if (!g_str_has_prefix (groups[i], "Session ")) ++ continue; ++ ++ s = session_new (self->database, groups[i], error); ++ if (!s) ++ goto error; ++ ++ found = g_hash_table_lookup (self->sessions_by_user, (gpointer) s->user); ++ if (found) { ++ session_merge (s, found); ++ session_free (s); ++ } else { ++ /* Entirely new user */ ++ g_hash_table_insert (self->sessions_by_user, (gpointer) s->user, s); ++ g_hash_table_insert (self->sessions_by_uid, GUINT_TO_POINTER (s->uid), s); ++ } ++ } ++ ++ g_strfreev (groups); ++ return TRUE; ++ ++error: ++ if (groups) ++ g_strfreev (groups); ++ free_database (self); ++ return FALSE; ++} ++ ++static gboolean ++ensure_database (NMSessionMonitor *self, GError **error) ++{ ++ gboolean ret = FALSE; ++ ++ if (self->database != NULL) { ++ struct stat statbuf; ++ ++ errno = 0; ++ if (stat (CKDB_PATH, &statbuf) != 0) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ errno == ENOENT ? NM_SESSION_MONITOR_ERROR_NO_DATABASE : NM_SESSION_MONITOR_ERROR_IO_ERROR, ++ "Error statting file " CKDB_PATH " to check timestamp: %s", ++ strerror (errno)); ++ goto out; ++ } ++ ++ if (statbuf.st_mtime == self->database_mtime) { ++ ret = TRUE; ++ goto out; ++ } ++ } ++ ++ ret = reload_database (self, error); ++ ++out: ++ return ret; ++} ++ ++static void ++on_file_monitor_changed (GFileMonitor * file_monitor, ++ GFile * file, ++ GFile * other_file, ++ GFileMonitorEvent event_type, ++ gpointer user_data) ++{ ++ NMSessionMonitor *self = NM_SESSION_MONITOR (user_data); ++ ++ /* throw away cache */ ++ free_database (self); ++ ++ g_signal_emit (self, signals[CHANGED_SIGNAL], 0); ++} ++ + static gboolean + sessions_changed (gpointer user_data) + { +@@ -143,9 +366,50 @@ + static void + nm_session_monitor_init (NMSessionMonitor *monitor) + { +- monitor->sd_source = sd_source_new (); +- g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); +- g_source_attach (monitor->sd_source, NULL); ++ if (sd_booted () > 0) { ++ monitor->sd_source = sd_source_new (); ++ g_source_set_callback (monitor->sd_source, sessions_changed, monitor, NULL); ++ g_source_attach (monitor->sd_source, NULL); ++ ++ monitor->database_monitor = NULL; ++ monitor->database = NULL; ++ } else { ++ monitor->sd_source = NULL; ++ ++ GError *error = NULL; ++ GFile *file; ++ ++ /* Sessions-by-user is responsible for destroying the Session objects */ ++ monitor->sessions_by_user = g_hash_table_new_full (g_str_hash, g_str_equal, ++ NULL, (GDestroyNotify) session_free); ++ monitor->sessions_by_uid = g_hash_table_new (g_direct_hash, g_direct_equal); ++ ++ ++ error = NULL; ++ if (!ensure_database (monitor, &error)) { ++ /* Ignore the first error if the CK database isn't found yet */ ++ if (g_error_matches (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_NO_DATABASE) == FALSE) { ++ nm_log_err (LOGD_CORE, "Error loading " CKDB_PATH ": %s", error->message); ++ } ++ g_error_free (error); ++ } ++ ++ error = NULL; ++ file = g_file_new_for_path (CKDB_PATH); ++ monitor->database_monitor = g_file_monitor_file (file, G_FILE_MONITOR_NONE, NULL, &error); ++ g_object_unref (file); ++ if (monitor->database_monitor == NULL) { ++ nm_log_err (LOGD_CORE, "Error monitoring " CKDB_PATH ": %s", error->message); ++ g_error_free (error); ++ } else { ++ g_signal_connect (monitor->database_monitor, ++ "changed", ++ G_CALLBACK (on_file_monitor_changed), ++ monitor); ++ } ++ } + } + + static void +@@ -158,6 +422,12 @@ + g_source_unref (monitor->sd_source); + } + ++ if (monitor->database_monitor != NULL) ++ g_object_unref (monitor->database_monitor); ++ ++ if (monitor->database != NULL) ++ free_database (monitor); ++ + if (G_OBJECT_CLASS (nm_session_monitor_parent_class)->finalize != NULL) + G_OBJECT_CLASS (nm_session_monitor_parent_class)->finalize (object); + } +@@ -206,15 +476,36 @@ + uid_t *out_uid, + GError **error) + { +- uid_t uid; ++ if (monitor->sd_source != NULL) { ++ uid_t uid; + +- if (!nm_session_user_to_uid (username, &uid, error)) +- return FALSE; ++ if (!nm_session_user_to_uid (username, &uid, error)) ++ return FALSE; + +- if (out_uid) +- *out_uid = uid; ++ if (out_uid) ++ *out_uid = uid; + +- return nm_session_monitor_uid_has_session (monitor, uid, NULL, error); ++ return nm_session_monitor_uid_has_session (monitor, uid, NULL, error); ++ } else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_user, (gpointer) username); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for user '%s'", ++ username); ++ return FALSE; ++ } ++ ++ if (out_uid) ++ *out_uid = s->uid; ++ return TRUE; ++ } + } + + gboolean +@@ -222,12 +513,31 @@ + const char *username, + GError **error) + { +- uid_t uid; ++ if (monitor->sd_source != NULL) { ++ uid_t uid; + +- if (!nm_session_user_to_uid (username, &uid, error)) +- return FALSE; ++ if (!nm_session_user_to_uid (username, &uid, error)) ++ return FALSE; ++ ++ return nm_session_monitor_uid_active (monitor, uid, error); ++ } else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_user, (gpointer) username); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for user '%s'", ++ username); ++ return FALSE; ++ } + +- return nm_session_monitor_uid_active (monitor, uid, error); ++ return s->active; ++ } + } + + gboolean +@@ -236,10 +546,31 @@ + const char **out_user, + GError **error) + { +- if (!nm_session_uid_to_user (uid, out_user, error)) +- return FALSE; ++ if (monitor->sd_source != NULL) { ++ if (!nm_session_uid_to_user (uid, out_user, error)) ++ return FALSE; + +- return sd_uid_get_sessions (uid, FALSE, NULL) > 0; ++ return sd_uid_get_sessions (uid, FALSE, NULL) > 0; ++ } else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_uid, GUINT_TO_POINTER (uid)); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for uid %d", ++ uid); ++ return FALSE; ++ } ++ ++ if (out_user) ++ *out_user = s->user; ++ return TRUE; ++ } + } + + gboolean +@@ -247,5 +578,24 @@ + uid_t uid, + GError **error) + { +- return sd_uid_get_sessions (uid, TRUE, NULL) > 0; ++ if (monitor->sd_source != NULL) ++ return sd_uid_get_sessions (uid, TRUE, NULL) > 0; ++ else { ++ Session *s; ++ ++ if (!ensure_database (monitor, error)) ++ return FALSE; ++ ++ s = g_hash_table_lookup (monitor->sessions_by_uid, GUINT_TO_POINTER (uid)); ++ if (!s) { ++ g_set_error (error, ++ NM_SESSION_MONITOR_ERROR, ++ NM_SESSION_MONITOR_ERROR_UNKNOWN_USER, ++ "No session found for uid '%d'", ++ uid); ++ return FALSE; ++ } ++ ++ return s->active; ++ } + } diff --git a/testing/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch b/testing/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch new file mode 100644 index 000000000..1404460df --- /dev/null +++ b/testing/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch @@ -0,0 +1,83 @@ +From bb249b0b26c2e79a6f55355ef94889070f07fd21 Mon Sep 17 00:00:00 2001 +From: Niko Tyni <ntyni@debian.org> +Date: Thu, 28 Apr 2011 09:18:54 +0300 +Subject: [PATCH] Append CFLAGS and LDFLAGS to their Config.pm counterparts in + EU::CBuilder + +Since ExtUtils::CBuilder 0.27_04 (bleadperl commit 06e8058f27e4), +CFLAGS and LDFLAGS from the environment have overridden the Config.pm +ccflags and ldflags settings. This can cause binary incompatibilities +between the core Perl and extensions built with EU::CBuilder. + +Append to the Config.pm values rather than overriding them. +--- + .../lib/ExtUtils/CBuilder/Base.pm | 6 +++- + dist/ExtUtils-CBuilder/t/04-base.t | 25 +++++++++++++++++++- + 2 files changed, 28 insertions(+), 3 deletions(-) + +diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm +index b572312..2255c51 100644 +--- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm ++++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm +@@ -40,11 +40,13 @@ sub new { + $self->{config}{$k} = $v unless exists $self->{config}{$k}; + } + $self->{config}{cc} = $ENV{CC} if defined $ENV{CC}; +- $self->{config}{ccflags} = $ENV{CFLAGS} if defined $ENV{CFLAGS}; ++ $self->{config}{ccflags} = join(" ", $self->{config}{ccflags}, $ENV{CFLAGS}) ++ if defined $ENV{CFLAGS}; + $self->{config}{cxx} = $ENV{CXX} if defined $ENV{CXX}; + $self->{config}{cxxflags} = $ENV{CXXFLAGS} if defined $ENV{CXXFLAGS}; + $self->{config}{ld} = $ENV{LD} if defined $ENV{LD}; +- $self->{config}{ldflags} = $ENV{LDFLAGS} if defined $ENV{LDFLAGS}; ++ $self->{config}{ldflags} = join(" ", $self->{config}{ldflags}, $ENV{LDFLAGS}) ++ if defined $ENV{LDFLAGS}; + + unless ( exists $self->{config}{cxx} ) { + my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/); +diff --git a/dist/ExtUtils-CBuilder/t/04-base.t b/dist/ExtUtils-CBuilder/t/04-base.t +index c3bf6b5..1bb15aa 100644 +--- a/dist/ExtUtils-CBuilder/t/04-base.t ++++ b/dist/ExtUtils-CBuilder/t/04-base.t +@@ -1,7 +1,7 @@ + #! perl -w + + use strict; +-use Test::More tests => 50; ++use Test::More tests => 64; + use Config; + use Cwd; + use File::Path qw( mkpath ); +@@ -326,6 +326,29 @@ is_deeply( $mksymlists_args, + "_prepare_mksymlists_args(): got expected arguments for Mksymlists", + ); + ++my %testvars = ( ++ CFLAGS => 'ccflags', ++ LDFLAGS => 'ldflags', ++); ++ ++while (my ($VAR, $var) = each %testvars) { ++ local $ENV{$VAR}; ++ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); ++ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); ++ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); ++ like($base->{config}{$var}, qr/\Q$Config{$var}/, ++ "honours $var from Config.pm"); ++ ++ $ENV{$VAR} = "-foo -bar"; ++ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); ++ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); ++ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); ++ like($base->{config}{$var}, qr/\Q$ENV{$VAR}/, ++ "honours $VAR from the environment"); ++ like($base->{config}{$var}, qr/\Q$Config{$var}/, ++ "doesn't override $var from Config.pm with $VAR from the environment"); ++} ++ + ##### + + for ($source_file, $object_file, $lib_file) { +-- +1.7.4.4 + diff --git a/testing/perl/ChangeLog b/testing/perl/ChangeLog new file mode 100644 index 000000000..9add39e20 --- /dev/null +++ b/testing/perl/ChangeLog @@ -0,0 +1,66 @@ +2011-06-22 Angel Velasquez <angvp@archlinux.org> + * Added a patch for ExtUtils doesnt overwrite CFLAGS and LDFLAGS + * Fixed #FS22197, FS#22441, FS#24767 + * Rebuilt perl 5.14.1-2 against db 5.2.28 + +2011-06-16 Angel Velasquez <angvp@archlinux.org> + * Fixed #FS24660 + * Rebuilt against db 5.2.28 + +2011-05-16 Angel Velasquez <angvp@archlinux.org> + * perl 5.14.0 + * Removed patch for h2ph warning from 5.12.3 + * Removed provides array, you can use corelist -v 5.14.0 to know the + modules included with the perl core, through Module::CoreList (thx j3nnn1 + for the tip) + +2010-11-07 kevin <kevin@archlinux.org> + + * perl 5.12.2-1 + - Using /usr/bin/*_perl for script directories + +2010-11-06 kevin <kevin@archlinux.org> + + - Removed otherlibdirs directive from Configure + - Removed /usr/*/perl5/site_perl/5.10.1 from INC + - Finally removed legacy dirs /usr/lib/perl5/current and + /usr/lib/perl5/site_perl/current from @INC + +2010-05-23 kevin <kevin@archlinux.org> + + * perl 5.12.1-2 + - Francois updated the provides array. + +2010-05-23 kevin <kevin@archlinux.org> + + * perl 5.12.1-1 + +2010-05-16 kevin <kevin@archlinux.org> + + * perl 5.12.0-2 + +2010-05-12 kevin <kevin@archlinux.org> + + - FS#19411. Removed the for loop in perlbin.sh which didn't work on zsh. + This makes the loop variables unnecessary so the script no longer + pollutes the user's environment. + - FS#19427. Added /usr/*/perl5/site_perl/5.10.1 to otherlibdirs to support + user built modules. + +2010-05-09 kevin <kevin@archlinux.org> + + * perl 5.12.0-1 + - Modified perlbin.sh to only add existing dirs to PATH. Fixes FS#17402, + path points to non-existant directories + +2010-05-07 kevin <kevin@archlinux.org> + + - Added this changelog. + - Added -Dinc_version_list=none to fix FS#19136, double entry in @INC. + This removes the duplicates and versioned directory entries. + - Change scriptdirs to /usr/lib/perl5/{core,vendor,site}_perl/bin to fix + Fix FS#13808, binaries don't follow FHS. + - Stopped using versioned directories in sitelib and sitearch. + + +# vim: set ft=changelog ts=4 sw=4 et: diff --git a/testing/perl/PKGBUILD b/testing/perl/PKGBUILD new file mode 100644 index 000000000..f5f8fa311 --- /dev/null +++ b/testing/perl/PKGBUILD @@ -0,0 +1,116 @@ +# $Id: PKGBUILD 165042 2012-08-09 14:58:00Z bluewind $ +# Maintainer: Angel Velasquez <angvp@archlinux.org> +# Contributor: kevin <kevin.archlinux.org> +# Contributor: judd <jvinet.zeroflux.org> +# Contributor: francois <francois.archlinux.org> +pkgname=perl +pkgver=5.16.1 +pkgrel=1 +pkgdesc="A highly capable, feature-rich programming language" +arch=(i686 x86_64) +license=('GPL' 'PerlArtistic') +url="http://www.perl.org" +groups=('base') +depends=('gdbm' 'db' 'coreutils' 'glibc' 'sh') +changelog=ChangeLog +source=(http://www.cpan.org/src/5.0/perl-${pkgver}.tar.bz2 +perlbin.sh +perlbin.csh +provides.pl) +install=perl.install +options=('makeflags' '!purge') +md5sums=('b87358e2c461a898cfd7c334e7dd8993' + '5ed2542fdb9a60682f215bd33701e61a' + '1f0cbbee783e8a6d32f01be5118e0d5e' + '999c3eea6464860704abbb055a0f0896') + +# workaround to let the integrity check find the correct provides array +if [[ ${0##*/} = "parse_pkgbuilds.sh" ]]; then + true && provides=($(bsdtar -q -O -xf "/srv/ftp/pool/packages/$pkgname-$pkgver-$pkgrel-$CARCH.pkg.tar.xz" .PKGINFO | sed -rn 's#^provides = (.*)#\1#p')) +fi + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + if [ "${CARCH}" = "x86_64" ]; then + # for x86_64 + arch_opts="-Dcccdlflags='-fPIC'" + else + # for i686 + arch_opts="" + fi + + ./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \ + -Dprefix=/usr -Dinstallprefix=${pkgdir}/usr -Dvendorprefix=/usr \ + -Dprivlib=/usr/share/perl5/core_perl \ + -Darchlib=/usr/lib/perl5/core_perl \ + -Dsitelib=/usr/share/perl5/site_perl \ + -Dsitearch=/usr/lib/perl5/site_perl \ + -Dvendorlib=/usr/share/perl5/vendor_perl \ + -Dvendorarch=/usr/lib/perl5/vendor_perl \ + -Dscriptdir=/usr/bin/core_perl \ + -Dsitescript=/usr/bin/site_perl \ + -Dvendorscript=/usr/bin/vendor_perl \ + -Dinc_version_list=none \ + -Dman1ext=1perl -Dman3ext=3perl ${arch_opts} \ + -Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}" + make +} + +check() { + cd ${srcdir}/${pkgname}-${pkgver} + TEST_JOBS=$(echo $MAKEFLAGS | sed 's/.*-j\([0-9][0-9]*\).*/\1/') make test_harness +# make test +} + +package() { + # hack to work around makepkg running the subshell in check_sanity() + new_provides=($(cd "$srcdir/perl-$pkgver"; LD_PRELOAD=./libperl.so ./perl -Ilib "$srcdir/provides.pl" .)) + provides=(${new_provides[@]}) + + cd ${srcdir}/${pkgname}-${pkgver} + make install + + ### Perl Settings ### + # Change man page extensions for site and vendor module builds. + # Use archlinux email address instead of my own. + sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \ + -e "/^cf_email=/ s/'.*'/'kevin@archlinux.org'/" \ + -e "/^perladmin=/ s/'.*'/'kevin@archlinux.org'/" \ + -i ${pkgdir}/usr/lib/perl5/core_perl/Config_heavy.pl + + ### CPAN Settings ### + # Set CPAN default config to use the site directories. + sed -e '/(makepl_arg =>/ s/""/"INSTALLDIRS=site"/' \ + -e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \ + -i ${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm + + ### CPANPLUS Settings ### + # Set CPANPLUS default config to use the site directories. + sed -e "/{'makemakerflags'}/ s/'';/'INSTALLDIRS=site';/" \ + -e "/{'buildflags'}/ s/'';/'installdirs=site';/" \ + -i ${pkgdir}/usr/share/perl5/core_perl/CPANPLUS/Config.pm + + # Profile script to set paths to perl scripts. + install -D -m755 ${srcdir}/perlbin.sh \ + ${pkgdir}/etc/profile.d/perlbin.sh + # Profile script to set paths to perl scripts on csh. (FS#22441) + install -D -m755 ${srcdir}/perlbin.csh \ + ${pkgdir}/etc/profile.d/perlbin.csh + + (cd ${pkgdir}/usr/bin; mv perl${pkgver} perl) + (cd ${pkgdir}/usr/bin/core_perl; ln -sf c2ph pstruct; ln -sf s2p psed) + grep -Rl "${pkgdir}" ${pkgdir}/usr | \ + xargs sed -i "s^${pkgdir}^^g" + + # Remove all pod files *except* those under /usr/share/perl5/core_perl/pod/ + # (FS#16488) + rm -f $pkgdir/usr/share/perl5/core_perl/*.pod + for d in $pkgdir/usr/share/perl5/core_perl/*; do + if [ -d $d -a $(basename $d) != "pod" ]; then + find $d -name *.pod -delete + fi + done + find $pkgdir/usr/lib -name *.pod -delete + find $pkgdir -name .packlist -delete +} diff --git a/testing/perl/digest_eval_hole.diff b/testing/perl/digest_eval_hole.diff new file mode 100644 index 000000000..47904137b --- /dev/null +++ b/testing/perl/digest_eval_hole.diff @@ -0,0 +1,61 @@ +From 4b6a7324284e7435a361c58f7ddb32fc0c635bd0 Mon Sep 17 00:00:00 2001 +From: "Michael G. Schwern" <schwern@pobox.com> +Date: Mon, 3 Oct 2011 19:05:29 +0100 +Subject: Close the eval "require $module" security hole in + Digest->new($algorithm) + +Also the filter was incomplete. + +Bug-Debian: http://bugs.debian.org/644108 + +Patch-Name: fixes/digest_eval_hole.diff +--- + cpan/Digest/Digest.pm | 6 ++++-- + cpan/Digest/t/security.t | 14 ++++++++++++++ + 2 files changed, 18 insertions(+), 2 deletions(-) + create mode 100644 cpan/Digest/t/security.t + +diff --git a/cpan/Digest/Digest.pm b/cpan/Digest/Digest.pm +index 384dfc8..d714434 100644 +--- a/cpan/Digest/Digest.pm ++++ b/cpan/Digest/Digest.pm +@@ -24,7 +24,7 @@ sub new + shift; # class ignored + my $algorithm = shift; + my $impl = $MMAP{$algorithm} || do { +- $algorithm =~ s/\W+//; ++ $algorithm =~ s/\W+//g; + "Digest::$algorithm"; + }; + $impl = [$impl] unless ref($impl); +@@ -35,7 +35,9 @@ sub new + ($class, @args) = @$class if ref($class); + no strict 'refs'; + unless (exists ${"$class\::"}{"VERSION"}) { +- eval "require $class"; ++ my $pm_file = $class . ".pm"; ++ $pm_file =~ s{::}{/}g; ++ eval { require $pm_file }; + if ($@) { + $err ||= $@; + next; +diff --git a/cpan/Digest/t/security.t b/cpan/Digest/t/security.t +new file mode 100644 +index 0000000..5cba122 +--- /dev/null ++++ b/cpan/Digest/t/security.t +@@ -0,0 +1,14 @@ ++#!/usr/bin/env perl ++ ++# Digest->new() had an exploitable eval ++ ++use strict; ++use warnings; ++ ++use Test::More tests => 1; ++ ++use Digest; ++ ++$LOL::PWNED = 0; ++eval { Digest->new(q[MD;5;$LOL::PWNED = 42]) }; ++is $LOL::PWNED, 0; diff --git a/testing/perl/fix-h2ph-and-tests.patch b/testing/perl/fix-h2ph-and-tests.patch new file mode 100644 index 000000000..a2d176ec6 --- /dev/null +++ b/testing/perl/fix-h2ph-and-tests.patch @@ -0,0 +1,104 @@ +From 8d66b3f930dc6d88b524d103e304308ae73a46e7 Mon Sep 17 00:00:00 2001 +From: Robin Barker <rmbarker@cpan.org> +Date: Thu, 22 Apr 2010 11:51:20 +0100 +Subject: [PATCH 1/1] Fix h2ph and test + +--- + lib/h2ph.t | 12 ++++++++++-- + utils/h2ph.PL | 28 +++++++++++++++++++++++----- + 2 files changed, 33 insertions(+), 7 deletions(-) + +diff --git a/lib/h2ph.t b/lib/h2ph.t +index 27dd7b9..8d62d46 100644 +--- a/lib/h2ph.t ++++ b/lib/h2ph.t +@@ -18,7 +18,7 @@ if (!(-e $extracted_program)) { + exit 0; + } + +-plan(4); ++plan(5); + + # quickly compare two text files + sub txt_compare { +@@ -41,8 +41,16 @@ $result = runperl( progfile => 'lib/h2ph.pht', + stderr => 1 ); + like( $result, qr/syntax OK$/, "output compiles"); + ++$result = runperl( progfile => '_h2ph_pre.ph', ++ switches => ['-c'], ++ stderr => 1 ); ++like( $result, qr/syntax OK$/, "preamble compiles"); ++ + $result = runperl( switches => ["-w"], +- prog => '$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);'); ++ stderr => 1, ++ prog => <<'PROG' ); ++$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht); ++PROG + is( $result, '', "output free of warnings" ); + + # cleanup +diff --git a/utils/h2ph.PL b/utils/h2ph.PL +index 8f56db4..1255807 100644 +--- a/utils/h2ph.PL ++++ b/utils/h2ph.PL +@@ -401,7 +401,10 @@ if ($opt_e && (scalar(keys %bad_file) > 0)) { + exit $Exit; + + sub expr { +- $new = '"(assembly code)"' and return if /\b__asm__\b/; # freak out. ++ if (/\b__asm__\b/) { # freak out ++ $new = '"(assembly code)"'; ++ return ++ } + my $joined_args; + if(keys(%curargs)) { + $joined_args = join('|', keys(%curargs)); +@@ -770,7 +773,7 @@ sub inc_dirs + sub build_preamble_if_necessary + { + # Increment $VERSION every time this function is modified: +- my $VERSION = 2; ++ my $VERSION = 3; + my $preamble = "$Dest_dir/_h2ph_pre.ph"; + + # Can we skip building the preamble file? +@@ -798,7 +801,16 @@ sub build_preamble_if_necessary + # parenthesized value: d=(v) + $define{$_} = $1; + } +- if ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { ++ if (/^(\w+)\((\w)\)$/) { ++ my($macro, $arg) = ($1, $2); ++ my $def = $define{$_}; ++ $def =~ s/$arg/\$\{$arg\}/g; ++ print PREAMBLE <<DEFINE; ++unless (defined &$macro) { sub $macro(\$) { my (\$$arg) = \@_; \"$def\" } } ++ ++DEFINE ++ } elsif ++ ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { + # float: + print PREAMBLE + "unless (defined &$_) { sub $_() { $1 } }\n\n"; +@@ -807,8 +819,14 @@ sub build_preamble_if_necessary + print PREAMBLE + "unless (defined &$_) { sub $_() { $1 } }\n\n"; + } elsif ($define{$_} =~ /^\w+$/) { +- print PREAMBLE +- "unless (defined &$_) { sub $_() { &$define{$_} } }\n\n"; ++ my $def = $define{$_}; ++ if ($isatype{$def}) { ++ print PREAMBLE ++ "unless (defined &$_) { sub $_() { \"$def\" } }\n\n"; ++ } else { ++ print PREAMBLE ++ "unless (defined &$_) { sub $_() { &$def } }\n\n"; ++ } + } else { + print PREAMBLE + "unless (defined &$_) { sub $_() { \"", +-- +1.6.5.2.74.g610f9.dirty + diff --git a/testing/perl/perl.install b/testing/perl/perl.install new file mode 100644 index 000000000..a355c5bbe --- /dev/null +++ b/testing/perl/perl.install @@ -0,0 +1,10 @@ +# arg 1: the new package version +post_install() { + for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do + [ -h usr/lib/perl5/$ver ] && rm usr/lib/perl5/$ver + [ -h usr/lib/perl5/site_perl/$ver ] && rm usr/lib/perl5/site_perl/$ver + [ -h usr/bin/perl$ver ] && rm usr/bin/perl$ver + done + return 0 +} + diff --git a/testing/perl/perlbin.csh b/testing/perl/perlbin.csh new file mode 100644 index 000000000..535f0b18d --- /dev/null +++ b/testing/perl/perlbin.csh @@ -0,0 +1,15 @@ +# Set path to perl scriptdirs if they exist +# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts +# Added /usr/bin/*_perl dirs for scripts +# Remove /usr/lib/perl5/*_perl/bin in next release + +[ -d /usr/bin/site_perl ] && setenv PATH ${PATH}:/usr/bin/site_perl +[ -d /usr/lib/perl5/site_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/site_perl/bin + +[ -d /usr/bin/vendor_perl ] && setenv PATH ${PATH}:/usr/bin/vendor_perl +[ -d /usr/lib/perl5/vendor_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/vendor_perl/bin + +[ -d /usr/bin/core_perl ] && setenv PATH ${PATH}:/usr/bin/core_perl + +# If you have modules in non-standard directories you can add them here. +#export PERLLIB=dir1:dir2 diff --git a/testing/perl/perlbin.sh b/testing/perl/perlbin.sh new file mode 100755 index 000000000..20f830436 --- /dev/null +++ b/testing/perl/perlbin.sh @@ -0,0 +1,18 @@ +# Set path to perl scriptdirs if they exist +# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts +# Added /usr/bin/*_perl dirs for scripts +# Remove /usr/lib/perl5/*_perl/bin in next release + +[ -d /usr/bin/site_perl ] && PATH=$PATH:/usr/bin/site_perl +[ -d /usr/lib/perl5/site_perl/bin ] && PATH=$PATH:/usr/lib/perl5/site_perl/bin + +[ -d /usr/bin/vendor_perl ] && PATH=$PATH:/usr/bin/vendor_perl +[ -d /usr/lib/perl5/vendor_perl/bin ] && PATH=$PATH:/usr/lib/perl5/vendor_perl/bin + +[ -d /usr/bin/core_perl ] && PATH=$PATH:/usr/bin/core_perl + +export PATH + +# If you have modules in non-standard directories you can add them here. +#export PERLLIB=dir1:dir2 + diff --git a/testing/perl/provides.pl b/testing/perl/provides.pl new file mode 100644 index 000000000..d2cdc762e --- /dev/null +++ b/testing/perl/provides.pl @@ -0,0 +1,299 @@ +# provides.pl +## +# Script for printing out a provides list of every CPAN distribution +# that is bundled with perl. You can run it before building perl +# or you can run it after building perl. Required modules are in core +# for perl 5.13 and above. It might be nice if this didn't require +# HTTP::Tiny and maybe just used wget or curl. +# +# This script uses HTTP::Tiny to query Tatsuhiko Miyagawa's webapp at +# cpanmetadb.plackperl.org to cross-reference module files to their +# providing CPAN distribution. Thank you Miyagawa! +# +# - Justin "juster" Davis <jrcd83@gmail.com> + +use warnings 'FATAL' => 'all'; +use strict; + +package Common; + +sub evalver +{ + my ($path, $mod) = @_; + + open my $fh, '<', $path or die "open $path: $!"; + + my $m = ($mod + ? qr/(?:\$${mod}::VERSION|\$VERSION)/ + : qr/\$VERSION/); + + while (my $ln = <$fh>) { + next unless $ln =~ /\s*$m\s*=\s*.+/; + chomp $ln; + my $ver = do { no strict; eval $ln }; + return $ver unless $@; + die qq{$path:$. bad version string in "$ln"\n}; + } + + close $fh; + return undef; +} + + +#----------------------------------------------------------------------------- + +package Dists; + +sub maindistfile +{ + my ($dist, $dir) = @_; + + # libpath is the modern style, installing modules under lib/ + # with dirs matching the name components. + my $libpath = join q{/}, 'lib', split /-/, "${dist}.pm"; + + # dumbpath is an old style where there's no subdirs and just + # a .pm file. + my $dumbpath = $dist; + $dumbpath =~ s/\A.+-//; + $dumbpath .= ".pm"; + + my @paths = ($libpath, $dumbpath); + # Some modules (with simple names like XSLoader, lib, etc) are + # generated by Makefile.PL. Search through their generating code. + push @paths, "${dist}_pm.PL" if $dist =~ tr/-/-/ == 0; + + for my $path (map { "$dir/$_" } @paths) { return $path if -f $path; } + return undef; +} + +sub module_ver +{ + my ($dist, $dir) = @_; + + my $path = maindistfile($dist, $dir) or return undef; + + my $mod = $dist; + $mod =~ s/-/::/g; + my $ver = Common::evalver($path, $mod); + unless ($ver) { + warn "failed to find version in module file for $dist\n"; + return undef; + } + + return $ver; +} + +sub changelog_ver +{ + my ($dist, $dir) = @_; + + my $path; + for my $tmp (glob "$dir/{Changes,ChangeLog}") { + if (-f $tmp) { $path = $tmp; last; } + } + return undef unless $path; + + open my $fh, '<', $path or die "open: $!"; + while (<$fh>) { + return $1 if /\A\s*(?:$dist[ \t]*)?([0-9._]+)/; + return $1 if /\A\s*version\s+([0-9._]+)/i; + } + close $fh; + + return undef; +} + +# for some reason podlators has a VERSION file with perl code in it +sub verfile_ver +{ + my ($dist, $dir) = @_; + + my $path = "$dir/VERSION"; + return undef unless -f $path; # no warning, only podlaters has it + + return Common::evalver($path); +} + +# scans a directory full of nicely separated dist. directories. +sub scan_distroot +{ + my ($distroot) = @_; + opendir my $cpand, "$distroot" or die "failed to open $distroot"; + my @dists = grep { !/^\./ && -d "$distroot/$_" } readdir $cpand; + closedir $cpand; + + my @found; + for my $dist (@dists) { + my $distdir = "$distroot/$dist"; + my $ver = (module_ver($dist, $distdir) + || changelog_ver($dist, $distdir) + || verfile_ver($dist, $distdir)); + + if ($ver) { push @found, [ $dist, $ver ]; } + else { warn "failed to find version for $dist\n"; } + } + return @found; +} + +sub find +{ + my ($srcdir) = @_; + return map { scan_distroot($_) } glob "$srcdir/{cpan,dist}"; +} + +#----------------------------------------------------------------------------- + +package Modules; + +use HTTP::Tiny qw(); +use File::Find qw(); +use File::stat; + +*findfile = *File::Find::find; + +sub cpan_provider +{ + my ($module) = @_; + my $url = "http://cpanmetadb.plackperl.org/v1.0/package/$module"; + my $http = HTTP::Tiny->new; + my $resp = $http->get($url); + return undef unless $resp->{'success'}; + + my ($cpanpath) = $resp->{'content'} =~ /^distfile: (.*)$/m + or return undef; + + my $dist = $cpanpath; + $dist =~ s{\A.+/}{}; # remove author directory + $dist =~ s{-[^-]+\z}{}; # remove version and extension + return ($dist eq 'perl' ? undef : $dist); +} + +sub find +{ + my ($srcdir) = @_; + my $libdir = "$srcdir/lib/"; + die "failed to find $libdir directory" unless -d $libdir; + + # Find only the module files that have not changed since perl + # was extracted. We don't want the files perl just recently + # installed into lib/. We processed those already. + my @modfiles; + my $finder = sub { + return unless /[.]pm\z/; + return if m{\Q$libdir\E[^/]+/t/}; # ignore testing modules + push @modfiles, $_; + }; + findfile({ 'no_chdir' => 1, 'wanted' => $finder }, $libdir); + + # First we have to find what the oldest ctime actually is. + my $oldest = time; + @modfiles = map { + my $modfile = $_; + my $ctime = (stat $modfile)->ctime; + $oldest = $ctime if $ctime < $oldest; + [ $modfile, $ctime ]; # save ctime for later + } @modfiles; + + # Then we filter out any file that was created more than a + # few seconds after that. Process the rest. + my @mods; + for my $modfile (@modfiles) { + my ($mod, $ctime) = @$modfile; + next if $ctime - $oldest > 5; # ignore newer files + + my $path = $mod; + $mod =~ s{[.]pm\z}{}; + $mod =~ s{\A$libdir}{}; + $mod =~ s{/}{::}g; + + my $ver = Common::evalver($path, $mod) || q{}; + push @mods, [ $mod, $ver ]; + } + + # Convert modules names to the dist names who provide them. + my %seen; + my @dists; + for my $modref (@mods) { + my ($mod, $ver) = @$modref; + my $dist = cpan_provider($mod) or next; # filter out core modules + next if $seen{$dist}++; # avoid duplicate dists + push @dists, [ $dist, $ver ]; + } + return @dists; +} + +#----------------------------------------------------------------------------- + +package Dist2Pkg; + +sub name +{ + my ($name) = @_; + my $orig = $name; + + # Package names should be lowercase and consist of alphanumeric + # characters only (and hyphens!)... + $name =~ tr/A-Z/a-z/; + $name =~ tr/_+/-/; # _ and +'s converted to - (ie Tabbed-Text+Wrap) + $name =~ tr/-a-z0-9+//cd; # Delete all other chars. + $name =~ tr/-/-/s; + + # Delete leading or trailing hyphens... + $name =~ s/\A-|-\z//g; + + die qq{Dist. name '$orig' completely violates packaging standards} + unless $name; + + return "perl-$name"; +} + +sub version +{ + my ($version) = @_; + + # Package versions should be numbers and decimal points only... + $version =~ tr/-/./; + $version =~ tr/_0-9.-//cd; + + # Remove developer versions because pacman has no special logic + # to compare them to regular versions like perl does. + $version =~ s/_[^_]+\z//; + + $version =~ tr/_//d; # delete other underscores + $version =~ tr/././s; # only one period at a time + $version =~ s/\A[.]|[.]\z//g; # shouldn't start or stop with a period + + return $version; +} + +#----------------------------------------------------------------------------- + +package main; + +my %CPANNAME = ('List-Util' => 'Scalar-List-Utils', + 'Text-Tabs' => 'Text-Tabs+Wrap', + 'Cwd' => 'PathTools'); + +my $perldir = shift or die "Usage: $0 [path to perl source directory]\n"; +die "$perldir is not a valid directory." unless -d $perldir; + +my @dists = (Dists::find($perldir), Modules::find($perldir)); +for my $dist (@dists) { + my $name = $dist->[0]; + $dist->[0] = $CPANNAME{$name} if exists $CPANNAME{$name}; +} + +my @pkgs = map { + my ($name, $ver) = @$_; + $name = Dist2Pkg::name($name); + $ver = Dist2Pkg::version($ver); + [ $name, $ver ]; +} @dists; + +@pkgs = sort { $a->[0] cmp $b->[0] } @pkgs; + +for my $pkg (@pkgs) { + my ($name, $ver) = @$pkg; + print "$name=$ver\n"; +} diff --git a/testing/systemd/0001-shutdown-recursively-mark-root-as-private-before-piv.patch b/testing/systemd/0001-shutdown-recursively-mark-root-as-private-before-piv.patch new file mode 100644 index 000000000..5c6085c95 --- /dev/null +++ b/testing/systemd/0001-shutdown-recursively-mark-root-as-private-before-piv.patch @@ -0,0 +1,31 @@ +From 4bfa638d43c05e8db052cd55818765bb3575a405 Mon Sep 17 00:00:00 2001 +From: Dave Reisner <dreisner@archlinux.org> +Date: Fri, 10 Aug 2012 11:02:03 -0400 +Subject: [PATCH] shutdown: recursively mark root as private before pivot + +Because root is now recursively marked as shared on bootup, we need to +recursively mark root as private. This prevents a pivot_root failure on +shutdown: + + Cannot finalize remaining file systems and devices, giving up. + pivot failed: Invalid argument +--- + src/core/shutdown.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/core/shutdown.c b/src/core/shutdown.c +index 105a604..0b7cbd8 100644 +--- a/src/core/shutdown.c ++++ b/src/core/shutdown.c +@@ -109,7 +109,7 @@ static int pivot_to_new_root(void) { + It works for pivot_root, but the ref count for the root device + is not decreasing :-/ + */ +- if (mount(NULL, "/", NULL, MS_PRIVATE, NULL) < 0) { ++ if (mount(NULL, "/", NULL, MS_REC|MS_PRIVATE, NULL) < 0) { + log_error("Failed to make \"/\" private mount %m"); + return -errno; + } +-- +1.7.11.4 + diff --git a/testing/systemd/0001-systemctl-fix-issue-with-systemctl-daemon-reexec.patch b/testing/systemd/0001-systemctl-fix-issue-with-systemctl-daemon-reexec.patch new file mode 100644 index 000000000..3aec94edc --- /dev/null +++ b/testing/systemd/0001-systemctl-fix-issue-with-systemctl-daemon-reexec.patch @@ -0,0 +1,73 @@ +From c516c8d17f77a1c761447f4c40c8dfffeda2e06d Mon Sep 17 00:00:00 2001 +From: Simon Peeters <peeters.simon@gmail.com> +Date: Fri, 10 Aug 2012 17:32:19 +0200 +Subject: [PATCH] systemctl: fix issue with systemctl daemon-reexec + +--- + src/shared/dbus-common.c | 3 ++- + src/systemctl/systemctl.c | 11 ++++++++--- + 2 files changed, 10 insertions(+), 4 deletions(-) + +diff --git a/src/shared/dbus-common.c b/src/shared/dbus-common.c +index 7f0dce5..da2dc2e 100644 +--- a/src/shared/dbus-common.c ++++ b/src/shared/dbus-common.c +@@ -1287,7 +1287,8 @@ int bus_method_call_with_reply(DBusConnection *bus, + reply = dbus_connection_send_with_reply_and_block(bus, m, -1, &error); + dbus_message_unref(m); + if (!reply) { +- log_error("Failed to issue method call: %s", bus_error_message(&error)); ++ if (!return_error) ++ log_error("Failed to issue method call: %s", bus_error_message(&error)); + if (bus_error_is_no_service(&error)) + r = -ENOENT; + else if (dbus_error_has_name(&error, DBUS_ERROR_ACCESS_DENIED)) +diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c +index 2e0aaaa..13e0f91 100644 +--- a/src/systemctl/systemctl.c ++++ b/src/systemctl/systemctl.c +@@ -1537,11 +1537,12 @@ static int start_unit_one( + DBUS_TYPE_INVALID); + free(n); + if (r) { +- if (r == -ENOENT && arg_action != ACTION_SYSTEMCTL ) { ++ if (r == -ENOENT && arg_action != ACTION_SYSTEMCTL ) + /* There's always a fallback possible for + * legacy actions. */ + r = -EADDRNOTAVAIL; +- } ++ else ++ log_error("Failed to issue method call: %s", bus_error_message(error)); + goto finish; + } + +@@ -3143,6 +3144,7 @@ finish: + static int daemon_reload(DBusConnection *bus, char **args) { + int r; + const char *method; ++ DBusError error; + + if (arg_action == ACTION_RELOAD) + method = "Reload"; +@@ -3171,7 +3173,7 @@ static int daemon_reload(DBusConnection *bus, char **args) { + "org.freedesktop.systemd1.Manager", + method, + NULL, +- NULL, ++ &error, + DBUS_TYPE_INVALID); + + if (r == -ENOENT && arg_action != ACTION_SYSTEMCTL) +@@ -3182,6 +3184,9 @@ static int daemon_reload(DBusConnection *bus, char **args) { + /* On reexecution, we expect a disconnect, not + * a reply */ + r = 0; ++ else if (r) ++ log_error("Failed to issue method call: %s", bus_error_message(&error)); ++ dbus_error_free(&error); + + return r; + } +-- +1.7.11.4 + diff --git a/testing/xorg-server/10-quirks.conf b/testing/xorg-server/10-quirks.conf new file mode 100644 index 000000000..7afad22dc --- /dev/null +++ b/testing/xorg-server/10-quirks.conf @@ -0,0 +1,10 @@ +# Collection of quirks and blacklist/whitelists for specific devices. + + +# Accelerometer device, posts data through ABS_X/ABS_Y, making X unusable +# http://bugs.freedesktop.org/show_bug.cgi?id=22442 +Section "InputClass" + Identifier "ThinkPad HDAPS accelerometer blacklist" + MatchProduct "ThinkPad HDAPS accelerometer data" + Option "Ignore" "on" +EndSection diff --git a/testing/xorg-server/PKGBUILD b/testing/xorg-server/PKGBUILD new file mode 100644 index 000000000..d58b4682b --- /dev/null +++ b/testing/xorg-server/PKGBUILD @@ -0,0 +1,190 @@ +# $Id: PKGBUILD 165036 2012-08-09 10:16:20Z jgc $ +# Maintainer: Jan de Groot <jgc@archlinux.org> + +pkgbase=xorg-server +pkgname=('xorg-server' 'xorg-server-xephyr' 'xorg-server-xdmx' 'xorg-server-xvfb' 'xorg-server-xnest' 'xorg-server-common' 'xorg-server-devel') +pkgver=1.12.3.901 +pkgrel=1 +arch=('i686' 'x86_64') +license=('custom') +url="http://xorg.freedesktop.org" +makedepends=('pixman' 'libx11' 'mesa' 'libgl' 'xf86driproto' 'xcmiscproto' 'xtrans' 'bigreqsproto' 'randrproto' 'inputproto' 'fontsproto' 'videoproto' + 'compositeproto' 'recordproto' 'scrnsaverproto' 'resourceproto' 'xineramaproto' 'libxkbfile' 'libxfont' 'renderproto' 'libpciaccess' + 'libxv' 'xf86dgaproto' 'libxmu' 'libxrender' 'libxi' 'dmxproto' 'libxaw' 'libdmx' 'libxtst' 'libxres' 'xorg-xkbcomp' 'xorg-util-macros' + 'xorg-font-util' 'glproto' 'dri2proto' 'udev>=183' 'libgcrypt') +options=('!libtool') +source=(${url}/releases/individual/xserver/${pkgbase}-${pkgver}.tar.bz2 + autoconfig-nvidia.patch + autoconfig-sis.patch + xvfb-run + xvfb-run.1 + 10-quirks.conf) +sha256sums=('5265cfe935e2ad54a287dd3026917c6bfe6191a4f943ca893d1477fdfbe94b2b' + '66e25f76a7496c429e0aff4b0670f168719bb0ceaeb88c6f2272f2bf3ed21162' + 'd027776fac1f7675b0a9ee817502290b1c45f9c09b0f0a6bb058c35f92361e84' + 'ff0156309470fc1d378fd2e104338020a884295e285972cc88e250e031cc35b9' + '2460adccd3362fefd4cdc5f1c70f332d7b578091fb9167bf88b5f91265bbd776' + '94612f5c0d34a3b7152915c2e285c7b462e9d8e38d3539bd551a339498eac166') + +build() { + cd "${srcdir}/${pkgbase}-${pkgver}" + + # Use nouveau/nv/nvidia drivers for nvidia devices + patch -Np1 -i "${srcdir}/autoconfig-nvidia.patch" + + # Use unofficial imedia SiS driver for supported SiS devices + patch -Np0 -i "${srcdir}/autoconfig-sis.patch" + + autoreconf -fi + ./configure --prefix=/usr \ + --enable-ipv6 \ + --enable-dri \ + --enable-dmx \ + --enable-xvfb \ + --enable-xnest \ + --enable-composite \ + --enable-xcsecurity \ + --enable-xorg \ + --enable-xephyr \ + --enable-glx-tls \ + --enable-kdrive \ + --enable-kdrive-evdev \ + --enable-kdrive-kbd \ + --enable-kdrive-mouse \ + --enable-install-setuid \ + --enable-config-udev \ + --disable-config-dbus \ + --enable-record \ + --disable-xfbdev \ + --disable-xfake \ + --disable-static \ + --sysconfdir=/etc/X11 \ + --localstatedir=/var \ + --with-xkb-path=/usr/share/X11/xkb \ + --with-xkb-output=/var/lib/xkb \ + --with-fontrootdir=/usr/share/fonts + make + + # Disable subdirs for make install rule to make splitting easier + sed -e 's/^DMX_SUBDIRS =.*/DMX_SUBDIRS =/' \ + -e 's/^XVFB_SUBDIRS =.*/XVFB_SUBDIRS =/' \ + -e 's/^XNEST_SUBDIRS =.*/XNEST_SUBDIRS = /' \ + -e 's/^KDRIVE_SUBDIRS =.*/KDRIVE_SUBDIRS =/' \ + -i hw/Makefile +} + +package_xorg-server-common() { + pkgdesc="Xorg server common files" + depends=('xkeyboard-config' 'xorg-xkbcomp' 'xorg-setxkbmap' 'xorg-fonts-misc') + + cd "${srcdir}/${pkgbase}-${pkgver}" + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-common" + install -m644 COPYING "${pkgdir}/usr/share/licenses/xorg-server-common" + + make -C xkb DESTDIR="${pkgdir}" install-data + + install -m755 -d "${pkgdir}/usr/share/man/man1" + install -m644 man/Xserver.1 "${pkgdir}/usr/share/man/man1/" + + install -m755 -d "${pkgdir}/usr/lib/xorg" + install -m644 dix/protocol.txt "${pkgdir}/usr/lib/xorg/" +} + +package_xorg-server() { + pkgdesc="Xorg X server" + depends=(libxdmcp libxfont udev libpciaccess libdrm pixman libgcrypt libxau xorg-server-common xf86-input-evdev) + backup=('etc/X11/xorg.conf.d/10-evdev.conf' 'etc/X11/xorg.conf.d/10-quirks.conf') + provides=('x-server') + groups=('xorg') + conflicts=('nvidia-utils<=290.10') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/etc/X11" + mv "${pkgdir}/usr/share/X11/xorg.conf.d" "${pkgdir}/etc/X11/" + install -m644 "${srcdir}/10-quirks.conf" "${pkgdir}/etc/X11/xorg.conf.d/" + + rmdir "${pkgdir}/usr/share/X11" + + # Needed for non-mesa drivers, libgl will restore it + mv "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" \ + "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.xorg" + + rm -rf "${pkgdir}/var" + + rm -f "${pkgdir}/usr/share/man/man1/Xserver.1" + rm -f "${pkgdir}/usr/lib/xorg/protocol.txt" + + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server" + ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server/COPYING" + + rm -rf "${pkgdir}/usr/lib/pkgconfig" + rm -rf "${pkgdir}/usr/include" + rm -rf "${pkgdir}/usr/share/aclocal" +} + +package_xorg-server-xephyr() { + pkgdesc="A nested X server that runs as an X application" + depends=(libxfont libgl libgcrypt libxv pixman xorg-server-common) + + cd "${srcdir}/${pkgbase}-${pkgver}/hw/kdrive" + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xephyr" + ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server-xephyr/COPYING" +} + +package_xorg-server-xvfb() { + pkgdesc="Virtual framebuffer X server" + depends=(libxfont libxdmcp libxau libgcrypt pixman xorg-server-common) + + cd "${srcdir}/${pkgbase}-${pkgver}/hw/vfb" + make DESTDIR="${pkgdir}" install + + install -m755 "${srcdir}/xvfb-run" "${pkgdir}/usr/bin/" + install -m644 "${srcdir}/xvfb-run.1" "${pkgdir}/usr/share/man/man1/" + + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xvfb" + ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server-xvfb/COPYING" +} + +package_xorg-server-xnest() { + pkgdesc="A nested X server that runs as an X application" + depends=(libxfont libxext libgcrypt pixman xorg-server-common) + + cd "${srcdir}/${pkgbase}-${pkgver}/hw/xnest" + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xnest" + ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server-xnest/COPYING" +} + +package_xorg-server-xdmx() { + pkgdesc="Distributed Multihead X Server and utilities" + depends=(libxfont libxi libgcrypt libxaw libxrender libdmx libxfixes pixman xorg-server-common) + + cd "${srcdir}/${pkgbase}-${pkgver}/hw/dmx" + make DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-xdmx" + ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server-xdmx/COPYING" +} + +package_xorg-server-devel() { + pkgdesc="Development files for the X.Org X server" + depends=(xproto randrproto renderproto xextproto inputproto kbproto fontsproto videoproto dri2proto xineramaproto xorg-util-macros pixman libpciaccess) + + cd "${srcdir}/${pkgbase}-${pkgver}" + make DESTDIR="${pkgdir}" install + + rm -rf "${pkgdir}/usr/bin" + rm -rf "${pkgdir}/usr/share/man" + rm -rf "${pkgdir}/usr/share/doc" + rm -rf "${pkgdir}/usr/share/X11" + rm -rf "${pkgdir}/usr/lib/xorg" + rm -rf "${pkgdir}/var" + + install -m755 -d "${pkgdir}/usr/share/licenses/xorg-server-devel" + ln -sf ../xorg-server-common/COPYING "${pkgdir}/usr/share/licenses/xorg-server-devel/COPYING" +} diff --git a/testing/xorg-server/autoconfig-nvidia.patch b/testing/xorg-server/autoconfig-nvidia.patch new file mode 100644 index 000000000..6d5220ac7 --- /dev/null +++ b/testing/xorg-server/autoconfig-nvidia.patch @@ -0,0 +1,28 @@ +diff -Nur xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c +--- xorg-server-1.11.99.902.orig/hw/xfree86/common/xf86pciBus.c 2012-02-10 10:10:37.583014924 +0000 ++++ xorg-server-1.11.99.902/hw/xfree86/common/xf86pciBus.c 2012-02-10 11:16:07.148971317 +0000 +@@ -1144,7 +1144,23 @@ + int idx = 0; + + #ifdef __linux__ +- driverList[idx++] = "nouveau"; ++ switch (dev->device_id) ++ { ++ /* NV1 */ ++ case 0x0008: ++ case 0x0009: ++ driverList[idx++] = "vesa"; ++ break; ++ /* NV3 */ ++ case 0x0018: ++ case 0x0019: ++ driverList[idx++] = "nouveau"; ++ break; ++ default: ++ driverList[idx++] = "nouveau"; ++ driverList[idx++] = "nvidia"; ++ break; ++ } + #endif + driverList[idx++] = "nv"; + break; diff --git a/testing/xorg-server/autoconfig-sis.patch b/testing/xorg-server/autoconfig-sis.patch new file mode 100644 index 000000000..0b50049db --- /dev/null +++ b/testing/xorg-server/autoconfig-sis.patch @@ -0,0 +1,21 @@ +--- hw/xfree86/common/xf86pciBus.c.orig 2011-09-24 10:53:45.421697668 +0000 ++++ hw/xfree86/common/xf86pciBus.c 2011-09-24 10:55:56.416250708 +0000 +@@ -1200,9 +1200,15 @@ + break; + } + break; +- case 0x1039: +- driverList[0] = "sis"; +- break; ++ case 0x1039: ++ switch (dev->device_id) ++ { ++ case 0x6350: case 0x6351: ++ driverList[0] = "sisimedia"; driverList[1] = "sis"; break; ++ default: ++ driverList[0] = "sis"; break; ++ } ++ break; + case 0x126f: + driverList[0] = "siliconmotion"; + break; diff --git a/testing/xorg-server/xvfb-run b/testing/xorg-server/xvfb-run new file mode 100644 index 000000000..4c2f4e0d3 --- /dev/null +++ b/testing/xorg-server/xvfb-run @@ -0,0 +1,180 @@ +#!/bin/sh + +# $Id: xvfb-run 2027 2004-11-16 14:54:16Z branden $ + +# This script starts an instance of Xvfb, the "fake" X server, runs a command +# with that server available, and kills the X server when done. The return +# value of the command becomes the return value of this script. +# +# If anyone is using this to build a Debian package, make sure the package +# Build-Depends on xvfb, xbase-clients, and xfonts-base. + +set -e + +PROGNAME=xvfb-run +SERVERNUM=99 +AUTHFILE= +ERRORFILE=/dev/null +STARTWAIT=3 +XVFBARGS="-screen 0 640x480x8" +LISTENTCP="-nolisten tcp" +XAUTHPROTO=. + +# Query the terminal to establish a default number of columns to use for +# displaying messages to the user. This is used only as a fallback in the event +# the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while the +# script is running, and this cannot, only being calculated once.) +DEFCOLUMNS=$(stty size 2>/dev/null | awk '{print $2}') || true +if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" >/dev/null 2>&1; then + DEFCOLUMNS=80 +fi + +# Display a message, wrapping lines at the terminal width. +message () { + echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} +} + +# Display an error message. +error () { + message "error: $*" >&2 +} + +# Display a usage message. +usage () { + if [ -n "$*" ]; then + message "usage error: $*" + fi + cat <<EOF +Usage: $PROGNAME [OPTION ...] COMMAND +Run COMMAND (usually an X client) in a virtual X server environment. +Options: +-a --auto-servernum try to get a free server number, starting at + --server-num +-e FILE --error-file=FILE file used to store xauth errors and Xvfb + output (default: $ERRORFILE) +-f FILE --auth-file=FILE file used to store auth cookie + (default: ./.Xauthority) +-h --help display this usage message and exit +-n NUM --server-num=NUM server number to use (default: $SERVERNUM) +-l --listen-tcp enable TCP port listening in the X server +-p PROTO --xauth-protocol=PROTO X authority protocol name to use + (default: xauth command's default) +-s ARGS --server-args=ARGS arguments (other than server number and + "-nolisten tcp") to pass to the Xvfb server + (default: "$XVFBARGS") +-w DELAY --wait=DELAY delay in seconds to wait for Xvfb to start + before running COMMAND (default: $STARTWAIT) +EOF +} + +# Find a free server number by looking at .X*-lock files in /tmp. +find_free_servernum() { + # Sadly, the "local" keyword is not POSIX. Leave the next line commented in + # the hope Debian Policy eventually changes to allow it in /bin/sh scripts + # anyway. + #local i + + i=$SERVERNUM + while [ -f /tmp/.X$i-lock ]; do + i=$(($i + 1)) + done + echo $i +} + +# Clean up files +clean_up() { + if [ -e "$AUTHFILE" ]; then + XAUTHORITY=$AUTHFILE xauth remove ":$SERVERNUM" >>"$ERRORFILE" 2>&1 + fi + if [ -n "$XVFB_RUN_TMPDIR" ]; then + if ! rm -r "$XVFB_RUN_TMPDIR"; then + error "problem while cleaning up temporary directory" + exit 5 + fi + fi +} + +# Parse the command line. +ARGS=$(getopt --options +ae:f:hn:lp:s:w: \ + --long auto-servernum,error-file:,auth-file:,help,server-num:,listen-tcp,xauth-protocol:,server-args:,wait: \ + --name "$PROGNAME" -- "$@") +GETOPT_STATUS=$? + +if [ $GETOPT_STATUS -ne 0 ]; then + error "internal error; getopt exited with status $GETOPT_STATUS" + exit 6 +fi + +eval set -- "$ARGS" + +while :; do + case "$1" in + -a|--auto-servernum) SERVERNUM=$(find_free_servernum) ;; + -e|--error-file) ERRORFILE="$2"; shift ;; + -f|--auth-file) AUTHFILE="$2"; shift ;; + -h|--help) SHOWHELP="yes" ;; + -n|--server-num) SERVERNUM="$2"; shift ;; + -l|--listen-tcp) LISTENTCP="" ;; + -p|--xauth-protocol) XAUTHPROTO="$2"; shift ;; + -s|--server-args) XVFBARGS="$2"; shift ;; + -w|--wait) STARTWAIT="$2"; shift ;; + --) shift; break ;; + *) error "internal error; getopt permitted \"$1\" unexpectedly" + exit 6 + ;; + esac + shift +done + +if [ "$SHOWHELP" ]; then + usage + exit 0 +fi + +if [ -z "$*" ]; then + usage "need a command to run" >&2 + exit 2 +fi + +if ! which xauth >/dev/null; then + error "xauth command not found" + exit 3 +fi + +# tidy up after ourselves +trap clean_up EXIT + +# If the user did not specify an X authorization file to use, set up a temporary +# directory to house one. +if [ -z "$AUTHFILE" ]; then + XVFB_RUN_TMPDIR="$(mktemp -d -t $PROGNAME.XXXXXX)" + AUTHFILE="$XVFB_RUN_TMPDIR/Xauthority" +fi + +# Start Xvfb. +MCOOKIE=$(mcookie) +XAUTHORITY=$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1 +add :$SERVERNUM $XAUTHPROTO $MCOOKIE +EOF +XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP >>"$ERRORFILE" \ + 2>&1 & +XVFBPID=$! +sleep "$STARTWAIT" +if ! kill -0 $XVFBPID 2>/dev/null; then + echo "Xvfb failed to start" >&2 + exit 1 +fi + +# Start the command and save its exit status. +set +e +DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" 2>&1 +RETVAL=$? +set -e + +# Kill Xvfb now that the command has exited. +kill $XVFBPID + +# Return the executed command's exit status. +exit $RETVAL + +# vim:set ai et sts=4 sw=4 tw=80: diff --git a/testing/xorg-server/xvfb-run.1 b/testing/xorg-server/xvfb-run.1 new file mode 100644 index 000000000..137d3a196 --- /dev/null +++ b/testing/xorg-server/xvfb-run.1 @@ -0,0 +1,282 @@ +.\" $Id: xvfb-run.1 2138 2005-01-17 23:40:27Z branden $ +.\" +.\" Copyright 1998-2004 Branden Robinson <branden@debian.org>. +.\" +.\" This is free software; you may 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, +.\" or (at your option) any later version. +.\" +.\" This is distributed in the hope that it will be useful, but +.\" WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public License with +.\" the Debian operating system, in /usr/share/common-licenses/GPL; if +.\" not, write to the Free Software Foundation, Inc., 59 Temple Place, +.\" Suite 330, Boston, MA 02111-1307 USA +.\" +.\" We need the URL macro from groff's www macro package, but also want +.\" things to work all right for people who don't have it. So we define +.\" our own URL macro and let the www macro package override it if it's +.\" available. +.de URL +\\$2 \(laURL: \\$1 \(ra\\$3 +.. +.if \n[.g] .mso www.tmac +.TH xvfb\-run 1 "2004\-11\-12" "Debian Project" +.SH NAME +xvfb\-run \- run specified X client or command in a virtual X server environment +.SH SYNOPSIS +.B xvfb\-run +[ +.I options +] +.I command +.SH DESCRIPTION +.B xvfb\-run +is a wrapper for the +.BR Xvfb (1x) +command which simplifies the task of running commands (typically an X +client, or a script containing a list of clients to be run) within a virtual +X server environment. +.PP +.B xvfb\-run +sets up an X authority file (or uses an existing user\-specified one), +writes a cookie to it (see +.BR xauth (1x)) +and then starts the +.B Xvfb +X server as a background process. +The process ID of +.B Xvfb +is stored for later use. +The specified +.I command +is then run using the X display corresponding to the +.B Xvfb +server +just started and the X authority file created earlier. +.PP +When the +.I command +exits, its status is saved, the +.B Xvfb +server is killed (using the process ID stored earlier), the X authority +cookie removed, and the authority file deleted (if the user did not specify +one to use). +.B xvfb\-run +then exits with the exit status of +.IR command . +.PP +.B xvfb\-run +requires the +.B xauth +command to function. +.SH OPTIONS +.TP +.B \-a\fR,\fB \-\-auto\-servernum +Try to get a free server number, starting at 99, or the argument to +.BR \-\-server\-num . +.TP +.BI \-e\ file \fR,\fB\ \-\-error\-file= file +Store output from +.B xauth +and +.B Xvfb +in +.IR file . +The default is +.IR /dev/null . +.TP +.BI \-f\ file \fR,\fB\ \-\-auth\-file= file +Store X authentication data in +.IR file . +By default, a temporary directory called +.IR xvfb\-run. PID +(where PID is the process ID of +.B xvfb\-run +itself) is created in the directory specified by the environment variable +.B TMPDIR +(or +.I /tmp +if that variable is null or unset), and the +.BR tempfile (1) +command is used to create a file in that temporary directory called +.IR Xauthority . +.TP +.B \-h\fR,\fB \-\-help +Display a usage message and exit. +.TP +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber +Use +.I servernumber +as the server number (but see the +.B \-a\fR,\fB \-\-auto\-servernum +option above). +The default is 99. +.TP +.B \-l\fR,\fB \-\-listen\-tcp +Enable TCP port listening in the X server. +For security reasons (to avoid denial\-of\-service attacks or exploits), +TCP port listening is disabled by default. +.TP +.BI \-p\ protocolname \fR,\fB\ \-\-xauth\-protocol= protocolname +Use +.I protocolname +as the X authority protocol to use. +The default is \(oq.\(cq, which +.B xauth +interprets as its own default protocol, which is MIT\-MAGIC\-COOKIE\-1. +.TP +.BI \-s\ arguments \fR,\fB\ \-\-server\-args= arguments +Pass +.I arguments +to the +.B Xvfb +server. +Be careful to quote any whitespace characters that may occur within +.I arguments +to prevent them from regarded as separators for +.BR xvfb\-run 's +own arguments. +Also, note that specification of \(oq\-nolisten tcp\(cq in +.I arguments +may override the function of +.BR xvfb\-run 's +own +.B \-l\fR,\fB \-\-listen\-tcp +option, and that specification of the server number (e.g., \(oq:1\(cq) may +be ignored because of the way the X server parses its argument list. +Use the +.B xvfb\-run +option +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num= servernumber +to achieve the latter function. +The default is \(oq\-screen 0 640x480x8\(cq. +.TP +.BI \-w\ delay \fR,\fB\ \-\-wait= delay +Wait +.I delay +seconds after launching +.B Xvfb +before attempting to start the specified command. +The default is 3. +.SH ENVIRONMENT +.TP +.B COLUMNS +indicates the width of the terminal device in character cells. +This value is used for formatting diagnostic messages. +If not set, the terminal is queried using +.BR stty (1) +to determine its width. +If that fails, a value of \(oq80\(cq is assumed. +.TP +.B TMPDIR +specifies the directory in which to place +.BR xvfb\-run 's +temporary directory for storage of the X authority file; only used if the +.B \-f +or +.B \-\-auth\-file +options are not specified. +.SH "OUTPUT FILES" +.PP +Unless the +.B \-f +or +.B \-\-auth\-file +options are specified, a temporary +directory and file within it are created (and deleted) to store the X +authority cookies used by the +.B Xvfb +server and client(s) run under it. +See +.BR tempfile (1). +If \-f or \-\-auth\-file are used, then the specified X authority file is +only written to, not created or deleted (though +.B xauth +creates an authority file itself if told to use use that does not already +exist). +.PP +An error file with a user\-specified name is also created if the +.B \-e +or +.B \-\-error\-file +options are specifed; see above. +.SH "EXIT STATUS" +.B xvfb\-run +uses its exit status as well as output to standard error to communicate +diagnostics. +The exit status of \(oq1\(cq is not used, and should be interpreted as failure +of the specified command. +.TP +0 +.B xvfb\-run +only uses this exit status if the +.B \-h\fR,\fB \-\-help +option is given. +In all other situations, this may be interpreted as success of the specified +command. +.TP +2 +No command to run was specified. +.TP +3 +The +.B xauth +command is not available. +.TP +4 +The temporary directory that was going to be used already exists; since +.B xvfb\-run +produces a uniquely named directory, this may indicate an attempt by another +process on the system to exploit a temporary file race condition. +.TP +5 +A problem was encountered while cleaning up the temporary directory. +.TP +6 +A problem was encountered while using +.BR getopt (1) +to parse the command\-line arguments. +.SH EXAMPLES +.TP +.B xvfb\-run \-\-auto\-servernum \-\-server\-num=1 xlogo +runs the +.BR xlogo (1x) +demonstration client inside the +.B Xvfb +X server on the first available server number greater than or equal to 1. +.TP +.B xvfb\-run \-\-server\-args="\-screen 0 1024x768x24" ico \-faces +runs the +.BR ico (1x) +demonstration client (and passes it the +.B \-faces +argument) inside the +.B Xvfb +X server, configured with a root window of 1024 by 768 pixels and a color +depth of 24 bits. +.PP +Note that the demo X clients used in the above examples will not exit on +their own, so they will have to be killed before +.B xvfb\-run +will exit. +.SH BUGS +See +.URL "http://bugs.debian.org/xvfb" "the Debian Bug Tracking System" . +If you wish to report a bug in +.BR xvfb\-run , +please use the +.BR reportbug (1) +command. +.SH AUTHOR +.B xfvb\-run +was written by Branden Robinson and Jeff Licquia with sponsorship from +Progeny Linux Systems. +.SH "SEE ALSO" +.BR Xvfb (1x), +.BR xauth (1x) +.\" vim:set et tw=80: diff --git a/~fauno/ldapscripts/PKGBUILD b/~fauno/ldapscripts/PKGBUILD new file mode 100644 index 000000000..59080b1cf --- /dev/null +++ b/~fauno/ldapscripts/PKGBUILD @@ -0,0 +1,20 @@ +pkgname=ldapscripts +pkgver=2.0.1 +pkgrel=1 +pkgdesc="Shell scripts that allow to manage POSIX accounts (users, groups, machines) in an LDAP directory" +arch=('any') +url="http://contribs.martymac.org/" +license=('GPL') +depends=('sharutils') +source=(http://contribs.martymac.org/ldapscripts/${pkgname}-${pkgver}.tgz) +md5sums=('212a62b3e808faf8d347429ccd2cef09') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" \ + ETCDIR=/etc/ldapscripts \ + MANDIR=/usr/share/man \ + LIBDIR=/usr/share/ldapscripts \ + PREFIX=/usr install +} |