summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--community-testing/cegui/PKGBUILD14
-rw-r--r--community-testing/converseen/PKGBUILD32
-rw-r--r--community-testing/converseen/converseen.install11
-rw-r--r--community-testing/cuneiform/PKGBUILD36
-rw-r--r--community-testing/darktable/PKGBUILD11
-rw-r--r--community-testing/devil/PKGBUILD38
-rw-r--r--community-testing/devil/devil.install11
-rw-r--r--community-testing/devil/libpng14.patch33
-rw-r--r--community-testing/freewrl/PKGBUILD6
-rw-r--r--community-testing/gambas3/PKGBUILD10
-rw-r--r--community-testing/gmic/PKGBUILD58
-rw-r--r--community-testing/gmic/opencv-buildfix.patch32
-rw-r--r--community-testing/gource/PKGBUILD4
-rw-r--r--community-testing/luminancehdr/PKGBUILD10
-rw-r--r--community-testing/luxrays/PKGBUILD7
-rw-r--r--community-testing/luxrender/PKGBUILD6
-rw-r--r--community-testing/megaglest/PKGBUILD6
-rw-r--r--community-testing/openimageio/PKGBUILD12
-rw-r--r--community-testing/performous/PKGBUILD8
-rw-r--r--community-testing/projectm/PKGBUILD53
-rw-r--r--community-testing/rss-glx/PKGBUILD7
-rw-r--r--community-testing/sfml/PKGBUILD8
-rw-r--r--community-testing/spring/PKGBUILD17
-rw-r--r--community-testing/supertux/PKGBUILD8
-rw-r--r--community-testing/widelands/PKGBUILD9
-rw-r--r--community-testing/xbmc/PKGBUILD25
-rw-r--r--community-testing/xbmc/xbmc.install7
-rw-r--r--community-testing/xbmc/xbmc.service13
-rw-r--r--community/audit/PKGBUILD14
-rw-r--r--community/audit/auditd.service12
-rw-r--r--community/espeakup/PKGBUILD27
-rw-r--r--community/espeakup/espeakup.service12
-rw-r--r--community/libextractor/PKGBUILD4
-rw-r--r--community/libextractor/libextractor.install2
-rw-r--r--community/libmediainfo/PKGBUILD6
-rw-r--r--community/mediainfo-gui/PKGBUILD6
-rw-r--r--community/mediainfo/PKGBUILD6
-rw-r--r--community/nodejs/PKGBUILD21
-rw-r--r--community/plan9port/PKGBUILD50
-rw-r--r--community/plan9port/plan9.install12
-rw-r--r--community/rocksndiamonds/PKGBUILD12
-rw-r--r--community/rocksndiamonds/rocksndiamonds.desktop10
-rw-r--r--community/sshguard/PKGBUILD6
-rw-r--r--community/sshguard/sshguard.service5
-rw-r--r--community/unbound/PKGBUILD4
-rw-r--r--community/unbound/install8
-rw-r--r--community/v8/PKGBUILD46
-rw-r--r--community/virtualbox-modules/PKGBUILD4
-rw-r--r--core/btrfs-progs/PKGBUILD20
-rw-r--r--core/btrfs-progs/btrfs-progs.install2
-rw-r--r--core/btrfs-progs/initcpio-hook-btrfs5
-rw-r--r--core/btrfs-progs/initcpio-install-btrfs5
-rw-r--r--core/iputils/PKGBUILD8
-rw-r--r--core/ldns/PKGBUILD6
-rw-r--r--core/openssh/PKGBUILD10
-rw-r--r--core/openssh/sshd.service1
-rw-r--r--core/openssh/sshd.socket1
-rw-r--r--core/openssh/sshdgenkeys.service3
-rw-r--r--extra/cifs-utils/PKGBUILD8
-rw-r--r--extra/cups-pk-helper/PKGBUILD10
-rw-r--r--extra/libtorrent-rasterbar/PKGBUILD6
-rw-r--r--extra/usermin/PKGBUILD11
-rw-r--r--extra/usermin/usermin.service9
-rw-r--r--extra/xterm/PKGBUILD6
-rw-r--r--libre/parabola-keyring/PKGBUILD6
-rw-r--r--multilib/dev86/PKGBUILD40
-rw-r--r--multilib/dev86/copt.patch16
-rw-r--r--multilib/dev86/mandir.patch34
-rw-r--r--testing/binutils/PKGBUILD48
-rw-r--r--testing/bzflag/PKGBUILD5
-rw-r--r--testing/calligra/PKGBUILD4
-rw-r--r--testing/cinepaint/PKGBUILD6
-rw-r--r--testing/coreutils/PKGBUILD8
-rw-r--r--testing/dvdauthor/PKGBUILD31
-rw-r--r--testing/dvdauthor/dvdauthor-0.7.0-libpng15.patch19
-rw-r--r--testing/emacs/PKGBUILD41
-rw-r--r--testing/emacs/emacs.install32
-rw-r--r--testing/enblend-enfuse/PKGBUILD6
-rw-r--r--testing/fyre/PKGBUILD26
-rw-r--r--testing/fyre/fyre.install13
-rw-r--r--testing/gcc/PKGBUILD33
-rw-r--r--testing/gegl/PKGBUILD10
-rw-r--r--testing/gegl/gegl-0.2.0-ffmpeg-0.11.diff12
-rw-r--r--testing/glew/PKGBUILD8
-rw-r--r--testing/glibc/PKGBUILD53
-rw-r--r--testing/glibc/glibc-2.16-detect-fma.patch72
-rw-r--r--testing/glibc/glibc-2.16-glob-use-size_t.patch52
-rw-r--r--testing/glibc/glibc-2.16-strncasecmp-segfault.patch65
-rw-r--r--testing/glibc/glibc-2.16-strtod-overflow.patch389
-rw-r--r--testing/glibc/glibc-2.16-unlock-mutex.patch775
-rw-r--r--testing/glibc/glibc.install14
-rw-r--r--testing/glibc/nscd.service2
-rw-r--r--testing/gnome-documents/PKGBUILD6
-rw-r--r--testing/hugin/PKGBUILD6
-rw-r--r--testing/ilmbase/PKGBUILD35
-rw-r--r--testing/ilmbase/ilmbase-IexMath.patch12
-rw-r--r--testing/imagemagick/PKGBUILD82
-rw-r--r--testing/imagemagick/perlmagick.rpath.patch10
-rw-r--r--testing/inkscape/PKGBUILD4
-rw-r--r--testing/kdelibs3/PKGBUILD97
-rw-r--r--testing/kdelibs3/acinclude.patch66
-rw-r--r--testing/kdelibs3/kconf_updaterc2
-rwxr-xr-xtesting/kdelibs3/kde3.profile6
-rw-r--r--testing/kdelibs3/kde4-compatibility.patch1012
-rw-r--r--testing/kdelibs3/kdelibs3-cups16.patch724
-rw-r--r--testing/kdelibs3/kdelibs3-missing-include.patch10
-rw-r--r--testing/kdelibs3/kdelibs3.install12
-rw-r--r--testing/kdelibs3/openssl.patch180
-rw-r--r--testing/obex-data-server/PKGBUILD28
-rw-r--r--testing/opencv/PKGBUILD17
-rw-r--r--testing/openexr/PKGBUILD30
-rw-r--r--testing/openexr/gcc43.patch11
-rw-r--r--testing/psiconv/PKGBUILD30
-rw-r--r--testing/pstoedit/PKGBUILD34
-rw-r--r--testing/pstoedit/pstoedit-3.50-parallel.patch47
-rw-r--r--testing/pstoedit/pstoedit-3.50-plugin-close.patch14
-rw-r--r--testing/systemd/PKGBUILD2
-rw-r--r--testing/systemd/systemd.install16
-rw-r--r--testing/tracker/PKGBUILD16
-rw-r--r--testing/transcode/PKGBUILD6
-rw-r--r--testing/transcode/ffmpeg-0.11.patch11
-rw-r--r--testing/xf86-video-nouveau/PKGBUILD10
-rw-r--r--testing/xine-lib/PKGBUILD4
123 files changed, 4788 insertions, 442 deletions
diff --git a/community-testing/cegui/PKGBUILD b/community-testing/cegui/PKGBUILD
index 3d0514fb2..d83aee6fd 100644
--- a/community-testing/cegui/PKGBUILD
+++ b/community-testing/cegui/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 74509 2012-07-29 21:15:11Z ebelanger $
+# $Id: PKGBUILD 78795 2012-10-25 01:46:43Z ebelanger $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Juergen Hoetzel <juergen@archlinux.org>
# Contributor: William Rea <sillywilly@gmail.com>,
# Contributor: Bjorn Lindeijer <bjorn@lindeijer.nl>
pkgname=cegui
-pkgver=0.7.6
-pkgrel=5
+pkgver=0.7.7
+pkgrel=2
pkgdesc="A free library providing windowing and widgets for graphics APIs/engines"
arch=('i686' 'x86_64')
url="http://crayzedsgui.sourceforge.net"
@@ -18,16 +18,12 @@ optdepends=("python2: python bindings"
"ogre: ogre module"
"irrlicht: irrlicht module")
options=(!libtool)
-source=(http://downloads.sourceforge.net/crayzedsgui/CEGUI-$pkgver.tar.gz
- cegui-0.7.6-python-detection.patch)
-md5sums=('7ddb5145dc94fb7daf9aea1d30a6ffa3'
- '4600775f78b7349621a8a314ade8c902')
+source=(http://downloads.sourceforge.net/crayzedsgui/CEGUI-$pkgver.tar.gz)
+md5sums=('8b83577f86eaa1581765dd155c7c8f24')
build() {
cd $srcdir/CEGUI-${pkgver}
- patch -Np0 < $srcdir/cegui-0.7.6-python-detection.patch
-
./bootstrap
./configure --prefix=/usr \
diff --git a/community-testing/converseen/PKGBUILD b/community-testing/converseen/PKGBUILD
new file mode 100644
index 000000000..4cd41f90c
--- /dev/null
+++ b/community-testing/converseen/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 78798 2012-10-25 01:47:00Z ebelanger $
+# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: archtux <antonio.arias99999 at gmail.com>
+
+pkgname=converseen
+pkgver=0.5.1
+pkgrel=2
+pkgdesc="The batch image converter and resizer"
+arch=('i686' 'x86_64')
+url="http://converseen.sourceforge.net/"
+license=('GPL3')
+depends=('imagemagick' 'qt' 'libwmf' 'openexr')
+makedepends=('cmake')
+install=converseen.install
+source=("http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.bz2")
+md5sums=('db00c0cf86977494effa971fd238c786')
+
+build() {
+ cd "${srcdir}"
+ mkdir build
+ cd build
+ cmake ../${pkgname}-${pkgver} \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/build"
+
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/community-testing/converseen/converseen.install b/community-testing/converseen/converseen.install
new file mode 100644
index 000000000..9af7fa81f
--- /dev/null
+++ b/community-testing/converseen/converseen.install
@@ -0,0 +1,11 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/community-testing/cuneiform/PKGBUILD b/community-testing/cuneiform/PKGBUILD
new file mode 100644
index 000000000..521490526
--- /dev/null
+++ b/community-testing/cuneiform/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 78799 2012-10-25 01:47:03Z ebelanger $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Maxim Vuets <maxim.vuets@gmail.com>
+
+pkgname=cuneiform
+pkgver=1.1.0
+_dpkgver=1.1
+pkgrel=4
+pkgdesc="Linux port of an OCR system developed in Russia. Supports more than 20 languages."
+arch=('i686' 'x86_64')
+url="https://launchpad.net/cuneiform-linux"
+license=('BSD')
+depends=('imagemagick')
+makedepends=('cmake')
+source=(http://launchpad.net/cuneiform-linux/${_dpkgver}/${_dpkgver}/+download/cuneiform-linux-${pkgver}.tar.bz2)
+md5sums=('09fd160cdfc512f26442a7e91246598d')
+
+_SRC_ROOT="${srcdir}/${pkgname}-linux-${pkgver}"
+
+build() {
+ cd "${_SRC_ROOT}"
+ sed -i 's#lib64#lib#' install_files.cmake
+ mkdir builddir
+ cd builddir
+
+ cmake -DCMAKE_BUILD_TYPE=release -DCMAKE_INSTALL_PREFIX=/usr ..
+ make
+}
+
+package() {
+ cd "${_SRC_ROOT}"/builddir
+ make DESTDIR="${pkgdir}" install
+
+ install -Dm644 "${_SRC_ROOT}/cuneiform_src/Kern/license.txt" \
+ "${pkgdir}/usr/share/licenses/cuneiform/license.txt"
+}
diff --git a/community-testing/darktable/PKGBUILD b/community-testing/darktable/PKGBUILD
index 5ee3e0125..d974ca8f4 100644
--- a/community-testing/darktable/PKGBUILD
+++ b/community-testing/darktable/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 74728 2012-08-02 15:23:34Z andrea $
+# $Id: PKGBUILD 78800 2012-10-25 01:47:08Z ebelanger $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Christian Himpel <chressie at gmail dot com>
# Contributor: Johannes Hanika <hanatos at gmail dot com>
@@ -6,7 +6,7 @@
pkgname=darktable
pkgver=1.0.5
_pkgver=1.0
-pkgrel=2
+pkgrel=4
pkgdesc="Utility to organize and develop raw images"
arch=('i686' 'x86_64')
url=http://darktable.sf.net/
@@ -22,8 +22,9 @@ source=(http://downloads.sourceforge.net/project/darktable/darktable/${_pkgver}/
md5sums=('9ad88a1a6b9761fce28c8073d8f47941')
build() {
- cd $srcdir/$pkgname-$pkgver
+ cd "$srcdir/$pkgname-$pkgver"
# mv doc/usermanual/CMakeLists.tx doc/usermanual/CMakeLists.txt
+ sed -i 's/-Werror//' src/CMakeLists.txt
mkdir -p build
cd build
cmake \
@@ -38,8 +39,8 @@ build() {
}
package() {
- cd $srcdir/$pkgname-$pkgver/build
- make DESTDIR=$pkgdir install
+ cd "$srcdir/$pkgname-$pkgver/build"
+ make DESTDIR="$pkgdir" install
mv "${pkgdir}/usr/share/doc/darktable" "${pkgdir}/usr/share/doc/${pkgname}-${pkgver}"
# mkdir -p "${pkgdir}/usr/share/gconf/schemas/"
# mv "${pkgdir}/etc/gconf/schemas/darktable.schemas" "${pkgdir}/usr/share/gconf/schemas/"
diff --git a/community-testing/devil/PKGBUILD b/community-testing/devil/PKGBUILD
new file mode 100644
index 000000000..cc656a31f
--- /dev/null
+++ b/community-testing/devil/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id: PKGBUILD 78801 2012-10-25 01:47:15Z ebelanger $
+# Maintainer: Laurent Carlier <lordheavym@gmail.org>
+# Contributor: damir <damir@archlinux.org>
+# Contributor: TheHoff <forums>
+
+pkgname=devil
+pkgver=1.7.8
+pkgrel=14
+pkgdesc="Library for reading several different image formats"
+arch=('i686' 'x86_64')
+url="http://openil.sourceforge.net/"
+depends=('libpng' 'libmng' 'jasper' 'lcms' 'openexr')
+install=devil.install
+options=('!libtool' '!docs' '!emptydirs')
+license=('GPL')
+source=(http://downloads.sourceforge.net/openil/DevIL-$pkgver.tar.gz libpng14.patch)
+md5sums=('7918f215524589435e5ec2e8736d5e1d'
+ '0f839ccefd43b0ee8b4b3f99806147fc')
+
+build() {
+ cd ${srcdir}/devil-$pkgver
+
+ patch -Np1 -i ${srcdir}/libpng14.patch
+
+ if [[ $CARCH == x86_64 ]]; then
+ ./configure --prefix=/usr --enable-ILU
+ else
+ ./configure --prefix=/usr --enable-ILU --disable-sse3
+ fi
+
+ make
+}
+
+package() {
+ cd ${srcdir}/devil-$pkgver
+
+ make prefix=${pkgdir}/usr install
+}
diff --git a/community-testing/devil/devil.install b/community-testing/devil/devil.install
new file mode 100644
index 000000000..8336ac3d1
--- /dev/null
+++ b/community-testing/devil/devil.install
@@ -0,0 +1,11 @@
+infodir=usr/share/info
+
+post_upgrade() {
+ [ -x usr/bin/install-info ] || return 0
+ install-info $infodir/DevIL_manual.info.gz $infodir/dir 2> /dev/null
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ install-info --delete $infodir/DevIL_manual.info.gz $infodir/dir 2> /dev/null
+}
diff --git a/community-testing/devil/libpng14.patch b/community-testing/devil/libpng14.patch
new file mode 100644
index 000000000..b8434692b
--- /dev/null
+++ b/community-testing/devil/libpng14.patch
@@ -0,0 +1,33 @@
+diff -Nur devil-1.7.8.orig/src-IL/src/il_icon.c devil-1.7.8/src-IL/src/il_icon.c
+--- devil-1.7.8.orig/src-IL/src/il_icon.c 2009-03-08 09:10:09.000000000 +0200
++++ devil-1.7.8/src-IL/src/il_icon.c 2010-01-17 00:54:09.000000000 +0200
+@@ -525,7 +525,7 @@
+
+ // Expand low-bit-depth grayscale images to 8 bits
+ if (ico_color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) {
+- png_set_gray_1_2_4_to_8(ico_png_ptr);
++ png_set_expand_gray_1_2_4_to_8(ico_png_ptr);
+ }
+
+ // Expand RGB images with transparency to full alpha channels
+diff -Nur devil-1.7.8.orig/src-IL/src/il_png.c devil-1.7.8/src-IL/src/il_png.c
+--- devil-1.7.8.orig/src-IL/src/il_png.c 2009-03-08 09:10:09.000000000 +0200
++++ devil-1.7.8/src-IL/src/il_png.c 2010-01-17 00:55:26.000000000 +0200
+@@ -105,7 +105,7 @@
+ Read = iread(Signature, 1, 8);
+ iseek(-Read, IL_SEEK_CUR);
+
+- return png_check_sig(Signature, 8);
++ return png_sig_cmp(Signature, 0, 8) == 0;
+ }
+
+
+@@ -278,7 +278,7 @@
+
+ // Expand low-bit-depth grayscale images to 8 bits
+ if (png_color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) {
+- png_set_gray_1_2_4_to_8(png_ptr);
++ png_set_expand_gray_1_2_4_to_8(png_ptr);
+ }
+
+ // Expand RGB images with transparency to full alpha channels
diff --git a/community-testing/freewrl/PKGBUILD b/community-testing/freewrl/PKGBUILD
index a3c68dbe4..497dea613 100644
--- a/community-testing/freewrl/PKGBUILD
+++ b/community-testing/freewrl/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 77283 2012-10-08 14:36:02Z spupykin $
+# $Id: PKGBUILD 78802 2012-10-25 01:47:18Z ebelanger $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=freewrl
pkgver=1.22.13.1
_pkgver=1.22.13
-pkgrel=2
+pkgrel=3
pkgdesc="VRML viewer"
arch=('i686' 'x86_64')
url="http://freewrl.sourceforge.net/"
license=('GPL')
depends=('java-runtime' 'libxaw' 'glew' 'freeglut' 'curl' 'freetype2' 'imlib2' 'sox'
'unzip' 'imagemagick' 'libxml2' 'ttf-bitstream-vera' 'lesstif' 'js' 'glu')
-makedepends=('java-environment' 'xulrunner' 'wget')
+makedepends=('java-environment' 'xulrunner' 'wget' 'mesa')
options=(!libtool)
source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2)
md5sums=('27f4bf163011d8ac2088a535cb58a13d')
diff --git a/community-testing/gambas3/PKGBUILD b/community-testing/gambas3/PKGBUILD
index 222bbe42b..6d09fd6b4 100644
--- a/community-testing/gambas3/PKGBUILD
+++ b/community-testing/gambas3/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 78474 2012-10-19 13:29:46Z bluewind $
+# $Id: PKGBUILD 78804 2012-10-25 01:47:33Z ebelanger $
# 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.3.3
-pkgrel=2
+pkgrel=3
pkgdesc="A free development environment based on a Basic interpreter."
arch=('i686' 'x86_64')
url="http://gambas.sourceforge.net/"
@@ -27,7 +27,8 @@ makedepends=('intltool' 'mysql' 'postgresql' 'libffi' 'bzip2' 'glib2' 'v4l-utils
'curl' 'poppler-glib' 'sdl_mixer' 'sdl_ttf' 'libxtst' 'pcre' 'qtwebkit'
'libxcursor' 'libsm' 'dbus-core' 'libxml2' 'libxslt' 'libgnome-keyring'
'gsl' 'gstreamer0.10' 'gstreamer0.10-base' 'gtkglext' 'ncurses' 'llvm'
- 'gmime' 'glu')
+ 'gmime' 'glu' 'pangox-compat')
+# pangox-compat to remove when added in gtkglext package dependency
options=('!emptydirs')
source=("http://downloads.sourceforge.net/gambas/${pkgbase}-${pkgver}.tar.bz2"
'gambas3-script.install' 'gambas3-runtime.install')
@@ -633,7 +634,8 @@ package_gambas3-gb-gtk() {
}
package_gambas3-gb-gtk-opengl() {
- depends=('gambas3-gb-gtk' 'gambas3-gb-opengl' 'gtkglext' 'glu')
+ depends=('gambas3-gb-gtk' 'gambas3-gb-opengl' 'gtkglext' 'glu' 'pangox-compat')
+# pangox-compat to remove when added in gtkglext package dependency
pkgdesc="GTK+ toolkit OpenGL component"
## workaround for splitting
diff --git a/community-testing/gmic/PKGBUILD b/community-testing/gmic/PKGBUILD
new file mode 100644
index 000000000..ae42416a1
--- /dev/null
+++ b/community-testing/gmic/PKGBUILD
@@ -0,0 +1,58 @@
+# $Id: PKGBUILD 78805 2012-10-25 01:47:38Z ebelanger $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: farid <farid at archlinuc-br.org>
+# Contributor: Archie <Mymaud@gmail.com>
+
+pkgbase=gmic
+pkgname=("gmic" "gimp-plugin-gmic" "zart")
+pkgver=1.5.1.8
+pkgrel=4
+arch=("i686" "x86_64")
+url="http://gmic.sourceforge.net"
+license=("custom:CeCILL")
+makedepends=("gimp" "qt" "fftw" "openexr" "opencv")
+#options=('!emptydirs')
+source=("http://downloads.sourceforge.net/sourceforge/gmic/gmic_${pkgver}.tar.gz"
+ "opencv-buildfix.patch")
+md5sums=('1fc38346269bdd829dd7c4864a27fbc3'
+ '8d1cf5000239099255d25c7d3dbe5728')
+
+build() {
+ cd "${srcdir}/gmic-${pkgver}"
+ patch -p1 -i "${srcdir}/opencv-buildfix.patch"
+ find "${srcdir}/gmic-${pkgver}/zart" -type f -execdir chmod 644 '{}' \;
+ find "${srcdir}/gmic-${pkgver}/zart" -type d -execdir chmod 755 '{}' \;
+ make -C src all
+}
+
+package_gmic() {
+ pkgdesc="GREYC's Magic Image Converter: image processing framework"
+ depends=("fftw" "libtiff" "libjpeg" "libpng" "openexr" "libx11")
+ replaces=("greycstoration")
+
+ cd "${srcdir}/gmic-${pkgver}"
+ make -C src install DESTDIR="$pkgdir" USR="/usr"
+ install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ rm -rf "${pkgdir}/usr/"{bin/zart,lib/gimp,share/zart}
+}
+
+package_zart() {
+ pkgdesc="A GUI for G'MIC real-time manipulations on the output of a webcam"
+ depends=("opencv" "fftw" "qt")
+
+ cd "${srcdir}/gmic-${pkgver}"
+ make -C src install DESTDIR="$pkgdir" USR="/usr"
+ install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ rm -rf "${pkgdir}/usr/"{bin/gmic,include,lib,share/{man,bash-completion}}
+}
+
+package_gimp-plugin-gmic() {
+ pkgdesc="Gimp plugin for the G'MIC image processing framework"
+ depends=("gimp" "fftw")
+ replaces=("gimp-plugin-greycstoration" "gimp-plugin-gmic4gimp")
+
+ cd "${srcdir}/gmic-${pkgver}"
+ install -Dm755 src/gmic_gimp "${pkgdir}/usr/lib/gimp/2.0/plug-ins/gmic_gimp"
+ install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/community-testing/gmic/opencv-buildfix.patch b/community-testing/gmic/opencv-buildfix.patch
new file mode 100644
index 000000000..b204cb721
--- /dev/null
+++ b/community-testing/gmic/opencv-buildfix.patch
@@ -0,0 +1,32 @@
+diff -wbBur gmic-1.5.1.7/src/Makefile gmic-1.5.1.7.q/src/Makefile
+--- gmic-1.5.1.7/src/Makefile 2012-07-26 12:59:34.000000000 +0400
++++ gmic-1.5.1.7.q/src/Makefile 2012-08-03 14:03:10.000000000 +0400
+@@ -296,7 +296,7 @@
+
+ zart: lib
+ ifneq ($(OS),Darwin)
+- cd ../zart && qmake-qt4 zart.pro && $(MAKE) && strip zart
++ cd ../zart && qmake zart.pro && $(MAKE) && strip zart
+ else
+ cd ../zart && qmake zart.pro && $(MAKE) "CFLAGS=$(STD_MACOSX_CFLAGS) $(OPT_CFLAGS)" "LDFLAGS=$(STD_MACOSX_LDFLAGS) $(OPT_LDFLAGS)"
+ endif
+@@ -403,6 +403,7 @@
+ mkdir -p $(DESTDIR)$(USR)/share/man/fr/man1/
+ cp -f ../man/gmic.1.gz $(DESTDIR)$(USR)/share/man/man1/gmic.1.gz
+ cp -f ../man/gmic.1.gz $(DESTDIR)$(USR)/share/man/fr/man1/gmic.1.gz
++ if test -d /usr/share/bash-completion/completions; then mkdir -p $(DESTDIR)/usr/share/bash-completion/completions/; cp -f gmic_bashcompletion.sh $(DESTDIR)/usr/share/bash-completion/completions/gmic; fi
+ if test -d /etc/bash_completion.d/; then mkdir -p $(DESTDIR)/etc/bash_completion.d/; cp -f gmic_bashcompletion.sh $(DESTDIR)/etc/bash_completion.d/gmic; fi
+ if test -d /opt/local/etc/bash_completion.d/; then mkdir -p $(DESTDIR)/opt/local/etc/bash_completion.d/; cp -f gmic_bashcompletion.sh $(DESTDIR)/opt/local/etc/bash_completion.d/gmic; fi
+
+diff -wbBur gmic-1.5.1.7/zart/zart.pro gmic-1.5.1.7.q/zart/zart.pro
+--- gmic-1.5.1.7/zart/zart.pro 2012-07-26 12:59:33.000000000 +0400
++++ gmic-1.5.1.7.q/zart/zart.pro 2012-08-03 12:32:27.000000000 +0400
+@@ -34,7 +34,7 @@
+ FORMS = ui/MainWindow.ui ui/DialogAbout.ui ui/DialogLicence.ui
+
+ !macx {
+- LIBS += -lX11 ../src/libgmic.a -lcxcore -lcv -lml -lhighgui -lml -lfftw3
++ LIBS += -lX11 ../src/libgmic.a `pkg-config --libs opencv` -lopencv_core -lopencv_ml -lopencv_highgui -lfftw3
+ } else {
+ LIBS += -lX11 ../src/libgmic.a `pkg-config opencv --libs` -lfftw3
+ }
diff --git a/community-testing/gource/PKGBUILD b/community-testing/gource/PKGBUILD
index e3886bcba..18341108c 100644
--- a/community-testing/gource/PKGBUILD
+++ b/community-testing/gource/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 77282 2012-10-08 14:35:47Z svenstaro $
+# $Id: PKGBUILD 78806 2012-10-25 01:47:41Z ebelanger $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Jose Valecillos <valecillosjg (at) gmail (dot) com>
# Contributor: Olivier Ramonat <olivier at ramonat dot fr>
pkgname=gource
pkgver=0.38
-pkgrel=4
+pkgrel=5
pkgdesc="software version control visualization"
license=(GPL3)
arch=(i686 x86_64)
diff --git a/community-testing/luminancehdr/PKGBUILD b/community-testing/luminancehdr/PKGBUILD
index 342141efa..25da2b543 100644
--- a/community-testing/luminancehdr/PKGBUILD
+++ b/community-testing/luminancehdr/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 74737 2012-08-02 15:36:57Z andrea $
+# $Id: PKGBUILD 78807 2012-10-25 01:47:48Z ebelanger $
# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org>
# Contributor: Lukas Jirkovsky <l.jirkovsky@gmail.com>
# Contributor: Dmitry N. Shilov <stormblast@land.ru>
pkgname=luminancehdr
pkgver=2.3.0
-pkgrel=2
+pkgrel=4
pkgdesc='Open source graphical user interface application that aims to provide a workflow for HDR imaging'
arch=('i686' 'x86_64')
url='http://qtpfsgui.sourceforge.net/'
@@ -20,14 +20,14 @@ source=(http://sourceforge.net/projects/qtpfsgui/files/luminance/${pkgver}/lumin
sha256sums=('dada0795b58843912bcb57ce61dcd615bcb9f9437b610a37ff813ad2c899c676')
build() {
- cd ${srcdir}/luminance-hdr-${pkgver}
+ cd "${srcdir}/luminance-hdr-${pkgver}"
cmake -DCMAKE_INSTALL_PREFIX=/usr
make
}
package() {
- cd ${srcdir}/luminance-hdr-${pkgver}
+ cd "${srcdir}/luminance-hdr-${pkgver}"
- make DESTDIR=${pkgdir} install
+ make DESTDIR="${pkgdir}" install
}
diff --git a/community-testing/luxrays/PKGBUILD b/community-testing/luxrays/PKGBUILD
index 6bc26c17c..6080a68aa 100644
--- a/community-testing/luxrays/PKGBUILD
+++ b/community-testing/luxrays/PKGBUILD
@@ -1,16 +1,15 @@
-# $Id: PKGBUILD 78154 2012-10-16 13:53:31Z allan $
+# $Id: PKGBUILD 78808 2012-10-25 01:47:52Z ebelanger $
# Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com>
pkgname=luxrays
pkgver=1.1
_pkgver=589aa5dac899
-pkgrel=1
-epoch=0
+pkgrel=3
pkgdesc="Accelerate the ray intersection process by using GPUs"
arch=('i686' 'x86_64')
url="http://www.luxrender.net/"
license=('GPL')
depends=('freeimage' 'freeglut' 'glew' 'libcl')
-makedepends=('cmake' 'boost' 'opencl-headers')
+makedepends=('cmake' 'boost' 'mesa' 'opencl-headers')
source=(https://bitbucket.org/luxrender/luxrays/get/$_pkgver.tar.bz2)
md5sums=('7513d71148fa14bc1779b816816580b9')
diff --git a/community-testing/luxrender/PKGBUILD b/community-testing/luxrender/PKGBUILD
index 01680e4f8..6a70142c2 100644
--- a/community-testing/luxrender/PKGBUILD
+++ b/community-testing/luxrender/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 78061 2012-10-16 11:51:31Z allan $
+# $Id: PKGBUILD 78809 2012-10-25 01:47:55Z ebelanger $
# Maintainer: Lukas Jirkovsky <l.jirkovsky@gmail.com>
# Initial contributor: flixie <69one@gmx.net>
# Contributor: Imanol Celaya <ornitorrincos@archlinux-es.org>
pkgname=luxrender
pkgver=1.1
_pkgver=4b4289cda943
-pkgrel=1
+pkgrel=3
pkgdesc="Rendering system for physically correct, unbiased image synthesis"
arch=('i686' 'x86_64')
url="http://www.luxrender.net/"
@@ -16,7 +16,7 @@ optdepends=('luxblend25: Blender exporter' 'qt: Qt GUI' \
'nvidia-utils: OpenCL support for nVidia GPUs' \
'amdstream: OpenCL support for AMD GPUs' \
'intel-opencl-sdk: OpenCL support for Intel CPUs')
-makedepends=('cmake' 'boost' 'qt' "luxrays=$pkgver" 'python' 'opencl-headers')
+makedepends=('cmake' 'boost' 'mesa' 'qt' "luxrays=$pkgver" 'python' 'opencl-headers')
source=(https://bitbucket.org/luxrender/lux/get/$_pkgver.tar.bz2)
md5sums=('accca65afdc4cc38db49a6e54f20e0f2')
diff --git a/community-testing/megaglest/PKGBUILD b/community-testing/megaglest/PKGBUILD
index d05435549..8f54a8ae6 100644
--- a/community-testing/megaglest/PKGBUILD
+++ b/community-testing/megaglest/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 77508 2012-10-11 12:20:33Z svenstaro $
+# $Id: PKGBUILD 78810 2012-10-25 01:48:00Z ebelanger $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Larry Hajali <larryhaja [at] gmail [dot] com>
pkgname=megaglest
pkgver=3.6.0.3
-pkgrel=4
+pkgrel=5
pkgdesc="Fork of Glest, a 3D real-time strategy game in a fantastic world."
arch=('i686' 'x86_64')
url="http://sourceforge.net/projects/megaglest/"
@@ -20,7 +20,7 @@ md5sums=('5a4a2429435031d9f9cc5d9535a9de9d'
build() {
cd "${srcdir}"/"${pkgname}"-"${pkgver}"/
- patch -Np1 < $srcdir/lol.patch
+ patch -Np1 < "$srcdir/lol.patch"
[[ -d build ]] && rm -r build
mkdir build && cd build
diff --git a/community-testing/openimageio/PKGBUILD b/community-testing/openimageio/PKGBUILD
index b62f5f71f..3f19c52e5 100644
--- a/community-testing/openimageio/PKGBUILD
+++ b/community-testing/openimageio/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 77494 2012-10-11 11:31:19Z svenstaro $
+# $Id: PKGBUILD 78811 2012-10-25 01:48:03Z ebelanger $
# Contributor: SpepS <dreamspepser at yahoo dot it>
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
pkgname=openimageio
pkgver=1.0.9
-pkgrel=1
+pkgrel=4
pkgdesc="A library for reading and writing images, including classes, utilities, and applications."
arch=(i686 x86_64)
url="http://www.openimageio.org/"
license=('custom')
depends=('openexr' 'boost-libs' 'jasper' 'glew')
-makedepends=('cmake' 'qt' 'python2' 'boost')
+makedepends=('cmake' 'qt' 'python2' 'boost' 'mesa')
optdepends=('qt: iv image viewer'
'python2: bindings support')
source=(https://github.com/OpenImageIO/oiio/tarball/Release-$pkgver)
@@ -21,16 +21,14 @@ build() {
[[ -d build ]] && rm -r build
mkdir build && cd build
- cmake -DCMAKE_INSTALL_PREFIX=/usr ..
+ cmake -DCMAKE_INSTALL_PREFIX=/usr -DPYLIB_INSTALL_DIR=lib/python2.7/site-packages ..
make
}
package() {
cd "$srcdir"/$_pkgname*/src/build
- make DESTDIR=$pkgdir install
-
- mv $pkgdir/usr/lib/python $pkgdir/usr/lib/python2.7
+ make DESTDIR="$pkgdir" install
# license
cd ../..
diff --git a/community-testing/performous/PKGBUILD b/community-testing/performous/PKGBUILD
index 72d7611a3..6bcdb894f 100644
--- a/community-testing/performous/PKGBUILD
+++ b/community-testing/performous/PKGBUILD
@@ -1,18 +1,16 @@
-# $Id: PKGBUILD 74518 2012-07-29 21:16:06Z ebelanger $
+# $Id: PKGBUILD 78812 2012-10-25 01:48:14Z ebelanger $
# Maintainer : Laurent Carlier <lordheavym@gmail.com>
# Contributor: Christoph Zeiler <archNOSPAM_at_moonblade.dot.org>
pkgname=performous
pkgver=0.6.1
-pkgrel=16
+pkgrel=17
pkgdesc='A free game like "Singstar", "Rockband" or "Stepmania"'
arch=('i686' 'x86_64')
url="http://performous.org/"
license=('GPL')
depends=('boost-libs' 'imagemagick' 'glew' 'libxml++' 'portaudio' 'portmidi' 'opencv' 'librsvg')
-#depends=('boost-libs>=1.48' 'sdl' 'jack' 'imagemagick' 'ffmpeg' 'glew>=1.7.0' 'libxml++' 'portaudio' 'portmidi' \
-# 'opencv' 'librsvg' 'libjpeg' 'libpng' 'cairo')
-makedepends=('cmake' 'pkgconfig' 'help2man' 'boost>=1.50')
+makedepends=('cmake' 'pkgconfig' 'help2man' 'boost>=1.50' 'mesa')
optdepends=('performous-freesongs: free songs for performous')
source=(http://sourceforge.net/projects/$pkgname/files/$pkgname/$pkgver/Performous-$pkgver-Source.tar.bz2
boost-filesystem-v3.patch
diff --git a/community-testing/projectm/PKGBUILD b/community-testing/projectm/PKGBUILD
index 5c8e90f15..f7ff912a0 100644
--- a/community-testing/projectm/PKGBUILD
+++ b/community-testing/projectm/PKGBUILD
@@ -1,34 +1,41 @@
-# $Id: PKGBUILD 74519 2012-07-29 21:16:13Z ebelanger $
-# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
+# $Id: PKGBUILD 78813 2012-10-25 01:48:17Z ebelanger $
+# Maintainer: Alexander Rødseth <rodseth@gmail.com>
+# Contributor: Lukas Fleischer <archlinux at cryptocrack dot de>
# Contributor: Alexander Baldeck <alexander@archlinux.org>
-pkgname=projectm
-pkgver=2.0.1
-pkgrel=6
-pkgdesc='A music visualizer which uses 3D accelerated iterative image based rendering.'
-arch=('i686' 'x86_64')
+pkgbase=projectm
+pkgname=('projectm' 'libvisual-projectm')
+pkgver=2.1.0
+pkgrel=2
+arch=('x86_64' 'i686')
url='http://projectm.sourceforge.net/'
license=('LGPL')
-depends=('gcc-libs' 'ftgl' 'glew' 'gtkglext')
-makedepends=('pkg-config' 'cmake')
-source=("http://downloads.sourceforge.net/${pkgname}/projectM-${pkgver}-Source.tar.gz"
- 'libprojectM-2.0.1-pkg-config.patch'
- 'libprojectM-2.0.1-fix-linking.patch')
-md5sums=('f8bf795878cdbbef54784cf2390b4c89'
- '4f258f4e7c2ab612931936bfd7f1f0fb'
- '5c178cadf1e00ee4baf32cd9ccbc818c')
+makedepends=('cmake' 'ftgl' 'glew' 'gtkglext' 'libvisual' 'sdl' 'libxext')
+source=("http://downloads.sourceforge.net/$pkgname/projectM-complete-$pkgver-Source.tar.gz")
+sha256sums=('513204f033006bd3dcdf8aada196d816d6b7187266ddcbb1594d0285cc9406ee')
build() {
- cd "${srcdir}/projectM-${pkgver}-Source"
+ cd $srcdir/projectM-complete-$pkgver-Source/src
+ cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DINCLUDE-PROJECTM-QT=OFF \
+ -DINCLUDE-PROJECTM-PULSEAUDIO=OFF -DINCLUDE-PROJECTM-TEST=OFF
+ make
+}
- patch -Np1 -i "${srcdir}/libprojectM-2.0.1-pkg-config.patch"
- patch -Np1 -i "${srcdir}/libprojectM-2.0.1-fix-linking.patch"
+package_projectm() {
+ pkgdesc='Music visualizer which uses 3D accelerated iterative image based rendering'
+ depends=('ftgl' 'glew' 'gtkglext')
- cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
- make
+ cd $srcdir/projectM-complete-$pkgver-Source/src/libprojectM
+ make DESTDIR=$pkgdir install
+ install -m644 fonts/Vera.ttf $pkgdir/usr/share/projectM/fonts/Vera.ttf
}
-package() {
- cd "${srcdir}/projectM-${pkgver}-Source"
- make DESTDIR="${pkgdir}" install
+package_libvisual-projectm() {
+ pkgdesc='ProjectM XMMS plugin'
+ depends=("projectm>=$pkgver" 'libvisual' 'sdl')
+
+ cd $srcdir/projectM-complete-$pkgver-Source/src/projectM-libvisual
+ make DESTDIR=$pkgdir install
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community-testing/rss-glx/PKGBUILD b/community-testing/rss-glx/PKGBUILD
index e2ef22fed..fbc83a77d 100644
--- a/community-testing/rss-glx/PKGBUILD
+++ b/community-testing/rss-glx/PKGBUILD
@@ -1,16 +1,17 @@
-# $Id: PKGBUILD 77302 2012-10-08 15:09:01Z spupykin $
+# $Id: PKGBUILD 78814 2012-10-25 01:48:24Z ebelanger $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Corrado 'bardo' Primier <corrado.primier@mail.polimi.it>
# Contributor: Tate "Tatey" Johnson <tatey86@tpg.com.au>
pkgname=rss-glx
pkgver=0.9.1
-pkgrel=10
+pkgrel=12
pkgdesc="The Really Slick Screensavers port to GLX"
arch=('i686' 'x86_64')
url="http://rss-glx.sourceforge.net/"
license=('GPL')
-depends=('desktop-file-utils' 'freealut' 'glew' 'imagemagick' 'glu' 'mesa')
+depends=('desktop-file-utils' 'freealut' 'glew' 'imagemagick' 'glu')
+makedepends=('mesa')
optdepends=('xscreensaver: xscreensaver integration')
install=rss-glx.install
options=('!libtool')
diff --git a/community-testing/sfml/PKGBUILD b/community-testing/sfml/PKGBUILD
index 8650d6c50..175d73029 100644
--- a/community-testing/sfml/PKGBUILD
+++ b/community-testing/sfml/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 74521 2012-07-29 21:16:25Z ebelanger $
+# $Id: PKGBUILD 78815 2012-10-25 01:48:29Z ebelanger $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Ondrej Martinak <omartinak@gmail.com>
pkgname=sfml
pkgver=2.0rc1
-pkgrel=2
+pkgrel=3
pkgdesc='A simple, fast, cross-platform, and object-oriented multimedia API'
arch=('i686' 'x86_64')
url='http://www.sfml-dev.org/'
@@ -33,8 +33,6 @@ package() {
install -Dm644 "$pkgdir/usr/share/SFML/cmake/Modules/FindSFML.cmake" "$pkgdir/usr/share/cmake-2.8/Modules/FindSFML.cmake"
- install -Dm644 ../license.txt ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
-
- make clean
+ install -Dm644 ../license.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
diff --git a/community-testing/spring/PKGBUILD b/community-testing/spring/PKGBUILD
index f7dae92f1..da285bce3 100644
--- a/community-testing/spring/PKGBUILD
+++ b/community-testing/spring/PKGBUILD
@@ -1,26 +1,24 @@
-# $Id: PKGBUILD 74522 2012-07-29 21:16:32Z ebelanger $
+# $Id: PKGBUILD 78816 2012-10-25 01:48:36Z ebelanger $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Arkham <arkham at archlinux dot us>
# Contributor: Christoph Zeiler <archNOSPAM_at_moonblade.dot.org>
pkgname=spring
-pkgver=0.89.0
-_pkgver=89.0
-pkgrel=2
+pkgver=0.91.0
+_pkgver=91.0
+pkgrel=3
pkgdesc='A free 3D real-time-strategy (RTS) game engine'
arch=('i686' 'x86_64')
url="http://springrts.com/"
license=('GPL')
depends=('openal' 'glew' 'boost-libs' 'freetype2' 'devil' 'libvorbis' 'sdl'
'libxcursor' 'curl' 'shared-mime-info' 'desktop-file-utils')
-makedepends=('boost' 'cmake' 'zip' 'xz' 'p7zip' 'python2' 'java-environment')
+makedepends=('boost' 'cmake' 'zip' 'xz' 'p7zip' 'python2' 'java-environment' 'mesa')
optdepends=('python2: python-based bots'
'java-runtime: java-based bots')
install=spring.install
-source=(http://downloads.sourceforge.net/sourceforge/springrts/${pkgname}_${_pkgver}_src.tar.lzma
- boost-1.50.patch)
-md5sums=('36fc266e925bc3790a68bf1bc7ebb315'
- 'a3c3b4a53eeb499090b027fd6b3cf848')
+source=(http://downloads.sourceforge.net/sourceforge/springrts/${pkgname}_${_pkgver}_src.tar.lzma)
+md5sums=('8849ace38f2ae20dc100b9d0a8d743e9')
build() {
bsdtar -xf ${pkgname}_${_pkgver}_src.tar.lzma
@@ -28,7 +26,6 @@ build() {
cd spring_${_pkgver}
sed "s/TIME_UTC/TIME_UTC_/g" -i AI/Skirmish/E323AI/CScopedTimer.h
- patch -Np1 < "$srcdir/boost-1.50.patch"
cmake . \
-DCMAKE_INSTALL_PREFIX=/usr \
diff --git a/community-testing/supertux/PKGBUILD b/community-testing/supertux/PKGBUILD
index 3a0774e73..8c395dd96 100644
--- a/community-testing/supertux/PKGBUILD
+++ b/community-testing/supertux/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 74523 2012-07-29 21:16:37Z ebelanger $
+# $Id: PKGBUILD 78817 2012-10-25 01:48:41Z ebelanger $
# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
# Contributor: Eric BĂ©langer <eric@archlinux.org>
# Contributor: vande198
@@ -6,13 +6,13 @@
pkgname=supertux
pkgver=0.3.3
-pkgrel=6
+pkgrel=7
pkgdesc="A classic 2D jump'n run sidescroller game in a style similar to the original SuperMario games"
arch=('i686' 'x86_64')
url="http://super-tux.sourceforge.net/"
license=('GPL')
-depends=('sdl_image' 'curl' 'physfs' 'openal' 'libvorbis' 'libgl' 'glew')
-makedepends=('cmake' 'boost')
+depends=('sdl_image' 'curl' 'physfs' 'openal' 'libvorbis' 'glew')
+makedepends=('cmake' 'boost' 'mesa')
source=(http://download.berlios.de/supertux/${pkgname}-${pkgver}.tar.bz2
supertux2-0.3.3-squirrel-gcc47.patch)
md5sums=('f3f803e629ee51a9de0b366a036e393d'
diff --git a/community-testing/widelands/PKGBUILD b/community-testing/widelands/PKGBUILD
index fad42b7a9..81e399102 100644
--- a/community-testing/widelands/PKGBUILD
+++ b/community-testing/widelands/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 75743 2012-08-30 16:56:23Z heftig $
+# $Id: PKGBUILD 78818 2012-10-25 01:48:56Z ebelanger $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Arkham <arkham at archlinux dot us>
# Contributor: Christoph Zeiler <rabyte*gmail>
@@ -6,13 +6,13 @@
pkgname=widelands
pkgver=17
_realver=build17
-pkgrel=4
+pkgrel=5
pkgdesc="A realtime strategy game with emphasis on economy and transport"
arch=('i686' 'x86_64')
url="http://widelands.org/"
license=('GPL')
-depends=('sdl_mixer' 'sdl_image' 'sdl_net' 'sdl_ttf' 'sdl_gfx' 'lua' 'glew' 'python2' 'widelands-data')
-makedepends=('cmake' 'boost')
+depends=('sdl_mixer' 'sdl_image' 'sdl_net' 'sdl_ttf' 'sdl_gfx' 'lua' 'glew' 'python2')
+makedepends=('cmake' 'boost' 'mesa')
source=("https://launchpad.net/widelands/build17/build-17/+download/$pkgname-$_realver-src.tar.bz2"
$pkgname.desktop
$pkgname.png
@@ -38,6 +38,7 @@ build() {
}
package() {
+ depends=(${depends[@]} 'widelands-data')
cd $srcdir/$pkgname-$_realver-src/build/compile
make DESTDIR="$pkgdir" install
diff --git a/community-testing/xbmc/PKGBUILD b/community-testing/xbmc/PKGBUILD
index 1cefe9cee..df296ecfe 100644
--- a/community-testing/xbmc/PKGBUILD
+++ b/community-testing/xbmc/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 77308 2012-10-08 15:42:04Z spupykin $
+# $Id: PKGBUILD 78819 2012-10-25 01:49:05Z ebelanger $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Brad Fanella <bradfanella@archlinux.us>
# Contributor: [vEX] <niechift.dot.vex.at.gmail.dot.com>
@@ -9,7 +9,7 @@ _prefix=/usr
pkgname=xbmc
pkgver=11.0
-pkgrel=8
+pkgrel=10
pkgdesc="A software media player and entertainment hub for digital media"
arch=('i686' 'x86_64')
url="http://xbmc.org"
@@ -19,8 +19,8 @@ depends=('libpulse' 'hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff'
'glew' 'libssh' 'libmicrohttpd' 'libxrandr' 'sdl_mixer' 'sdl_image' 'python2'
'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'mesa-demos'
'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez' 'glu')
-makedepends=('boost' 'cmake' 'gperf' 'nasm' 'libxinerama' 'zip' 'vdpau-video' 'libcec'
- 'udisks' 'upower' 'bluez')
+makedepends=('boost' 'cmake' 'gperf' 'nasm' 'libxinerama' 'zip' 'libvdpau' 'libcec'
+ 'udisks' 'upower' 'bluez' 'mesa')
optdepends=('libcec: support for Pulse-Eight USB-CEC adapter'
'vdpau-video: accelerated video playback for nvidia cards'
'xvba-video: accelerated video playback for amd cards'
@@ -28,11 +28,21 @@ optdepends=('libcec: support for Pulse-Eight USB-CEC adapter'
'lirc: remote controller support'
'udisks: automount external drives'
'upower: used to trigger suspend functionality'
- 'unrar: access compressed files without unpacking them')
+ 'unrar: access compressed files without unpacking them'
+ 'xorg-xinit: autostart xbmc')
install="${pkgname}.install"
-source=("http://mirrors.xbmc.org/releases/source/xbmc-$pkgver.tar.gz")
+source=("http://mirrors.xbmc.org/releases/source/xbmc-$pkgver.tar.gz"
+ "xbmc.service")
sha256sums=('1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19')
sha256sums=('1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19')
+sha256sums=('1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19'
+ '395ca1afd3430ad66239bafbffde0eedf9c43409b77f65341ef387f09cd65588')
+sha256sums=('1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19'
+ '75ae8eb37e334ae1383bf897b08dd5f70df12d79ce46cdbe4a7e0d3c82bce3af')
+sha256sums=('1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19'
+ '75ae8eb37e334ae1383bf897b08dd5f70df12d79ce46cdbe4a7e0d3c82bce3af')
+sha256sums=('1fe5d310c16138f26e2b13bc545604e95f48ace6c8636f23e77da402cd7b0b19'
+ '75ae8eb37e334ae1383bf897b08dd5f70df12d79ce46cdbe4a7e0d3c82bce3af')
build() {
cd "${srcdir}/xbmc-$pkgver"
@@ -103,5 +113,8 @@ package() {
for licensef in LICENSE.GPL copying.txt; do
mv "${pkgdir}${_prefix}/share/doc/xbmc/${licensef}" "${pkgdir}${_prefix}/share/licenses/${pkgname}"
done
+
+ # systemd stuff
+ install -Dm0644 $srcdir/xbmc.service $pkgdir/usr/lib/systemd/system/xbmc.service
}
# vim:set ts=2 sw=2 et:
diff --git a/community-testing/xbmc/xbmc.install b/community-testing/xbmc/xbmc.install
index 862508e73..a3ae3d0d8 100644
--- a/community-testing/xbmc/xbmc.install
+++ b/community-testing/xbmc/xbmc.install
@@ -1,15 +1,16 @@
post_install() {
[[ $(type -p gtk-update-icon-cache) ]] && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor
[[ $(type -p update-desktop-database) ]] && usr/bin/update-desktop-database -q usr/share/applications
- true
+ groupadd xbmc
+ useradd -G xbmc -d /var/empty xbmc
}
post_upgrade() {
post_install $1
- true
+ echo "You may want to add xbmc user and group to use xbmc standalone"
}
post_remove() {
post_install $1
- true
+ echo "You may want to remove xbmc user and group"
}
diff --git a/community-testing/xbmc/xbmc.service b/community-testing/xbmc/xbmc.service
new file mode 100644
index 000000000..b66e35c80
--- /dev/null
+++ b/community-testing/xbmc/xbmc.service
@@ -0,0 +1,13 @@
+[Unit]
+Description = Starts instance of XBMC using xinit
+After = remote-fs.target
+
+[Service]
+User = xbmc
+Group = xbmc
+Type = simple
+ExecStart = /usr/bin/xinit /usr/bin/xbmc-standalone -- :0
+Restart = on-failure
+
+[Install]
+WantedBy = multi-user.target
diff --git a/community/audit/PKGBUILD b/community/audit/PKGBUILD
index 4a1a22871..9584020fc 100644
--- a/community/audit/PKGBUILD
+++ b/community/audit/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 74552 2012-07-30 13:59:54Z mtorromeo $
+# $Id: PKGBUILD 78779 2012-10-24 13:52:59Z mtorromeo $
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
# Contributor: Connor Behan <connor.behan@gmail.com>
# Contributor: henning mueller <henning@orgizm.net>
pkgname=audit
pkgver=2.2.1
-pkgrel=2
+pkgrel=3
pkgdesc='User space utilities for storing and searching the audit records generated by the audit subsystem in the Linux kernel.'
url=http://people.redhat.com/sgrubb/$pkgname
arch=(i686 x86_64)
@@ -31,10 +31,6 @@ source=(
auditd.service
python2.patch
)
-md5sums=('dc099fcb2f9242d47ecc35b46d71dfd1'
- '5f86e87354d0c3b9b408a26daed7a906'
- '67f6c51891120da038cb790693d8eba1'
- '45a33c6bef84f8e1701cb0b5e187336b')
build() {
cd "$srcdir/$pkgname-$pkgver"
@@ -59,5 +55,9 @@ package() {
install -m755 "$srcdir/auditd.rc" etc/rc.d/auditd
install -d var/log/audit
rm -rf etc/rc.d/init.d etc/sysconfig
- mv usr/sbin sbin
}
+
+sha256sums=('9865ca89f5b975ccf25441ddf45a874448f2bba944005aa8cd5e3c3148713a63'
+ '42c0a4f6ebbd185f783320fd552541d15eb91029b83add21d1e0289ac2dda7ba'
+ '3c7179f40216b594675f26bb73884406c8ac91577b609dd1ab9837f889954007'
+ 'e60c031c6354f41938447c439eadee77127307687a2c487a54fab884eeafd9c2')
diff --git a/community/audit/auditd.service b/community/audit/auditd.service
index 199b0dcbe..208b5c38e 100644
--- a/community/audit/auditd.service
+++ b/community/audit/auditd.service
@@ -1,12 +1,10 @@
[Unit]
-Description=Audit Daemon
+Description=Security Auditing Service
+After=syslog.target
[Service]
-ExecStartPre=/sbin/auditctl -R /etc/audit/audit.rules
-ExecStart=/sbin/auditd -n
-ExecStop=/bin/kill -15 $MAINPID
-ExecReload=/bin/kill -HUP $MAINPID
-Restart=always
+ExecStart=/usr/sbin/auditd -n
+ExecStartPost=/usr/sbin/auditctl -R /etc/audit/audit.rules
[Install]
-WantedBy=multi-user.target
+WantedBy=multi-user.target \ No newline at end of file
diff --git a/community/espeakup/PKGBUILD b/community/espeakup/PKGBUILD
index ca2fcd40b..a7eab9de6 100644
--- a/community/espeakup/PKGBUILD
+++ b/community/espeakup/PKGBUILD
@@ -1,26 +1,31 @@
-# $Id: PKGBUILD 65675 2012-02-21 21:13:11Z cbrannon $
-# Maintainer: Chris Brannon <chris@the-brannons.com>
+# $Id: PKGBUILD 78791 2012-10-24 23:06:54Z tomegun $
+# Contributor: Chris Brannon <chris@the-brannons.com>
+# Contributor: Kyle <kyle@gmx.ca>
pkgname=espeakup
pkgver=0.71
-pkgrel=4
+pkgrel=5
pkgdesc='Allows the Speakup screen review system to use the ESpeak synthesizer.'
arch=('i686' 'x86_64')
url="http://github.com/williamh/espeakup"
license=('GPL3')
source=("ftp://linux-speakup.org/pub/linux/goodies/${pkgname}-${pkgver}.tar.bz2"
- espeakup espeakup.conf.d)
-md5sums=('03daa70b3db3f4f6fbb42c2ee428eda7'
- '7cf0abd493710ed924b7bb7c8d279fb3'
- '0f93974845b15efa12f5e7a74cc0eecd')
+ espeakup espeakup.conf.d espeakup.service)
depends=(speakup-utils espeak)
backup=(etc/conf.d/espeakup)
build() {
- cd "$srcdir"
- install -m755 -D espeakup "${pkgdir}/etc/rc.d/espeakup"
- install -m644 -D espeakup.conf.d "${pkgdir}/etc/conf.d/espeakup"
cd "$srcdir/$pkgname-$pkgver"
-
make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="${pkgdir}" install
+ install -m755 -D "${srcdir}/espeakup" "${pkgdir}/etc/rc.d/espeakup"
+ install -m644 -D "${srcdir}/espeakup.conf.d" "${pkgdir}/etc/conf.d/espeakup"
+ install -m644 -D "${srcdir}/espeakup.service" "${pkgdir}/usr/lib/systemd/system/espeakup.service"
}
+md5sums=('03daa70b3db3f4f6fbb42c2ee428eda7'
+ '7cf0abd493710ed924b7bb7c8d279fb3'
+ '0f93974845b15efa12f5e7a74cc0eecd'
+ '0c11c50b128234cda8e1357e88cf7c43')
diff --git a/community/espeakup/espeakup.service b/community/espeakup/espeakup.service
new file mode 100644
index 000000000..58d7d47fa
--- /dev/null
+++ b/community/espeakup/espeakup.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Software speech output for Speakup
+
+[Service]
+Type=forking
+PIDFile=/run/espeakup.pid
+ExecStart=/usr/bin/espeakup
+ExecReload=/bin/kill -HUP $MAINPID
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/community/libextractor/PKGBUILD b/community/libextractor/PKGBUILD
index 669b500dc..349f8578a 100644
--- a/community/libextractor/PKGBUILD
+++ b/community/libextractor/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 78664 2012-10-22 14:19:49Z spupykin $
+# $Id: PKGBUILD 78771 2012-10-24 12:21:52Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s@gmail.com>
# Contributor: damir <damir@archlinux.org>
pkgname=libextractor
pkgver=1.0.1
-pkgrel=1
+pkgrel=2
pkgdesc="A library used to extract meta-data from files of arbitrary type"
arch=("i686" "x86_64")
license=('GPL')
diff --git a/community/libextractor/libextractor.install b/community/libextractor/libextractor.install
index 1cf51e095..27002d556 100644
--- a/community/libextractor/libextractor.install
+++ b/community/libextractor/libextractor.install
@@ -1,5 +1,5 @@
infodir=usr/share/info
-filelist=(extractor.info.gz)
+filelist=(libextractor.info.gz)
post_install() {
[ -x usr/bin/install-info ] || return 0
diff --git a/community/libmediainfo/PKGBUILD b/community/libmediainfo/PKGBUILD
index cab8407e8..ab2c866f7 100644
--- a/community/libmediainfo/PKGBUILD
+++ b/community/libmediainfo/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 75876 2012-09-04 15:28:30Z spupykin $
+# $Id: PKGBUILD 78757 2012-10-24 10:01:02Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: hydro <hydro@freenet.de>
pkgname=libmediainfo
-pkgver=0.7.60
+pkgver=0.7.61
pkgrel=1
pkgdesc="shared library for mediainfo"
arch=('i686' 'x86_64')
@@ -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=('f2a8e921814fc188ada7a236c8a2073e'
+md5sums=('371519c1c24e4de84448d6624fc41aa8'
'2f4b21cc250f663d52b497dedb963e3b')
build() {
diff --git a/community/mediainfo-gui/PKGBUILD b/community/mediainfo-gui/PKGBUILD
index 6e9f9be29..369ab9284 100644
--- a/community/mediainfo-gui/PKGBUILD
+++ b/community/mediainfo-gui/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 75882 2012-09-04 15:30:42Z spupykin $
+# $Id: PKGBUILD 78761 2012-10-24 10:02:27Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: hydro <hydro@freenet.de>
pkgname=mediainfo-gui
-pkgver=0.7.60
+pkgver=0.7.61
pkgrel=1
pkgdesc="GUI for mediainfo"
arch=('i686' 'x86_64')
@@ -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=('ed1e1baf50ac101ef5c41b6b32ada36e')
+md5sums=('46fd776968ec1047cd2a5056a906cdf2')
build() {
cd $srcdir/MediaInfo/Project/GNU/GUI
diff --git a/community/mediainfo/PKGBUILD b/community/mediainfo/PKGBUILD
index 7bf653122..96971bee7 100644
--- a/community/mediainfo/PKGBUILD
+++ b/community/mediainfo/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 75880 2012-09-04 15:30:01Z spupykin $
+# $Id: PKGBUILD 78759 2012-10-24 10:01:48Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: hydro <hydro@freenet.de>
pkgname=mediainfo
-pkgver=0.7.60
+pkgver=0.7.61
pkgrel=1
pkgdesc="supplies technical and tag information about a video or audio file"
arch=('i686' 'x86_64')
@@ -12,7 +12,7 @@ license=('GPL')
depends=('libmediainfo')
makedepends=('libtool' 'automake' 'autoconf')
source=(http://downloads.sourceforge.net/mediainfo/${pkgname}_${pkgver}.tar.bz2)
-md5sums=('ed1e1baf50ac101ef5c41b6b32ada36e')
+md5sums=('46fd776968ec1047cd2a5056a906cdf2')
build() {
cd $srcdir/MediaInfo/Project/GNU/CLI
diff --git a/community/nodejs/PKGBUILD b/community/nodejs/PKGBUILD
index a5f42959f..79fcf098c 100644
--- a/community/nodejs/PKGBUILD
+++ b/community/nodejs/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 77604 2012-10-13 08:08:33Z bpiotrowski $
+# $Id: PKGBUILD 78788 2012-10-24 19:44:32Z bpiotrowski $
# Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl>
# Contributor: Thomas Dziedzic < gostrc at gmail >
# Contributor: James Campos <james.r.campos@gmail.com>
@@ -9,12 +9,12 @@
pkgname=nodejs
pkgver=0.8.12
-pkgrel=1
+pkgrel=2
pkgdesc='Evented I/O for V8 javascript'
arch=('i686' 'x86_64')
url='http://nodejs.org/'
license=('MIT')
-depends=('openssl' 'python2') #'v8')
+depends=('openssl' 'python2' 'v8')
checkdepends=('curl') # curl used for check()
options=('!emptydirs')
source=(http://nodejs.org/dist/v${pkgver}/node-v${pkgver}.tar.gz)
@@ -24,18 +24,21 @@ build() {
cd node-v${pkgver}
msg 'Fixing for python2 name'
- find -type f -exec sed -e 's_^#!/usr/bin/env python$_&2_' -e 's_^\(#!/usr/bin/python2\).[45]$_\1_' -e 's_^#!/usr/bin/python$_&2_' -e "s_'python'_'python2'_" -i {} \;
- find test -type f -exec sed -e "s|python |python2 |" -i {} \;
- sed -i "s|python |python2 |" Makefile
+ find -type f -exec \
+ sed -e 's_^#!/usr/bin/env python$_&2_' \
+ -e 's_^\(#!/usr/bin/python2\).[45]$_\1_' \
+ -e 's_^#!/usr/bin/python$_&2_' \
+ -e "s_'python'_'python2'_" \
+ -e 's_python _python2 _' -i {} \;
export PYTHON=python2
./configure \
--prefix=/usr \
--shared-openssl \
-# --shared-v8 \
-# --shared-v8-libpath=/usr/lib \
-# --shared-v8-includes=/usr/include
+ --shared-v8 \
+ --shared-v8-libpath=/usr/lib \
+ --shared-v8-includes=/usr/include
make
}
diff --git a/community/plan9port/PKGBUILD b/community/plan9port/PKGBUILD
index 41ff541a6..df7d3f3f0 100644
--- a/community/plan9port/PKGBUILD
+++ b/community/plan9port/PKGBUILD
@@ -1,11 +1,13 @@
-# $Id: PKGBUILD 73814 2012-07-15 22:19:23Z cbrannon $
+# $Id: PKGBUILD 78790 2012-10-24 21:59:59Z arodseth $
+# Maintainer: Alexander Rødseth <rodseth@gmail.com>
# Contributor: phrakture <aaronmgriffin--gmail--com>
# Contributor: Fazlul Shahriar
# Contributor: Chris Brannon <cmbrannon79@gmail.com>
+
pkgname=plan9port
-pkgver=20120715
+pkgver=20121022
pkgrel=1
-pkgdesc="A port of many programs from Plan 9 to Unix-like operating systems"
+pkgdesc='Port of many programs from Plan 9'
arch=('i686' 'x86_64')
url="http://swtch.com/plan9port/"
license=('custom')
@@ -14,17 +16,28 @@ optdepends=('python2: for the codereview script')
provides=('plan9')
install=plan9.install
source=(http://swtch.com/$pkgname/$pkgname-$pkgver.tgz plan9.sh)
+sha256sums=('1293b5d2e46d0d6f7be2adbdb285ce278a25c77e88b5cd7c230e16a47d0f8638'
+ '0247c4446497359d305aaec069b07180fbf79ce4fa5191464cd9ebb8c7f0228d')
+
+build() {
+ cd "$srcdir/plan9"
+
+ ./INSTALL -b
+}
+
+package() {
+ cd "$srcdir/plan9"
-build()
-{
- install -Dm755 "$srcdir/plan9.sh" "$pkgdir/etc/profile.d/plan9.sh" || return 1
+ install -Dm755 ../plan9.sh $pkgdir/etc/profile.d/plan9.sh
- install -dm755 "$pkgdir/opt" "$pkgdir/usr/share/doc/$pkgname" || return 1
- mv "$srcdir/plan9" "$pkgdir/opt"
+ mkdir -p "$pkgdir/opt"
+ cp -r $srcdir/plan9 $pkgdir/opt/
+ mkdir -p $pkgdir/usr/share/doc/$pkgname
cd "$pkgdir/opt/plan9"
- ./INSTALL || return 1
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" || return 1
+ ./INSTALL -c -r "$pkgdir/opt/plan9"
+
+ install -Dm644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
# Don't need these under /opt/plan9.
rm -rf .hg/
@@ -33,21 +46,18 @@ build()
rm -f config install.log install.sum install.txt configure Makefile INSTALL \
LICENSE
- borkedfiles=`grep -r "$pkgdir"/opt/plan9 * | grep -v Binary | cut -d\: -f1`
- for f in $borkedfiles; do
- echo "fixing hardcoded paths in $f"
- sed -i "s@$pkgdir/opt/plan9@/opt/plan9@" $f || return 1
+ msg2 "Fixing hardcoded paths..."
+ for f in `grep -H -r "$pkgdir/opt/plan9" | cut -d: -f1`; do
+ echo -n "\t$f"
+ [ -e "$f" ] && sed -i "s:$pkgdir/opt/plan9:/opt/plan9:" "$f" || true
done
find "$pkgdir" -name '*.py' -print0 |xargs -0 \
- sed -i -e 's,^#!/usr/bin/env python$,#!/usr/bin/env python2,' \
+ sed -i -e 's,^#!/usr/bin/env python$,#!/usr/bin/python2,' \
-e 's,^#!/usr/bin/python$,#!/usr/bin/python2,'
- for i in CHANGES CONTRIBUTORS README TODO
- do
- install -m644 $i "$pkgdir/usr/share/doc/$pkgname" || return 1
+ for i in CHANGES CONTRIBUTORS README TODO; do
+ install -m644 $i "$pkgdir/usr/share/doc/$pkgname"
rm -f $i
done
}
-md5sums=('1e0698aa5f652a1a47227be2b25fa8fd'
- '9695eb15a247e23140e8a35ff52a5c20')
diff --git a/community/plan9port/plan9.install b/community/plan9port/plan9.install
index 63b8dd0da..97ca74fa6 100644
--- a/community/plan9port/plan9.install
+++ b/community/plan9port/plan9.install
@@ -1,7 +1,3 @@
-pre_install() {
- /bin/true
-}
-
post_install() {
echo "==> Decompressing plan9 man pages"
for i in `find /opt/plan9/man -type f`; do
@@ -17,26 +13,18 @@ post_install() {
echo "==> Please log off or 'source /etc/profile.d/plan9.sh'"
echo "==> Run '9 man 1 intro | less' to begin"
source /etc/profile.d/plan9.sh
- /bin/true
}
pre_upgrade() {
post_remove
- /bin/true
}
post_upgrade() {
post_install
- /bin/true
-}
-
-pre_remove() {
- /bin/true
}
post_remove() {
#we had to unpack them so they won't get removed....
rm -rf /opt/plan9/man
- /bin/true
}
diff --git a/community/rocksndiamonds/PKGBUILD b/community/rocksndiamonds/PKGBUILD
index c891b3dfe..b7a265456 100644
--- a/community/rocksndiamonds/PKGBUILD
+++ b/community/rocksndiamonds/PKGBUILD
@@ -1,18 +1,20 @@
-# $Id: PKGBUILD 65505 2012-02-21 06:44:27Z spupykin $
+# $Id: PKGBUILD 78773 2012-10-24 12:38:16Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Jacek Poplawski <jacekpoplawski@gmail.com>
pkgname=rocksndiamonds
pkgver=3.3.0.1
-pkgrel=2
+pkgrel=3
pkgdesc="game similiar to Boulderdash with lots of levels"
arch=(i686 x86_64)
url="http://www.artsoft.org/rocksndiamonds/"
license=('GPL')
depends=('sdl' 'sdl_image' 'sdl_mixer' 'sdl_net' 'smpeg')
makedepends=('unzip' 'p7zip')
-source=(http://www.artsoft.org/RELEASES/unix/rocksndiamonds/rocksndiamonds-$pkgver.tar.gz)
-md5sums=('813ced99d54f89db7c593c518d197d18')
+source=(http://www.artsoft.org/RELEASES/unix/rocksndiamonds/rocksndiamonds-$pkgver.tar.gz
+ rocksndiamonds.desktop)
+md5sums=('813ced99d54f89db7c593c518d197d18'
+ '18a3541db4d71feb0ad3b50ea4006738')
build() {
depends=('sdl' 'sdl_image' 'sdl_mixer' 'sdl_net' 'smpeg' 'rocksndiamonds-data')
@@ -27,4 +29,6 @@ build() {
install -d $pkgdir/usr/share/man/man1
cp $srcdir/rocksndiamonds-$pkgver/rocksndiamonds $pkgdir/usr/bin/rocksndiamonds
cp $srcdir/rocksndiamonds-$pkgver/rocksndiamonds.1 $pkgdir/usr/share/man/man1
+
+ install -Dm0644 $srcdir/rocksndiamonds.desktop $pkgdir/usr/share/applications/rocksndiamonds.desktop
}
diff --git a/community/rocksndiamonds/rocksndiamonds.desktop b/community/rocksndiamonds/rocksndiamonds.desktop
new file mode 100644
index 000000000..79de3f1d1
--- /dev/null
+++ b/community/rocksndiamonds/rocksndiamonds.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=Rocks'N'Diamonds
+GenericName=Rocks'N'Diamonds
+Comment=Arcade game
+Exec=rocksndiamonds
+Terminal=false
+Type=Application
+Categories=Application;Game;
+StartupNotify=false
diff --git a/community/sshguard/PKGBUILD b/community/sshguard/PKGBUILD
index 5753e126b..e930bb220 100644
--- a/community/sshguard/PKGBUILD
+++ b/community/sshguard/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 76846 2012-10-01 07:36:10Z mtorromeo $
+# $Id: PKGBUILD 78777 2012-10-24 13:36:34Z mtorromeo $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=sshguard
pkgver=1.5
-pkgrel=6
+pkgrel=7
pkgdesc="brute force detector for SSH, Exim, VSFTPD and more. Blocks by ip with iptables"
arch=('i686' 'x86_64')
#url="http://sourceforge.net/projects/sshguard/"
@@ -22,7 +22,7 @@ source=("http://downloads.sourceforge.net/sourceforge/sshguard/sshguard-$pkgver.
sha256sums=('b537f8765455fdf8424f87d4bd695e5b675b88e5d164865452137947093e7e19'
'a810da878e40be8616a93c9984e7dbd3700367d665b78b8aa2498228bb33cb6e'
'66f28e2cc81e5686f8fd5c0d5a5015d7feecbe018a259f4032cfbacf6fe8d1c3'
- '53bcf72340495bea19e15a0d80771028e933fceb08789243fef47884b7507075'
+ '12e576713f7ed9c87cc36417fd8bb8dd613b9d27f06cae9dd0a1aae9ca65acd7'
'b1ebc5dd10374a790c7d06419694143bffa019a7c65c8a7b2541487aecec574d')
build() {
diff --git a/community/sshguard/sshguard.service b/community/sshguard/sshguard.service
index c317d0932..72e76be40 100644
--- a/community/sshguard/sshguard.service
+++ b/community/sshguard/sshguard.service
@@ -1,10 +1,9 @@
[Unit]
Description=Block hacking attempts
-After=iptables.service
+After=iptables.service network.target
[Service]
-EnvironmentFile=/etc/conf.d/sshguard
-ExecStart=/usr/lib/systemd/scripts/sshguard-journalctl -b /var/db/sshguard/blacklist.db ${SSHGUARD_ARGS}
+ExecStart=/usr/lib/systemd/scripts/sshguard-journalctl -b /var/db/sshguard/blacklist.db
[Install]
WantedBy=multi-user.target
diff --git a/community/unbound/PKGBUILD b/community/unbound/PKGBUILD
index fa690f0ee..21921a415 100644
--- a/community/unbound/PKGBUILD
+++ b/community/unbound/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 74727 2012-08-02 13:31:20Z bisson $
+# $Id: PKGBUILD 78792 2012-10-24 23:47:43Z bisson $
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: Hisato Tatekura <hisato_tatekura@excentrics.net>
# Contributor: Massimiliano Torromeo <massimiliano DOT torromeo AT google mail service>
pkgname=unbound
pkgver=1.4.18
-pkgrel=1
+pkgrel=2
pkgdesc='Validating, recursive, and caching DNS resolver'
url='http://unbound.net/'
license=('custom:BSD')
diff --git a/community/unbound/install b/community/unbound/install
index 34e7026d1..964792592 100644
--- a/community/unbound/install
+++ b/community/unbound/install
@@ -1,14 +1,6 @@
post_install() {
getent group unbound &>/dev/null || groupadd -r unbound >/dev/null
getent passwd unbound &>/dev/null || useradd -r -g unbound -d /etc/unbound -s /bin/false -c unbound unbound >/dev/null
- cat <<EOF
-==> Start with: /etc/rc.d/unbound start
-==> Then, add "nameserver 127.0.0.1" to /etc/resolv.conf.head
-EOF
-}
-
-pre_remove() {
- /etc/rc.d/unbound stop
}
post_remove() {
diff --git a/community/v8/PKGBUILD b/community/v8/PKGBUILD
index 3c8fffb2c..9dcf911b9 100644
--- a/community/v8/PKGBUILD
+++ b/community/v8/PKGBUILD
@@ -1,41 +1,51 @@
-# $Id: PKGBUILD 75499 2012-08-26 09:56:04Z jelle $
+# $Id: PKGBUILD 78786 2012-10-24 19:28:22Z bpiotrowski $
# Maintainer: Kaiting Chen <kaitocracy@gmail.com>
# Contributor: tocer <tocer.deng@gmail.com>
pkgname=v8
-pkgver=3.13.0
+pkgver=3.14.0
pkgrel=1
-pkgdesc='A fast and modern javascript engine'
+pkgdesc='Fast and modern javascript engine'
arch=('i686' 'x86_64')
url='http://code.google.com/p/v8'
license=('BSD')
-depends=('gcc-libs')
-makedepends=('scons')
-source=("v8.tar.gz::https://github.com/v8/v8/tarball/$pkgver")
-md5sums=('55878a54d5dc5674a5ade223d55965f6')
+depends=('gcc-libs' 'readline')
+makedepends=('subversion' 'python2')
+source=($pkgname-$pkgver.tar.gz::https://github.com/v8/v8/tarball/$pkgver)
+md5sums=('bcfec8d90a1d72d9962f3effa15e56c0')
-build() {
+[[ "$CARCH" = 'i686' ]] && ARCH=ia32
+[[ "$CARCH" = 'x86_64' ]] && ARCH=x64
+build() {
cd $srcdir/$pkgname-$pkgname-*
- [ "$CARCH" = 'i686' ] && SCONS_ARCH=ia32
- [ "$CARCH" = 'x86_64' ] && SCONS_ARCH=x64
+ # Fetch gyp
+ make dependencies
- scons mode=release library=shared arch=$SCONS_ARCH
- scons d8 arch=$SCONS_ARCH
+ # The world isn't ready for python2
+ export PYTHON=python2
+ find build/ test/ tools/ src/ -type f \
+ -exec sed -e 's_^#!/usr/bin/env python$_&2_' \
+ -e 's_^\(#!/usr/bin/python2\).[45]$_\1_' \
+ -e 's_^#!/usr/bin/python$_&2_' \
+ -e "s_'python'_'python2'_" -i {} \;
+ sed -i 's/python /python2 /' Makefile
+ make $ARCH.release library=shared console=readline
}
package() {
- cd ${srcdir}/${pkgname}-$pkgname-*
+ cd $srcdir/$pkgname-$pkgname-*
- install -Dm755 d8 "${pkgdir}/usr/bin/d8"
- install -Dm755 libv8.so "${pkgdir}/usr/lib/libv8.so"
+ install -Dm755 out/$ARCH.release/d8 $pkgdir/usr/bin/d8
+ install -Dm755 out/$ARCH.release/lib.target/libv8.so $pkgdir/usr/lib/libv8.so
- # Include headers
install -d $pkgdir/usr/include
- install -Dm755 include/*.h $pkgdir/usr/include
+ install -Dm644 include/*.h $pkgdir/usr/include
- install -d ${pkgdir}/usr/share/licenses/v8
+ install -d $pkgdir/usr/share/licenses/v8
install -m644 LICENSE* ${pkgdir}/usr/share/licenses/v8
}
+
+# vim:set ts=2 sw=2 et:
diff --git a/community/virtualbox-modules/PKGBUILD b/community/virtualbox-modules/PKGBUILD
index 6850f7879..7a49a61e8 100644
--- a/community/virtualbox-modules/PKGBUILD
+++ b/community/virtualbox-modules/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 78539 2012-10-20 11:51:18Z seblu $
+# $Id: PKGBUILD 78754 2012-10-24 07:11:32Z tpowa $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Maintainer: SĂ©bastien Luttringer <seblu@aur.archlinux.org>
pkgbase=virtualbox-modules
pkgname=('virtualbox-host-modules' 'virtualbox-guest-modules')
pkgver=4.2.2
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL')
diff --git a/core/btrfs-progs/PKGBUILD b/core/btrfs-progs/PKGBUILD
index 5e690e728..773a11213 100644
--- a/core/btrfs-progs/PKGBUILD
+++ b/core/btrfs-progs/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 168061 2012-10-05 15:07:13Z tomegun $
+# $Id: PKGBUILD 169609 2012-10-24 12:46:01Z tomegun $
# Maintainer: Tom Gundersen <teg@jklm.no>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=btrfs-progs
-pkgver=0.19.20120904
-pkgrel=7
+pkgver=0.19.20121005
+pkgrel=2
pkgdesc="btrfs filesystem utilities"
arch=(i686 x86_64)
depends=('glibc' 'e2fsprogs')
@@ -15,9 +15,11 @@ provides=('btrfs-progs-unstable')
license=('GPL2')
source=(ftp://ftp.archlinux.org/other/$pkgname/$pkgname-$pkgver.tar.xz
initcpio-install-btrfs
- initcpio-hook-btrfs
- 70-btrfs.rules)
-#install=btrfs-progs.install
+ initcpio-hook-btrfs)
+install=btrfs-progs.install
+md5sums=('7fb014324954ee073b039dc0066de960'
+ 'd7ad825b0b25f2be73289a20e7afcdb7'
+ 'b09688a915a0ec8f40e2f5aacbabc9ad')
build() {
cd $srcdir/$pkgname-$pkgver
@@ -28,8 +30,6 @@ build() {
"$pkgdir/usr/lib/initcpio/install/btrfs"
install -Dm644 "$srcdir/initcpio-hook-btrfs" \
"$pkgdir/usr/lib/initcpio/hooks/btrfs"
- install -Dm644 "$srcdir/70-btrfs.rules" \
- "$pkgdir/usr/lib/udev/rules.d/70-btrfs.rules"
}
package() {
@@ -41,7 +41,3 @@ package() {
mkdir -p ${pkgdir}/sbin
ln -sf /usr/bin/btrfs ${pkgdir}/sbin/btrfs
}
-md5sums=('d9c96e670fac7c2098a9e7ef98d4b2e2'
- 'e5186ec3fe8a809b7473470128d1c4ab'
- '9fb35142755b477a96cb7292f3d64839'
- '345c62c8b267082361729ca5b647518f')
diff --git a/core/btrfs-progs/btrfs-progs.install b/core/btrfs-progs/btrfs-progs.install
index 077d7529a..d6c0698a0 100644
--- a/core/btrfs-progs/btrfs-progs.install
+++ b/core/btrfs-progs/btrfs-progs.install
@@ -1,7 +1,7 @@
#!/bin/sh
post_upgrade() {
- if [ "$(vercmp 0.19.20120904-6 "$2")" -eq 1 ]; then
+ if [ "$(vercmp 0.19.20121005 "$2")" -eq 1 ]; then
echo "btrfs multi-device support now relies on linux 3.6 or later"
fi
}
diff --git a/core/btrfs-progs/initcpio-hook-btrfs b/core/btrfs-progs/initcpio-hook-btrfs
index 913cec528..7965d0a8a 100644
--- a/core/btrfs-progs/initcpio-hook-btrfs
+++ b/core/btrfs-progs/initcpio-hook-btrfs
@@ -1,10 +1,7 @@
#!/usr/bin/ash
run_hook() {
- # if udevd is running, this is done async by add/change events
- if [ "$udevd_running" -ne 1 ]; then
- btrfs device scan
- fi
+ btrfs device scan
}
# vim: set ft=sh ts=4 sw=4 et:
diff --git a/core/btrfs-progs/initcpio-install-btrfs b/core/btrfs-progs/initcpio-install-btrfs
index aad263378..aa06e55ac 100644
--- a/core/btrfs-progs/initcpio-install-btrfs
+++ b/core/btrfs-progs/initcpio-install-btrfs
@@ -4,13 +4,12 @@ build() {
add_module btrfs
add_binary btrfs
add_runscript
-
- add_file /usr/lib/udev/rules.d/70-btrfs.rules
}
help() {
cat <<HELPEOF
-This hook provides support for multi-device btrfs volumes.
+This hook provides support for multi-device btrfs volumes. This hook
+is only needed for initramfs images which do not use udev.
HELPEOF
}
diff --git a/core/iputils/PKGBUILD b/core/iputils/PKGBUILD
index 6deb41ecc..56d38dc95 100644
--- a/core/iputils/PKGBUILD
+++ b/core/iputils/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 168366 2012-10-09 12:53:03Z stephane $
+# $Id: PKGBUILD 169611 2012-10-24 12:55:26Z stephane $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Contributor: Aaron Griffin <aaron@archlinux.org>
pkgname=iputils
-pkgver=20101006
-pkgrel=7
+pkgver=20121011
+pkgrel=1
pkgdesc="IP Configuration Utilities (and Ping)"
arch=('i686' 'x86_64')
license=('GPL')
@@ -20,7 +20,7 @@ backup=(etc/xinetd.d/tftp)
install=${pkgname}.install
source=(http://www.skbuff.net/${pkgname}/${pkgname}-s${pkgver}.tar.bz2 tftp.xinetd
iputils-20101006-ping-integer-overflow.patch)
-sha1sums=('a08cc5423a7bf940205f2353fe3d129cd39ff242'
+sha1sums=('3e85179746fd93000d6267bd55addfe97f321ba7'
'fc2ae26f5609725e3f4aeaf4ab82dfa6d2e378fd'
'ec78574d798b53e4f8bdd37e42514fc17ed71667')
diff --git a/core/ldns/PKGBUILD b/core/ldns/PKGBUILD
index e936b0b9d..4e2099f68 100644
--- a/core/ldns/PKGBUILD
+++ b/core/ldns/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 159413 2012-05-23 22:28:28Z bisson $
+# $Id: PKGBUILD 169625 2012-10-24 23:47:25Z bisson $
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: mathieui <mathieui@mathieui.net>
# Contributor: jiribb <jiribb@gmail.com>
pkgname=ldns
-pkgver=1.6.13
+pkgver=1.6.14
pkgrel=1
pkgdesc='Fast DNS library supporting recent RFCs'
url='http://www.nlnetlabs.nl/projects/ldns/'
@@ -15,7 +15,7 @@ depends=('openssl' 'dnssec-anchors')
optdepends=('libpcap: ldns-dpa tool')
makedepends=('libpcap')
source=("http://www.nlnetlabs.nl/downloads/${pkgname}/${pkgname}-${pkgver}.tar.gz")
-sha1sums=('859f633d10b763f06b602e2113828cbbd964c7eb')
+sha1sums=('2ef5fbf33b25d2f7b736c332ebccc0862dd12d02')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/core/openssh/PKGBUILD b/core/openssh/PKGBUILD
index c3f6f519b..7202c9124 100644
--- a/core/openssh/PKGBUILD
+++ b/core/openssh/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 166025 2012-09-04 14:40:23Z bisson $
+# $Id: PKGBUILD 169626 2012-10-24 23:47:29Z bisson $
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: Aaron Griffin <aaron@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
pkgname=openssh
pkgver=6.1p1
-pkgrel=2
+pkgrel=3
pkgdesc='Free version of the SSH connectivity tools'
url='http://www.openssh.org/portable.html'
license=('custom:BSD')
@@ -25,10 +25,10 @@ source=("ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}
'sshd')
sha1sums=('751c92c912310c3aa9cadc113e14458f843fc7b3'
'954bf1660aa32620c37034320877f4511b767ccb'
- '6c71de2c2ca9622aa8e863acd94b135555e11125'
+ '6df5be396f8c593bb511a249a1453294d18a01a6'
'bd6eae36c7ef9efb7147778baad7858b81f2d660'
- '1fd209980ee2fcdd7b219883e8add0f5ca63388a'
- 'b7acfce018efc111e7ce80dbe37b932caf7c2d53'
+ 'f9af4a442b804ab661cec0edb25dd76dee16d8d2'
+ 'e12fa910b26a5634e5a6ac39ce1399a132cf6796'
'ec102deb69cad7d14f406289d2fc11fee6eddbdd'
'659e3ee95c269014783ff8b318c6f50bf7496fbd'
'1488d4ed33cf3037accf4b0e1c7a7e90b6a097c7')
diff --git a/core/openssh/sshd.service b/core/openssh/sshd.service
index b5c098b73..633164e5d 100644
--- a/core/openssh/sshd.service
+++ b/core/openssh/sshd.service
@@ -11,7 +11,6 @@ Restart=always
[Install]
WantedBy=multi-user.target
-Also=sshdgenkeys.service
# This service file runs an SSH daemon that forks for each incoming connection.
# If you prefer to spawn on-demand daemons, use sshd.socket and sshd@.service.
diff --git a/core/openssh/sshd.socket b/core/openssh/sshd.socket
index 1b9403c99..e09e32869 100644
--- a/core/openssh/sshd.socket
+++ b/core/openssh/sshd.socket
@@ -8,4 +8,3 @@ Accept=yes
[Install]
WantedBy=sockets.target
-Also=sshdgenkeys.service
diff --git a/core/openssh/sshdgenkeys.service b/core/openssh/sshdgenkeys.service
index 47c1c3fd6..8c27d7110 100644
--- a/core/openssh/sshdgenkeys.service
+++ b/core/openssh/sshdgenkeys.service
@@ -13,6 +13,3 @@ ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key.pub
ExecStart=/usr/bin/ssh-keygen -A
Type=oneshot
RemainAfterExit=yes
-
-[Install]
-WantedBy=multi-user.target
diff --git a/extra/cifs-utils/PKGBUILD b/extra/cifs-utils/PKGBUILD
index a43807982..267d6d09c 100644
--- a/extra/cifs-utils/PKGBUILD
+++ b/extra/cifs-utils/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 164812 2012-08-06 16:16:22Z tpowa $
+# $Id: PKGBUILD 169599 2012-10-24 07:18:13Z tpowa $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=cifs-utils
-pkgver=5.6
-pkgrel=2
+pkgver=5.7
+pkgrel=1
pkgdesc="CIFS filesystem user-space tools"
arch=(i686 x86_64)
url="http://wiki.samba.org/index.php/LinuxCIFS_utils"
@@ -24,4 +24,4 @@ package() {
# set mount.cifs uid, to enable none root mounting form fstab
chmod +s $pkgdir/usr/bin/mount.cifs
}
-md5sums=('89c94ff512e375b92899b79622604c39')
+md5sums=('4215f12be8663f65d2c21dbbbafbc7f8')
diff --git a/extra/cups-pk-helper/PKGBUILD b/extra/cups-pk-helper/PKGBUILD
index 229141eda..1bfe06932 100644
--- a/extra/cups-pk-helper/PKGBUILD
+++ b/extra/cups-pk-helper/PKGBUILD
@@ -1,7 +1,7 @@
-#$Id: PKGBUILD 156732 2012-04-23 09:04:15Z ibiru $
+#$Id: PKGBUILD 169617 2012-10-24 17:03:25Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=cups-pk-helper
-pkgver=0.2.2
+pkgver=0.2.4
pkgrel=1
pkgdesc="A helper that makes system-config-printer use PolicyKit"
arch=(i686 x86_64)
@@ -10,17 +10,17 @@ license=('GPL')
depends=(polkit libcups)
makedepends=(intltool)
source=(http://www.freedesktop.org/software/$pkgname/releases/$pkgname-$pkgver.tar.xz)
-sha256sums=('56a10efbc0f37db39a940d99d549c7f37fa95f1af4745b30b79c240b0f37cfd7')
+sha256sums=('d187dc994ff64621aa090d114170b292daa11122481d8b8adb7613b32ca4e3c3')
build() {
- cd "$pkgname-$pkgver"
+ cd $pkgname-$pkgver
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/cups-pk-helper
make
}
package() {
- cd "$pkgname-$pkgver"
+ cd $pkgname-$pkgver
make DESTDIR="$pkgdir" install
}
diff --git a/extra/libtorrent-rasterbar/PKGBUILD b/extra/libtorrent-rasterbar/PKGBUILD
index ddf0e8d0c..976236b39 100644
--- a/extra/libtorrent-rasterbar/PKGBUILD
+++ b/extra/libtorrent-rasterbar/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 169448 2012-10-21 11:01:54Z ibiru $
+# $Id: PKGBUILD 169612 2012-10-24 12:56:39Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Hugo Doria <hugo@archlinux.org>
pkgname=libtorrent-rasterbar
-pkgver=0.16.4
+pkgver=0.16.5
pkgrel=1
epoch=1
pkgdesc="A C++ library that aims to be a good alternative to all the other bittorrent implementations around"
@@ -14,7 +14,7 @@ depends=('boost-libs' 'geoip' 'python2')
makedepends=('boost')
options=('!libtool' '!emptydirs')
source=(http://libtorrent.googlecode.com/files/$pkgname-$pkgver.tar.gz)
-sha1sums=('f8695373c574a6801b4dfe7030e0a0c4bb610abd')
+sha1sums=('dde29c7a51392d9098de23e2e69a993a5c380016')
build() {
cd $pkgname-$pkgver
diff --git a/extra/usermin/PKGBUILD b/extra/usermin/PKGBUILD
index 3a08d73e6..bf55ea176 100644
--- a/extra/usermin/PKGBUILD
+++ b/extra/usermin/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 167307 2012-09-30 20:46:00Z tpowa $
+# $Id: PKGBUILD 169610 2012-10-24 12:47:17Z tomegun $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=usermin
pkgver=1.520
-pkgrel=1
+pkgrel=2
pkgdesc="a web interface that can be used to easily perform tasks like reading mail, setting up SSH or configuring mail forwarding"
arch=(i686 x86_64)
license=('custom:usermin')
@@ -45,6 +45,7 @@ backup=('etc/usermin/miniserv.conf' 'etc/usermin/miniserv.users' 'etc/usermin/co
install=usermin.install
source=(http://downloads.sourceforge.net/sourceforge/webadmin/$pkgname-$pkgver.tar.gz
usermin.rc
+ usermin.service
ftp://ftp.archlinux.org/other/usermin/usermin-config.tar.bz2)
build() {
@@ -116,7 +117,10 @@ build() {
# enable user and password login
sed -i -e '/localauth/d' $startdir/pkg/etc/usermin/miniserv.conf
- #install rc file
+ #install systemd service file
+ install -D -m 644 $startdir/src/usermin.service $startdir/pkg/usr/lib/systemd/system/usermin.service
+
+ #install rc file
install -D -m 755 $startdir/src/usermin.rc $startdir/pkg/etc/rc.d/usermin
# delete temp dir
@@ -126,4 +130,5 @@ build() {
}
md5sums=('5819ba87796d9373a92116e90d1a35d4'
'cfef4490cd1ef9517c0b39a7bd75c968'
+ 'a5bd5e5ee779f8a3cf3d776ca77ee36e'
'ec37a79f948f778224550930d2a7ca07')
diff --git a/extra/usermin/usermin.service b/extra/usermin/usermin.service
new file mode 100644
index 000000000..e91164c63
--- /dev/null
+++ b/extra/usermin/usermin.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Usermin
+
+[Service]
+Type=forking
+ExecStart=/opt/usermin/miniserv.pl /etc/usermin/miniserv.conf
+
+[Install]
+WantedBy=multi-user.target
diff --git a/extra/xterm/PKGBUILD b/extra/xterm/PKGBUILD
index 55148f003..c6a1b7800 100644
--- a/extra/xterm/PKGBUILD
+++ b/extra/xterm/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 168924 2012-10-16 15:02:37Z andyrtr $
+# $Id: PKGBUILD 169622 2012-10-24 19:19:13Z andyrtr $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Alexander Baldeck <alexander@archlinux.org>
pkgname=xterm
-pkgver=284
+pkgver=285
pkgrel=1
pkgdesc="X Terminal Emulator"
arch=('i686' 'x86_64')
@@ -12,7 +12,7 @@ license=('custom')
depends=('libxft' 'libxaw' 'ncurses' 'xorg-luit' 'xbitmaps')
source=(ftp://invisible-island.net/${pkgname}/${pkgname}-${pkgver}.tgz
LICENSE)
-md5sums=('fa6bd90b91365f41c6bb895bee054c12'
+md5sums=('8863bb871edcaf84560bb37eaedd4bee'
'10ecc3f8ee91e3189863a172f68282d2')
build() {
diff --git a/libre/parabola-keyring/PKGBUILD b/libre/parabola-keyring/PKGBUILD
index cb0930c8c..fb048355c 100644
--- a/libre/parabola-keyring/PKGBUILD
+++ b/libre/parabola-keyring/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: André Silva <emulatorman@lavabit.com>
pkgname=parabola-keyring
-pkgver=20121023
+pkgver=20121024
pkgrel=1
pkgdesc='Parabola GNU/Linux-libre PGP keyring'
arch=('any')
@@ -16,5 +16,5 @@ package() {
cd "${srcdir}/${pkgname}-${pkgver}"
make PREFIX=/usr DESTDIR=${pkgdir} install
}
-md5sums=('8a9036ae921c4f94fbadfaa264801a68'
- '187123f4517f90ac325da8b58fc6e3e5')
+md5sums=('7aebac7b4735117617f718058e0602f5'
+ '3b0183f30e786ea7197427199f9fa4f6')
diff --git a/multilib/dev86/PKGBUILD b/multilib/dev86/PKGBUILD
index bde7ba3be..5175e7173 100644
--- a/multilib/dev86/PKGBUILD
+++ b/multilib/dev86/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 59310 2011-11-23 10:19:34Z spupykin $
+# $Id: PKGBUILD 78764 2012-10-24 11:32:14Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Alessio 'mOLOk' Bolognino <themolok@gmail.com>
# Contributor: Suat SARIALP <muhendis.suat@gmail.com>
pkgname=dev86
-pkgver=0.16.18
-pkgrel=3
+pkgver=0.16.19
+pkgrel=1
pkgdesc="Simple C compiler to generate 8086 code"
arch=('i686' 'x86_64')
url="http://www.debath.co.uk/dev86/"
@@ -18,34 +18,24 @@ else
fi
options=('!libtool' '!strip' '!makeflags')
source=(http://www.debath.co.uk/dev86/Dev86src-$pkgver.tar.gz
- dev86-pic.patch
- dev86-0.16.17-fortify.patch)
-md5sums=('f2e06b547397383b2b2650b9c4fd9bab'
- '1b750c5561a4bde5f83f65e5827feb73'
- '07238f9203c6528ea1e34198e771ea12')
+ mandir.patch
+ copt.patch)
+md5sums=('442e98e1afa23fe00d40c5a996385942'
+ '509df653dec8956faf1a40a8c544d9ce'
+ '32839371e28c1a04477df883e970d6cd')
build() {
cd $srcdir/$pkgname-$pkgver
- patch -Np0 -i $srcdir/dev86-pic.patch
- patch -Np1 -i $srcdir/dev86-0.16.17-fortify.patch
- if [ "${CARCH}" = "x86_64" ]; then
- # x86_64 fix
- sed -i.orig -e 's,alt-libs elksemu,alt-libs,' \
- -e 's,install-lib install-emu,install-lib,' \
- $srcdir/$pkgname-$pkgver/makefile.in
- sed -i -e "s/-O2 -g/-O2 -g -m32/" makefile.in
- sed -i 's|^LDFLAGS.*=$|LDFLAGS=-m32|' makefile.in
- fi
+ patch -p1 <$srcdir/mandir.patch
+ patch -p1 <$srcdir/copt.patch
+ echo 'quit' | make PREFIX=/usr DIST="$pkgdir"
+}
- unset CFLAGS
- unset LDFLAGS
- unset CPPFLAGS
- unset CXXFLAGS
+package() {
+ cd $srcdir/$pkgname-$pkgver
- make PREFIX=/usr DIST="$pkgdir"
make install-all DIST="$pkgdir"
- mkdir -p $pkgdir/usr/share
- mv $pkgdir/usr/man $pkgdir/usr/share
+
# remove all the stuff supplied by bin86
rm $pkgdir/usr/bin/{as,ld,nm,objdump,size}86
rm $pkgdir/usr/share/man/man1/{as,ld}86.1
diff --git a/multilib/dev86/copt.patch b/multilib/dev86/copt.patch
new file mode 100644
index 000000000..f3dc1f310
--- /dev/null
+++ b/multilib/dev86/copt.patch
@@ -0,0 +1,16 @@
+diff -wbBur dev86-0.16.19.org/copt/copt.c dev86-0.16.19/copt/copt.c
+--- dev86-0.16.19.org/copt/copt.c 2003-10-07 23:46:35.000000000 +0400
++++ dev86-0.16.19/copt/copt.c 2012-10-24 15:23:48.604705265 +0400
+@@ -174,7 +174,11 @@
+ /* Delete leading white spaces */
+ for (cp = buf; *cp && isspace(*cp); cp++) ;
+ if (cp != buf && *cp)
+- strcpy(buf, cp);
++ {
++ int len = strlen(cp);
++ memmove(buf, cp, len);
++ buf[len] = 0;
++ }
+
+ return(buf);
+ }
diff --git a/multilib/dev86/mandir.patch b/multilib/dev86/mandir.patch
new file mode 100644
index 000000000..980bc3176
--- /dev/null
+++ b/multilib/dev86/mandir.patch
@@ -0,0 +1,34 @@
+diff -wbBur dev86-0.16.19.org/dis88/Makefile dev86-0.16.19/dis88/Makefile
+--- dev86-0.16.19.org/dis88/Makefile 1998-07-31 17:01:40.000000000 +0400
++++ dev86-0.16.19/dis88/Makefile 2012-10-24 14:46:02.684587469 +0400
+@@ -38,7 +38,7 @@
+
+ install: dis88
+ install -m 755 -s dis88 $(DIST)$(PREFIX)/bin/dis86
+- install -m 644 dis88.1 $(DIST)$(PREFIX)/man/man1/dis86.1
++ install -m 644 dis88.1 $(DIST)$(PREFIX)/share/man/man1/dis86.1
+
+ $(OBJ): dis.h a.out.h
+
+diff -wbBur dev86-0.16.19.org/Makefile dev86-0.16.19/Makefile
+--- dev86-0.16.19.org/Makefile 2012-08-14 00:10:08.000000000 +0400
++++ dev86-0.16.19/Makefile 2012-10-24 14:45:50.917920191 +0400
+@@ -17,7 +17,7 @@
+ LIBDIR= $(PREFIX)/lib/bcc
+ INCLDIR= $(PREFIX)/lib/bcc
+ ASLDDIR= $(BINDIR)
+-MANDIR= $(PREFIX)/man
++MANDIR= $(PREFIX)/share/man
+ CFLAGS= -O
+ IFDEFNAME= ifdef
+
+diff -wbBur dev86-0.16.19.org/man/Makefile dev86-0.16.19/man/Makefile
+--- dev86-0.16.19.org/man/Makefile 1998-07-31 17:03:30.000000000 +0400
++++ dev86-0.16.19/man/Makefile 2012-10-24 14:45:55.494587123 +0400
+@@ -1,5 +1,5 @@
+
+-MANDIR=/usr/man
++MANDIR=/usr/share/man
+ MAN1PG=as86.1 bcc.1 elks.1 elksemu.1 ld86.1
+ MAN1DIR=$(MANDIR)/man1
+
diff --git a/testing/binutils/PKGBUILD b/testing/binutils/PKGBUILD
index 334350114..9edcd567b 100644
--- a/testing/binutils/PKGBUILD
+++ b/testing/binutils/PKGBUILD
@@ -1,45 +1,34 @@
-# $Id: PKGBUILD 165241 2012-08-14 08:30:05Z allan $
+# $Id: PKGBUILD 169653 2012-10-25 03:29:55Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
pkgname=binutils
-pkgver=2.22
-pkgrel=10
-_date=20120323
+pkgver=2.23
+pkgrel=1
pkgdesc="A set of programs to assemble and manipulate binary and object files"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/binutils/"
license=('GPL')
groups=('base-devel')
depends=('glibc>=2.16' 'zlib')
-checkdepends=('dejagnu')
+checkdepends=('dejagnu' 'bc')
options=('!libtool' '!distcc' '!ccache')
install=binutils.install
-source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}_${_date}.tar.bz2)
-md5sums=('de2ac4298732827f8af706fc24020330')
-
-mksource() {
- mkdir ${pkgname}-${_date}
- cd ${pkgname}-${_date}
- export _TAG=binutils-2_22-branch
- export 'CVSROOT=:pserver:anoncvs@sourceware.org:/cvs/src'
- cvs -z9 co -r $_TAG binutils || return 1
- mv src binutils
- tar -cvjf ../binutils-${pkgver}_${_date}.tar.bz2 binutils/*
-}
+source=(ftp://ftp.gnu.org/gnu/binutils/binutils-${pkgver}.tar.bz2{,.sig})
+md5sums=('6e6c85eb4468501051ae209c9e2a7ecc'
+ '46ca898c6c7ab8f35c676a965c7ce804')
build() {
cd ${srcdir}
mkdir binutils-build && cd binutils-build
- [[ $CARCH == "x86_64" ]] && CONFIGFLAG="--enable-64-bit-bfd --disable-multilib"
-
- ${srcdir}/binutils/configure --prefix=/usr \
+ ${srcdir}/binutils-${pkgver}/configure --prefix=/usr \
--with-lib-path=/usr/lib:/usr/local/lib \
+ --with-bugurl=https://bugs.archlinux.org/ \
--enable-ld=default --enable-gold \
- --enable-plugins --enable-threads \
- --enable-shared $CONFIGFLAG
+ --enable-plugins --enable-threads --enable-shared \
+ --disable-werror --disable-multilib
# check the host environment and makes sure all the necessary tools are available
make configure-host
@@ -65,11 +54,10 @@ build() {
check() {
cd ${srcdir}/binutils-build
-
+
+ # unset LDFLAGS as testsuite makes assumptions about which ones are active
# 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
+ make LDFLAGS="" -k check || true
}
package() {
@@ -77,8 +65,8 @@ package() {
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 -m644 ${srcdir}/binutils-${pkgver}/include/libiberty.h ${pkgdir}/usr/include
+ install -m644 ${srcdir}/binutils-${pkgver}/include/demangle.h ${pkgdir}/usr/include
# install libraries rebuilt with -fPIC
install -m644 libiberty-pic/libiberty.a ${pkgdir}/usr/lib
@@ -86,11 +74,11 @@ package() {
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}*
+ rm ${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
+ rm ${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/testing/bzflag/PKGBUILD b/testing/bzflag/PKGBUILD
index 6bfbcb8af..1a71d13a7 100644
--- a/testing/bzflag/PKGBUILD
+++ b/testing/bzflag/PKGBUILD
@@ -1,17 +1,18 @@
-# $Id: PKGBUILD 168265 2012-10-07 09:47:30Z bisson $
+# $Id: PKGBUILD 169629 2012-10-25 01:34:46Z eric $
# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
# Contributor: Kevin Piche <kevin@archlinux.org>
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
pkgname=bzflag
pkgver=2.4.2
-pkgrel=1
+pkgrel=2
pkgdesc='Multiplayer 3D tank battle game'
url='http://bzflag.org/'
license=('LGPL')
options=('!libtool')
arch=('i686' 'x86_64')
depends=('curl' 'glew' 'glu' 'sdl')
+makedepends=('mesa') # glu requires <GL/gl.h>
source=("http://downloads.sourceforge.net/project/bzflag/bzflag%20source/${pkgver}/bzflag-${pkgver}.tar.bz2")
sha1sums=('36c67c0734a1318b34b39ed0da49606e05ebd291')
diff --git a/testing/calligra/PKGBUILD b/testing/calligra/PKGBUILD
index d0687504f..b13b0e265 100644
--- a/testing/calligra/PKGBUILD
+++ b/testing/calligra/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 169330 2012-10-19 14:58:30Z andrea $
+# $Id: PKGBUILD 169630 2012-10-25 01:34:49Z eric $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
@@ -18,7 +18,7 @@ pkgname=('calligra-filters'
'calligra-braindump'
'calligra-flow')
pkgver=2.5.3
-pkgrel=5
+pkgrel=6
arch=('i686' 'x86_64')
url='http://www.calligra-suite.org/'
license=('FDL1.2' 'GPL2' 'LGPL')
diff --git a/testing/cinepaint/PKGBUILD b/testing/cinepaint/PKGBUILD
index d207cea74..3dea42c8a 100644
--- a/testing/cinepaint/PKGBUILD
+++ b/testing/cinepaint/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 161639 2012-06-12 18:43:54Z andyrtr $
+# $Id: PKGBUILD 169631 2012-10-25 01:34:53Z eric $
# Maintainer: tobias [tobias.archlinux.org]
# Contributor: tobias [tobias.justdreams.de]
pkgname=cinepaint
pkgver=1.3
-pkgrel=2
+pkgrel=5
pkgdesc="Sophisticated graphics manipulation programm supporting > 8bit pictures"
arch=('i686' 'x86_64')
license=('LGPL' 'GPL' 'MIT')
url="http://www.cinepaint.org"
depends=('gtk2' 'openexr' 'lcms' 'libxpm' 'fltk' 'ftgl' 'libxxf86vm')
-makedepends=('python2' 'gutenprint>=5.2.8')
+makedepends=('python2' 'gutenprint>=5.2.9')
optdepends=('python2: for python plug-ins'
'gutenprint: for print plug-ins'
'ghostscript: for pdf plug-ins')
diff --git a/testing/coreutils/PKGBUILD b/testing/coreutils/PKGBUILD
index eb99af572..b8cd14275 100644
--- a/testing/coreutils/PKGBUILD
+++ b/testing/coreutils/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 166163 2012-09-05 01:16:34Z dreisner $
+# $Id: PKGBUILD 169602 2012-10-24 07:58:11Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
pkgname=coreutils
-pkgver=8.19
+pkgver=8.20
pkgrel=1
pkgdesc="The basic file, shell and text manipulation utilities of the GNU operating system"
arch=('i686' 'x86_64')
@@ -13,8 +13,8 @@ groups=('base')
depends=('glibc' 'pam' 'acl' 'gmp' 'libcap')
install=${pkgname}.install
source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz{,.sig})
-md5sums=('1a01231a2f3ed37c0efc073ccdda9375'
- '7f564749d834397aa67f0f05bacb62d5')
+md5sums=('3d69af8f561fce512538a9fe85f147ff'
+ '7e6076e4e0961d24c38cf8685efca35b')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
diff --git a/testing/dvdauthor/PKGBUILD b/testing/dvdauthor/PKGBUILD
new file mode 100644
index 000000000..05058218d
--- /dev/null
+++ b/testing/dvdauthor/PKGBUILD
@@ -0,0 +1,31 @@
+# $Id: PKGBUILD 169632 2012-10-25 01:34:55Z eric $
+# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Travis Willard <travisw@wmpub.ca>
+# Contributor: Jaroslaw Swierczynski <swiergot@juvepoland.com>
+# Contributor: Nicolai Lissner <nlissne@linux01.gwdg.de>
+
+pkgname=dvdauthor
+pkgver=0.7.1
+pkgrel=2
+pkgdesc="DVD authoring tools"
+arch=('i686' 'x86_64')
+url="http://dvdauthor.sourceforge.net/"
+license=('GPL')
+depends=('libdvdread' 'imagemagick' 'libxml2' 'libpng' 'fribidi')
+options=('!makeflags')
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz")
+md5sums=('2694a5a3ef460106ea3caf0f7f60ff80')
+
+build() {
+ cd "${srcdir}/${pkgname}"
+
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}"
+
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/dvdauthor/dvdauthor-0.7.0-libpng15.patch b/testing/dvdauthor/dvdauthor-0.7.0-libpng15.patch
new file mode 100644
index 000000000..2bb636380
--- /dev/null
+++ b/testing/dvdauthor/dvdauthor-0.7.0-libpng15.patch
@@ -0,0 +1,19 @@
+--- src/spuunmux.c
++++ src/spuunmux.c
+@@ -39,6 +39,7 @@
+ #include <netinet/in.h>
+
+ #include <png.h>
++#include <zlib.h>
+
+ #include "rgb.h"
+ #include "common.h"
+@@ -610,7 +611,7 @@
+ png_destroy_write_struct(&png_ptr, (png_infopp)NULL);
+ return -1;
+ } /*if*/
+- if (setjmp(png_ptr->jmpbuf))
++ if (setjmp(png_jmpbuf(png_ptr)))
+ {
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ fclose(fp);
diff --git a/testing/emacs/PKGBUILD b/testing/emacs/PKGBUILD
new file mode 100644
index 000000000..a31a7259a
--- /dev/null
+++ b/testing/emacs/PKGBUILD
@@ -0,0 +1,41 @@
+# $Id: PKGBUILD 169633 2012-10-25 01:34:57Z eric $
+# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
+# Contributor: Renchi Raju <renchi@green.tam.uiuc.edu>
+
+pkgname=emacs
+pkgver=24.2
+pkgrel=2
+pkgdesc="The extensible, customizable, self-documenting real-time display editor"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/emacs/emacs.html"
+license=('GPL3')
+depends=('librsvg' 'gpm' 'giflib' 'libxpm' 'libotf' 'm17n-lib' 'gtk3' 'hicolor-icon-theme' 'gconf' 'desktop-file-utils' 'alsa-lib' 'imagemagick')
+install=emacs.install
+source=(ftp://ftp.gnu.org/gnu/emacs/$pkgname-$pkgver.tar.bz2{,.sig})
+md5sums=('1676803a50e8adc817fdaaebb9234f14' 'ca1766337f419ef827dd96d1ff78f158')
+
+
+build() {
+ cd "$srcdir"/$pkgname-$pkgver
+ ./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib \
+ --localstatedir=/var --with-x-toolkit=gtk3 --with-xft
+ make
+}
+
+package() {
+ cd "$srcdir"/$pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
+
+ # remove conflict with ctags package
+ mv "$pkgdir"/usr/bin/{ctags,ctags.emacs}
+ mv "$pkgdir"/usr/share/man/man1/{ctags.1.gz,ctags.emacs.1}
+ # fix all the 777 perms on directories
+ find "$pkgdir"/usr/share/emacs/$_majorver -type d -exec chmod 755 {} \;
+ # fix user/root permissions on usr/share files
+ find "$pkgdir"/usr/share/emacs/$_majorver -exec chown root:root {} \;
+ # fix perms on /var/games
+ chmod 775 "$pkgdir"/var/games
+ chmod 775 "$pkgdir"/var/games/emacs
+ chmod 664 "$pkgdir"/var/games/emacs/*
+ chown -R root:games "$pkgdir"/var/games
+}
diff --git a/testing/emacs/emacs.install b/testing/emacs/emacs.install
new file mode 100644
index 000000000..d84f1de14
--- /dev/null
+++ b/testing/emacs/emacs.install
@@ -0,0 +1,32 @@
+ICON_PATH=usr/share/icons/hicolor
+INFO_DIR=usr/share/info
+
+INFO_FILES=(ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse
+ede ediff edt efaq eieio eintr elisp emacs emacs-mime epa erc eshell eudc flymake
+forms gnus idlwave info mairix-el message mh-e newsticker nxml-mode
+org pcl-cvs pgg rcirc reftex remember sasl sc semantic ses sieve smtpmail
+speedbar tramp url vip viper widget woman)
+
+post_install() {
+ gtk-update-icon-cache -q -t -f ${ICON_PATH}
+ update-desktop-database -q
+
+ [[ -x usr/bin/install-info ]] || return 0
+ for f in ${INFO_FILES[@]}; do
+ install-info ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ gtk-update-icon-cache -q -t -f ${ICON_PATH}
+ update-desktop-database -q
+
+ [[ -x usr/bin/install-info ]] || return 0
+ for f in ${INFO_FILES[@]}; do
+ install-info --delete ${INFO_DIR}/$f.gz ${INFO_DIR}/dir 2> /dev/null
+ done
+}
diff --git a/testing/enblend-enfuse/PKGBUILD b/testing/enblend-enfuse/PKGBUILD
index 51fd36e14..0f3dd0551 100644
--- a/testing/enblend-enfuse/PKGBUILD
+++ b/testing/enblend-enfuse/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 164280 2012-07-29 21:08:21Z eric $
+# $Id: PKGBUILD 169634 2012-10-25 01:34:59Z eric $
# Maintainer: tobias <tobias@archlinux.org>
# Contributor: Dominik Ryba <domryba@post.pl>
pkgname=enblend-enfuse
pkgver=4.0
-pkgrel=6
+pkgrel=8
pkgdesc="Intelligent blend tool for overlapping picture"
arch=("i686" "x86_64")
license=('GPL')
url="http://enblend.sourceforge.net"
depends=('openexr' 'glew' 'libxmi' 'freeglut' 'lcms' 'libpng' 'boost-libs')
-makedepends=('boost')
+makedepends=('boost' 'mesa')
replaces=('enblend')
conflicts=('enblend')
provides=('enblend')
diff --git a/testing/fyre/PKGBUILD b/testing/fyre/PKGBUILD
new file mode 100644
index 000000000..4e0b82218
--- /dev/null
+++ b/testing/fyre/PKGBUILD
@@ -0,0 +1,26 @@
+# $Id: PKGBUILD 169635 2012-10-25 01:35:01Z eric $
+# Maintainer: Eric BĂ©langer <eric@archlinux.org>
+
+pkgname=fyre
+pkgver=1.0.1
+pkgrel=6
+pkgdesc="Rendering of the Peter de Jong map"
+arch=('i686' 'x86_64')
+url="http://fyre.navi.cx/"
+license=('GPL')
+depends=('openexr' 'libglade' 'gnet' 'shared-mime-info' 'hicolor-icon-theme' 'desktop-file-utils')
+install=fyre.install
+source=(http://releases.navi.cx/fyre/fyre-${pkgver}.tar.bz2)
+sha1sums=('41c0ec45eff16cc1bba081c5c855a3980e404835')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make update_xdgmime=/bin/false update_fdodesktop=/bin/false gtk_update_icon_cache=/bin/false \
+ prefix="${pkgdir}/usr" install
+}
diff --git a/testing/fyre/fyre.install b/testing/fyre/fyre.install
new file mode 100644
index 000000000..388efbb11
--- /dev/null
+++ b/testing/fyre/fyre.install
@@ -0,0 +1,13 @@
+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
+}
+
+post_remove() {
+ post_install
+}
diff --git a/testing/gcc/PKGBUILD b/testing/gcc/PKGBUILD
index 331627a12..993e23ea6 100644
--- a/testing/gcc/PKGBUILD
+++ b/testing/gcc/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 168263 2012-10-07 08:55:23Z allan $
+# $Id: PKGBUILD 169654 2012-10-25 03:35:23Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
@@ -6,24 +6,21 @@
pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc' 'gcc-ada' 'gcc-go')
pkgver=4.7.2
-pkgrel=1
+pkgrel=2
#_snapshot=4.7-20120721
-_libstdcppmanver=20120924 # Note: check source directory name when updating this
pkgdesc="The GNU Compiler Collection"
arch=('i686' 'x86_64')
license=('GPL' 'LGPL' 'FDL' 'custom')
url="http://gcc.gnu.org"
-makedepends=('binutils>=2.22' 'libmpc' 'cloog' 'ppl' 'gcc-ada')
+makedepends=('binutils>=2.23' 'libmpc' 'cloog' 'ppl' 'gcc-ada' 'doxygen')
checkdepends=('dejagnu')
options=('!libtool' '!emptydirs')
source=(ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2
#ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2
- ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api.${_libstdcppmanver}.man.tar.bz2
gcc_pure64.patch
gcc-4.7.1-libada-pic.patch
gcc-4.7.1-libgo-write.patch)
md5sums=('cc308a0891e778cfda7a151ab8a6e762'
- '7f3d52515daafffb57c287f427381106'
'ced48436c1b3c981d721a829f1094de1'
'2acbc9d35cc9d72329dc71d6b1f162ef'
'df82dd175ac566c8a6d46b11ac21f14c')
@@ -78,10 +75,14 @@ build() {
--disable-build-with-cxx --disable-build-poststage1-with-cxx \
--enable-checking=release
make
+
+ # make documentation
+ cd $CHOST/libstdc++-v3
+ make doc-man-doxygen
}
check() {
- cd gcc-build
+ cd ${srcdir}/gcc-build
# increase stack size to prevent test failures
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827
@@ -99,7 +100,7 @@ package_gcc-libs()
depends=('glibc>=2.16')
install=gcc-libs.install
- cd gcc-build
+ cd ${srcdir}/gcc-build
make -j1 -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared
for lib in libmudflap libgomp libstdc++-v3/src libitm; do
make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
@@ -126,11 +127,11 @@ package_gcc-libs()
package_gcc()
{
pkgdesc="The GNU Compiler Collection - C and C++ frontends"
- depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.22' 'libmpc' 'cloog' 'ppl')
+ depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.23' 'libmpc' 'cloog' 'ppl')
groups=('base-devel')
install=gcc.install
- cd gcc-build
+ cd ${srcdir}/gcc-build
make -j1 DESTDIR=${pkgdir} install
@@ -186,8 +187,8 @@ EOF
# install the libstdc++ man pages
install -dm755 ${pkgdir}/usr/share/man/man3
- install -m644 ${srcdir}/libstdc++-api.${_libstdcppmanver}.man/man3/* \
- ${pkgdir}/usr/share/man/man3/
+ install -m644 -t ${pkgdir}/usr/share/man/man3 \
+ ${CHOST}/libstdc++-v3/doc/doxygen/man/man3/*.3
# Install Runtime Library Exception
install -Dm644 ${_basedir}/COPYING.RUNTIME \
@@ -200,7 +201,7 @@ package_gcc-fortran()
depends=("gcc=$pkgver-$pkgrel")
install=gcc-fortran.install
- cd gcc-build
+ cd ${srcdir}/gcc-build
make -j1 DESTDIR=${pkgdir} install-target-libquadmath
make -j1 DESTDIR=$pkgdir install-target-libgfortran
make -j1 -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS
@@ -223,7 +224,7 @@ package_gcc-objc()
pkgdesc="Objective-C front-end for GCC"
depends=("gcc=$pkgver-$pkgrel")
- cd gcc-build
+ cd ${srcdir}/gcc-build
make -j1 DESTDIR=$pkgdir install-target-libobjc
install -dm755 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/
install -m755 gcc/cc1obj{,plus} $pkgdir/usr/lib/gcc/$CHOST/$pkgver/
@@ -242,7 +243,7 @@ package_gcc-ada()
depends=("gcc=$pkgver-$pkgrel")
install=gcc-ada.install
- cd gcc-build/gcc
+ cd ${srcdir}/gcc-build/gcc
make -j1 DESTDIR=$pkgdir ada.install-{common,info}
install -m755 gnat1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver
@@ -259,7 +260,7 @@ package_gcc-go()
depends=("gcc=$pkgver-$pkgrel")
install=gcc-go.install
- cd gcc-build
+ cd ${srcdir}/gcc-build
make -j1 DESTDIR=$pkgdir install-target-libgo
make -j1 -C gcc DESTDIR=$pkgdir go.install-{common,man,info}
install -Dm755 gcc/go1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/go1
diff --git a/testing/gegl/PKGBUILD b/testing/gegl/PKGBUILD
index af0262d65..c9f3a38cf 100644
--- a/testing/gegl/PKGBUILD
+++ b/testing/gegl/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 163057 2012-07-06 15:21:11Z ibiru $
+# $Id: PKGBUILD 169636 2012-10-25 01:35:02Z eric $
# Maintainer: Daniel Isenmann <daniel@archlinux.org>
pkgname=gegl
pkgver=0.2.0
-pkgrel=2
+pkgrel=5
pkgdesc="Graph based image processing framework"
arch=('i686' 'x86_64')
url="http://www.gegl.org/"
@@ -15,11 +15,13 @@ optdepends=('openexr: for using the openexr plugin' \
'librsvg: for using the svg plugin' \
'jasper: for using the jasper plugin')
options=('!libtool')
-source=(ftp://ftp.gimp.org/pub/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
-sha1sums=('764cc66cb3c7b261b8fc18a6268a0e264a91d573')
+source=(ftp://ftp.gimp.org/pub/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2 gegl-0.2.0-ffmpeg-0.11.diff)
+sha1sums=('764cc66cb3c7b261b8fc18a6268a0e264a91d573'
+ 'c10fd988c634fcf0948cc91a51d6528f6f1704ba')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 < "${srcdir}/gegl-0.2.0-ffmpeg-0.11.diff"
./configure --prefix=/usr --with-sdl --with-openexr --with-librsvg \
--with-libavformat --with-jasper --disable-docs
make
diff --git a/testing/gegl/gegl-0.2.0-ffmpeg-0.11.diff b/testing/gegl/gegl-0.2.0-ffmpeg-0.11.diff
new file mode 100644
index 000000000..a33ec6f7f
--- /dev/null
+++ b/testing/gegl/gegl-0.2.0-ffmpeg-0.11.diff
@@ -0,0 +1,12 @@
+diff -Naur gegl-0.2.0/operations/external/ff-load.c gegl-0.2.0-1/operations/external/ff-load.c
+--- gegl-0.2.0/operations/external/ff-load.c 2012-04-01 13:17:57.000000000 +0200
++++ gegl-0.2.0-1/operations/external/ff-load.c 2012-07-11 12:42:05.174756560 +0200
+@@ -271,7 +271,7 @@
+ gint err;
+
+ ff_cleanup (o);
+- err = av_open_input_file (&p->ic, o->path, NULL, 0, NULL);
++err = avformat_open_input (&p->ic, o->path, NULL, NULL);
+ if (err < 0)
+ {
+ print_error (o->path, err);
diff --git a/testing/glew/PKGBUILD b/testing/glew/PKGBUILD
index fe8b9d925..a644afaaf 100644
--- a/testing/glew/PKGBUILD
+++ b/testing/glew/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id: PKGBUILD 168296 2012-10-08 03:48:49Z eric $
+# $Id: PKGBUILD 169637 2012-10-25 01:35:04Z eric $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
# Contributor: SleepyDog
pkgname=glew
-pkgver=1.8.0
-pkgrel=2
+pkgver=1.9.0
+pkgrel=1
pkgdesc="The OpenGL Extension Wrangler Library"
arch=('i686' 'x86_64')
url="http://glew.sourceforge.net"
license=('BSD' 'MIT' 'GPL')
depends=('libxmu' 'libxi' 'glu')
source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tgz)
-sha1sums=('641c6bb3f924ec786e1e6cf2b1b230f594e0f0e4')
+sha1sums=('9291f5c5afefd482c7f3e91ffb3cd4716c6c9ffe')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/testing/glibc/PKGBUILD b/testing/glibc/PKGBUILD
index 6dc93f31e..0d8b274be 100644
--- a/testing/glibc/PKGBUILD
+++ b/testing/glibc/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 165242 2012-08-14 08:31:14Z allan $
+# $Id: PKGBUILD 169652 2012-10-25 03:25:47Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
@@ -6,7 +6,7 @@
pkgname=glibc
pkgver=2.16.0
-pkgrel=3
+pkgrel=5
pkgdesc="GNU C Library"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/libc"
@@ -21,8 +21,12 @@ options=('!strip')
install=glibc.install
source=(http://ftp.gnu.org/gnu/libc/${pkgname}-${pkgver}.tar.xz{,.sig}
glibc-2.15-fix-res_query-assert.patch
- glibc-2.15-revert-c5a0802a.patch
+ glibc-2.16-unlock-mutex.patch
glibc-2.16-rpcgen-cpp-path.patch
+ glibc-2.16-strncasecmp-segfault.patch
+ glibc-2.16-strtod-overflow.patch
+ glibc-2.16-detect-fma.patch
+ glibc-2.16-glob-use-size_t.patch
nscd.rcd
nscd.service
nscd.tmpfiles
@@ -31,14 +35,19 @@ source=(http://ftp.gnu.org/gnu/libc/${pkgname}-${pkgver}.tar.xz{,.sig}
md5sums=('80b181b02ab249524ec92822c0174cf7'
'2a1221a15575820751c325ef4d2fbb90'
'31f415b41197d85d3bbee3d1eecd06a3'
- '0a0383d50d63f1c02919fe9943b82014'
+ '0afcd8c6020d61684aba63ed5f26bd91'
'ea6a43915474e8276e9361eed6a01280'
+ 'f042d37cc8ca3459023431809039bc88'
+ '61d322f7681a85d3293ada5c3ccc2c7e'
+ '2426f593bc43f5499c41d21b57ee0e30'
+ 'a441353901992feda4b15a11a20140a1'
'589d79041aa767a5179eaa4e2737dd3f'
- 'ad8a9af15ab7eeaa23dc7ee85024af9f'
+ 'c1e07c0bec0fe89791bfd9d13fc85edf'
'bccbe5619e75cf1d97312ec3681c605c'
'07ac979b6ab5eeb778d55f041529d623'
'476e9113489f93b348b21e144b6a8fcf')
+
build() {
cd ${srcdir}/${pkgname}-${pkgver}
@@ -46,14 +55,33 @@ build() {
# 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 hang by locked mutex
+ # http://sourceware.org/git/?p=glibc.git;a=patch;h=c30e8edf
+ patch -p1 -i ${srcdir}/glibc-2.16-unlock-mutex.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
+ # strncasecmp segfault on i686
+ # http://sourceware.org/git/?p=glibc.git;a=commit;h=6db8f737
+ patch -p1 -i ${srcdir}/glibc-2.16-strncasecmp-segfault.patch
+
+ # strtod integer/buffer overflow
+ # http://sourceware.org/git/?p=glibc.git;a=commit;h=da1f4319
+ patch -p1 -i ${srcdir}/glibc-2.16-strtod-overflow.patch
+
+ # detect FMA supprt
+ # http://sourceware.org/git/?p=glibc.git;a=commit;h=a5cfcf08
+ patch -p1 -i ${srcdir}/glibc-2.16-detect-fma.patch
+
+ # prevent overflow in globc
+ # http://sourceware.org/git/?p=glibc.git;a=commit;h=6c62f108
+ patch -p1 -i ${srcdir}/glibc-2.16-glob-use-size_t.patch
+
+ # ldconfig does not need to look in /usr/lib64 or /usr/libx32 on Arch Linux
+ sed -i "s#add_system_dir#do_not_add_system_dir#" sysdeps/unix/sysv/linux/x86_64/dl-cache.h
+
cd ${srcdir}
mkdir glibc-build
cd glibc-build
@@ -64,7 +92,7 @@ build() {
export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs"
fi
- echo "slibdir=/lib" >> configparms
+ echo "slibdir=/usr/lib" >> configparms
# remove hardening options from CFLAGS for building libraries
CFLAGS=${CFLAGS/-fstack-protector/}
@@ -96,14 +124,12 @@ build() {
check() {
cd ${srcdir}/glibc-build
- make -k check
+ make check
}
package() {
cd ${srcdir}/glibc-build
- ln -s usr/lib ${pkgdir}/lib
-
install -dm755 ${pkgdir}/etc
touch ${pkgdir}/etc/ld.so.conf
@@ -111,6 +137,9 @@ package() {
rm -f ${pkgdir}/etc/ld.so.{cache,conf}
+ # eventually this will move to the filesystem package
+ ln -s usr/lib ${pkgdir}/lib
+
install -dm755 ${pkgdir}/{etc/rc.d,usr/{sbin,lib/{,locale,systemd/system,tmpfiles.d}}}
install -m644 ${srcdir}/${pkgname}-${pkgver}/nscd/nscd.conf ${pkgdir}/etc/nscd.conf
diff --git a/testing/glibc/glibc-2.16-detect-fma.patch b/testing/glibc/glibc-2.16-detect-fma.patch
new file mode 100644
index 000000000..daffb9768
--- /dev/null
+++ b/testing/glibc/glibc-2.16-detect-fma.patch
@@ -0,0 +1,72 @@
+diff --git a/sysdeps/x86_64/multiarch/init-arch.c b/sysdeps/x86_64/multiarch/init-arch.c
+index fb44dcf..fed5ab8 100644
+--- a/sysdeps/x86_64/multiarch/init-arch.c
++++ b/sysdeps/x86_64/multiarch/init-arch.c
+@@ -156,6 +156,9 @@ __init_cpu_features (void)
+ /* Determine if AVX is usable. */
+ if (CPUID_AVX)
+ __cpu_features.feature[index_AVX_Usable] |= bit_AVX_Usable;
++ /* Determine if FMA is usable. */
++ if (CPUID_FMA)
++ __cpu_features.feature[index_FMA_Usable] |= bit_FMA_Usable;
+ /* Determine if FMA4 is usable. */
+ if (CPUID_FMA4)
+ __cpu_features.feature[index_FMA4_Usable] |= bit_FMA4_Usable;
+diff --git a/sysdeps/x86_64/multiarch/init-arch.h b/sysdeps/x86_64/multiarch/init-arch.h
+index 45e2651..f33f1c8 100644
+--- a/sysdeps/x86_64/multiarch/init-arch.h
++++ b/sysdeps/x86_64/multiarch/init-arch.h
+@@ -22,7 +22,8 @@
+ #define bit_Fast_Unaligned_Load (1 << 4)
+ #define bit_Prefer_PMINUB_for_stringop (1 << 5)
+ #define bit_AVX_Usable (1 << 6)
+-#define bit_FMA4_Usable (1 << 7)
++#define bit_FMA_Usable (1 << 7)
++#define bit_FMA4_Usable (1 << 8)
+
+ /* CPUID Feature flags. */
+ #define bit_SSE2 (1 << 26)
+@@ -56,6 +57,7 @@
+ # define index_Fast_Unaligned_Load FEATURE_INDEX_1*FEATURE_SIZE
+ # define index_Prefer_PMINUB_for_stringop FEATURE_INDEX_1*FEATURE_SIZE
+ # define index_AVX_Usable FEATURE_INDEX_1*FEATURE_SIZE
++# define index_FMA_Usable FEATURE_INDEX_1*FEATURE_SIZE
+ # define index_FMA4_Usable FEATURE_INDEX_1*FEATURE_SIZE
+
+ #else /* __ASSEMBLER__ */
+@@ -131,6 +133,8 @@ extern const struct cpu_features *__get_cpu_features (void)
+ HAS_CPUID_FLAG (COMMON_CPUID_INDEX_1, ecx, bit_OSXSAVE)
+ # define CPUID_AVX \
+ HAS_CPUID_FLAG (COMMON_CPUID_INDEX_1, ecx, bit_AVX)
++# define CPUID_FMA \
++ HAS_CPUID_FLAG (COMMON_CPUID_INDEX_1, ecx, bit_FMA)
+ # define CPUID_FMA4 \
+ HAS_CPUID_FLAG (COMMON_CPUID_INDEX_80000001, ecx, bit_FMA4)
+
+@@ -140,7 +144,6 @@ extern const struct cpu_features *__get_cpu_features (void)
+ # define HAS_SSSE3 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSSE3)
+ # define HAS_SSE4_1 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSE4_1)
+ # define HAS_SSE4_2 HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_SSE4_2)
+-# define HAS_FMA HAS_CPU_FEATURE (COMMON_CPUID_INDEX_1, ecx, bit_FMA)
+
+ # define index_Fast_Rep_String FEATURE_INDEX_1
+ # define index_Fast_Copy_Backward FEATURE_INDEX_1
+@@ -148,6 +151,7 @@ extern const struct cpu_features *__get_cpu_features (void)
+ # define index_Prefer_SSE_for_memop FEATURE_INDEX_1
+ # define index_Fast_Unaligned_Load FEATURE_INDEX_1
+ # define index_AVX_Usable FEATURE_INDEX_1
++# define index_FMA_Usable FEATURE_INDEX_1
+ # define index_FMA4_Usable FEATURE_INDEX_1
+
+ # define HAS_ARCH_FEATURE(name) \
+@@ -159,6 +163,7 @@ extern const struct cpu_features *__get_cpu_features (void)
+ # define HAS_PREFER_SSE_FOR_MEMOP HAS_ARCH_FEATURE (Prefer_SSE_for_memop)
+ # define HAS_FAST_UNALIGNED_LOAD HAS_ARCH_FEATURE (Fast_Unaligned_Load)
+ # define HAS_AVX HAS_ARCH_FEATURE (AVX_Usable)
++# define HAS_FMA HAS_ARCH_FEATURE (FMA_Usable)
+ # define HAS_FMA4 HAS_ARCH_FEATURE (FMA4_Usable)
+
+ #endif /* __ASSEMBLER__ */
+--
+1.7.3.4
+
diff --git a/testing/glibc/glibc-2.16-glob-use-size_t.patch b/testing/glibc/glibc-2.16-glob-use-size_t.patch
new file mode 100644
index 000000000..8c5df45be
--- /dev/null
+++ b/testing/glibc/glibc-2.16-glob-use-size_t.patch
@@ -0,0 +1,52 @@
+diff --git a/posix/glob.c b/posix/glob.c
+index 68ea205..87d4f1b 100644
+--- a/posix/glob.c
++++ b/posix/glob.c
+@@ -217,7 +217,7 @@ static int collated_compare (const void *, const void *) __THROW;
+ static const char *
+ next_brace_sub (const char *cp, int flags)
+ {
+- unsigned int depth = 0;
++ size_t depth = 0;
+ while (*cp != '\0')
+ if ((flags & GLOB_NOESCAPE) == 0 && *cp == '\\')
+ {
+@@ -960,7 +960,7 @@ glob (pattern, flags, errfunc, pglob)
+ && S_ISDIR (st.st_mode))
+ : (__stat64 (dirname, &st64) == 0 && S_ISDIR (st64.st_mode)))))
+ {
+- int newcount = pglob->gl_pathc + pglob->gl_offs;
++ size_t newcount = pglob->gl_pathc + pglob->gl_offs;
+ char **new_gl_pathv;
+
+ if (newcount > UINTPTR_MAX - (1 + 1)
+@@ -1059,7 +1059,7 @@ glob (pattern, flags, errfunc, pglob)
+ appending the results to PGLOB. */
+ for (i = 0; i < dirs.gl_pathc; ++i)
+ {
+- int old_pathc;
++ size_t old_pathc;
+
+ #ifdef SHELL
+ {
+@@ -1114,7 +1114,7 @@ glob (pattern, flags, errfunc, pglob)
+ /* No matches. */
+ if (flags & GLOB_NOCHECK)
+ {
+- int newcount = pglob->gl_pathc + pglob->gl_offs;
++ size_t newcount = pglob->gl_pathc + pglob->gl_offs;
+ char **new_gl_pathv;
+
+ if (newcount > UINTPTR_MAX - 2
+@@ -1158,7 +1158,7 @@ glob (pattern, flags, errfunc, pglob)
+ }
+ else
+ {
+- int old_pathc = pglob->gl_pathc;
++ size_t old_pathc = pglob->gl_pathc;
+ int orig_flags = flags;
+
+ if (meta & 2)
+--
+1.7.3.4
+
diff --git a/testing/glibc/glibc-2.16-strncasecmp-segfault.patch b/testing/glibc/glibc-2.16-strncasecmp-segfault.patch
new file mode 100644
index 000000000..ce91bbe82
--- /dev/null
+++ b/testing/glibc/glibc-2.16-strncasecmp-segfault.patch
@@ -0,0 +1,65 @@
+diff --git a/string/test-strncasecmp.c b/string/test-strncasecmp.c
+index 6c17530..acfe668 100644
+--- a/string/test-strncasecmp.c
++++ b/string/test-strncasecmp.c
+@@ -1,5 +1,5 @@
+ /* Test and measure strncasecmp functions.
+- Copyright (C) 1999, 2002, 2003, 2005, 2010 Free Software Foundation, Inc.
++ Copyright (C) 1999-2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Written by Jakub Jelinek <jakub@redhat.com>, 1999.
+
+@@ -251,9 +251,9 @@ do_random_tests (void)
+ }
+ }
+
+-
++/* Regression test for BZ #12205 */
+ static void
+-check1 (void)
++bz12205 (void)
+ {
+ static char cp [4096+16] __attribute__ ((aligned(4096)));
+ static char gotrel[4096] __attribute__ ((aligned(4096)));
+@@ -270,6 +270,15 @@ check1 (void)
+ check_result (impl, s1, s2, n, exp_result);
+ }
+
++/* Regression test for BZ #14195 */
++static void
++bz14195 (void)
++{
++ const char *empty_string = "";
++ FOR_EACH_IMPL (impl, 0)
++ check_result (impl, empty_string, "", 5, 0);
++}
++
+ int
+ test_main (void)
+ {
+@@ -277,7 +286,8 @@ test_main (void)
+
+ test_init ();
+
+- check1 ();
++ bz12205 ();
++ bz14195 ();
+
+ printf ("%23s", "");
+ FOR_EACH_IMPL (impl, 0)
+diff --git a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
+index 5e6321e..9735ad0 100644
+--- a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
++++ b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
+@@ -2445,7 +2445,7 @@ L(less16bytes_sncmp):
+ # endif
+ jne L(neq_sncmp)
+ test %cl, %cl
+- je L(eq)
++ je L(eq_sncmp)
+
+ cmp $1, REM
+ je L(eq_sncmp)
+--
+1.7.3.4
+
diff --git a/testing/glibc/glibc-2.16-strtod-overflow.patch b/testing/glibc/glibc-2.16-strtod-overflow.patch
new file mode 100644
index 000000000..526296325
--- /dev/null
+++ b/testing/glibc/glibc-2.16-strtod-overflow.patch
@@ -0,0 +1,389 @@
+diff --git a/stdlib/Makefile b/stdlib/Makefile
+index f7811c5..79c9acb 100644
+--- a/stdlib/Makefile
++++ b/stdlib/Makefile
+@@ -68,7 +68,8 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \
+ tst-atof1 tst-atof2 tst-strtod2 tst-strtod3 tst-rand48-2 \
+ tst-makecontext tst-strtod4 tst-strtod5 tst-qsort2 \
+ tst-makecontext2 tst-strtod6 tst-unsetenv1 \
+- tst-makecontext3 bug-getcontext bug-fmtmsg1
++ tst-makecontext3 bug-getcontext bug-fmtmsg1 \
++ tst-strtod-overflow
+
+ include ../Makeconfig
+
+diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
+index 2166a08..a8a7ea8 100644
+--- a/stdlib/strtod_l.c
++++ b/stdlib/strtod_l.c
+@@ -60,6 +60,7 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
+ #include <math.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <stdint.h>
+
+ /* The gmp headers need some configuration frobs. */
+ #define HAVE_ALLOCA 1
+@@ -72,7 +73,6 @@ extern unsigned long long int ____strtoull_l_internal (const char *, char **,
+ #include "longlong.h"
+ #include "fpioconst.h"
+
+-#define NDEBUG 1
+ #include <assert.h>
+
+
+@@ -174,19 +174,19 @@ extern const mp_limb_t _tens_in_limb[MAX_DIG_PER_LIMB + 1];
+ /* Return a floating point number of the needed type according to the given
+ multi-precision number after possible rounding. */
+ static FLOAT
+-round_and_return (mp_limb_t *retval, int exponent, int negative,
++round_and_return (mp_limb_t *retval, intmax_t exponent, int negative,
+ mp_limb_t round_limb, mp_size_t round_bit, int more_bits)
+ {
+ if (exponent < MIN_EXP - 1)
+ {
+- mp_size_t shift = MIN_EXP - 1 - exponent;
+-
+- if (shift > MANT_DIG)
++ if (exponent < MIN_EXP - 1 - MANT_DIG)
+ {
+ __set_errno (ERANGE);
+ return 0.0;
+ }
+
++ mp_size_t shift = MIN_EXP - 1 - exponent;
++
+ more_bits |= (round_limb & ((((mp_limb_t) 1) << round_bit) - 1)) != 0;
+ if (shift == MANT_DIG)
+ /* This is a special case to handle the very seldom case where
+@@ -233,6 +233,9 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
+ __set_errno (ERANGE);
+ }
+
++ if (exponent > MAX_EXP)
++ goto overflow;
++
+ if ((round_limb & (((mp_limb_t) 1) << round_bit)) != 0
+ && (more_bits || (retval[0] & 1) != 0
+ || (round_limb & ((((mp_limb_t) 1) << round_bit) - 1)) != 0))
+@@ -258,6 +261,7 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
+ }
+
+ if (exponent > MAX_EXP)
++ overflow:
+ return negative ? -FLOAT_HUGE_VAL : FLOAT_HUGE_VAL;
+
+ return MPN2FLOAT (retval, exponent, negative);
+@@ -271,7 +275,7 @@ round_and_return (mp_limb_t *retval, int exponent, int negative,
+ factor for the resulting number (see code) multiply by it. */
+ static const STRING_TYPE *
+ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
+- int *exponent
++ intmax_t *exponent
+ #ifndef USE_WIDE_CHAR
+ , const char *decimal, size_t decimal_len, const char *thousands
+ #endif
+@@ -301,6 +305,7 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
+ cy += __mpn_add_1 (n, n, *nsize, low);
+ if (cy != 0)
+ {
++ assert (*nsize < MPNSIZE);
+ n[*nsize] = cy;
+ ++(*nsize);
+ }
+@@ -335,7 +340,7 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
+ }
+ while (--digcnt > 0);
+
+- if (*exponent > 0 && cnt + *exponent <= MAX_DIG_PER_LIMB)
++ if (*exponent > 0 && *exponent <= MAX_DIG_PER_LIMB - cnt)
+ {
+ low *= _tens_in_limb[*exponent];
+ start = _tens_in_limb[cnt + *exponent];
+@@ -355,7 +360,10 @@ str_to_mpn (const STRING_TYPE *str, int digcnt, mp_limb_t *n, mp_size_t *nsize,
+ cy = __mpn_mul_1 (n, n, *nsize, start);
+ cy += __mpn_add_1 (n, n, *nsize, low);
+ if (cy != 0)
+- n[(*nsize)++] = cy;
++ {
++ assert (*nsize < MPNSIZE);
++ n[(*nsize)++] = cy;
++ }
+ }
+
+ return str;
+@@ -413,7 +421,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ {
+ int negative; /* The sign of the number. */
+ MPN_VAR (num); /* MP representation of the number. */
+- int exponent; /* Exponent of the number. */
++ intmax_t exponent; /* Exponent of the number. */
+
+ /* Numbers starting `0X' or `0x' have to be processed with base 16. */
+ int base = 10;
+@@ -435,7 +443,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ /* Points at the character following the integer and fractional digits. */
+ const STRING_TYPE *expp;
+ /* Total number of digit and number of digits in integer part. */
+- int dig_no, int_no, lead_zero;
++ size_t dig_no, int_no, lead_zero;
+ /* Contains the last character read. */
+ CHAR_TYPE c;
+
+@@ -767,7 +775,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ are all or any is really a fractional digit will be decided
+ later. */
+ int_no = dig_no;
+- lead_zero = int_no == 0 ? -1 : 0;
++ lead_zero = int_no == 0 ? (size_t) -1 : 0;
+
+ /* Read the fractional digits. A special case are the 'american
+ style' numbers like `16.' i.e. with decimal point but without
+@@ -789,12 +797,13 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ (base == 16 && ({ CHAR_TYPE lo = TOLOWER (c);
+ lo >= L_('a') && lo <= L_('f'); })))
+ {
+- if (c != L_('0') && lead_zero == -1)
++ if (c != L_('0') && lead_zero == (size_t) -1)
+ lead_zero = dig_no - int_no;
+ ++dig_no;
+ c = *++cp;
+ }
+ }
++ assert (dig_no <= (uintmax_t) INTMAX_MAX);
+
+ /* Remember start of exponent (if any). */
+ expp = cp;
+@@ -817,24 +826,80 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+
+ if (c >= L_('0') && c <= L_('9'))
+ {
+- int exp_limit;
++ intmax_t exp_limit;
+
+ /* Get the exponent limit. */
+ if (base == 16)
+- exp_limit = (exp_negative ?
+- -MIN_EXP + MANT_DIG + 4 * int_no :
+- MAX_EXP - 4 * int_no + 4 * lead_zero + 3);
++ {
++ if (exp_negative)
++ {
++ assert (int_no <= (uintmax_t) (INTMAX_MAX
++ + MIN_EXP - MANT_DIG) / 4);
++ exp_limit = -MIN_EXP + MANT_DIG + 4 * (intmax_t) int_no;
++ }
++ else
++ {
++ if (int_no)
++ {
++ assert (lead_zero == 0
++ && int_no <= (uintmax_t) INTMAX_MAX / 4);
++ exp_limit = MAX_EXP - 4 * (intmax_t) int_no + 3;
++ }
++ else if (lead_zero == (size_t) -1)
++ {
++ /* The number is zero and this limit is
++ arbitrary. */
++ exp_limit = MAX_EXP + 3;
++ }
++ else
++ {
++ assert (lead_zero
++ <= (uintmax_t) (INTMAX_MAX - MAX_EXP - 3) / 4);
++ exp_limit = (MAX_EXP
++ + 4 * (intmax_t) lead_zero
++ + 3);
++ }
++ }
++ }
+ else
+- exp_limit = (exp_negative ?
+- -MIN_10_EXP + MANT_DIG + int_no :
+- MAX_10_EXP - int_no + lead_zero + 1);
++ {
++ if (exp_negative)
++ {
++ assert (int_no
++ <= (uintmax_t) (INTMAX_MAX + MIN_10_EXP - MANT_DIG));
++ exp_limit = -MIN_10_EXP + MANT_DIG + (intmax_t) int_no;
++ }
++ else
++ {
++ if (int_no)
++ {
++ assert (lead_zero == 0
++ && int_no <= (uintmax_t) INTMAX_MAX);
++ exp_limit = MAX_10_EXP - (intmax_t) int_no + 1;
++ }
++ else if (lead_zero == (size_t) -1)
++ {
++ /* The number is zero and this limit is
++ arbitrary. */
++ exp_limit = MAX_10_EXP + 1;
++ }
++ else
++ {
++ assert (lead_zero
++ <= (uintmax_t) (INTMAX_MAX - MAX_10_EXP - 1));
++ exp_limit = MAX_10_EXP + (intmax_t) lead_zero + 1;
++ }
++ }
++ }
++
++ if (exp_limit < 0)
++ exp_limit = 0;
+
+ do
+ {
+- exponent *= 10;
+- exponent += c - L_('0');
+-
+- if (__builtin_expect (exponent > exp_limit, 0))
++ if (__builtin_expect ((exponent > exp_limit / 10
++ || (exponent == exp_limit / 10
++ && c - L_('0') > exp_limit % 10)), 0))
+ /* The exponent is too large/small to represent a valid
+ number. */
+ {
+@@ -843,7 +908,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ /* We have to take care for special situation: a joker
+ might have written "0.0e100000" which is in fact
+ zero. */
+- if (lead_zero == -1)
++ if (lead_zero == (size_t) -1)
+ result = negative ? -0.0 : 0.0;
+ else
+ {
+@@ -862,6 +927,9 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ /* NOTREACHED */
+ }
+
++ exponent *= 10;
++ exponent += c - L_('0');
++
+ c = *++cp;
+ }
+ while (c >= L_('0') && c <= L_('9'));
+@@ -930,7 +998,14 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ }
+ #endif
+ startp += lead_zero + decimal_len;
+- exponent -= base == 16 ? 4 * lead_zero : lead_zero;
++ assert (lead_zero <= (base == 16
++ ? (uintmax_t) INTMAX_MAX / 4
++ : (uintmax_t) INTMAX_MAX));
++ assert (lead_zero <= (base == 16
++ ? ((uintmax_t) exponent
++ - (uintmax_t) INTMAX_MIN) / 4
++ : ((uintmax_t) exponent - (uintmax_t) INTMAX_MIN)));
++ exponent -= base == 16 ? 4 * (intmax_t) lead_zero : (intmax_t) lead_zero;
+ dig_no -= lead_zero;
+ }
+
+@@ -972,7 +1047,10 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ }
+
+ /* Adjust the exponent for the bits we are shifting in. */
+- exponent += bits - 1 + (int_no - 1) * 4;
++ assert (int_no <= (uintmax_t) (exponent < 0
++ ? (INTMAX_MAX - bits + 1) / 4
++ : (INTMAX_MAX - exponent - bits + 1) / 4));
++ exponent += bits - 1 + ((intmax_t) int_no - 1) * 4;
+
+ while (--dig_no > 0 && idx >= 0)
+ {
+@@ -1024,13 +1102,15 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ really integer digits or belong to the fractional part; i.e. we normalize
+ 123e-2 to 1.23. */
+ {
+- register int incr = (exponent < 0 ? MAX (-int_no, exponent)
+- : MIN (dig_no - int_no, exponent));
++ register intmax_t incr = (exponent < 0
++ ? MAX (-(intmax_t) int_no, exponent)
++ : MIN ((intmax_t) dig_no - (intmax_t) int_no,
++ exponent));
+ int_no += incr;
+ exponent -= incr;
+ }
+
+- if (__builtin_expect (int_no + exponent > MAX_10_EXP + 1, 0))
++ if (__builtin_expect (exponent > MAX_10_EXP + 1 - (intmax_t) int_no, 0))
+ {
+ __set_errno (ERANGE);
+ return negative ? -FLOAT_HUGE_VAL : FLOAT_HUGE_VAL;
+@@ -1215,7 +1295,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ digits we should have enough bits for the result. The remaining
+ decimal digits give us the information that more bits are following.
+ This can be used while rounding. (Two added as a safety margin.) */
+- if (dig_no - int_no > (MANT_DIG - bits + 2) / 3 + 2)
++ if ((intmax_t) dig_no > (intmax_t) int_no + (MANT_DIG - bits + 2) / 3 + 2)
+ {
+ dig_no = int_no + (MANT_DIG - bits + 2) / 3 + 2;
+ more_bits = 1;
+@@ -1223,7 +1303,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
+ else
+ more_bits = 0;
+
+- neg_exp = dig_no - int_no - exponent;
++ neg_exp = (intmax_t) dig_no - (intmax_t) int_no - exponent;
+
+ /* Construct the denominator. */
+ densize = 0;
+diff --git a/stdlib/tst-strtod-overflow.c b/stdlib/tst-strtod-overflow.c
+new file mode 100644
+index 0000000..668d55b
+--- /dev/null
++++ b/stdlib/tst-strtod-overflow.c
+@@ -0,0 +1,48 @@
++/* Test for integer/buffer overflow in strtod.
++ Copyright (C) 2012 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library 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
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, see
++ <http://www.gnu.org/licenses/>. */
++
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++
++#define EXPONENT "e-2147483649"
++#define SIZE 214748364
++
++static int
++do_test (void)
++{
++ char *p = malloc (1 + SIZE + sizeof (EXPONENT));
++ if (p == NULL)
++ {
++ puts ("malloc failed, cannot test for overflow");
++ return 0;
++ }
++ p[0] = '1';
++ memset (p + 1, '0', SIZE);
++ memcpy (p + 1 + SIZE, EXPONENT, sizeof (EXPONENT));
++ double d = strtod (p, NULL);
++ if (d != 0)
++ {
++ printf ("strtod returned wrong value: %a\n", d);
++ return 1;
++ }
++ return 0;
++}
++
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+--
+1.7.3.4
+
diff --git a/testing/glibc/glibc-2.16-unlock-mutex.patch b/testing/glibc/glibc-2.16-unlock-mutex.patch
new file mode 100644
index 000000000..0649d3642
--- /dev/null
+++ b/testing/glibc/glibc-2.16-unlock-mutex.patch
@@ -0,0 +1,775 @@
+--- a/nptl/Makefile
++++ b/nptl/Makefile
+@@ -206,7 +206,7 @@ tests = tst-typesizes \
+ tst-cond1 tst-cond2 tst-cond3 tst-cond4 tst-cond5 tst-cond6 tst-cond7 \
+ tst-cond8 tst-cond9 tst-cond10 tst-cond11 tst-cond12 tst-cond13 \
+ tst-cond14 tst-cond15 tst-cond16 tst-cond17 tst-cond18 tst-cond19 \
+- tst-cond20 tst-cond21 tst-cond22 tst-cond23 \
++ tst-cond20 tst-cond21 tst-cond22 tst-cond23 tst-cond24 \
+ tst-robust1 tst-robust2 tst-robust3 tst-robust4 tst-robust5 \
+ tst-robust6 tst-robust7 tst-robust8 tst-robust9 \
+ tst-robustpi1 tst-robustpi2 tst-robustpi3 tst-robustpi4 tst-robustpi5 \
+@@ -274,6 +275,7 @@ gen-as-const-headers = pthread-errnos.sym
+
+ LDFLAGS-pthread.so = -Wl,--enable-new-dtags,-z,nodelete,-z,initfirst
+
++LDFLAGS-tst-cond24 = $(no-as-needed) -lrt
+
+ include ../Makeconfig
+
+diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+index d14d7de..6761c13 100644
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+@@ -212,8 +212,23 @@ __pthread_cond_timedwait:
+ sete 24(%esp)
+ je 41f
+
+- /* Normal and PI futexes dont mix. Use normal futex functions only
+- if the kernel does not support the PI futex functions. */
++ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
++ successfully, it has already locked the mutex for us and the
++ pi_flag (24(%esp)) is set to denote that fact. However, if another
++ thread changed the futex value before we entered the wait, the
++ syscall may return an EAGAIN and the mutex is not locked. We go
++ ahead with a success anyway since later we look at the pi_flag to
++ decide if we got the mutex or not. The sequence numbers then make
++ sure that only one of the threads actually wake up. We retry using
++ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
++ and PI futexes don't mix.
++
++ Note that we don't check for EAGAIN specifically; we assume that the
++ only other error the futex function could return is EAGAIN (barring
++ the ETIMEOUT of course, for the timeout case in futex) since
++ anything else would mean an error in our function. It is too
++ expensive to do that check for every call (which is quite common in
++ case of a large number of threads), so it has been skipped. */
+ cmpl $-ENOSYS, %eax
+ jne 41f
+ xorl %ecx, %ecx
+@@ -273,9 +288,24 @@ __pthread_cond_timedwait:
+ jne 9f
+
+ 15: cmpl $-ETIMEDOUT, %esi
+- jne 8b
++ je 28f
++
++ /* We need to go back to futex_wait. If we're using requeue_pi, then
++ release the mutex we had acquired and go back. */
++ movl 24(%esp), %edx
++ test %edx, %edx
++ jz 8b
++
++ /* Adjust the mutex values first and then unlock it. The unlock
++ should always succeed or else the kernel did not lock the mutex
++ correctly. */
++ movl dep_mutex(%ebx), %eax
++ call __pthread_mutex_cond_lock_adjust
++ xorl %edx, %edx
++ call __pthread_mutex_unlock_usercnt
++ jmp 8b
+
+- addl $1, wakeup_seq(%ebx)
++28: addl $1, wakeup_seq(%ebx)
+ adcl $0, wakeup_seq+4(%ebx)
+ addl $1, cond_futex(%ebx)
+ movl $ETIMEDOUT, %esi
+diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+index 366de69..0af06ac 100644
+--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
++++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S
+@@ -136,7 +136,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
+@@ -152,11 +151,22 @@ __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. */
++ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
++ successfully, it has already locked the mutex for us and the
++ pi_flag (16(%esp)) is set to denote that fact. However, if another
++ thread changed the futex value before we entered the wait, the
++ syscall may return an EAGAIN and the mutex is not locked. We go
++ ahead with a success anyway since later we look at the pi_flag to
++ decide if we got the mutex or not. The sequence numbers then make
++ sure that only one of the threads actually wake up. We retry using
++ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
++ and PI futexes don't mix.
++
++ Note that we don't check for EAGAIN specifically; we assume that the
++ only other error the futex function could return is EAGAIN since
++ anything else would mean an error in our function. It is too
++ expensive to do that check for every call (which is quite common in
++ case of a large number of threads), so it has been skipped. */
+ cmpl $-ENOSYS, %eax
+ jne 19f
+ xorl %ecx, %ecx
+@@ -206,12 +216,12 @@ __pthread_cond_wait:
+ cmpl 8(%esp), %edx
+ jne 7f
+ cmpl 4(%esp), %edi
+- je 8b
++ je 22f
+
+ 7: cmpl %ecx, %edx
+ jne 9f
+ cmp %eax, %edi
+- je 8b
++ je 22f
+
+ 9: addl $1, woken_seq(%ebx)
+ adcl $0, woken_seq+4(%ebx)
+@@ -287,6 +297,22 @@ __pthread_cond_wait:
+ jmp 20b
+
+ cfi_adjust_cfa_offset(-FRAME_SIZE);
++
++ /* We need to go back to futex_wait. If we're using requeue_pi, then
++ release the mutex we had acquired and go back. */
++22: movl 16(%esp), %edx
++ test %edx, %edx
++ jz 8b
++
++ /* Adjust the mutex values first and then unlock it. The unlock
++ should always succeed or else the kernel did not lock the mutex
++ correctly. */
++ movl dep_mutex(%ebx), %eax
++ call __pthread_mutex_cond_lock_adjust
++ xorl %edx, %edx
++ call __pthread_mutex_unlock_usercnt
++ jmp 8b
++
+ /* Initial locking failed. */
+ 1:
+ #if cond_lock == 0
+@@ -400,77 +426,6 @@ __pthread_cond_wait:
+ 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)
+@@ -651,10 +606,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
+diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
+index a1c8ca8..b669abb 100644
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S
+@@ -103,7 +103,7 @@ __pthread_cond_timedwait:
+ mov %RSI_LP, dep_mutex(%rdi)
+
+ 22:
+- xorl %r15d, %r15d
++ xorb %r15b, %r15b
+
+ #ifndef __ASSUME_FUTEX_CLOCK_REALTIME
+ # ifdef PIC
+@@ -190,18 +190,39 @@ __pthread_cond_timedwait:
+ movl $SYS_futex, %eax
+ syscall
+
+- movl $1, %r15d
++ cmpl $0, %eax
++ sete %r15b
++
+ #ifdef __ASSUME_REQUEUE_PI
+ jmp 62f
+ #else
+- cmpq $-4095, %rax
+- jnae 62f
++ je 62f
++
++ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
++ successfully, it has already locked the mutex for us and the
++ pi_flag (%r15b) is set to denote that fact. However, if another
++ thread changed the futex value before we entered the wait, the
++ syscall may return an EAGAIN and the mutex is not locked. We go
++ ahead with a success anyway since later we look at the pi_flag to
++ decide if we got the mutex or not. The sequence numbers then make
++ sure that only one of the threads actually wake up. We retry using
++ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
++ and PI futexes don't mix.
++
++ Note that we don't check for EAGAIN specifically; we assume that the
++ only other error the futex function could return is EAGAIN (barring
++ the ETIMEOUT of course, for the timeout case in futex) since
++ anything else would mean an error in our function. It is too
++ expensive to do that check for every call (which is quite common in
++ case of a large number of threads), so it has been skipped. */
++ cmpl $-ENOSYS, %eax
++ jne 62f
+
+ subq $cond_futex, %rdi
+ #endif
+
+ 61: movl $(FUTEX_WAIT_BITSET|FUTEX_PRIVATE_FLAG), %esi
+-60: xorl %r15d, %r15d
++60: xorb %r15b, %r15b
+ xorl %eax, %eax
+ /* The following only works like this because we only support
+ two clocks, represented using a single bit. */
+@@ -248,7 +269,23 @@ __pthread_cond_timedwait:
+ ja 39f
+
+ 45: cmpq $-ETIMEDOUT, %r14
+- jne 38b
++ je 99f
++
++ /* We need to go back to futex_wait. If we're using requeue_pi, then
++ release the mutex we had acquired and go back. */
++ test %r15b, %r15b
++ jz 38b
++
++ /* Adjust the mutex values first and then unlock it. The unlock
++ should always succeed or else the kernel did not lock the
++ mutex correctly. */
++ movq %r8, %rdi
++ callq __pthread_mutex_cond_lock_adjust
++ xorl %esi, %esi
++ callq __pthread_mutex_unlock_usercnt
++ /* Reload cond_var. */
++ movq 8(%rsp), %rdi
++ jmp 38b
+
+ 99: incq wakeup_seq(%rdi)
+ incl cond_futex(%rdi)
+@@ -298,7 +335,7 @@ __pthread_cond_timedwait:
+ /* If requeue_pi is used the kernel performs the locking of the
+ mutex. */
+ 41: movq 16(%rsp), %rdi
+- testl %r15d, %r15d
++ testb %r15b, %r15b
+ jnz 64f
+
+ callq __pthread_mutex_cond_lock
+diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+index 6194852..ec403cd 100644
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
++++ b/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
+@@ -136,19 +136,36 @@ __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
++ cmpl $0, %eax
++ sete %r8b
++
+ #ifdef __ASSUME_REQUEUE_PI
+ jmp 62f
+ #else
+- cmpq $-4095, %rax
+- jnae 62f
++ je 62f
++
++ /* When a futex syscall with FUTEX_WAIT_REQUEUE_PI returns
++ successfully, it has already locked the mutex for us and the
++ pi_flag (%r8b) is set to denote that fact. However, if another
++ thread changed the futex value before we entered the wait, the
++ syscall may return an EAGAIN and the mutex is not locked. We go
++ ahead with a success anyway since later we look at the pi_flag to
++ decide if we got the mutex or not. The sequence numbers then make
++ sure that only one of the threads actually wake up. We retry using
++ normal FUTEX_WAIT only if the kernel returned ENOSYS, since normal
++ and PI futexes don't mix.
++
++ Note that we don't check for EAGAIN specifically; we assume that the
++ only other error the futex function could return is EAGAIN since
++ anything else would mean an error in our function. It is too
++ expensive to do that check for every call (which is quite common in
++ case of a large number of threads), so it has been skipped. */
++ cmpl $-ENOSYS, %eax
++ jne 62f
+
+ # ifndef __ASSUME_PRIVATE_FUTEX
+ movl $FUTEX_WAIT, %esi
+@@ -161,7 +178,7 @@ __pthread_cond_wait:
+ #else
+ orl %fs:PRIVATE_FUTEX, %esi
+ #endif
+-60: xorl %r8d, %r8d
++60: xorb %r8b, %r8b
+ movl $SYS_futex, %eax
+ syscall
+
+@@ -191,10 +208,10 @@ __pthread_cond_wait:
+ jne 16f
+
+ cmpq 24(%rsp), %r9
+- jbe 8b
++ jbe 19f
+
+ cmpq %rax, %r9
+- jna 8b
++ jna 19f
+
+ incq woken_seq(%rdi)
+
+@@ -236,7 +253,7 @@ __pthread_cond_wait:
+ /* If requeue_pi is used the kernel performs the locking of the
+ mutex. */
+ 11: movq 16(%rsp), %rdi
+- testl %r8d, %r8d
++ testb %r8b, %r8b
+ jnz 18f
+
+ callq __pthread_mutex_cond_lock
+@@ -253,6 +270,23 @@ __pthread_cond_wait:
+ xorl %eax, %eax
+ jmp 14b
+
++ /* We need to go back to futex_wait. If we're using requeue_pi, then
++ release the mutex we had acquired and go back. */
++19: testb %r8b, %r8b
++ jz 8b
++
++ /* Adjust the mutex values first and then unlock it. The unlock
++ should always succeed or else the kernel did not lock the mutex
++ correctly. */
++ movq 16(%rsp), %rdi
++ callq __pthread_mutex_cond_lock_adjust
++ movq %rdi, %r8
++ xorl %esi, %esi
++ callq __pthread_mutex_unlock_usercnt
++ /* Reload cond_var. */
++ movq 8(%rsp), %rdi
++ jmp 8b
++
+ /* Initial locking failed. */
+ 1:
+ #if cond_lock != 0
+@@ -331,69 +365,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,10 +518,6 @@ __condvar_cleanup1:
+ .uleb128 .LcleanupEND-.LcleanupSTART
+ .uleb128 __condvar_cleanup1-.LSTARTCODE
+ .uleb128 0
+- .uleb128 .LcleanupSTART2-.LSTARTCODE
+- .uleb128 .LcleanupEND2-.LcleanupSTART2
+- .uleb128 __condvar_cleanup1-.LSTARTCODE
+- .uleb128 0
+ .uleb128 .LcallUR-.LSTARTCODE
+ .uleb128 .LENDCODE-.LcallUR
+ .uleb128 0
+diff --git a/nptl/tst-cond24.c b/nptl/tst-cond24.c
+new file mode 100644
+index 0000000..2eb2df1
+--- /dev/null
++++ b/nptl/tst-cond24.c
+@@ -0,0 +1,249 @@
++/* Verify that condition variables synchronized by PI mutexes don't hang.
++ Copyright (C) 2012 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library 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
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, see
++ <http://www.gnu.org/licenses/>. */
++
++#include <pthread.h>
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <errno.h>
++#include <sys/types.h>
++#include <sys/syscall.h>
++#include <unistd.h>
++#include <sys/time.h>
++#include <time.h>
++
++#define THREADS_NUM 5
++#define MAXITER 50000
++
++static pthread_mutex_t mutex;
++static pthread_mutexattr_t mutex_attr;
++static pthread_cond_t cond;
++static pthread_t threads[THREADS_NUM];
++static int pending = 0;
++
++typedef void * (*threadfunc) (void *);
++
++void *
++thread_fun_timed (void *arg)
++{
++ int *ret = arg;
++ int rv, i;
++
++ printf ("Started thread_fun_timed[%d]\n", *ret);
++
++ for (i = 0; i < MAXITER / THREADS_NUM; i++)
++ {
++ rv = pthread_mutex_lock (&mutex);
++ if (rv)
++ {
++ printf ("pthread_mutex_lock: %s(%d)\n", strerror (rv), rv);
++ *ret = 1;
++ goto out;
++ }
++
++ while (!pending)
++ {
++ struct timespec ts;
++ clock_gettime(CLOCK_REALTIME, &ts);
++ ts.tv_sec += 20;
++ rv = pthread_cond_timedwait (&cond, &mutex, &ts);
++
++ /* There should be no timeout either. */
++ if (rv)
++ {
++ printf ("pthread_cond_wait: %s(%d)\n", strerror (rv), rv);
++ *ret = 1;
++ goto out;
++ }
++ }
++
++ pending--;
++
++ rv = pthread_mutex_unlock (&mutex);
++ if (rv)
++ {
++ printf ("pthread_mutex_unlock: %s(%d)\n", strerror (rv), rv);
++ *ret = 1;
++ goto out;
++ }
++ }
++
++ *ret = 0;
++
++out:
++ return ret;
++}
++
++void *
++thread_fun (void *arg)
++{
++ int *ret = arg;
++ int rv, i;
++
++ printf ("Started thread_fun[%d]\n", *ret);
++
++ for (i = 0; i < MAXITER / THREADS_NUM; i++)
++ {
++ rv = pthread_mutex_lock (&mutex);
++ if (rv)
++ {
++ printf ("pthread_mutex_lock: %s(%d)\n", strerror (rv), rv);
++ *ret = 1;
++ goto out;
++ }
++
++ while (!pending)
++ {
++ rv = pthread_cond_wait (&cond, &mutex);
++
++ if (rv)
++ {
++ printf ("pthread_cond_wait: %s(%d)\n", strerror (rv), rv);
++ *ret = 1;
++ goto out;
++ }
++ }
++
++ pending--;
++
++ rv = pthread_mutex_unlock (&mutex);
++ if (rv)
++ {
++ printf ("pthread_mutex_unlock: %s(%d)\n", strerror (rv), rv);
++ *ret = 1;
++ goto out;
++ }
++ }
++
++ *ret = 0;
++
++out:
++ return ret;
++}
++
++static int
++do_test_wait (threadfunc f)
++{
++ int i;
++ int rv;
++ int counter = 0;
++ int retval[THREADS_NUM];
++
++ puts ("Starting test");
++
++ rv = pthread_mutexattr_init (&mutex_attr);
++ if (rv)
++ {
++ printf ("pthread_mutexattr_init: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++
++ rv = pthread_mutexattr_setprotocol (&mutex_attr, PTHREAD_PRIO_INHERIT);
++ if (rv)
++ {
++ printf ("pthread_mutexattr_setprotocol: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++
++ rv = pthread_mutex_init (&mutex, &mutex_attr);
++ if (rv)
++ {
++ printf ("pthread_mutex_init: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++
++ rv = pthread_cond_init (&cond, NULL);
++ if (rv)
++ {
++ printf ("pthread_cond_init: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++
++ for (i = 0; i < THREADS_NUM; i++)
++ {
++ retval[i] = i;
++ rv = pthread_create (&threads[i], NULL, f, &retval[i]);
++ if (rv)
++ {
++ printf ("pthread_create: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++ }
++
++ for (; counter < MAXITER; counter++)
++ {
++ rv = pthread_mutex_lock (&mutex);
++ if (rv)
++ {
++ printf ("pthread_mutex_lock: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++
++ if (!(counter % 100))
++ printf ("counter: %d\n", counter);
++ pending += 1;
++
++ rv = pthread_cond_signal (&cond);
++ if (rv)
++ {
++ printf ("pthread_cond_signal: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++
++ rv = pthread_mutex_unlock (&mutex);
++ if (rv)
++ {
++ printf ("pthread_mutex_unlock: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++ }
++
++ for (i = 0; i < THREADS_NUM; i++)
++ {
++ void *ret;
++ rv = pthread_join (threads[i], &ret);
++ if (rv)
++ {
++ printf ("pthread_join: %s(%d)\n", strerror (rv), rv);
++ return 1;
++ }
++ if (ret && *(int *)ret)
++ {
++ printf ("Thread %d returned with an error\n", i);
++ return 1;
++ }
++ }
++
++ return 0;
++}
++
++static int
++do_test (void)
++{
++ puts ("Testing pthread_cond_wait");
++ int ret = do_test_wait (thread_fun);
++ if (ret)
++ return ret;
++
++ puts ("Testing pthread_cond_timedwait");
++ return do_test_wait (thread_fun_timed);
++}
++
++#define TIMEOUT 10
++#define TEST_FUNCTION do_test ()
++#include "../test-skeleton.c"
+--
+1.7.3.4
+
diff --git a/testing/glibc/glibc.install b/testing/glibc/glibc.install
index 7f85ade96..4486a3b2d 100644
--- a/testing/glibc/glibc.install
+++ b/testing/glibc/glibc.install
@@ -2,19 +2,19 @@ infodir=usr/share/info
filelist=(libc.info{,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11})
post_upgrade() {
- sbin/ldconfig -r .
- [ -x sbin/init ] && sbin/init u
- usr/sbin/locale-gen
+ ldconfig -r .
+ [[ ! -e sys/fs/cgroup/systemd && -x sbin/init ]] && init u
+ locale-gen
- [ -x usr/bin/install-info ] || return 0
+ [[ -x usr/bin/install-info ]] || return 0
for file in ${filelist[@]}; do
- usr/bin/install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
done
}
pre_remove() {
- [ -x usr/bin/install-info ] || return 0
+ [[ -x usr/bin/install-info ]] || return 0
for file in ${filelist[@]}; do
- usr/bin/install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
done
}
diff --git a/testing/glibc/nscd.service b/testing/glibc/nscd.service
index de5315e9b..bc80a0730 100644
--- a/testing/glibc/nscd.service
+++ b/testing/glibc/nscd.service
@@ -9,7 +9,7 @@ ExecStop=/usr/sbin/nscd --shutdown
ExecReload=/usr/sbin/nscd -i passwd
ExecReload=/usr/sbin/nscd -i group
ExecReload=/usr/sbin/nscd -i hosts
-ExecReload=/usr/sbin/nscd -i service
+ExecReload=/usr/sbin/nscd -i services
Restart=always
PIDFile=/run/nscd/nscd.pid
diff --git a/testing/gnome-documents/PKGBUILD b/testing/gnome-documents/PKGBUILD
index 21416f4af..18a05b7e7 100644
--- a/testing/gnome-documents/PKGBUILD
+++ b/testing/gnome-documents/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 169230 2012-10-18 19:27:05Z jgc $
+# $Id: PKGBUILD 169605 2012-10-24 09:10:49Z jgc $
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
pkgname=gnome-documents
-pkgver=3.6.0
+pkgver=3.6.1
pkgrel=1
pkgdesc="Documents Manager for GNOME"
arch=(i686 x86_64)
@@ -16,7 +16,7 @@ optdepends=('unoconv: Support for Libreoffice document types')
options=('!libtool')
install=gnome-documents.install
source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.xz)
-sha256sums=('a4a5c525cba047a6c8f712f8a0d73fc26dc0445d4c8278c10ecbeac4efd342e2')
+sha256sums=('16a241db8abcac69c80e4c1a4f3319fbc0c1a99fb5f707eca45368043cc809ac')
build() {
cd $pkgname-$pkgver
diff --git a/testing/hugin/PKGBUILD b/testing/hugin/PKGBUILD
index 71876466c..c76a7bfeb 100644
--- a/testing/hugin/PKGBUILD
+++ b/testing/hugin/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 164679 2012-08-02 15:21:40Z andrea $
+# $Id: PKGBUILD 169638 2012-10-25 01:35:06Z eric $
# Maintainer: Tobias Kieslich <tobias@archlinux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Dominik Ryba <domryba@post.pl>
pkgname=hugin
pkgver=2011.4.0
-pkgrel=5
+pkgrel=7
pkgdesc="A frontend to the panorama-tools"
arch=('i686' 'x86_64')
url="http://hugin.sourceforge.net/"
license=('GPL')
depends=('wxgtk' 'boost-libs' 'enblend-enfuse' 'exiv2' 'autopano-sift-c'
'lapack' 'desktop-file-utils' 'make' 'perl-image-exiftool')
-makedepends=('zip' 'cmake' 'boost' 'tclap')
+makedepends=('zip' 'cmake' 'boost' 'tclap' 'mesa')
install=hugin.install
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2"
gcc47.patch)
diff --git a/testing/ilmbase/PKGBUILD b/testing/ilmbase/PKGBUILD
new file mode 100644
index 000000000..fe1618f48
--- /dev/null
+++ b/testing/ilmbase/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 356 2008-04-18 22:56:27Z aaron $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+
+pkgname=ilmbase
+pkgver=1.0.3
+pkgrel=1
+depends=('gcc-libs')
+pkgdesc="Base libraries from ILM for OpenEXR"
+arch=(i686 x86_64)
+url="http://www.openexr.com"
+license=('custom')
+options=('!libtool')
+source=(https://github.com/downloads/openexr/openexr/$pkgname-$pkgver.tar.gz
+ ilmbase-IexMath.patch)
+md5sums=('d99962ec7e2bfac0647aaabf6b91d5de'
+ '9c8efaf15f60bccf79749ec879657962')
+
+build() {
+ cd "${srcdir}/$pkgname-$pkgver"
+ patch -p0 -i "${srcdir}/ilmbase-IexMath.patch"
+ ./configure --prefix=/usr
+ make
+}
+
+check() {
+ cd "${srcdir}/$pkgname-$pkgver"
+ # one of the tests fails randomly for an unknown reason
+ make check || true
+}
+
+package() {
+ cd "${srcdir}/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+ install -D -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+}
diff --git a/testing/ilmbase/ilmbase-IexMath.patch b/testing/ilmbase/ilmbase-IexMath.patch
new file mode 100644
index 000000000..546034966
--- /dev/null
+++ b/testing/ilmbase/ilmbase-IexMath.patch
@@ -0,0 +1,12 @@
+--- IexMath/IexMathFpu.cpp.orig 2012-07-26 20:51:55.000000000 +0200
++++ IexMath/IexMathFpu.cpp 2012-10-04 15:30:47.000000000 +0200
+@@ -27,8 +27,7 @@
+ #endif
+
+
+-#ifdef HAVE_UCONTEXT_H
+-
++#if defined(HAVE_UCONTEXT_H) && (defined(x86_64) || defined(i386_))
+
+ #include <ucontext.h>
+ #include <signal.h>
diff --git a/testing/imagemagick/PKGBUILD b/testing/imagemagick/PKGBUILD
new file mode 100644
index 000000000..985a18f01
--- /dev/null
+++ b/testing/imagemagick/PKGBUILD
@@ -0,0 +1,82 @@
+# $Id: PKGBUILD 169640 2012-10-25 01:35:11Z eric $
+# Maintainer: Eric BĂ©langer <eric@archlinux.org>
+
+pkgbase=imagemagick
+pkgname=('imagemagick' 'imagemagick-doc')
+pkgver=6.8.0.1
+pkgrel=1
+arch=('i686' 'x86_64')
+url="http://www.imagemagick.org/"
+license=('custom')
+makedepends=('libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'ghostscript' \
+ 'openexr' 'libwmf' 'librsvg' 'libxml2' 'jasper' 'liblqr')
+source=(ftp://ftp.sunet.se/pub/multimedia/graphics/ImageMagick/ImageMagick-${pkgver%.*}-${pkgver##*.}.tar.xz \
+ perlmagick.rpath.patch)
+sha1sums=('47926535dd68b38f5ae8a01e470cebf671018831'
+ '23405f80904b1de94ebd7bd6fe2a332471b8c283')
+
+build() {
+ cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.}
+
+ sed '/AC_PATH_XTRA/d' -i configure.ac
+ autoreconf --force --install
+ patch -p0 -i ../perlmagick.rpath.patch
+
+ ./configure --prefix=/usr --sysconfdir=/etc --with-modules --disable-static \
+ --disable-openmp --with-wmf --with-openexr --with-xml --with-lcms2 --with-jp2 \
+ --with-gslib --with-gs-font-dir=/usr/share/fonts/Type1 \
+ --with-perl --with-perl-options="INSTALLDIRS=vendor" --with-lqr --with-rsvg \
+ --without-gvc --without-djvu --without-autotrace --without-webp \
+ --without-jbig --without-fpx --without-dps --without-fftw
+ make
+}
+
+check() {
+ cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.}
+# make check
+}
+
+package_imagemagick() {
+ pkgdesc="An image viewing/manipulation program"
+ depends=('perl' 'libltdl' 'lcms2' 'libxt' 'fontconfig' 'libxext' 'liblqr')
+ optdepends=('ghostscript: for Ghostscript support'
+ 'openexr: for OpenEXR support'
+ 'libwmf: for WMF support'
+ 'librsvg: for SVG support'
+ 'libxml2: for XML support'
+ 'jasper: for JPEG-2000 support'
+ 'libpng: for PNG support')
+ backup=('etc/ImageMagick/coder.xml'
+ 'etc/ImageMagick/colors.xml'
+ 'etc/ImageMagick/delegates.xml'
+ 'etc/ImageMagick/log.xml'
+ 'etc/ImageMagick/magic.xml'
+ 'etc/ImageMagick/mime.xml'
+ 'etc/ImageMagick/policy.xml'
+ 'etc/ImageMagick/quantization-table.xml'
+ 'etc/ImageMagick/thresholds.xml'
+ 'etc/ImageMagick/type.xml'
+ 'etc/ImageMagick/type-dejavu.xml'
+ 'etc/ImageMagick/type-ghostscript.xml'
+ 'etc/ImageMagick/type-windows.xml')
+ options=('!docs' 'libtool' '!emptydirs')
+
+ cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.}
+ make DESTDIR="${pkgdir}" install
+ chmod 755 "${pkgdir}/usr/lib/perl5/vendor_perl/auto/Image/Magick/Magick.so"
+ install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/imagemagick/LICENSE"
+ install -Dm644 NOTICE "${pkgdir}/usr/share/licenses/imagemagick/NOTICE"
+
+#Cleaning
+ find "${pkgdir}" -name '*.bs' -delete
+ rm -f "${pkgdir}"/usr/lib/*.la
+}
+
+package_imagemagick-doc() {
+ pkgdesc="The ImageMagick documentation (utilities manuals and libraries API)"
+
+ cd "${srcdir}"/ImageMagick-${pkgver%.*}-${pkgver##*.}
+ make DESTDIR="${pkgdir}" install-data-html
+ install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/imagemagick-doc/LICENSE"
+ install -Dm644 NOTICE "${pkgdir}/usr/share/licenses/imagemagick-doc/NOTICE"
+}
diff --git a/testing/imagemagick/perlmagick.rpath.patch b/testing/imagemagick/perlmagick.rpath.patch
new file mode 100644
index 000000000..958c0f2ee
--- /dev/null
+++ b/testing/imagemagick/perlmagick.rpath.patch
@@ -0,0 +1,10 @@
+--- Makefile.in.orig 2009-05-26 16:22:11.000000000 -0300
++++ Makefile.in 2009-05-26 16:23:27.000000000 -0300
+@@ -10067,6 +10067,7 @@
+
+ @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@$(PERLMAKEFILE): perl-sources $(PERLMAKEMAKER)
+ @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @PERL@ Makefile.PL $(PERL_MAKE_OPTIONS)
++@WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && @SED@ -i 's|LD_RUN_PATH|DIE_LD_RUN_PATH_DIE|g' Makefile
+
+ @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@install-exec-perl: $(MAGICKCORE_LIBS) $(MAGICKWAND_LIBS) $(PERLMAKEFILE)
+ @WITH_PERL_DYNAMIC_TRUE@@WITH_PERL_TRUE@ cd $(PERLMAGICK) && $(MAKE) CC='@CC@' install
diff --git a/testing/inkscape/PKGBUILD b/testing/inkscape/PKGBUILD
index a7f67a502..762134903 100644
--- a/testing/inkscape/PKGBUILD
+++ b/testing/inkscape/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 169323 2012-10-19 13:28:35Z andyrtr $
+# $Id: PKGBUILD 169641 2012-10-25 01:35:14Z eric $
# Contributor: tobias <tobias@archlinux.org>
# Contributor: Tobias Kieslich <tobias@justdreams.de>
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
pkgname=inkscape
pkgver=0.48.3.1
-pkgrel=6
+pkgrel=7
pkgdesc='Vector graphics editor using the SVG file format'
url='http://inkscape.sourceforge.net/'
license=('GPL' 'LGPL')
diff --git a/testing/kdelibs3/PKGBUILD b/testing/kdelibs3/PKGBUILD
new file mode 100644
index 000000000..b3efef435
--- /dev/null
+++ b/testing/kdelibs3/PKGBUILD
@@ -0,0 +1,97 @@
+# $Id: PKGBUILD 169643 2012-10-25 01:35:25Z eric $
+# Maintainer: Eric BĂ©langer <eric@archlinux.org>
+# Contributor: Pierre Schmitz <pierre@archlinux.de>
+# Contributor: Tobias Powalowski <tpowa@archlinux.org>
+
+pkgname=kdelibs3
+pkgver=3.5.10
+pkgrel=15
+pkgdesc='KDE3 Core Libraries'
+arch=('i686' 'x86_64')
+url='http://www.kde.org'
+license=('GPL' 'LGPL')
+depends=('libxslt' 'pcre' 'libart-lgpl' 'alsa-lib' 'libcups' 'jasper'
+ 'libidn' 'openexr' 'aspell' 'qt3' 'ca-certificates')
+makedepends=('cups' 'hspell')
+optdepends=('hspell: for Hebrew spell-checking support')
+options=('libtool' '!makeflags')
+install=kdelibs3.install
+source=("ftp://ftp.kde.org/pub/kde/stable/${pkgver}/src/kdelibs-${pkgver}.tar.bz2"
+ 'ftp://ftp.archlinux.org/other/kde/kde-3.5-1074156.patch.gz'
+ 'acinclude.patch'
+ 'kde3.profile'
+ 'kde4-compatibility.patch'
+ 'kconf_updaterc'
+ 'openssl.patch'
+ 'kdelibs3-missing-include.patch'
+ 'kdelibs3-cups16.patch')
+sha1sums=('c930a25f4419134def55b8466c3a6f737227fb82'
+ 'c8ca21e4848a627760746d0a8a64bf4f90684c3e'
+ '50c9de71b102507fb78b192ecc22a5fc3e031bc3'
+ 'fbd6e773edf3e8bb8e1272629984025e041da2ca'
+ '5fbbf7a5e2032878815fa055bfb5020f478d2b25'
+ '35e56fe4c5f71685e64b13f448dcacc620166e06'
+ '50e92950498463defb9149ffcf8cbc2e8cd1063b'
+ 'e5f5b8c060a2db9cedb82bf18caadfa869921779'
+ '6a6c544b3336bfe89bb17ef737d783a7ec006c6c')
+
+build() {
+ cd "$srcdir"/kdelibs-${pkgver}
+
+ . /etc/profile.d/qt3.sh
+ . "$srcdir"/kde3.profile
+
+ patch -p0 -i "$srcdir"/kde-3.5-1074156.patch
+ patch -p1 -i "$srcdir"/acinclude.patch
+ patch -p1 -i "$srcdir"/kde4-compatibility.patch
+ patch -p1 -i "${srcdir}"/openssl.patch
+ patch -p0 -i "$srcdir"/kdelibs3-missing-include.patch
+ patch -p1 -i "${srcdir}"/kdelibs3-cups16.patch
+
+ sed -iautomake -e 's|automake\*1.10\*|automake\*1.1[0-5]\*|' admin/cvs.sh
+ make -f admin/Makefile.common cvs
+
+ ./configure --prefix=/opt/kde \
+ --with-distribution='Arch Linux' \
+ --with-alsa \
+ --disable-debug \
+ --disable-dnssd \
+ --disable-dnotify \
+ --enable-inotify \
+ --enable-sendfile \
+ --without-lua \
+ --with-hspell \
+ --enable-gcc-hidden-visibility \
+ --enable-final \
+ --enable-new-ldflags LDFLAGS="${LDFLAGS} -L/opt/qt/lib" \
+ --without-arts \
+ --disable-libfam
+ make
+}
+
+package() {
+ cd "$srcdir"/kdelibs-${pkgver}
+
+ make DESTDIR="$pkgdir" install
+
+ # disable broken kconf_update by default
+ install -D -m644 "$srcdir"/kconf_updaterc \
+ "$pkgdir"/opt/kde/share/config/kconf_updaterc
+
+ # install KDE3 profile
+ install -D -m755 "$srcdir"/kde3.profile "$pkgdir"/etc/profile.d/kde3.sh
+ # make KDE3 styles available to Qt3
+ install -d -m755 "$pkgdir"/opt/qt/plugins
+ ln -sf /opt/kde/lib/kde3/plugins/styles "$pkgdir"/opt/qt/plugins/styles
+
+ # cert bundle seems to be hardcoded
+ # link it to the one from ca-certificates
+ rm -f "$pkgdir"/opt/kde/share/apps/kssl/ca-bundle.crt
+ ln -sf /etc/ssl/certs/ca-certificates.crt "$pkgdir"/opt/kde/share/apps/kssl/ca-bundle.crt
+
+ # we don't have khelpcenter anyway
+ rm -rf "$pkgdir"/opt/kde/share/doc
+
+ install -d -m755 "${pkgdir}"/etc/ld.so.conf.d/
+ echo '/opt/kde/lib' > "${pkgdir}"/etc/ld.so.conf.d/kdelibs3.conf
+}
diff --git a/testing/kdelibs3/acinclude.patch b/testing/kdelibs3/acinclude.patch
new file mode 100644
index 000000000..0610d6df5
--- /dev/null
+++ b/testing/kdelibs3/acinclude.patch
@@ -0,0 +1,66 @@
+2009-12-10 Stepan Kasal <skasal@redhat.com>
+
+The change of implementation of AC_REQUIRE in 2.64 caused a regression
+in the arts project.
+This can be fixed by shuffling some macro calls.
+
+I suppose that most of this patch will not be needed with a future
+release of Autoconf.
+But the last chunk of this patch is a real bug in this source and
+should go upstream.
+
+--- arts-1.5.10/admin/acinclude.m4.in 2008-08-20 18:07:05.000000000 +0200
++++ arts-1.5.10/admin/acinclude.m4.in 2009-12-09 17:30:57.000000000 +0100
+@@ -3081,8 +3081,18 @@
+ fi
+ ])
+
++AC_DEFUN([AC_CHECK_COMPILERS_CC],
++[
++ dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS
++ CFLAGS=" $CFLAGS"
++ AC_PROG_CC
++ CXXFLAGS=" $CXXFLAGS"
++ AC_PROG_CXX
++])
++
+ AC_DEFUN([AC_CHECK_COMPILERS],
+ [
++ AC_REQUIRE([AC_CHECK_COMPILERS_CC])
+ AC_ARG_ENABLE(debug,
+ AC_HELP_STRING([--enable-debug=ARG],[enables debug symbols (yes|no|full) [default=no]]),
+ [
+@@ -3141,11 +3151,6 @@
+ [kde_use_profiling="no"]
+ )
+
+- dnl this prevents stupid AC_PROG_CC to add "-g" to the default CFLAGS
+- CFLAGS=" $CFLAGS"
+-
+- AC_PROG_CC
+-
+ AC_PROG_CPP
+
+ if test "$GCC" = "yes"; then
+@@ -3174,10 +3179,6 @@
+ LDFLAGS=""
+ fi
+
+- CXXFLAGS=" $CXXFLAGS"
+-
+- AC_PROG_CXX
+-
+ KDE_CHECK_FOR_BAD_COMPILER
+
+ if test "$GXX" = "yes" || test "$CXX" = "KCC"; then
+@@ -3503,8 +3504,8 @@
+ AC_REQUIRE([AC_LIBTOOL_DLOPEN])
+ AC_REQUIRE([KDE_CHECK_LIB64])
+
+-AC_OBJEXT
+-AC_EXEEXT
++AC_REQUIRE([AC_OBJEXT])
++AC_REQUIRE([AC_EXEEXT])
+
+ AM_PROG_LIBTOOL
+ AC_LIBTOOL_CXX
diff --git a/testing/kdelibs3/kconf_updaterc b/testing/kdelibs3/kconf_updaterc
new file mode 100644
index 000000000..24c2623fb
--- /dev/null
+++ b/testing/kdelibs3/kconf_updaterc
@@ -0,0 +1,2 @@
+updateInfoAdded=false
+autoUpdateDisabled=true
diff --git a/testing/kdelibs3/kde3.profile b/testing/kdelibs3/kde3.profile
new file mode 100755
index 000000000..ef09631ff
--- /dev/null
+++ b/testing/kdelibs3/kde3.profile
@@ -0,0 +1,6 @@
+export PATH=$PATH:/opt/kde/bin
+if [ ! -z $XDG_DATA_DIRS ]; then
+ export XDG_DATA_DIRS=$XDG_DATA_DIRS:/opt/kde/share
+else
+ export XDG_DATA_DIRS=/opt/kde/share
+fi
diff --git a/testing/kdelibs3/kde4-compatibility.patch b/testing/kdelibs3/kde4-compatibility.patch
new file mode 100644
index 000000000..129c314ae
--- /dev/null
+++ b/testing/kdelibs3/kde4-compatibility.patch
@@ -0,0 +1,1012 @@
+diff -Nura kdelibs-3.5.10/kdecore/kcrash.cpp kdelibs-3.5.10.new/kdecore/kcrash.cpp
+--- kdelibs-3.5.10/kdecore/kcrash.cpp 2007-01-15 12:34:17.000000000 +0100
++++ kdelibs-3.5.10.new/kdecore/kcrash.cpp 2009-08-06 06:18:06.000000000 +0200
+@@ -158,7 +158,7 @@
+ int i = 0;
+
+ // argument 0 has to be drkonqi
+- argv[i++] = "drkonqi";
++ argv[i++] = "/usr/lib/kde4/libexec/drkonqi";
+
+ #if defined Q_WS_X11
+ // start up on the correct display
+@@ -325,7 +325,7 @@
+ _exit(253);
+ if(!geteuid() && setuid(getuid()) < 0)
+ _exit(253);
+- execvp("drkonqi", const_cast< char** >( argv ));
++ execvp("/usr/lib/kde4/libexec/drkonqi", const_cast< char** >( argv ));
+ _exit(errno);
+ }
+ else
+diff -Nura kdelibs-3.5.10/kded/Makefile.am kdelibs-3.5.10.new/kded/Makefile.am
+--- kdelibs-3.5.10/kded/Makefile.am 2005-10-10 17:06:29.000000000 +0200
++++ kdelibs-3.5.10.new/kded/Makefile.am 2009-08-06 06:21:37.000000000 +0200
+@@ -58,7 +58,7 @@
+ servicetype_DATA = kdedmodule.desktop
+ servicetypedir = $(kde_servicetypesdir)
+
+-xdg_menu_DATA = applications.menu
++xdg_menu_DATA = kde-applications.menu
+
+ update_DATA = kded.upd
+ updatedir = $(kde_datadir)/kconf_update
+diff -Nura kdelibs-3.5.10/kded/Makefile.in kdelibs-3.5.10.new/kded/Makefile.in
+--- kdelibs-3.5.10/kded/Makefile.in 2008-08-20 18:05:57.000000000 +0200
++++ kdelibs-3.5.10.new/kded/Makefile.in 2009-08-06 06:22:19.000000000 +0200
+@@ -535,7 +535,7 @@
+
+ servicetype_DATA = kdedmodule.desktop
+ servicetypedir = $(kde_servicetypesdir)
+-xdg_menu_DATA = applications.menu
++xdg_menu_DATA = kde-applications.menu
+ update_DATA = kded.upd
+ updatedir = $(kde_datadir)/kconf_update
+ #>- all: all-am
+@@ -1173,7 +1173,7 @@
+ -rm -f kded.moc vfolder_menu.moc kdedmodule.moc kbuildsycoca.moc
+
+ #>+ 2
+-KDE_DIST=DESIGN kded.upd Makefile.in HOWTO vfolder_menu.h applications.menu kded.h kdedmodule.desktop README.kded kctimefactory.h Makefile.am
++KDE_DIST=DESIGN kded.upd Makefile.in HOWTO vfolder_menu.h kde-applications.menu kded.h kdedmodule.desktop README.kded kctimefactory.h Makefile.am
+
+ #>+ 2
+ docs-am:
+diff -Nura kdelibs-3.5.10/kded/applications.menu kdelibs-3.5.10.new/kded/applications.menu
+--- kdelibs-3.5.10/kded/applications.menu 2005-09-10 10:27:40.000000000 +0200
++++ kdelibs-3.5.10.new/kded/applications.menu 1970-01-01 01:00:00.000000000 +0100
+@@ -1,469 +0,0 @@
+- <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
+- "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
+-
+-<Menu>
+- <Name>Applications</Name>
+- <Directory>kde-main.directory</Directory>
+- <!-- Search the default locations -->
+- <KDELegacyDirs/>
+- <DefaultAppDirs/>
+- <DefaultDirectoryDirs/>
+- <DefaultLayout>
+- <Merge type="menus"/>
+- <Merge type="files"/>
+- <Separator/>
+- <Menuname>More</Menuname>
+- </DefaultLayout>
+- <Layout>
+- <Merge type="menus"/>
+- <Menuname>Applications</Menuname>
+- <Merge type="files"/>
+- </Layout>
+-
+- <Menu>
+- <Name>Applications</Name>
+- <Directory>kde-unknown.directory</Directory>
+- <OnlyUnallocated/>
+- <Include>
+- <Not>
+- <!-- Don't list non-KDE core applications -->
+- <And>
+- <Category>Core</Category>
+- <Not><Category>KDE</Category></Not>
+- </And>
+- <!-- Don't list SUSE's YaST in here -->
+- <Category>X-SuSE-YaST</Category>
+- </Not>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Development</Name>
+- <Directory>kde-development.directory</Directory>
+- <Menu>
+- <Name>X-KDE-KDevelopIDE</Name>
+- <Directory>kde-development-kdevelop.directory</Directory>
+- <Include>
+- <And>
+- <Category>Development</Category>
+- <Category>X-KDE-KDevelopIDE</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Translation</Name>
+- <Directory>kde-development-translation.directory</Directory>
+- <Include>
+- <And>
+- <Category>Development</Category>
+- <Category>Translation</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Web Development</Name>
+- <Directory>kde-development-webdevelopment.directory</Directory>
+- <Include>
+- <And>
+- <Category>Development</Category>
+- <Category>WebDevelopment</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Include>
+- <And>
+- <Category>Development</Category>
+- <Not><Category>X-KDE-KDevelopIDE</Category></Not>
+- <Not><Category>Translation</Category></Not>
+- <Not><Category>WebDevelopment</Category></Not>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Science</Name>
+- <Directory>kde-science.directory</Directory>
+- <Include>
+- <And><!-- Include /any/ Science app which is not an Education app -->
+- <Or>
+- <Category>Astronomy</Category>
+- <Category>Biology</Category>
+- <Category>Chemistry</Category>
+- <Category>Geology</Category>
+- <Category>MedicalSoftware</Category>
+- <Category>Physics</Category>
+- <Category>Math</Category>
+- <Category>Science</Category>
+- </Or>
+- <Not><Category>Education</Category></Not>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Edutainment</Name>
+- <Directory>kde-edutainment.directory</Directory>
+- <Menu>
+- <Name>Languages</Name>
+- <Directory>kde-edu-languages.directory</Directory>
+- <Include>
+- <And>
+- <Category>Education</Category>
+- <Or>
+- <Category>Languages</Category>
+- <Category>X-KDE-Edu-Language</Category>
+- </Or>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Mathematics</Name>
+- <Directory>kde-edu-mathematics.directory</Directory>
+- <Include>
+- <And>
+- <Category>Education</Category>
+- <Category>Math</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Miscellaneous</Name>
+- <Directory>kde-edu-miscellaneous.directory</Directory>
+- <Include>
+- <And>
+- <Category>Education</Category>
+- <Not>
+- <Category>Languages</Category>
+- <Category>X-KDE-Edu-Language</Category>
+- <Category>Math</Category>
+- <Category>Science</Category>
+- <Category>Teaching</Category>
+- <Category>X-KDE-Edu-Teaching</Category>
+- </Not>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Science</Name>
+- <Directory>kde-edu-science.directory</Directory>
+- <Include>
+- <And>
+- <Category>Education</Category>
+- <Category>Science</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Tools</Name>
+- <Directory>kde-edu-tools.directory</Directory>
+- <Include>
+- <And>
+- <Category>Education</Category>
+- <Or>
+- <Category>Teaching</Category>
+- <Category>X-KDE-Edu-Teaching</Category>
+- </Or>
+- </And>
+- </Include>
+- </Menu>
+- </Menu>
+- <Menu>
+- <Name>Games</Name>
+- <Directory>kde-games.directory</Directory>
+- <Menu>
+- <Name>Arcade</Name>
+- <Directory>kde-games-arcade.directory</Directory>
+- <Include>
+- <And>
+- <Category>Game</Category>
+- <Category>ArcadeGame</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Board</Name>
+- <Directory>kde-games-board.directory</Directory>
+- <Include>
+- <And>
+- <Category>Game</Category>
+- <Category>BoardGame</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Card</Name>
+- <Directory>kde-games-card.directory</Directory>
+- <Include>
+- <And>
+- <Category>Game</Category>
+- <Category>CardGame</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Kidsgames</Name>
+- <Directory>kde-games-kids.directory</Directory>
+- <Include>
+- <And>
+- <Category>Game</Category>
+- <Or>
+- <Category>X-KDE-KidsGame</Category>
+- <Category>KidsGame</Category>
+- </Or>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>TacticStrategy</Name>
+- <Directory>kde-games-strategy.directory</Directory>
+- <Include>
+- <And>
+- <Category>Game</Category>
+- <Category>StrategyGame</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Include>
+- <And>
+- <Category>Game</Category>
+- <Not>
+- <Category>ArcadeGame</Category>
+- <Category>BoardGame</Category>
+- <Category>CardGame</Category>
+- <Category>X-KDE-KidsGame</Category>
+- <Category>KidsGame</Category>
+- <Category>StrategyGame</Category>
+- </Not>
+- </And>
+- </Include>
+- <Menu>
+- <Name>Toys</Name>
+- <Directory>kde-toys.directory</Directory>
+- <Include>
+- <Category>Amusement</Category>
+- </Include>
+- </Menu>
+- </Menu>
+- <Menu>
+- <Name>Graphics</Name>
+- <Directory>kde-graphics.directory</Directory>
+- <Include>
+- <And>
+- <Category>Graphics</Category>
+- <Not><Category>X-KDE-More</Category></Not>
+- </And>
+- </Include>
+- <Menu>
+- <Name>More</Name>
+- <Directory>kde-more.directory</Directory>
+- <Include>
+- <And>
+- <Category>Graphics</Category>
+- <Category>X-KDE-More</Category>
+- </And>
+- </Include>
+- </Menu>
+- </Menu>
+- <Menu>
+- <Name>Internet</Name>
+- <Directory>kde-internet.directory</Directory>
+- <Include>
+- <And>
+- <Category>Network</Category>
+- <Not><Category>X-KDE-More</Category></Not>
+- </And>
+- </Include>
+- <Menu>
+- <Name>Terminal</Name>
+- <Directory>kde-internet-terminal.directory</Directory>
+- </Menu>
+- <Menu>
+- <Name>More</Name>
+- <Directory>kde-more.directory</Directory>
+- <Include>
+- <And>
+- <Category>Network</Category>
+- <Category>X-KDE-More</Category>
+- </And>
+- </Include>
+- </Menu>
+- </Menu>
+- <Menu>
+- <Name>Multimedia</Name>
+- <Directory>kde-multimedia.directory</Directory>
+- <Include>
+- <And>
+- <Category>AudioVideo</Category>
+- <Not><Category>X-KDE-More</Category></Not>
+- </And>
+- </Include>
+- <Menu>
+- <Name>More</Name>
+- <Directory>kde-more.directory</Directory>
+- <Include>
+- <And>
+- <Category>AudioVideo</Category>
+- <Category>X-KDE-More</Category>
+- </And>
+- </Include>
+- </Menu>
+- </Menu>
+- <Menu>
+- <Name>Office</Name>
+- <Directory>kde-office.directory</Directory>
+- <Layout>
+- <Merge type="menus"/>
+- <Filename>kde-koshell.desktop</Filename>
+- <Filename>kde-Kontact.desktop</Filename>
+- <Separator/>
+- <Filename>kde-kword.desktop</Filename>
+- <Filename>kde-kspread.desktop</Filename>
+- <Filename>kde-kpresenter.desktop</Filename>
+- <Merge type="files"/>
+- <Separator/>
+- <Menuname>More</Menuname>
+- </Layout>
+- <Include>
+- <And>
+- <Category>Office</Category>
+- <Not><Category>X-KDE-More</Category></Not>
+- </And>
+- </Include>
+- <Menu>
+- <Name>More</Name>
+- <Directory>kde-more.directory</Directory>
+- <Include>
+- <And>
+- <Category>Office</Category>
+- <Category>X-KDE-More</Category>
+- </And>
+- </Include>
+- </Menu>
+- </Menu>
+- <Menu>
+- <Name>Settingsmenu</Name>
+- <Directory>kde-settingsmenu.directory</Directory>
+- <Include>
+- <Category>Settings</Category>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>System</Name>
+- <Directory>kde-system.directory</Directory>
+- <Include>
+- <And>
+- <Category>System</Category>
+- <Not><Category>X-KDE-More</Category></Not>
+- </And>
+- </Include>
+- <Menu>
+- <Name>More</Name>
+- <Directory>kde-more.directory</Directory>
+- <Include>
+- <And>
+- <Category>System</Category>
+- <Category>X-KDE-More</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>ScreenSavers</Name>
+- <Directory>kde-system-screensavers.directory</Directory>
+- </Menu>
+- <Menu>
+- <Name>Terminal</Name>
+- <Directory>kde-system-terminal.directory</Directory>
+- </Menu>
+- </Menu>
+- <Menu>
+- <Name>Utilities</Name>
+- <Directory>kde-utilities.directory</Directory>
+- <Include>
+- <And>
+- <Category>Utility</Category>
+- <Not><Category>Accessibility</Category></Not>
+- <Not><Category>X-KDE-Utilities-Desktop</Category></Not>
+- <Not><Category>X-KDE-Utilities-File</Category></Not>
+- <Not><Category>X-KDE-Utilities-Peripherals</Category></Not>
+- <Not><Category>X-KDE-Utilities-PIM</Category></Not>
+- <Not><Category>X-KDE-More</Category></Not>
+- </And>
+- </Include>
+- <Menu>
+- <Name>Accessibility</Name>
+- <Directory>kde-utilities-accessibility.directory</Directory>
+- <Include>
+- <And>
+- <Category>Utility</Category>
+- <Category>Accessibility</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Desktop</Name>
+- <Directory>kde-utilities-desktop.directory</Directory>
+- <Include>
+- <And>
+- <Category>Utility</Category>
+- <Category>X-KDE-Utilities-Desktop</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Editors</Name>
+- <Directory>kde-editors.directory</Directory>
+- <Include>
+- <Category>TextEditor</Category>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>File</Name>
+- <Directory>kde-utilities-file.directory</Directory>
+- <Include>
+- <And>
+- <Category>Utility</Category>
+- <Category>X-KDE-Utilities-File</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>Peripherals</Name>
+- <Directory>kde-utilities-peripherals.directory</Directory>
+- <Include>
+- <And>
+- <Category>Utility</Category>
+- <Category>X-KDE-Utilities-Peripherals</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>PIM</Name>
+- <Directory>kde-utilities-pim.directory</Directory>
+- <Include>
+- <And>
+- <Category>Utility</Category>
+- <Category>X-KDE-Utilities-PIM</Category>
+- </And>
+- </Include>
+- </Menu>
+- <Menu>
+- <Name>XUtilities</Name>
+- <Directory>kde-utilities-xutils.directory</Directory>
+- </Menu>
+- <Menu>
+- <Name>More</Name>
+- <Directory>kde-more.directory</Directory>
+- <Include>
+- <And>
+- <Category>Utility</Category>
+- <Category>X-KDE-More</Category>
+- </And>
+- </Include>
+- </Menu>
+- </Menu>
+- <Include>
+- <And>
+- <Category>KDE</Category>
+- <Category>Core</Category>
+- </And>
+- </Include>
+- <DefaultMergeDirs/>
+- <MergeFile>applications-kmenuedit.menu</MergeFile>
+-</Menu>
+diff -Nura kdelibs-3.5.10/kded/kbuildsycoca.cpp kdelibs-3.5.10.new/kded/kbuildsycoca.cpp
+--- kdelibs-3.5.10/kded/kbuildsycoca.cpp 2007-05-14 09:52:43.000000000 +0200
++++ kdelibs-3.5.10.new/kded/kbuildsycoca.cpp 2009-08-06 06:23:48.000000000 +0200
+@@ -379,7 +379,7 @@
+ connect(g_vfolder, SIGNAL(newService(const QString &, KService **)),
+ this, SLOT(slotCreateEntry(const QString &, KService **)));
+
+- VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("applications.menu", true);
++ VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("kde-applications.menu", true);
+
+ KServiceGroup *entry = g_bsgf->addNew("/", kdeMenu->directoryFile, 0, false);
+ entry->setLayoutInfo(kdeMenu->layoutList);
+diff -Nura kdelibs-3.5.10/kded/kde-applications.menu kdelibs-3.5.10.new/kded/kde-applications.menu
+--- kdelibs-3.5.10/kded/kde-applications.menu 1970-01-01 01:00:00.000000000 +0100
++++ kdelibs-3.5.10.new/kded/kde-applications.menu 2005-09-10 10:27:40.000000000 +0200
+@@ -0,0 +1,469 @@
++ <!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
++ "http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
++
++<Menu>
++ <Name>Applications</Name>
++ <Directory>kde-main.directory</Directory>
++ <!-- Search the default locations -->
++ <KDELegacyDirs/>
++ <DefaultAppDirs/>
++ <DefaultDirectoryDirs/>
++ <DefaultLayout>
++ <Merge type="menus"/>
++ <Merge type="files"/>
++ <Separator/>
++ <Menuname>More</Menuname>
++ </DefaultLayout>
++ <Layout>
++ <Merge type="menus"/>
++ <Menuname>Applications</Menuname>
++ <Merge type="files"/>
++ </Layout>
++
++ <Menu>
++ <Name>Applications</Name>
++ <Directory>kde-unknown.directory</Directory>
++ <OnlyUnallocated/>
++ <Include>
++ <Not>
++ <!-- Don't list non-KDE core applications -->
++ <And>
++ <Category>Core</Category>
++ <Not><Category>KDE</Category></Not>
++ </And>
++ <!-- Don't list SUSE's YaST in here -->
++ <Category>X-SuSE-YaST</Category>
++ </Not>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Development</Name>
++ <Directory>kde-development.directory</Directory>
++ <Menu>
++ <Name>X-KDE-KDevelopIDE</Name>
++ <Directory>kde-development-kdevelop.directory</Directory>
++ <Include>
++ <And>
++ <Category>Development</Category>
++ <Category>X-KDE-KDevelopIDE</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Translation</Name>
++ <Directory>kde-development-translation.directory</Directory>
++ <Include>
++ <And>
++ <Category>Development</Category>
++ <Category>Translation</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Web Development</Name>
++ <Directory>kde-development-webdevelopment.directory</Directory>
++ <Include>
++ <And>
++ <Category>Development</Category>
++ <Category>WebDevelopment</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Include>
++ <And>
++ <Category>Development</Category>
++ <Not><Category>X-KDE-KDevelopIDE</Category></Not>
++ <Not><Category>Translation</Category></Not>
++ <Not><Category>WebDevelopment</Category></Not>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Science</Name>
++ <Directory>kde-science.directory</Directory>
++ <Include>
++ <And><!-- Include /any/ Science app which is not an Education app -->
++ <Or>
++ <Category>Astronomy</Category>
++ <Category>Biology</Category>
++ <Category>Chemistry</Category>
++ <Category>Geology</Category>
++ <Category>MedicalSoftware</Category>
++ <Category>Physics</Category>
++ <Category>Math</Category>
++ <Category>Science</Category>
++ </Or>
++ <Not><Category>Education</Category></Not>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Edutainment</Name>
++ <Directory>kde-edutainment.directory</Directory>
++ <Menu>
++ <Name>Languages</Name>
++ <Directory>kde-edu-languages.directory</Directory>
++ <Include>
++ <And>
++ <Category>Education</Category>
++ <Or>
++ <Category>Languages</Category>
++ <Category>X-KDE-Edu-Language</Category>
++ </Or>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Mathematics</Name>
++ <Directory>kde-edu-mathematics.directory</Directory>
++ <Include>
++ <And>
++ <Category>Education</Category>
++ <Category>Math</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Miscellaneous</Name>
++ <Directory>kde-edu-miscellaneous.directory</Directory>
++ <Include>
++ <And>
++ <Category>Education</Category>
++ <Not>
++ <Category>Languages</Category>
++ <Category>X-KDE-Edu-Language</Category>
++ <Category>Math</Category>
++ <Category>Science</Category>
++ <Category>Teaching</Category>
++ <Category>X-KDE-Edu-Teaching</Category>
++ </Not>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Science</Name>
++ <Directory>kde-edu-science.directory</Directory>
++ <Include>
++ <And>
++ <Category>Education</Category>
++ <Category>Science</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Tools</Name>
++ <Directory>kde-edu-tools.directory</Directory>
++ <Include>
++ <And>
++ <Category>Education</Category>
++ <Or>
++ <Category>Teaching</Category>
++ <Category>X-KDE-Edu-Teaching</Category>
++ </Or>
++ </And>
++ </Include>
++ </Menu>
++ </Menu>
++ <Menu>
++ <Name>Games</Name>
++ <Directory>kde-games.directory</Directory>
++ <Menu>
++ <Name>Arcade</Name>
++ <Directory>kde-games-arcade.directory</Directory>
++ <Include>
++ <And>
++ <Category>Game</Category>
++ <Category>ArcadeGame</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Board</Name>
++ <Directory>kde-games-board.directory</Directory>
++ <Include>
++ <And>
++ <Category>Game</Category>
++ <Category>BoardGame</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Card</Name>
++ <Directory>kde-games-card.directory</Directory>
++ <Include>
++ <And>
++ <Category>Game</Category>
++ <Category>CardGame</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Kidsgames</Name>
++ <Directory>kde-games-kids.directory</Directory>
++ <Include>
++ <And>
++ <Category>Game</Category>
++ <Or>
++ <Category>X-KDE-KidsGame</Category>
++ <Category>KidsGame</Category>
++ </Or>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>TacticStrategy</Name>
++ <Directory>kde-games-strategy.directory</Directory>
++ <Include>
++ <And>
++ <Category>Game</Category>
++ <Category>StrategyGame</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Include>
++ <And>
++ <Category>Game</Category>
++ <Not>
++ <Category>ArcadeGame</Category>
++ <Category>BoardGame</Category>
++ <Category>CardGame</Category>
++ <Category>X-KDE-KidsGame</Category>
++ <Category>KidsGame</Category>
++ <Category>StrategyGame</Category>
++ </Not>
++ </And>
++ </Include>
++ <Menu>
++ <Name>Toys</Name>
++ <Directory>kde-toys.directory</Directory>
++ <Include>
++ <Category>Amusement</Category>
++ </Include>
++ </Menu>
++ </Menu>
++ <Menu>
++ <Name>Graphics</Name>
++ <Directory>kde-graphics.directory</Directory>
++ <Include>
++ <And>
++ <Category>Graphics</Category>
++ <Not><Category>X-KDE-More</Category></Not>
++ </And>
++ </Include>
++ <Menu>
++ <Name>More</Name>
++ <Directory>kde-more.directory</Directory>
++ <Include>
++ <And>
++ <Category>Graphics</Category>
++ <Category>X-KDE-More</Category>
++ </And>
++ </Include>
++ </Menu>
++ </Menu>
++ <Menu>
++ <Name>Internet</Name>
++ <Directory>kde-internet.directory</Directory>
++ <Include>
++ <And>
++ <Category>Network</Category>
++ <Not><Category>X-KDE-More</Category></Not>
++ </And>
++ </Include>
++ <Menu>
++ <Name>Terminal</Name>
++ <Directory>kde-internet-terminal.directory</Directory>
++ </Menu>
++ <Menu>
++ <Name>More</Name>
++ <Directory>kde-more.directory</Directory>
++ <Include>
++ <And>
++ <Category>Network</Category>
++ <Category>X-KDE-More</Category>
++ </And>
++ </Include>
++ </Menu>
++ </Menu>
++ <Menu>
++ <Name>Multimedia</Name>
++ <Directory>kde-multimedia.directory</Directory>
++ <Include>
++ <And>
++ <Category>AudioVideo</Category>
++ <Not><Category>X-KDE-More</Category></Not>
++ </And>
++ </Include>
++ <Menu>
++ <Name>More</Name>
++ <Directory>kde-more.directory</Directory>
++ <Include>
++ <And>
++ <Category>AudioVideo</Category>
++ <Category>X-KDE-More</Category>
++ </And>
++ </Include>
++ </Menu>
++ </Menu>
++ <Menu>
++ <Name>Office</Name>
++ <Directory>kde-office.directory</Directory>
++ <Layout>
++ <Merge type="menus"/>
++ <Filename>kde-koshell.desktop</Filename>
++ <Filename>kde-Kontact.desktop</Filename>
++ <Separator/>
++ <Filename>kde-kword.desktop</Filename>
++ <Filename>kde-kspread.desktop</Filename>
++ <Filename>kde-kpresenter.desktop</Filename>
++ <Merge type="files"/>
++ <Separator/>
++ <Menuname>More</Menuname>
++ </Layout>
++ <Include>
++ <And>
++ <Category>Office</Category>
++ <Not><Category>X-KDE-More</Category></Not>
++ </And>
++ </Include>
++ <Menu>
++ <Name>More</Name>
++ <Directory>kde-more.directory</Directory>
++ <Include>
++ <And>
++ <Category>Office</Category>
++ <Category>X-KDE-More</Category>
++ </And>
++ </Include>
++ </Menu>
++ </Menu>
++ <Menu>
++ <Name>Settingsmenu</Name>
++ <Directory>kde-settingsmenu.directory</Directory>
++ <Include>
++ <Category>Settings</Category>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>System</Name>
++ <Directory>kde-system.directory</Directory>
++ <Include>
++ <And>
++ <Category>System</Category>
++ <Not><Category>X-KDE-More</Category></Not>
++ </And>
++ </Include>
++ <Menu>
++ <Name>More</Name>
++ <Directory>kde-more.directory</Directory>
++ <Include>
++ <And>
++ <Category>System</Category>
++ <Category>X-KDE-More</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>ScreenSavers</Name>
++ <Directory>kde-system-screensavers.directory</Directory>
++ </Menu>
++ <Menu>
++ <Name>Terminal</Name>
++ <Directory>kde-system-terminal.directory</Directory>
++ </Menu>
++ </Menu>
++ <Menu>
++ <Name>Utilities</Name>
++ <Directory>kde-utilities.directory</Directory>
++ <Include>
++ <And>
++ <Category>Utility</Category>
++ <Not><Category>Accessibility</Category></Not>
++ <Not><Category>X-KDE-Utilities-Desktop</Category></Not>
++ <Not><Category>X-KDE-Utilities-File</Category></Not>
++ <Not><Category>X-KDE-Utilities-Peripherals</Category></Not>
++ <Not><Category>X-KDE-Utilities-PIM</Category></Not>
++ <Not><Category>X-KDE-More</Category></Not>
++ </And>
++ </Include>
++ <Menu>
++ <Name>Accessibility</Name>
++ <Directory>kde-utilities-accessibility.directory</Directory>
++ <Include>
++ <And>
++ <Category>Utility</Category>
++ <Category>Accessibility</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Desktop</Name>
++ <Directory>kde-utilities-desktop.directory</Directory>
++ <Include>
++ <And>
++ <Category>Utility</Category>
++ <Category>X-KDE-Utilities-Desktop</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Editors</Name>
++ <Directory>kde-editors.directory</Directory>
++ <Include>
++ <Category>TextEditor</Category>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>File</Name>
++ <Directory>kde-utilities-file.directory</Directory>
++ <Include>
++ <And>
++ <Category>Utility</Category>
++ <Category>X-KDE-Utilities-File</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>Peripherals</Name>
++ <Directory>kde-utilities-peripherals.directory</Directory>
++ <Include>
++ <And>
++ <Category>Utility</Category>
++ <Category>X-KDE-Utilities-Peripherals</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>PIM</Name>
++ <Directory>kde-utilities-pim.directory</Directory>
++ <Include>
++ <And>
++ <Category>Utility</Category>
++ <Category>X-KDE-Utilities-PIM</Category>
++ </And>
++ </Include>
++ </Menu>
++ <Menu>
++ <Name>XUtilities</Name>
++ <Directory>kde-utilities-xutils.directory</Directory>
++ </Menu>
++ <Menu>
++ <Name>More</Name>
++ <Directory>kde-more.directory</Directory>
++ <Include>
++ <And>
++ <Category>Utility</Category>
++ <Category>X-KDE-More</Category>
++ </And>
++ </Include>
++ </Menu>
++ </Menu>
++ <Include>
++ <And>
++ <Category>KDE</Category>
++ <Category>Core</Category>
++ </And>
++ </Include>
++ <DefaultMergeDirs/>
++ <MergeFile>applications-kmenuedit.menu</MergeFile>
++</Menu>
diff --git a/testing/kdelibs3/kdelibs3-cups16.patch b/testing/kdelibs3/kdelibs3-cups16.patch
new file mode 100644
index 000000000..6736d49d3
--- /dev/null
+++ b/testing/kdelibs3/kdelibs3-cups16.patch
@@ -0,0 +1,724 @@
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/cupsdconf2/cupsdconf.cpp kdelibs-3.5.10/kdeprint/cups/cupsdconf2/cupsdconf.cpp
+--- kdelibs-3.5.10-orig/kdeprint/cups/cupsdconf2/cupsdconf.cpp 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/cupsdconf2/cupsdconf.cpp 2012-10-06 15:08:17.460612585 -0400
+@@ -629,26 +629,26 @@
+ cups_lang_t* lang = cupsLangDefault();
+ ippAddString(request_, IPP_TAG_OPERATION, IPP_TAG_CHARSET, "attributes-charset", NULL, cupsLangEncoding(lang));
+ ippAddString(request_, IPP_TAG_OPERATION, IPP_TAG_LANGUAGE, "attributes-natural-language", NULL, lang->language);
+- request_->request.op.operation_id = CUPS_GET_PRINTERS;
++ ippSetOperation(request_, CUPS_GET_PRINTERS);
+ request_ = cupsDoRequest(http_, request_, "/printers/");
+ if (request_)
+ {
+ QString name;
+ int type(0);
+- ipp_attribute_t *attr = request_->attrs;
++ ipp_attribute_t *attr = ippFirstAttribute(request_);
+ while (attr)
+ {
+ // check new printer (keep only local non-implicit printers)
+- if (!attr->name)
++ if (!ippGetName(attr))
+ {
+ if (!(type & CUPS_PRINTER_REMOTE) && !(type & CUPS_PRINTER_IMPLICIT) && !name.isEmpty())
+ resources_.append(new CupsResource("/printers/"+name));
+ name = "";
+ type = 0;
+ }
+- else if (strcmp(attr->name, "printer-name") == 0) name = attr->values[0].string.text;
+- else if (strcmp(attr->name, "printer-type") == 0) type = attr->values[0].integer;
+- attr = attr->next;
++ else if (strcmp(ippGetName(attr), "printer-name") == 0) name = ippGetString(attr, 0, NULL);
++ else if (strcmp(ippGetName(attr), "printer-type") == 0) type = ippGetInteger(attr, 0);
++ attr = ippNextAttribute(request_);
+ }
+ if (!(type & CUPS_PRINTER_REMOTE) && !(type & CUPS_PRINTER_IMPLICIT) && !name.isEmpty())
+ resources_.append(new CupsResource("/printers/"+name));
+@@ -658,26 +658,26 @@
+ request_ = ippNew();
+ ippAddString(request_, IPP_TAG_OPERATION, IPP_TAG_CHARSET, "attributes-charset", NULL, cupsLangEncoding(lang));
+ ippAddString(request_, IPP_TAG_OPERATION, IPP_TAG_LANGUAGE, "attributes-natural-language", NULL, lang->language);
+- request_->request.op.operation_id = CUPS_GET_CLASSES;
++ ippSetOperation(request_, CUPS_GET_CLASSES);
+ request_ = cupsDoRequest(http_, request_, "/classes/");
+ if (request_)
+ {
+ QString name;
+ int type(0);
+- ipp_attribute_t *attr = request_->attrs;
++ ipp_attribute_t *attr = ippFirstAttribute(request_);
+ while (attr)
+ {
+ // check new class (keep only local classes)
+- if (!attr->name)
++ if (!ippGetName(attr))
+ {
+ if (!(type & CUPS_PRINTER_REMOTE) && !name.isEmpty())
+ resources_.append(new CupsResource("/classes/"+name));
+ name = "";
+ type = 0;
+ }
+- else if (strcmp(attr->name, "printer-name") == 0) name = attr->values[0].string.text;
+- else if (strcmp(attr->name, "printer-type") == 0) type = attr->values[0].integer;
+- attr = attr->next;
++ else if (strcmp(ippGetName(attr), "printer-name") == 0) name = ippGetString(attr, 0, NULL);
++ else if (strcmp(ippGetName(attr), "printer-type") == 0) type = ippGetInteger(attr, 0);
++ attr = ippNextAttribute(request_);
+ }
+ if (!(type & CUPS_PRINTER_REMOTE) && !name.isEmpty())
+ resources_.append(new CupsResource("/classes/"+name));
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/ipprequest.cpp kdelibs-3.5.10/kdeprint/cups/ipprequest.cpp
+--- kdelibs-3.5.10-orig/kdeprint/cups/ipprequest.cpp 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/ipprequest.cpp 2012-10-06 15:12:00.919127451 -0400
+@@ -51,32 +51,34 @@
+ kdDebug(500) << "Null request" << endl;
+ return;
+ }
+- kdDebug(500) << "State = 0x" << QString::number(req->state, 16) << endl;
+- kdDebug(500) << "ID = 0x" << QString::number(req->request.status.request_id, 16) << endl;
++ kdDebug(500) << "State = 0x" << QString::number(ippGetState(req), 16) << endl;
++ kdDebug(500) << "ID = 0x" << QString::number(ippGetRequestId(req), 16) << endl;
+ if (answer)
+ {
+- kdDebug(500) << "Status = 0x" << QString::number(req->request.status.status_code, 16) << endl;
+- kdDebug(500) << "Status message = " << ippErrorString(req->request.status.status_code) << endl;
++ kdDebug(500) << "Status = 0x" << QString::number(ippGetStatusCode(req), 16) << endl;
++ kdDebug(500) << "Status message = " << ippErrorString(ippGetStatusCode(req)) << endl;
+ }
+ else
+- kdDebug(500) << "Operation = 0x" << QString::number(req->request.op.operation_id, 16) << endl;
+- kdDebug(500) << "Version = " << (int)(req->request.status.version[0]) << "." << (int)(req->request.status.version[1]) << endl;
++ kdDebug(500) << "Operation = 0x" << QString::number(ippGetOperation(req), 16) << endl;
++ int minorVersion;
++ int majorVersion = ippGetVersion(req, &minorVersion);
++ kdDebug(500) << "Version = " << (int)(majorVersion) << "." << (int)(minorVersion) << endl;
+ kdDebug(500) << endl;
+
+- ipp_attribute_t *attr = req->attrs;
++ ipp_attribute_t *attr = ippFirstAttribute(req);
+ while (attr)
+ {
+- QString s = QString::fromLatin1("%1 (0x%2) = ").arg(attr->name).arg(attr->value_tag, 0, 16);
+- for (int i=0;i<attr->num_values;i++)
++ QString s = QString::fromLatin1("%1 (0x%2) = ").arg(ippGetName(attr)).arg(ippGetValueTag(attr), 0, 16);
++ for (int i=0;i<ippGetCount(attr);i++)
+ {
+- switch (attr->value_tag)
++ switch (ippGetValueTag(attr))
+ {
+ case IPP_TAG_INTEGER:
+ case IPP_TAG_ENUM:
+- s += ("0x"+QString::number(attr->values[i].integer, 16));
++ s += ("0x"+QString::number(ippGetInteger(attr, i), 16));
+ break;
+ case IPP_TAG_BOOLEAN:
+- s += (attr->values[i].boolean ? "true" : "false");
++ s += (ippGetBoolean(attr, i) ? "true" : "false");
+ break;
+ case IPP_TAG_STRING:
+ case IPP_TAG_TEXT:
+@@ -88,16 +90,16 @@
+ case IPP_TAG_TEXTLANG:
+ case IPP_TAG_CHARSET:
+ case IPP_TAG_LANGUAGE:
+- s += attr->values[i].string.text;
++ s += ippGetString(attr, i, NULL);
+ break;
+ default:
+ break;
+ }
+- if (i != (attr->num_values-1))
++ if (i != (ippGetCount(attr)-1))
+ s += ", ";
+ }
+ kdDebug(500) << s << endl;
+- attr = attr->next;
++ attr = ippNextAttribute(req);
+ }
+ }
+
+@@ -177,7 +179,7 @@
+ ipp_attribute_t *attr = ippAddStrings(request_,(ipp_tag_t)group,(ipp_tag_t)type,name.latin1(),(int)(values.count()),NULL,NULL);
+ int i(0);
+ for (QStringList::ConstIterator it=values.begin(); it != values.end(); ++it, i++)
+- attr->values[i].string.text = strdup((*it).local8Bit());
++ ippSetString(request_, &attr, i, strdup((*it).local8Bit()));
+ }
+ }
+
+@@ -193,7 +195,7 @@
+ ipp_attribute_t *attr = ippAddIntegers(request_,(ipp_tag_t)group,(ipp_tag_t)type,name.latin1(),(int)(values.count()),NULL);
+ int i(0);
+ for (QValueList<int>::ConstIterator it=values.begin(); it != values.end(); ++it, i++)
+- attr->values[i].integer = *it;
++ ippSetInteger(request_, &attr, i, *it);
+ }
+ }
+
+@@ -209,19 +211,19 @@
+ ipp_attribute_t *attr = ippAddBooleans(request_,(ipp_tag_t)group,name.latin1(),(int)(values.count()),NULL);
+ int i(0);
+ for (QValueList<bool>::ConstIterator it=values.begin(); it != values.end(); ++it, i++)
+- attr->values[i].boolean = (char)(*it);
++ ippSetBoolean(request_, &attr, i, (char)(*it));
+ }
+ }
+
+ void IppRequest::setOperation(int op)
+ {
+- request_->request.op.operation_id = (ipp_op_t)op;
+- request_->request.op.request_id = 1; // 0 is not RFC-compliant, should be at least 1
++ ippSetOperation(request_, (ipp_op_t)op);
++ ippSetRequestId(request_, 1); // 0 is not RFC-compliant, should be at least 1
+ }
+
+ int IppRequest::status()
+ {
+- return (request_ ? request_->request.status.status_code : (connect_ ? cupsLastError() : -2));
++ return (request_ ? ippGetStatusCode(request_) : (connect_ ? cupsLastError() : -2));
+ }
+
+ QString IppRequest::statusMessage()
+@@ -248,7 +250,7 @@
+ ipp_attribute_t *attr = ippFindAttribute(request_, name.latin1(), (ipp_tag_t)type);
+ if (attr)
+ {
+- value = attr->values[0].integer;
++ value = ippGetInteger(attr, 0);
+ return true;
+ }
+ else return false;
+@@ -260,7 +262,7 @@
+ ipp_attribute_t *attr = ippFindAttribute(request_, name.latin1(), (ipp_tag_t)type);
+ if (attr)
+ {
+- value = QString::fromLocal8Bit(attr->values[0].string.text);
++ value = QString::fromLocal8Bit(ippGetString(attr, 0, NULL));
+ return true;
+ }
+ else return false;
+@@ -273,8 +275,8 @@
+ values.clear();
+ if (attr)
+ {
+- for (int i=0;i<attr->num_values;i++)
+- values.append(QString::fromLocal8Bit(attr->values[i].string.text));
++ for (int i=0;i<ippGetCount(attr);i++)
++ values.append(QString::fromLocal8Bit(ippGetString(attr, i, NULL)));
+ return true;
+ }
+ else return false;
+@@ -286,7 +288,7 @@
+ ipp_attribute_t *attr = ippFindAttribute(request_, name.latin1(), IPP_TAG_BOOLEAN);
+ if (attr)
+ {
+- value = (bool)attr->values[0].boolean;
++ value = (bool)ippGetBoolean(attr, 0);
+ return true;
+ }
+ else return false;
+@@ -338,10 +340,10 @@
+ }
+
+ /* No printers found */
+- if ( request_ && request_->request.status.status_code == 0x406 )
++ if ( request_ && ippGetStatusCode(request_) == 0x406 )
+ return true;
+
+- if (!request_ || request_->state == IPP_ERROR || (request_->request.status.status_code & 0x0F00))
++ if (!request_ || ippGetState(request_) == IPP_ERROR || (ippGetStatusCode(request_) & 0x0F00))
+ return false;
+
+
+@@ -356,36 +358,36 @@
+ output << "<tr><th bgcolor=\"dark blue\"><font color=\"white\">" << i18n("Attribute") << "</font></th>" << endl;
+ output << "<th bgcolor=\"dark blue\"><font color=\"white\">" << i18n("Values") << "</font></th></tr>" << endl;
+ // go to the first attribute of the specified group
+- ipp_attribute_t *attr = request_->attrs;
+- while (attr && attr->group_tag != group)
+- attr = attr->next;
++ ipp_attribute_t *attr = ippFirstAttribute(request_);
++ while (attr && ippGetGroupTag(attr) != group)
++ attr = ippNextAttribute(request_);
+ // print each attribute
+- ipp_uchar_t *d;
+- QCString dateStr;
+- QDateTime dt;
+- bool bg(false);
+- while (attr && attr->group_tag == group)
++ const ipp_uchar_t *d;
++ QCString dateStr;
++ QDateTime dt;
++ bool bg(false);
++ while (attr && ippGetGroupTag(attr) == group)
+ {
+- output << " <tr bgcolor=\"" << (bg ? "#ffffd9" : "#ffffff") << "\">\n <td><b>" << attr->name << "</b></td>\n <td>" << endl;
++ output << " <tr bgcolor=\"" << (bg ? "#ffffd9" : "#ffffff") << "\">\n <td><b>" << ippGetName(attr) << "</b></td>\n <td>" << endl;
+ bg = !bg;
+- for (int i=0; i<attr->num_values; i++)
++ for (int i=0; i<ippGetCount(attr); i++)
+ {
+- switch (attr->value_tag)
++ switch (ippGetValueTag(attr))
+ {
+ case IPP_TAG_INTEGER:
+- if (attr->name && strstr(attr->name, "time"))
++ if (ippGetName(attr) && strstr(ippGetName(attr), "time"))
+ {
+- dt.setTime_t((unsigned int)(attr->values[i].integer));
++ dt.setTime_t((unsigned int)(ippGetInteger(attr, i)));
+ output << dt.toString();
+ }
+ else
+- output << attr->values[i].integer;
++ output << ippGetInteger(attr, i);
+ break;
+ case IPP_TAG_ENUM:
+- output << "0x" << hex << attr->values[i].integer << dec;
++ output << "0x" << hex << ippGetInteger(attr, i) << dec;
+ break;
+ case IPP_TAG_BOOLEAN:
+- output << (attr->values[i].boolean ? i18n("True") : i18n("False"));
++ output << (ippGetBoolean(attr, i) ? i18n("True") : i18n("False"));
+ break;
+ case IPP_TAG_STRING:
+ case IPP_TAG_TEXTLANG:
+@@ -397,18 +399,25 @@
+ case IPP_TAG_CHARSET:
+ case IPP_TAG_LANGUAGE:
+ case IPP_TAG_MIMETYPE:
+- output << attr->values[i].string.text;
++ output << ippGetString(attr, i, NULL);
+ break;
+ case IPP_TAG_RESOLUTION:
+- output << "( " << attr->values[i].resolution.xres
+- << ", " << attr->values[i].resolution.yres << " )";
++ int xres;
++ int yres;
++ ipp_res_t units;
++ xres = ippGetResolution(attr, i, &yres, &units);
++ output << "( " << xres
++ << ", " << yres << " )";
+ break;
+ case IPP_TAG_RANGE:
+- output << "[ " << (attr->values[i].range.lower > 0 ? attr->values[i].range.lower : 1)
+- << ", " << (attr->values[i].range.upper > 0 ? attr->values[i].range.upper : 65535) << " ]";
++ int lowervalue;
++ int uppervalue;
++ lowervalue = ippGetRange(attr, i, &uppervalue);
++ output << "[ " << (lowervalue > 0 ? lowervalue : 1)
++ << ", " << (uppervalue > 0 ? uppervalue : 65535) << " ]";
+ break;
+ case IPP_TAG_DATE:
+- d = attr->values[i].date;
++ d = ippGetDate(attr, i);
+ dateStr.sprintf("%.4d-%.2d-%.2d, %.2d:%.2d:%.2d %c%.2d%.2d",
+ d[0]*256+d[1], d[2], d[3],
+ d[4], d[5], d[6],
+@@ -418,11 +427,11 @@
+ default:
+ continue;
+ }
+- if (i < attr->num_values-1)
++ if (i < ippGetCount(attr)-1)
+ output << "<br>";
+ }
+ output << "</td>\n </tr>" << endl;
+- attr = attr->next;
++ attr = ippNextAttribute(request_);
+ }
+ // end table
+ output << "</table>" << endl;
+@@ -438,31 +447,34 @@
+ ipp_attribute_t *attr = first();
+ while (attr)
+ {
+- if (group != -1 && attr->group_tag != group)
++ if (group != -1 && ippGetGroupTag(attr) != group)
+ {
+- attr = attr->next;
++ attr = ippNextAttribute(request_);
+ continue;
+ }
+ QString value;
+- for (int i=0; i<attr->num_values; i++)
++ for (int i=0; i<ippGetCount(attr); i++)
+ {
+- switch (attr->value_tag)
++ switch (ippGetValueTag(attr))
+ {
+ case IPP_TAG_INTEGER:
+ case IPP_TAG_ENUM:
+- value.append(QString::number(attr->values[i].integer)).append(",");
++ value.append(QString::number(ippGetInteger(attr, i))).append(",");
+ break;
+ case IPP_TAG_BOOLEAN:
+- value.append((attr->values[i].boolean ? "true" : "false")).append(",");
++ value.append((ippGetBoolean(attr, i) ? "true" : "false")).append(",");
+ break;
+ case IPP_TAG_RANGE:
+- if (attr->values[i].range.lower > 0)
+- value.append(QString::number(attr->values[i].range.lower));
+- if (attr->values[i].range.lower != attr->values[i].range.upper)
++ int lowervalue;
++ int uppervalue;
++ lowervalue = ippGetRange(attr, i, &uppervalue);
++ if (lowervalue > 0)
++ value.append(QString::number(lowervalue));
++ if (lowervalue != uppervalue)
+ {
+ value.append("-");
+- if (attr->values[i].range.upper > 0)
+- value.append(QString::number(attr->values[i].range.upper));
++ if (uppervalue > 0)
++ value.append(QString::number(uppervalue));
+ }
+ value.append(",");
+ break;
+@@ -476,7 +488,7 @@
+ case IPP_TAG_TEXTLANG:
+ case IPP_TAG_CHARSET:
+ case IPP_TAG_LANGUAGE:
+- value.append(QString::fromLocal8Bit(attr->values[i].string.text)).append(",");
++ value.append(QString::fromLocal8Bit(ippGetString(attr, i, NULL))).append(",");
+ break;
+ default:
+ break;
+@@ -484,8 +496,8 @@
+ }
+ if (!value.isEmpty())
+ value.truncate(value.length()-1);
+- opts[QString::fromLocal8Bit(attr->name)] = value;
+- attr = attr->next;
++ opts[QString::fromLocal8Bit(ippGetName(attr))] = value;
++ attr = ippNextAttribute(request_);
+ }
+ }
+ return opts;
+@@ -542,3 +554,7 @@
+ }
+ #endif
+ }
++
++
++ipp_attribute_t* IppRequest::first()
++{ return (request_ ? ippFirstAttribute(request_) : NULL); }
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/ipprequest.h kdelibs-3.5.10/kdeprint/cups/ipprequest.h
+--- kdelibs-3.5.10-orig/kdeprint/cups/ipprequest.h 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/ipprequest.h 2012-10-06 15:06:05.581489574 -0400
+@@ -72,7 +72,7 @@
+ bool keyword(const QString& name, QStringList& value);
+ bool mime(const QString& name, QString& value);
+ ipp_attribute_t* first();
+- ipp_attribute_t* last();
++ ipp_t* request();
+ QMap<QString,QString> toMap(int group = -1);
+ void setMap(const QMap<QString,QString>& opts);
+
+@@ -178,12 +178,6 @@
+ inline bool IppRequest::doRequest(const QString& res)
+ { return doFileRequest(res); }
+
+-inline ipp_attribute_t* IppRequest::first()
+-{ return (request_ ? request_->attrs : NULL); }
+-
+-inline ipp_attribute_t* IppRequest::last()
+-{ return (request_ ? request_->last : NULL); }
+-
+ inline void IppRequest::setHost(const QString& host)
+ { host_ = host; }
+
+@@ -193,4 +187,7 @@
+ inline void IppRequest::dump(int state)
+ { dump_ = state; }
+
++inline ipp_t* IppRequest::request()
++{ return request_; }
++
+ #endif
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/kmcupsjobmanager.cpp kdelibs-3.5.10/kdeprint/cups/kmcupsjobmanager.cpp
+--- kdelibs-3.5.10-orig/kdeprint/cups/kmcupsjobmanager.cpp 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/kmcupsjobmanager.cpp 2012-10-06 15:13:31.451859386 -0400
+@@ -36,6 +36,8 @@
+ #include <kdebug.h>
+ #include <kurl.h>
+
++#include "config.h"
++
+ KMCupsJobManager::KMCupsJobManager(QObject *parent, const char *name, const QStringList & /*args*/)
+ : KMJobManager(parent,name)
+ {
+@@ -166,17 +168,18 @@
+ void KMCupsJobManager::parseListAnswer(IppRequest& req, KMPrinter *pr)
+ {
+ ipp_attribute_t *attr = req.first();
++ ipp_attribute_t *nextAttr;
+ KMJob *job = new KMJob();
+ QString uri;
+ while (attr)
+ {
+- QString name(attr->name);
+- if (name == "job-id") job->setId(attr->values[0].integer);
+- else if (name == "job-uri") job->setUri(QString::fromLocal8Bit(attr->values[0].string.text));
+- else if (name == "job-name") job->setName(QString::fromLocal8Bit(attr->values[0].string.text));
++ QString name(ippGetName(attr));
++ if (name == "job-id") job->setId(ippGetInteger(attr, 0));
++ else if (name == "job-uri") job->setUri(QString::fromLocal8Bit(ippGetString(attr, 0, NULL)));
++ else if (name == "job-name") job->setName(QString::fromLocal8Bit(ippGetString(attr, 0, NULL)));
+ else if (name == "job-state")
+ {
+- switch (attr->values[0].integer)
++ switch (ippGetInteger(attr, 0))
+ {
+ case IPP_JOB_PENDING:
+ job->setState(KMJob::Queued);
+@@ -204,29 +207,30 @@
+ break;
+ }
+ }
+- else if (name == "job-k-octets") job->setSize(attr->values[0].integer);
+- else if (name == "job-originating-user-name") job->setOwner(QString::fromLocal8Bit(attr->values[0].string.text));
+- else if (name == "job-k-octets-completed") job->setProcessedSize(attr->values[0].integer);
+- else if (name == "job-media-sheets") job->setPages(attr->values[0].integer);
+- else if (name == "job-media-sheets-completed") job->setProcessedPages(attr->values[0].integer);
++ else if (name == "job-k-octets") job->setSize(ippGetInteger(attr, 0));
++ else if (name == "job-originating-user-name") job->setOwner(QString::fromLocal8Bit(ippGetString(attr, 0, NULL)));
++ else if (name == "job-k-octets-completed") job->setProcessedSize(ippGetInteger(attr, 0));
++ else if (name == "job-media-sheets") job->setPages(ippGetInteger(attr, 0));
++ else if (name == "job-media-sheets-completed") job->setProcessedPages(ippGetInteger(attr, 0));
+ else if (name == "job-printer-uri" && !pr->isRemote())
+ {
+- QString str(attr->values[0].string.text);
++ QString str(ippGetString(attr, 0, NULL));
+ int p = str.findRev('/');
+ if (p != -1)
+ job->setPrinter(str.mid(p+1));
+ }
+ else if (name == "job-priority")
+ {
+- job->setAttribute(0, QString::fromLatin1("%1").arg(attr->values[0].integer, 3));
++ job->setAttribute(0, QString::fromLatin1("%1").arg(ippGetInteger(attr, 0), 3));
+ }
+ else if (name == "job-billing")
+ {
+ job->setAttributeCount(2);
+- job->setAttribute(1, QString::fromLocal8Bit(attr->values[0].string.text));
++ job->setAttribute(1, QString::fromLocal8Bit(ippGetString(attr, 0, NULL)));
+ }
+
+- if (name.isEmpty() || attr == req.last())
++ nextAttr = ippNextAttribute(req.request());
++ if (name.isEmpty() || (!nextAttr))
+ {
+ if (job->printer().isEmpty())
+ job->setPrinter(pr->printerName());
+@@ -234,8 +238,7 @@
+ addJob(job); // don't use job after this call !!!
+ job = new KMJob();
+ }
+-
+- attr = attr->next;
++ attr = nextAttr;
+ }
+ delete job;
+ }
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/kmcupsmanager.cpp kdelibs-3.5.10/kdeprint/cups/kmcupsmanager.cpp
+--- kdelibs-3.5.10-orig/kdeprint/cups/kmcupsmanager.cpp 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/kmcupsmanager.cpp 2012-10-06 15:14:22.311521604 -0400
+@@ -476,19 +476,20 @@
+ void KMCupsManager::processRequest(IppRequest* req)
+ {
+ ipp_attribute_t *attr = req->first();
++ ipp_attribute_t *nextAttr;
+ KMPrinter *printer = new KMPrinter();
+ while (attr)
+ {
+- QString attrname(attr->name);
++ QString attrname(ippGetName(attr));
+ if (attrname == "printer-name")
+ {
+- QString value = QString::fromLocal8Bit(attr->values[0].string.text);
++ QString value = QString::fromLocal8Bit(ippGetString(attr, 0, NULL));
+ printer->setName(value);
+ printer->setPrinterName(value);
+ }
+ else if (attrname == "printer-type")
+ {
+- int value = attr->values[0].integer;
++ int value = ippGetInteger(attr, 0);
+ printer->setType(0);
+ printer->addType(((value & CUPS_PRINTER_CLASS) || (value & CUPS_PRINTER_IMPLICIT) ? KMPrinter::Class : KMPrinter::Printer));
+ if ((value & CUPS_PRINTER_REMOTE)) printer->addType(KMPrinter::Remote);
+@@ -499,7 +500,7 @@
+ }
+ else if (attrname == "printer-state")
+ {
+- switch (attr->values[0].integer)
++ switch (ippGetInteger(attr, 0))
+ {
+ case IPP_PRINTER_IDLE: printer->setState(KMPrinter::Idle); break;
+ case IPP_PRINTER_PROCESSING: printer->setState(KMPrinter::Processing); break;
+@@ -508,22 +509,24 @@
+ }
+ else if (attrname == "printer-uri-supported")
+ {
+- printer->setUri(KURL(attr->values[0].string.text));
++ printer->setUri(KURL(ippGetString(attr, 0, NULL)));
+ }
+ else if (attrname == "printer-location")
+ {
+- printer->setLocation(QString::fromLocal8Bit(attr->values[0].string.text));
++ printer->setLocation(QString::fromLocal8Bit(ippGetString(attr, 0, NULL)));
+ }
+ else if (attrname == "printer-is-accepting-jobs")
+ {
+- printer->setAcceptJobs(attr->values[0].boolean);
++ printer->setAcceptJobs(ippGetBoolean(attr, 0));
+ }
+- if (attrname.isEmpty() || attr == req->last())
++
++ nextAttr = ippNextAttribute(req->request());
++ if (attrname.isEmpty() || (!nextAttr))
+ {
+ addPrinter(printer);
+ printer = new KMPrinter();
+ }
+- attr = attr->next;
++ attr = nextAttr;
+ }
+ delete printer;
+ }
+@@ -817,6 +820,7 @@
+ {
+ QStringList list;
+ IppRequest req;
++ ipp_attribute_t *nextAttr;
+ req.setOperation(CUPS_GET_DEVICES);
+ if (req.doRequest("/"))
+ {
+@@ -824,12 +828,13 @@
+ ipp_attribute_t *attr = req.first();
+ while (attr)
+ {
+- QString attrname(attr->name);
+- if (attrname == "device-info") desc = attr->values[0].string.text;
+- else if (attrname == "device-make-and-model") printer = attr->values[0].string.text;
+- else if (attrname == "device-uri") uri = attr->values[0].string.text;
+- else if ( attrname == "device-class" ) cl = attr->values[ 0 ].string.text;
+- if (attrname.isEmpty() || attr == req.last())
++ QString attrname(ippGetName(attr));
++ if (attrname == "device-info") desc = ippGetString(attr, 0, NULL);
++ else if (attrname == "device-make-and-model") printer = ippGetString(attr, 0, NULL);
++ else if (attrname == "device-uri") uri = ippGetString(attr, 0, NULL);
++ else if ( attrname == "device-class" ) cl = ippGetString(attr, 0, NULL);
++ nextAttr = ippNextAttribute(req.request());
++ if (attrname.isEmpty() || (!nextAttr))
+ {
+ if (!uri.isEmpty())
+ {
+@@ -838,7 +843,7 @@
+ }
+ uri = desc = printer = cl = QString::null;
+ }
+- attr = attr->next;
++ attr = nextAttr;
+ }
+ }
+ return list;
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/kmcupsuimanager.cpp kdelibs-3.5.10/kdeprint/cups/kmcupsuimanager.cpp
+--- kdelibs-3.5.10-orig/kdeprint/cups/kmcupsuimanager.cpp 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/kmcupsuimanager.cpp 2012-10-06 15:14:55.177970017 -0400
+@@ -60,6 +60,8 @@
+ #include <kaction.h>
+ #include <kmessagebox.h>
+
++#include "config.h"
++
+ KMCupsUiManager::KMCupsUiManager(QObject *parent, const char *name, const QStringList & /*args*/)
+ : KMUiManager(parent,name)
+ {
+@@ -143,22 +145,22 @@
+ ipp_attribute_t *attr = req.first();
+ while (attr)
+ {
+- if (attr->name && strcmp(attr->name,"device-uri") == 0)
++ if (ippGetName(attr) && strcmp(ippGetName(attr),"device-uri") == 0)
+ {
+- if (strncmp(attr->values[0].string.text,"socket",6) == 0) backend->enableBackend(KMWizard::TCP,true);
+- else if (strncmp(attr->values[0].string.text,"parallel",8) == 0) backend->enableBackend(KMWizard::Local,true);
+- else if (strncmp(attr->values[0].string.text,"serial",6) == 0) backend->enableBackend(KMWizard::Local,true);
+- else if (strncmp(attr->values[0].string.text,"smb",3) == 0) backend->enableBackend(KMWizard::SMB,true);
+- else if (strncmp(attr->values[0].string.text,"lpd",3) == 0) backend->enableBackend(KMWizard::LPD,true);
+- else if (strncmp(attr->values[0].string.text,"usb",3) == 0) backend->enableBackend(KMWizard::Local,true);
+- else if (strncmp(attr->values[0].string.text,"http",4) == 0 || strncmp(attr->values[0].string.text,"ipp",3) == 0)
++ if (strncmp(ippGetString(attr, 0, NULL),"socket",6) == 0) backend->enableBackend(KMWizard::TCP,true);
++ else if (strncmp(ippGetString(attr, 0, NULL),"parallel",8) == 0) backend->enableBackend(KMWizard::Local,true);
++ else if (strncmp(ippGetString(attr, 0, NULL),"serial",6) == 0) backend->enableBackend(KMWizard::Local,true);
++ else if (strncmp(ippGetString(attr, 0, NULL),"smb",3) == 0) backend->enableBackend(KMWizard::SMB,true);
++ else if (strncmp(ippGetString(attr, 0, NULL),"lpd",3) == 0) backend->enableBackend(KMWizard::LPD,true);
++ else if (strncmp(ippGetString(attr, 0, NULL),"usb",3) == 0) backend->enableBackend(KMWizard::Local,true);
++ else if (strncmp(ippGetString(attr, 0, NULL),"http",4) == 0 || strncmp(ippGetString(attr, 0, NULL),"ipp",3) == 0)
+ {
+ backend->enableBackend(KMWizard::IPP,true);
+ backend->enableBackend(KMWizard::Custom+1,true);
+ }
+- else if (strncmp(attr->values[0].string.text,"fax",3) == 0) backend->enableBackend(KMWizard::Custom+2,true);
++ else if (strncmp(ippGetString(attr, 0, NULL),"fax",3) == 0) backend->enableBackend(KMWizard::Custom+2,true);
+ }
+- attr = attr->next;
++ attr = ippNextAttribute(req.request());
+ }
+ backend->enableBackend(KMWizard::Class, true);
+ backend->enableBackend(KMWizard::Custom+5, true);
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/kmwfax.cpp kdelibs-3.5.10/kdeprint/cups/kmwfax.cpp
+--- kdelibs-3.5.10-orig/kdeprint/cups/kmwfax.cpp 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/kmwfax.cpp 2012-10-06 15:15:28.044418449 -0400
+@@ -30,6 +30,8 @@
+ #include <kiconloader.h>
+ #include <kurl.h>
+
++#include "config.h"
++
+ KMWFax::KMWFax(QWidget *parent, const char *name)
+ : KMWizardPage(parent,name)
+ {
+@@ -55,11 +57,11 @@
+ ipp_attribute_t *attr = req.first();
+ while (attr)
+ {
+- if (attr->name && strcmp(attr->name,"device-uri") == 0 && strncmp(attr->values[0].string.text,"fax",3) == 0)
++ if (ippGetName(attr) && strcmp(ippGetName(attr),"device-uri") == 0 && strncmp(ippGetString(attr, 0, NULL),"fax",3) == 0)
+ {
+- m_list->insertItem(SmallIcon("blockdevice"),QString::fromLatin1(attr->values[0].string.text));
++ m_list->insertItem(SmallIcon("blockdevice"),QString::fromLatin1(ippGetString(attr, 0, NULL)));
+ }
+- attr = attr->next;
++ attr = ippNextAttribute(req.request());
+ }
+ }
+ }
+diff -Naur kdelibs-3.5.10-orig/kdeprint/cups/kmwippselect.cpp kdelibs-3.5.10/kdeprint/cups/kmwippselect.cpp
+--- kdelibs-3.5.10-orig/kdeprint/cups/kmwippselect.cpp 2012-10-06 14:49:37.521406729 -0400
++++ kdelibs-3.5.10/kdeprint/cups/kmwippselect.cpp 2012-10-06 15:15:56.867560417 -0400
+@@ -29,6 +29,8 @@
+ #include <kdebug.h>
+ #include <kiconloader.h>
+
++#include "config.h"
++
+ KMWIppSelect::KMWIppSelect(QWidget *parent, const char *name)
+ : KMWizardPage(parent,name)
+ {
+@@ -83,9 +85,9 @@
+ ipp_attribute_t *attr = req.first();
+ while (attr)
+ {
+- if (attr->name && strcmp(attr->name,"printer-name") == 0)
+- m_list->insertItem(SmallIcon("kdeprint_printer"),QString::fromLatin1(attr->values[0].string.text));
+- attr = attr->next;
++ if (ippGetName(attr) && strcmp(ippGetName(attr),"printer-name") == 0)
++ m_list->insertItem(SmallIcon("kdeprint_printer"),QString::fromLatin1(ippGetString(attr, 0, NULL)));
++ attr = ippNextAttribute(req.request());
+ }
+ m_list->sort();
+ }
diff --git a/testing/kdelibs3/kdelibs3-missing-include.patch b/testing/kdelibs3/kdelibs3-missing-include.patch
new file mode 100644
index 000000000..5b84ef746
--- /dev/null
+++ b/testing/kdelibs3/kdelibs3-missing-include.patch
@@ -0,0 +1,10 @@
+--- kdeprint/cups/cupsdconf2/cups-util.c.old 2012-01-19 01:30:26.000000000 -0500
++++ kdeprint/cups/cupsdconf2/cups-util.c 2012-01-19 01:31:33.000000000 -0500
+@@ -2,6 +2,7 @@
+ #include <cups/http.h>
+ #include <cups/cups.h>
+ #include <stdlib.h>
++#include <stdio.h>
+ #include <fcntl.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
diff --git a/testing/kdelibs3/kdelibs3.install b/testing/kdelibs3/kdelibs3.install
new file mode 100644
index 000000000..7291ac0a2
--- /dev/null
+++ b/testing/kdelibs3/kdelibs3.install
@@ -0,0 +1,12 @@
+post_install() {
+ post_remove
+}
+
+post_upgrade() {
+ post_remove
+}
+
+post_remove() {
+ # this can be removed in future versions
+ sed -ie '/\/opt\/kde\/lib/d' etc/ld.so.conf
+}
diff --git a/testing/kdelibs3/openssl.patch b/testing/kdelibs3/openssl.patch
new file mode 100644
index 000000000..a948b884a
--- /dev/null
+++ b/testing/kdelibs3/openssl.patch
@@ -0,0 +1,180 @@
+diff -up kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.cc
+--- kdelibs-3.5.10/kio/kssl/kopenssl.cc.ossl-1.x 2009-09-04 23:10:53.000000000 +0200
++++ kdelibs-3.5.10/kio/kssl/kopenssl.cc 2009-09-04 23:10:53.000000000 +0200
+@@ -96,9 +96,14 @@ static int (*K_BIO_write) (BIO *b, cons
+ static int (*K_PEM_ASN1_write_bio) (int (*)(),const char *,BIO *,char *,
+ const EVP_CIPHER *,unsigned char *,int ,
+ pem_password_cb *, void *) = 0L;
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++static int (*K_ASN1_item_i2d_fp)(ASN1_ITEM *,FILE *,unsigned char *) = 0L;
++static ASN1_ITEM *K_NETSCAPE_X509_it = 0L;
++#else
+ static ASN1_METHOD* (*K_X509_asn1_meth) (void) = 0L;
+ static int (*K_ASN1_i2d_fp)(int (*)(),FILE *,unsigned char *) = 0L;
+ static int (*K_i2d_ASN1_HEADER)(ASN1_HEADER *, unsigned char **) = 0L;
++#endif
+ static int (*K_X509_print_fp) (FILE *, X509*) = 0L;
+ static int (*K_i2d_PKCS12) (PKCS12*, unsigned char**) = 0L;
+ static int (*K_i2d_PKCS12_fp) (FILE *, PKCS12*) = 0L;
+@@ -430,9 +435,14 @@ KConfig *cfg;
+ K_BIO_ctrl = (long (*) (BIO *,int,long,void *)) _cryptoLib->symbol("BIO_ctrl");
+ K_BIO_write = (int (*) (BIO *b, const void *data, int len)) _cryptoLib->symbol("BIO_write");
+ K_PEM_ASN1_write_bio = (int (*)(int (*)(), const char *,BIO*, char*, const EVP_CIPHER *, unsigned char *, int, pem_password_cb *, void *)) _cryptoLib->symbol("PEM_ASN1_write_bio");
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ K_ASN1_item_i2d_fp = (int (*)(ASN1_ITEM *, FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_item_i2d_fp");
++ K_NETSCAPE_X509_it = (ASN1_ITEM *) _cryptoLib->symbol("NETSCAPE_X509_it");
++#else
+ K_X509_asn1_meth = (ASN1_METHOD* (*)(void)) _cryptoLib->symbol("X509_asn1_meth");
+ K_ASN1_i2d_fp = (int (*)(int (*)(), FILE*, unsigned char *)) _cryptoLib->symbol("ASN1_i2d_fp");
+ K_i2d_ASN1_HEADER = (int (*)(ASN1_HEADER *, unsigned char **)) _cryptoLib->symbol("i2d_ASN1_HEADER");
++#endif
+ K_X509_print_fp = (int (*)(FILE*, X509*)) _cryptoLib->symbol("X509_print_fp");
+ K_i2d_PKCS12 = (int (*)(PKCS12*, unsigned char**)) _cryptoLib->symbol("i2d_PKCS12");
+ K_i2d_PKCS12_fp = (int (*)(FILE *, PKCS12*)) _cryptoLib->symbol("i2d_PKCS12_fp");
+@@ -594,7 +604,7 @@ KConfig *cfg;
+ K_SSL_set_session = (int (*)(SSL*,SSL_SESSION*)) _sslLib->symbol("SSL_set_session");
+ K_d2i_SSL_SESSION = (SSL_SESSION* (*)(SSL_SESSION**,unsigned char**, long)) _sslLib->symbol("d2i_SSL_SESSION");
+ K_i2d_SSL_SESSION = (int (*)(SSL_SESSION*,unsigned char**)) _sslLib->symbol("i2d_SSL_SESSION");
+- K_SSL_get_ciphers = (STACK *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers");
++ K_SSL_get_ciphers = (STACK_OF(SSL_CIPHER) *(*)(const SSL*)) _sslLib->symbol("SSL_get_ciphers");
+ #endif
+
+
+@@ -982,7 +992,13 @@ int KOpenSSLProxy::PEM_write_bio_X509(BI
+ else return -1;
+ }
+
+-
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++int KOpenSSLProxy::ASN1_i2d_fp(FILE *out,unsigned char *x) {
++ if (K_ASN1_item_i2d_fp && K_NETSCAPE_X509_it)
++ return (K_ASN1_item_i2d_fp)(K_NETSCAPE_X509_it, out, x);
++ else return -1;
++}
++#else
+ ASN1_METHOD *KOpenSSLProxy::X509_asn1_meth(void) {
+ if (K_X509_asn1_meth) return (K_X509_asn1_meth)();
+ else return 0L;
+@@ -994,7 +1010,7 @@ int KOpenSSLProxy::ASN1_i2d_fp(FILE *out
+ return (K_ASN1_i2d_fp)((int (*)())K_i2d_ASN1_HEADER, out, x);
+ else return -1;
+ }
+-
++#endif
+
+ int KOpenSSLProxy::X509_print(FILE *fp, X509 *x) {
+ if (K_X509_print_fp) return (K_X509_print_fp)(fp, x);
+diff -up kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x kdelibs-3.5.10/kio/kssl/kopenssl.h
+--- kdelibs-3.5.10/kio/kssl/kopenssl.h.ossl-1.x 2006-07-22 10:16:39.000000000 +0200
++++ kdelibs-3.5.10/kio/kssl/kopenssl.h 2009-09-04 23:10:53.000000000 +0200
+@@ -48,6 +48,9 @@ class KOpenSSLProxyPrivate;
+ #include <openssl/stack.h>
+ #include <openssl/bn.h>
+ #undef crypt
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++#define STACK _STACK
++#endif
+ #endif
+
+ #include <kstaticdeleter.h>
+@@ -446,12 +449,12 @@ public:
+ */
+ int PEM_write_bio_X509(BIO *bp, X509 *x);
+
+-
++#if OPENSSL_VERSION_NUMBER < 0x10000000L
+ /*
+ * X509_asn1_meth - used for netscape output
+ */
+ ASN1_METHOD *X509_asn1_meth();
+-
++#endif
+
+ /*
+ * ASN1_i2d_fp - used for netscape output
+@@ -531,6 +534,9 @@ public:
+ */
+ void sk_free(STACK *s);
+
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ void sk_free(void *s) { return sk_free(reinterpret_cast<STACK*>(s)); }
++#endif
+
+ /*
+ * Number of elements in the stack
+@@ -543,6 +549,9 @@ public:
+ */
+ char *sk_value(STACK *s, int n);
+
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ char *sk_value(void *s, int n) { return sk_value(reinterpret_cast<STACK*>(s), n); }
++#endif
+
+ /*
+ * Create a new stack
+@@ -555,6 +564,9 @@ public:
+ */
+ int sk_push(STACK *s, char *d);
+
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ int sk_push(void *s, void *d) { return sk_push(reinterpret_cast<STACK*>(s), reinterpret_cast<char*>(d)); }
++#endif
+
+ /*
+ * Duplicate the stack
+diff -up kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc
+--- kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc.ossl-1.x 2005-10-10 17:05:44.000000000 +0200
++++ kdelibs-3.5.10/kio/kssl/ksmimecrypto.cc 2009-09-04 23:10:53.000000000 +0200
+@@ -87,7 +87,7 @@ KSMIMECryptoPrivate::KSMIMECryptoPrivate
+
+
+ STACK_OF(X509) *KSMIMECryptoPrivate::certsToX509(QPtrList<KSSLCertificate> &certs) {
+- STACK_OF(X509) *x509 = sk_new(NULL);
++ STACK_OF(X509) *x509 = reinterpret_cast<STACK_OF(X509)*>(sk_new(NULL));
+ KSSLCertificate *cert = certs.first();
+ while(cert) {
+ sk_X509_push(x509, cert->getCert());
+diff -up kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x kdelibs-3.5.10/kio/kssl/ksslcertificate.cc
+--- kdelibs-3.5.10/kio/kssl/ksslcertificate.cc.ossl-1.x 2006-01-19 18:06:12.000000000 +0100
++++ kdelibs-3.5.10/kio/kssl/ksslcertificate.cc 2009-09-04 23:10:53.000000000 +0200
+@@ -1003,17 +1003,31 @@ return qba;
+ QByteArray KSSLCertificate::toNetscape() {
+ QByteArray qba;
+ #ifdef KSSL_HAVE_SSL
+-ASN1_HEADER ah;
+-ASN1_OCTET_STRING os;
+-KTempFile ktf;
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ NETSCAPE_X509 nx;
++ ASN1_OCTET_STRING hdr;
++#else
++ ASN1_HEADER ah;
++ ASN1_OCTET_STRING os;
++#endif
++ KTempFile ktf;
+
+- os.data = (unsigned char *)NETSCAPE_CERT_HDR;
+- os.length = strlen(NETSCAPE_CERT_HDR);
+- ah.header = &os;
+- ah.data = (char *)getCert();
+- ah.meth = d->kossl->X509_asn1_meth();
++#if OPENSSL_VERSION_NUMBER >= 0x10000000L
++ hdr.data = (unsigned char *)NETSCAPE_CERT_HDR;
++ hdr.length = strlen(NETSCAPE_CERT_HDR);
++ nx.header = &hdr;
++ nx.cert = getCert();
++
++ d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&nx);
++#else
++ os.data = (unsigned char *)NETSCAPE_CERT_HDR;
++ os.length = strlen(NETSCAPE_CERT_HDR);
++ ah.header = &os;
++ ah.data = (char *)getCert();
++ ah.meth = d->kossl->X509_asn1_meth();
+
+- d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah);
++ d->kossl->ASN1_i2d_fp(ktf.fstream(),(unsigned char *)&ah);
++#endif
+
+ ktf.close();
+
diff --git a/testing/obex-data-server/PKGBUILD b/testing/obex-data-server/PKGBUILD
new file mode 100644
index 000000000..2ab25c6b1
--- /dev/null
+++ b/testing/obex-data-server/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 169644 2012-10-25 01:35:28Z eric $
+# Maintainer: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Geoffroy Carrier <geoffroy@archlinux.org>
+# Contributor: Roman Kyrylych <roman@archlinux.org>
+# Contributor: Keerthi <keerthi.linux@gmail.com>
+
+pkgname=obex-data-server
+pkgver=0.4.6
+pkgrel=3
+pkgdesc="A D-Bus service providing high-level OBEX client and server side functionality"
+arch=('i686' 'x86_64')
+url="http://wiki.muiline.com/obex-data-server"
+license=('GPL')
+depends=('dbus-glib' 'openobex' 'imagemagick')
+source=("http://tadas.dailyda.com/software/${pkgname}-${pkgver}.tar.gz")
+md5sums=('961ca5db6fe9c97024e133cc6203cc4d')
+
+build() {
+ cd ${pkgname}-${pkgver}
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd ${pkgname}-${pkgver}
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/opencv/PKGBUILD b/testing/opencv/PKGBUILD
index 308df61c3..90bdbbe68 100644
--- a/testing/opencv/PKGBUILD
+++ b/testing/opencv/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 163133 2012-07-07 20:34:06Z schiv $
+# $Id: PKGBUILD 169645 2012-10-25 01:35:31Z eric $
# Maintainer: Ray Rashif <schiv@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
@@ -6,14 +6,14 @@ pkgbase=opencv
pkgname=('opencv' 'opencv-docs' 'opencv-samples')
_realname=OpenCV
pkgver=2.4.2
-pkgrel=2
+pkgrel=5
pkgdesc="Open Source Computer Vision Library"
arch=('i686' 'x86_64')
license=('BSD')
url="http://opencv.org/"
-depends=('jasper' 'gstreamer0.10-base' 'openexr'
- 'gtk2' 'xine-lib' 'libdc1394' 'v4l-utils')
-makedepends=('pkg-config' 'cmake' 'python2-numpy' 'eigen2')
+depends=('jasper' 'gstreamer0.10-base' 'openexr>=1.7.0'
+ 'gtk2' 'xine-lib' 'libdc1394' 'v4l-utils' 'ilmbase>=1.0.3')
+makedepends=('cmake' 'python2-numpy' 'eigen2')
optdepends=('opencv-docs'
'opencv-samples'
'eigen2'
@@ -69,13 +69,6 @@ package_opencv() {
cd "$pkgdir/usr/share"
- # prepare FSH-friendly dirs
- #if [ -d OpenCV ]; then
- # mv opencv/samples OpenCV/
- # rm -r opencv
- # mv OpenCV opencv
- #fi
-
# separate docs package; also be -R friendly
[ -d $_realname/doc ] && mv $_realname/doc "$srcdir/opencv-doc"
diff --git a/testing/openexr/PKGBUILD b/testing/openexr/PKGBUILD
new file mode 100644
index 000000000..4c54c859b
--- /dev/null
+++ b/testing/openexr/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 169646 2012-10-25 01:35:34Z eric $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+
+pkgname=openexr
+pkgver=1.7.1
+pkgrel=2
+pkgdesc="An high dynamic-range image file format library"
+url="http://www.openexr.com/"
+arch=('i686' 'x86_64')
+license=('BSD')
+depends=('zlib' 'ilmbase')
+options=('!libtool')
+source=("https://github.com/downloads/${pkgname}/${pkgname}/${pkgname}-${pkgver}.tar.gz"
+ 'gcc43.patch')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p0 -i "${srcdir}/gcc43.patch"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
+
+md5sums=('a9e0369dfd68941c50cdaa93e9d7a8d1'
+ 'd91fae759053a70bcedcf02eb33ca4a2')
diff --git a/testing/openexr/gcc43.patch b/testing/openexr/gcc43.patch
new file mode 100644
index 000000000..ab99eb9a1
--- /dev/null
+++ b/testing/openexr/gcc43.patch
@@ -0,0 +1,11 @@
+--- exrenvmap/blurImage.cpp
++++ exrenvmap/blurImage.cpp
+@@ -39,6 +39,8 @@
+ //
+ //-----------------------------------------------------------------------------
+
++#include <cstring>
++
+ #include <blurImage.h>
+
+ #include <resizeImage.h>
diff --git a/testing/psiconv/PKGBUILD b/testing/psiconv/PKGBUILD
new file mode 100644
index 000000000..1dc2e588d
--- /dev/null
+++ b/testing/psiconv/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 169647 2012-10-25 01:35:36Z eric $
+# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+
+pkgname=psiconv
+pkgver=0.9.8
+pkgrel=10
+pkgdesc="Converts Psion 5(MX) files to more commonly used file formats"
+arch=('i686' 'x86_64')
+url="http://software.frodo.looijaard.name/psiconv/"
+license=('GPL')
+depends=('imagemagick')
+makedepends=('bc')
+backup=('etc/psiconv/psiconv.conf')
+options=('!libtool')
+source=("http://software.frodo.looijaard.name/${pkgname}/files/${pkgname}-${pkgver}.tar.gz")
+md5sums=('8d7548e3c6b9cd408544736133728acd')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --mandir=/usr/share/man
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/pstoedit/PKGBUILD b/testing/pstoedit/PKGBUILD
new file mode 100644
index 000000000..1915d9b37
--- /dev/null
+++ b/testing/pstoedit/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id: PKGBUILD 169648 2012-10-25 01:35:40Z eric $
+# Maintainer: Ronald van Haren <ronald.archlinux.org>
+# Contributor: damir <damir@archlinux.org>
+# Contributor: Tobias Powalowski <t.powa@gmx.de>
+
+pkgname=pstoedit
+pkgver=3.60
+pkgrel=3
+pkgdesc="Translates PostScript and PDF graphics into other vector formats"
+arch=('i686' 'x86_64')
+url="http://www.pstoedit.net/"
+license=('GPL')
+depends=('gcc-libs' 'plotutils' 'gd' 'imagemagick')
+makedepends=('ghostscript')
+options=('!libtool' '!makeflags')
+source=("http://downloads.sourceforge.net/sourceforge/pstoedit/pstoedit-${pkgver}.tar.gz"
+ 'pstoedit-3.50-parallel.patch' 'pstoedit-3.50-plugin-close.patch')
+sha1sums=('649ade3d873429548eb6dd9f3e13cb79a8d6a1a2'
+ '6e278b164d3e59fbb11e7fd5ae8ffb038932d69a'
+ '54bbe019de66eb4cb8525371462595d21fbd074e')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ sed -i 's/-pedantic//' configure
+
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/testing/pstoedit/pstoedit-3.50-parallel.patch b/testing/pstoedit/pstoedit-3.50-parallel.patch
new file mode 100644
index 000000000..4f1f73b04
--- /dev/null
+++ b/testing/pstoedit/pstoedit-3.50-parallel.patch
@@ -0,0 +1,47 @@
+diff --git a/src/Makefile.am b/src/Makefile.am
+index d6178df..66f377b 100755
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -86,6 +86,7 @@ libp2edrvstd_la_SOURCES= \
+ $(sample_drivers_src)
+ libp2edrvstd_la_LIBADD=-L. libpstoedit.la
+ libp2edrvstd_la_LDFLAGS=-no-undefined -module
++libp2edrvstd_la_DEPENDENCIES = libpstoedit.la
+
+ #libp2edrvplugins_la_SOURCES=drvmif.cpp drvcgm.cpp drvrtf.cpp drvwwmf.cpp
+ #libp2edrvplugins_la_LIBADD=
+@@ -95,15 +96,18 @@ libp2edrvstd_la_LDFLAGS=-no-undefined -module
+ libp2edrvlplot_la_SOURCES=drvlplot.cpp drvlplot.h initlibrary.cpp
+ libp2edrvlplot_la_LIBADD=$(LIBPLOTTER_LDFLAGS) -L. libpstoedit.la
+ libp2edrvlplot_la_LDFLAGS=-no-undefined -module
++libp2edrvlplot_la_DEPENDENCIES = libpstoedit.la
+
+ libp2edrvswf_la_SOURCES=drvswf.cpp drvswf.h initlibrary.cpp
+ libp2edrvswf_la_LIBADD=$(LIBMING_LDFLAGS) -L. libpstoedit.la
+ libp2edrvswf_la_LDFLAGS=-no-undefined -module
++libp2edrvswf_la_DEPENDENCIES = libpstoedit.la
+
+ # note the __ stand for ++ - automake treats all no alphanums chars as _
+ libp2edrvmagick___la_SOURCES=drvmagick++.cpp drvmagick++.h initlibrary.cpp
+ libp2edrvmagick___la_LIBADD=-L. libpstoedit.la
+ libp2edrvmagick___la_LDFLAGS=-no-undefined ${LIBMAGICK_LDFLAGS} -module
++libp2edrvmagick___la_DEPENDENCIES = libpstoedit.la
+ # moved to configure.ac because needed only for g++ libp2edrvmagick___la_CPPFLAGS=$(LIBMAGICK_CFLAGS) $(AM_CPPFLAGS) -Wno-long-long
+
+ if USE_EMFBYSOURCE
+@@ -113,6 +117,7 @@ else
+ libp2edrvwmf_la_SOURCES=drvwmf.cpp drvwmf.h initlibrary.cpp
+ libp2edrvwmf_la_LDFLAGS=-no-undefined $(LIBEMF_LDFLAGS) -L. libpstoedit.la -module
+ endif
++libp2edrvwmf_la_DEPENDENCIES = libpstoedit.la
+
+ libpstoedit_la_SOURCES = \
+ dynload.cpp dynload.h \
+@@ -135,6 +140,7 @@ libpstoedit_la_LDFLAGS = -no-undefined
+
+ pstoedit_SOURCES = cmdmain.cpp
+ pstoedit_LDFLAGS = -no-undefined -L. libpstoedit.la ${LIBLD_LDFLAGS}
++pstoedit_DEPENDENCIES = libpstoedit.la
+
+ pkginclude_HEADERS = \
+ pstoedit.h \
diff --git a/testing/pstoedit/pstoedit-3.50-plugin-close.patch b/testing/pstoedit/pstoedit-3.50-plugin-close.patch
new file mode 100644
index 000000000..6787d6aef
--- /dev/null
+++ b/testing/pstoedit/pstoedit-3.50-plugin-close.patch
@@ -0,0 +1,14 @@
+http://bugzilla.redhat.com/507035
+
+diff --git a/src/dynload.cpp b/src/dynload.cpp
+index c0db355..7c073ef 100644
+--- a/src/dynload.cpp
++++ b/src/dynload.cpp
+@@ -147,7 +147,6 @@ void DynLoader::close()
+
+ DynLoader::~DynLoader()
+ {
+- close();
+ libname=0;
+ }
+
diff --git a/testing/systemd/PKGBUILD b/testing/systemd/PKGBUILD
index 1b295076f..cce4b8e44 100644
--- a/testing/systemd/PKGBUILD
+++ b/testing/systemd/PKGBUILD
@@ -4,7 +4,7 @@
pkgbase=systemd
pkgname=('systemd' 'systemd-sysvcompat')
pkgver=195
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url="http://www.freedesktop.org/wiki/Software/systemd"
license=('GPL2' 'LGPL2.1' 'MIT')
diff --git a/testing/systemd/systemd.install b/testing/systemd/systemd.install
index 5d6689c59..aad9691b0 100644
--- a/testing/systemd/systemd.install
+++ b/testing/systemd/systemd.install
@@ -4,18 +4,28 @@ sd_booted() {
[ -e sys/fs/cgroup/systemd ]
}
+post_common() {
+ systemd-machine-id-setup
+
+ setcap cap_dac_override,cap_sys_ptrace+ep usr/bin/systemd-detect-virt
+
+ if sd_booted; then
+ systemctl --system daemon-reexec
+ fi
+}
+
post_install() {
+ post_common
+
# enable getty@tty1 by default, but don't track the file
systemctl enable getty@.service
- systemd-machine-id-setup
-
echo ":: Append 'init=/bin/systemd' to your kernel command line in your"
echo " bootloader to replace sysvinit with systemd"
}
post_upgrade() {
- systemd-machine-id-setup
+ post_common
# getty@tty1.service is no longer enabled by default, but we don't want to break
# existing setups.
diff --git a/testing/tracker/PKGBUILD b/testing/tracker/PKGBUILD
index 3c396174c..9d9cde003 100644
--- a/testing/tracker/PKGBUILD
+++ b/testing/tracker/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 169148 2012-10-18 19:22:25Z jgc $
+# $Id: PKGBUILD 169619 2012-10-24 17:52:34Z heftig $
# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Alexander Fehr <pizzapunk gmail com>
pkgbase=tracker
pkgname=(tracker libtracker-sparql)
-pkgver=0.14.2
+pkgver=0.14.3
_tver=${pkgver%.*}
-pkgrel=2
+pkgrel=1
pkgdesc="All-in-one indexer, search tool and metadata database"
arch=('i686' 'x86_64')
license=('GPL')
@@ -18,18 +18,12 @@ makedepends=('libgee' 'libgnome-keyring' 'upower' 'libexif' 'exempi'
'taglib' 'nautilus' 'gnome-panel' 'libvorbis' 'flac' 'vala')
url="http://www.gnome.org"
options=('!libtool' '!emptydirs')
-source=(http://ftp.gnome.org/pub/gnome/sources/$pkgbase/$_tver/$pkgbase-$pkgver.tar.xz
- bug675660.patch
- tracker-extract-pdf-crash-fix.patch)
-sha256sums=('9b59330aa2e9e09feee587ded895e9247f71fc25f46b023d616d9969314bc7f1'
- '77c1377860f09aba42fc0bb662cb188613d5ed3744f3ffb3a710d1e60499cb8c'
- 'afa14805b9a1adb2442dc4a6032b1575a07a87aa969599ca28669a2cf975e772')
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgbase/$_tver/$pkgbase-$pkgver.tar.xz)
+sha256sums=('7c1ecf3705ecbd2a0278d04277cd1bd8c89d5838913de922fef32321ce67abe4')
build() {
cd $pkgbase-$pkgver
- patch -Np1 -i "${srcdir}/bug675660.patch"
- patch -Np1 -i "${srcdir}/tracker-extract-pdf-crash-fix.patch"
./configure \
--prefix=/usr \
--sysconfdir=/etc \
diff --git a/testing/transcode/PKGBUILD b/testing/transcode/PKGBUILD
index f8c6bb74d..7fb798ef7 100644
--- a/testing/transcode/PKGBUILD
+++ b/testing/transcode/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 163067 2012-07-06 15:22:20Z ibiru $
+# $Id: PKGBUILD 169649 2012-10-25 01:35:43Z eric $
# Maintainer:
# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
# Contributor: roberto <roberto@archlinux.org>
@@ -6,7 +6,7 @@
pkgname=transcode
_sripver=0.3-4
pkgver=1.1.7
-pkgrel=5
+pkgrel=6
pkgdesc="A video/DVD ripper and encoder for the terminal/console"
arch=('i686' 'x86_64')
url="http://tcforge.berlios.de/"
@@ -23,7 +23,7 @@ sha1sums=('e35df68b960eb56ef0a59a4cdbed1491be56aee6'
'd93ff3578dd5f722c8f4ef16bc0903eec5781a0d'
'fa05aa1770d9350d90b7cf315aa7c4a1fd921ac7'
'591943a33235342a66c3df0625a164a1479c09ae'
- '765dacce5ee463adf5c124556d68bb873ef436c6')
+ '3d2dcdc23f14938e87d14cfc03000bb3b649b85e')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/testing/transcode/ffmpeg-0.11.patch b/testing/transcode/ffmpeg-0.11.patch
index 24beb1069..b5601fe2f 100644
--- a/testing/transcode/ffmpeg-0.11.patch
+++ b/testing/transcode/ffmpeg-0.11.patch
@@ -128,3 +128,14 @@ diff -Naur transcode-1.1.7/libtc/tcavcodec.h fixed-tc/libtc/tcavcodec.h
avcodec_register_all(); \
TC_UNLOCK_LIBAVCODEC; \
} while (0)
+--- transcode-1.1.7/export/export_ffmpeg.c.orig 2012-10-19 23:25:16.442303175 -0400
++++ transcode-1.1.7/export/export_ffmpeg.c 2012-10-19 23:26:23.904268733 -0400
+@@ -1249,7 +1249,7 @@
+ return TC_EXPORT_ERROR;
+ }
+
+- if (lavc_venc_context->codec->encode == NULL) {
++ if (lavc_venc_context->codec->encode2 == NULL) {
+ tc_log_warn(MOD_NAME, "could not open FFMPEG codec "
+ "(lavc_venc_context->codec->encode == NULL)");
+ return TC_EXPORT_ERROR;
diff --git a/testing/xf86-video-nouveau/PKGBUILD b/testing/xf86-video-nouveau/PKGBUILD
index bb486be2d..30f70d501 100644
--- a/testing/xf86-video-nouveau/PKGBUILD
+++ b/testing/xf86-video-nouveau/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 168232 2012-10-06 20:07:48Z andyrtr $
+# $Id: PKGBUILD 169614 2012-10-24 13:01:41Z ibiru $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: buddabrod <buddabrod@gmail.com>
pkgname=xf86-video-nouveau
-pkgver=1.0.2
-pkgrel=2
+pkgver=1.0.3
+pkgrel=1
pkgdesc="Open Source 2D acceleration driver for nVidia cards"
arch=('i686' 'x86_64')
url="http://nouveau.freedesktop.org/"
@@ -14,8 +14,8 @@ makedepends=('xorg-server-devel' 'X-ABI-VIDEODRV_VERSION=13' 'resourceproto' 'sc
conflicts=('xorg-server<1.13.0' 'X-ABI-VIDEODRV_VERSION<13' 'X-ABI-VIDEODRV_VERSION>=14')
options=('!libtool')
install=$pkgname.install
-source=($url/release/$pkgname-$pkgver.tar.bz2)
-sha256sums=('765731c2a91d434d4360517a128d18af70b158f727e49813f1a42e26cccbc45d')
+source=(http://xorg.freedesktop.org/archive/individual/driver/$pkgname-$pkgver.tar.bz2)
+sha256sums=('a2ae34046324e1ec620f5a8dee3c8fe5a295acbb5d51825604c8ad28fb75a559')
build() {
cd $pkgname-$pkgver
diff --git a/testing/xine-lib/PKGBUILD b/testing/xine-lib/PKGBUILD
index 5112660a3..6a9f18c0f 100644
--- a/testing/xine-lib/PKGBUILD
+++ b/testing/xine-lib/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 168288 2012-10-07 22:15:57Z eric $
+# $Id: PKGBUILD 169650 2012-10-25 01:35:46Z eric $
# Maintainer: Eric BĂ©langer <eric@archlinux.org>
pkgname=xine-lib
pkgver=1.2.2
-pkgrel=2
+pkgrel=3
pkgdesc="A multimedia playback engine"
arch=('i686' 'x86_64')
url="http://www.xine-project.org"