summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2011-09-09 23:14:45 +0000
committerroot <root@rshg054.dnsready.net>2011-09-09 23:14:45 +0000
commit42db4a0cf3a829fcd1bc2150669c6aa3c2984815 (patch)
tree91bdb63fa6802146ab19b3fbf8f6fc5ab78e23c2
parenta7b0a0b362d0535cd86b575a45ec70cc2332fa62 (diff)
Fri Sep 9 23:14:45 UTC 2011
-rw-r--r--community/calcurse/PKGBUILD11
-rw-r--r--community/flumotion/PKGBUILD6
-rw-r--r--community/pinfo/PKGBUILD5
-rwxr-xr-xcommunity/pragha/PKGBUILD6
-rwxr-xr-xcommunity/pragha/pragha.install2
-rw-r--r--community/roxterm/PKGBUILD10
-rw-r--r--community/rsyslog/PKGBUILD8
-rw-r--r--extra/digikam/PKGBUILD8
-rw-r--r--extra/gnuchess/PKGBUILD8
-rw-r--r--extra/kdebase-workspace/PKGBUILD8
-rw-r--r--extra/libnice/PKGBUILD6
-rw-r--r--extra/libwebkit/PKGBUILD8
-rw-r--r--extra/notification-daemon/PKGBUILD10
-rw-r--r--gnome-unstable/evolution-data-server/PKGBUILD4
-rw-r--r--gnome-unstable/evolution/PKGBUILD4
-rw-r--r--gnome-unstable/folks/PKGBUILD6
-rw-r--r--gnome-unstable/gdm/PKGBUILD11
-rw-r--r--gnome-unstable/gdm/fix-consolekit-registration.patch98
-rw-r--r--gnome-unstable/gnome-contacts/PKGBUILD8
-rw-r--r--gnome-unstable/telepathy-mission-control/PKGBUILD30
-rw-r--r--gnome-unstable/upower/PKGBUILD4
-rw-r--r--kde-unstable/kdebase-workspace/PKGBUILD38
-rw-r--r--multilib-testing/lib32-glibc/PKGBUILD170
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.10-bz4781.patch42
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.10-dont-build-timezone.patch13
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.12.1-static-shared-getpagesize.patch11
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch26
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.13-dlclose-search-reset.patch196
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.13-futex.patch31
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch26
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.14-libdl-crash.patch132
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.14-reexport-rpc-interface.patch26
-rw-r--r--multilib-testing/lib32-glibc/glibc-2.14-reinstall-nis-rpc-headers.patch28
-rw-r--r--multilib-testing/lib32-glibc/glibc-__i686.patch13
-rw-r--r--multilib-testing/lib32-glibc/lib32-glibc.conf1
-rw-r--r--multilib-testing/libtool-multilib/PKGBUILD72
-rw-r--r--multilib-testing/libtool-multilib/libtool.install22
-rw-r--r--multilib/lib32-mpg123/PKGBUILD8
-rw-r--r--multilib/lib32-openssl/PKGBUILD4
-rw-r--r--multilib/libtool-multilib/PKGBUILD6
-rw-r--r--testing/glibc/PKGBUILD207
-rw-r--r--testing/glibc/glibc-2.10-bz4781.patch42
-rw-r--r--testing/glibc/glibc-2.10-dont-build-timezone.patch13
-rw-r--r--testing/glibc/glibc-2.12.1-static-shared-getpagesize.patch11
-rw-r--r--testing/glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch26
-rw-r--r--testing/glibc/glibc-2.13-dlclose-search-reset.patch196
-rw-r--r--testing/glibc/glibc-2.13-futex.patch31
-rw-r--r--testing/glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch26
-rw-r--r--testing/glibc/glibc-2.14-libdl-crash.patch132
-rw-r--r--testing/glibc/glibc-2.14-reexport-rpc-interface.patch26
-rw-r--r--testing/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch28
-rw-r--r--testing/glibc/glibc-__i686.patch13
-rw-r--r--testing/glibc/glibc.install20
-rwxr-xr-xtesting/glibc/locale-gen42
-rw-r--r--testing/glibc/locale.gen.txt23
-rwxr-xr-xtesting/glibc/nscd40
-rw-r--r--testing/libtool/PKGBUILD48
-rw-r--r--testing/libtool/libtool.install20
58 files changed, 1976 insertions, 94 deletions
diff --git a/community/calcurse/PKGBUILD b/community/calcurse/PKGBUILD
index a3e9c8b43..a3cae0512 100644
--- a/community/calcurse/PKGBUILD
+++ b/community/calcurse/PKGBUILD
@@ -1,24 +1,23 @@
-# $Id: PKGBUILD 53403 2011-08-03 11:06:10Z lfleischer $
+# $Id: PKGBUILD 55277 2011-09-08 13:31:41Z lfleischer $
# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
# Contributor: Ronald van Haren <ronald.archlinux.org>
# Contributor: wain <wain.at.gmx.net>
pkgname=calcurse
-pkgver=2.9.1
-pkgrel=2
+pkgver=2.9.2
+pkgrel=1
pkgdesc='A text-based personal organizer.'
arch=('i686' 'x86_64')
url='http://calcurse.org/'
license=('BSD')
depends=('ncurses')
-makedepends=('asciidoc')
source=("http://calcurse.org/files/${pkgname}-${pkgver}.tar.gz")
-md5sums=('3a1af304a55a87169c425099b4886dc2')
+md5sums=('5cb7d9c9edddc551fc62c9c5733591c5')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --mandir=/usr/share/man
+ ./configure --enable-docs --without-asciidoc --prefix=/usr --mandir=/usr/share/man
make
}
diff --git a/community/flumotion/PKGBUILD b/community/flumotion/PKGBUILD
index 531c49b97..216069a0f 100644
--- a/community/flumotion/PKGBUILD
+++ b/community/flumotion/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 47404 2011-05-22 20:37:23Z tdziedzic $
+# $Id: PKGBUILD 55283 2011-09-08 19:32:44Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr>
# Contributor: William Rea <sillywilly@gmail.com>
pkgname=flumotion
-pkgver=0.8.1
+pkgver=0.9.1
pkgrel=1
arch=('i686' 'x86_64')
pkgdesc="A streaming media server"
@@ -17,7 +17,7 @@ depends=('gtk2' 'pygtk' 'gstreamer0.10-python' 'kiwi' 'gstreamer0.10-good-plugin
'gstreamer0.10-base-plugins' 'python2-pyopenssl' 'twisted' 'gnome-vfs')
makedepends=('perlxml')
source=(http://www.flumotion.net/src/$pkgname/$pkgname-$pkgver.tar.bz2)
-md5sums=('8970bb126a1720ae3f0b2d02924e5700')
+md5sums=('b2fa7c2e7ce8e2a5415f9096bfce783b')
build() {
cd "$srcdir/$pkgname-$pkgver"
diff --git a/community/pinfo/PKGBUILD b/community/pinfo/PKGBUILD
index 9e0791384..d5ac06d0e 100644
--- a/community/pinfo/PKGBUILD
+++ b/community/pinfo/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 38757 2011-01-31 16:57:31Z spupykin $
+# $Id: PKGBUILD 55275 2011-09-08 12:47:50Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Jaroslaw Swierczynski <swiergot@aur.archlinux.org>
pkgname=pinfo
pkgver=0.6.10
-pkgrel=1
+pkgrel=2
pkgdesc="A hypertext info file viewer"
arch=('i686' 'x86_64')
url="http://pinfo.alioth.debian.org/"
@@ -17,6 +17,7 @@ build() {
cd $srcdir/$pkgname-$pkgver
unset LDFLAGS
[ -x configure ] || ./autogen.sh
+ sed -i 's|nogroup|nobody|' src/pinforc.in src/utils.c
[ -f Makefile ] || ./configure --prefix=/usr --sysconfdir=/etc --enable-cursor \
--mandir=/usr/share/man --infodir=/usr/share/info
make
diff --git a/community/pragha/PKGBUILD b/community/pragha/PKGBUILD
index 9a247db2b..7dd6902ce 100755
--- a/community/pragha/PKGBUILD
+++ b/community/pragha/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 54544 2011-08-20 07:24:22Z ttopper $
+# $Id: PKGBUILD 55279 2011-09-08 15:03:04Z ttopper $
# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de>
# Contributor: Alois Nespor <alois.nespor@gmail.com>
# Contributor: JerichoKru <jerichokru(AT)htomail.com>
pkgname=pragha
-pkgver=0.98.0
+pkgver=0.99.0
pkgrel=1
pkgdesc="A lightweight GTK+ music manager - fork of Consonance Music Manager."
arch=('i686' 'x86_64')
@@ -18,7 +18,7 @@ optdepends=('notification-daemon: OSD notification')
replaces=('dissonance')
install=pragha.install
source=(http://dissonance.googlecode.com/files/$pkgname-$pkgver.tar.bz2)
-sha1sums=('b648a9fc7881709711097e394a7e854595709772')
+sha1sums=('0791335c29121e6288962f4a7fbe074e4db73c9d')
build() {
cd "$srcdir/$pkgname-$pkgver"
diff --git a/community/pragha/pragha.install b/community/pragha/pragha.install
index 7db352036..ff5a644bd 100755
--- a/community/pragha/pragha.install
+++ b/community/pragha/pragha.install
@@ -1,8 +1,10 @@
post_install() {
gtk-update-icon-cache -q -f -t usr/share/icons/hicolor
+ update-desktop-database -q
}
post_remove() {
gtk-update-icon-cache -q -f -t usr/share/icons/hicolor
+ update-desktop-database -q
}
diff --git a/community/roxterm/PKGBUILD b/community/roxterm/PKGBUILD
index 26b7d7617..321366e0e 100644
--- a/community/roxterm/PKGBUILD
+++ b/community/roxterm/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 54833 2011-08-26 19:35:19Z ttopper $
+# $Id: PKGBUILD 55281 2011-09-08 15:08:58Z ttopper $
# Maintainer: Thorsten Töpper <atsutane-tu@freethoughts.de>
# Contributor: Alexander Fehr <pizzapunk gmail com>
pkgname=roxterm
-pkgver=2.0.1
-pkgrel=2
+pkgver=2.1.1
+pkgrel=1
pkgdesc="Tabbed, VTE-based terminal emulator"
arch=('i686' 'x86_64')
url="http://roxterm.sourceforge.net/"
@@ -13,8 +13,8 @@ depends=('dbus-glib' 'vte3' 'hicolor-icon-theme' 'dbus' 'dbus-core' 'glib2')
makedepends=('docbook-xsl' 'xmlto' 'po4a')
install=roxterm.install
source=(http://downloads.sourceforge.net/roxterm/roxterm-$pkgver.tar.gz)
-md5sums=('114d571d42b2ddd7a777b26339a07573')
-sha1sums=('0ba8b6501a81a9527671f13be5111c6434cd4f0b')
+md5sums=('45f694c3633a4af2b76472dcac9203a7')
+sha1sums=('c4fb10ca28ca5d781a2ed98cb7e13cbac0762cc9')
build() {
diff --git a/community/rsyslog/PKGBUILD b/community/rsyslog/PKGBUILD
index a3b0c17fa..1513e7fe7 100644
--- a/community/rsyslog/PKGBUILD
+++ b/community/rsyslog/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 54481 2011-08-18 15:08:38Z bluewind $
+# $Id: PKGBUILD 55273 2011-09-08 12:30:20Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=rsyslog
-pkgver=5.8.4
-pkgrel=2
+pkgver=5.8.5
+pkgrel=1
pkgdesc="An enhanced multi-threaded syslogd with a focus on security and reliability"
url="http://www.rsyslog.com/"
arch=('i686' 'x86_64')
@@ -22,7 +22,7 @@ source=("http://www.rsyslog.com/files/download/rsyslog/rsyslog-$pkgver.tar.gz"
'rsyslog'
'rsyslog.logrotate'
'rsyslog.conf.d')
-md5sums=('a2c2a65ac84d9a895c52a754aff61986'
+md5sums=('a73cb577cb4bc5b9c8f0d217eb054ad2'
'a18bbcbb6ebdaa13a6ec6d9f3d9eb2da'
'8065db4bef3061a4f000ba58779f6829'
'1a0cd4530dd5d1439456d5ae230574d9')
diff --git a/extra/digikam/PKGBUILD b/extra/digikam/PKGBUILD
index 7f60bd6e8..ead1d0b85 100644
--- a/extra/digikam/PKGBUILD
+++ b/extra/digikam/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 134112 2011-08-01 17:31:36Z andrea $
+# $Id: PKGBUILD 137536 2011-09-08 21:54:21Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgbase=digikam
pkgname=('digikam' 'kipi-plugins' 'libkface' 'libkgeomap' 'libmediawiki')
-pkgver=2.0.0
-pkgrel=2
+pkgver=2.1.0
+pkgrel=1
pkgdesc="Digital photo management application for KDE"
arch=('i686' 'x86_64')
license=('GPL')
@@ -14,7 +14,7 @@ makedepends=('kdepimlibs' 'libkexiv2' 'libkdcraw' 'libkipi' 'libksane' 'liblqr'
'kdeedu-marble' 'opencv' 'boost' 'libgpod' 'qjson' 'hugin'
'cmake' 'automoc4' 'doxygen')
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2")
-md5sums=('7b1ab69fc2fb36a45dc3ca38b01d42d8')
+md5sums=('3e5228a60ae916c530a7a87e081862b6')
build() {
cd "${srcdir}"
diff --git a/extra/gnuchess/PKGBUILD b/extra/gnuchess/PKGBUILD
index dedeaddb7..cf9545094 100644
--- a/extra/gnuchess/PKGBUILD
+++ b/extra/gnuchess/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 122210 2011-05-03 05:16:02Z allan $
+# $Id: PKGBUILD 137508 2011-09-08 07:31:10Z allan $
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgname=gnuchess
-pkgver=6.0.0
+pkgver=6.0.1
pkgrel=1
pkgdesc="Lets most modern computers play a full game of chess"
url="http://www.gnu.org/software/chess/chess.html"
@@ -11,12 +11,12 @@ arch=('i686' 'x86_64')
license=('GPL')
depends=('glibc' 'ncurses' 'readline')
source=(ftp://ftp.gnu.org/pub/gnu/chess/$pkgname-$pkgver.tar.gz)
-md5sums=('1a7a46188dab76f4339d22ff47c31515')
+md5sums=('041888218f73886f146fa7fbf92190de')
build() {
cd $srcdir/$pkgname-$pkgver
./configure --prefix=/usr
- make
+ make
}
package() {
diff --git a/extra/kdebase-workspace/PKGBUILD b/extra/kdebase-workspace/PKGBUILD
index 9e076fd8c..040355421 100644
--- a/extra/kdebase-workspace/PKGBUILD
+++ b/extra/kdebase-workspace/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 137381 2011-09-07 17:19:26Z andrea $
+# $Id: PKGBUILD 137511 2011-09-08 09:01:46Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Pierre Schmitz <pierre@archlinux.de>
pkgname=kdebase-workspace
_pkgname=kde-workspace
pkgver=4.7.1
-pkgrel=2
+pkgrel=4
pkgdesc="KDE Base Workspace"
arch=('i686' 'x86_64')
url='http://www.kde.org'
@@ -17,7 +17,8 @@ groups=('kde')
depends=('kdepim-runtime' 'lm_sensors' 'libraw1394' 'libqalculate' 'qimageblitz'
'polkit-kde' 'consolekit' 'xorg-xprop' 'libxdamage' 'libxklavier'
'xorg-xsetroot' 'libxcomposite' 'libxinerama')
-makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdebindings-python')
+makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdebindings-python'i
+ 'networkmanager')
optdepends=('kde-wallpapers: officials KDE wallapers')
replaces=('kdmtheme' 'kde-common' 'guidance-power-manager' 'policykit-kde' 'kdebase-kinfocenter')
conflicts=('kde-common' 'guidance-power-manager' 'policykit-kde' 'kdebase-kinfocenter')
@@ -55,7 +56,6 @@ build() {
-DWITH_Xmms=OFF \
-DWITH_Googlegadgets=OFF \
-DWITH_libgps=OFF \
- -DWITH_NetworkManager=OFF \
-DKWIN_MOBILE_EFFECTS=OFF \
-DWITH_OpenGLES=OFF \
-DKWIN_BUILD_WITH_OPENGLES=OFF
diff --git a/extra/libnice/PKGBUILD b/extra/libnice/PKGBUILD
index b46074046..37d43bf7b 100644
--- a/extra/libnice/PKGBUILD
+++ b/extra/libnice/PKGBUILD
@@ -3,7 +3,7 @@
# Contributor: William Díaz <wdiaz@archlinux.us>
pkgname=libnice
-pkgver=0.1.0
+pkgver=0.1.1
pkgrel=1
pkgdesc="An implementation of the IETF's draft ICE (for p2p UDP data streams)"
arch=('i686' 'x86_64')
@@ -12,11 +12,9 @@ license=('LGPL')
depends=('gstreamer0.10')
options=('!libtool')
source=(http://nice.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz)
-md5sums=('c077e2aa74c9afb4b4e157efc8a6ad9d')
+md5sums=('0906c3523eb78cb3caad170cc75af4b0')
build() {
-# export CFLAGS="$CFLAGS -fno-strict-aliasing"
-
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --disable-static
make
diff --git a/extra/libwebkit/PKGBUILD b/extra/libwebkit/PKGBUILD
index 7dccf4179..b7f825dd1 100644
--- a/extra/libwebkit/PKGBUILD
+++ b/extra/libwebkit/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 130015 2011-07-01 08:50:25Z ibiru $
+# $Id: PKGBUILD 137537 2011-09-08 22:43:39Z andrea $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase=libwebkit
@@ -13,10 +13,8 @@ depends=('libxt' 'libxslt' 'sqlite3' 'icu' 'gstreamer0.10-base' 'libsoup' 'encha
makedepends=('gperf' 'gtk-doc' 'gobject-introspection' 'python2' 'gtk2' 'gtk3')
options=('!libtool')
install=libwebkit.install
-source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz
- replace-switch-with-given-when.patch)
-md5sums=('361f8420e93d12101d650758fec09fa0'
- '3ba708a26b7af0e1e853867966fe14f7')
+source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz)
+md5sums=('361f8420e93d12101d650758fec09fa0')
build() {
cd "${srcdir}/webkit-${pkgver}"
diff --git a/extra/notification-daemon/PKGBUILD b/extra/notification-daemon/PKGBUILD
index c71f1c7f5..b0a49ee11 100644
--- a/extra/notification-daemon/PKGBUILD
+++ b/extra/notification-daemon/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 110126 2011-02-16 17:22:45Z ibiru $
+# $Id: PKGBUILD 137530 2011-09-08 19:55:05Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Mark Rosenstand <mark@borkware.net>
pkgname=notification-daemon
-pkgver=0.7.1
+pkgver=0.7.2
pkgrel=1
pkgdesc="Notification daemon for the desktop notifications framework"
arch=('i686' 'x86_64')
@@ -11,10 +11,10 @@ license=('GPL')
url="http://www.galago-project.org/specs/notification/"
depends=('gtk3' 'libcanberra')
groups=('gnome')
-makedepends=('pkgconfig' 'intltool' 'dbus-glib')
+makedepends=('pkgconfig' 'intltool')
options=('!libtool' '!emptydirs')
-source=(http://download.gnome.org/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('d26bf9021b3ae708d36e55437642a89d6b81693fe39d27c5d1ec869e22697b8b')
+source=(http://download.gnome.org/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.xz)
+sha256sums=('74ccbedfe25c9559278ba35ef716125ada9ba0074fe7321a2271abfed5990661')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/gnome-unstable/evolution-data-server/PKGBUILD b/gnome-unstable/evolution-data-server/PKGBUILD
index 4f2307b90..3d7c264de 100644
--- a/gnome-unstable/evolution-data-server/PKGBUILD
+++ b/gnome-unstable/evolution-data-server/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 136982 2011-09-04 12:25:33Z ibiru $
+# $Id: PKGBUILD 137522 2011-09-08 19:07:04Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=evolution-data-server
pkgver=3.1.91
-pkgrel=1
+pkgrel=2
pkgdesc="Centralized access to appointments and contacts"
arch=('i686' 'x86_64')
depends=('gconf' 'gnome-online-accounts' 'nss' 'krb5' 'libgweather' 'libical' 'db' 'libgdata')
diff --git a/gnome-unstable/evolution/PKGBUILD b/gnome-unstable/evolution/PKGBUILD
index cd95b39e8..cd3eff4fb 100644
--- a/gnome-unstable/evolution/PKGBUILD
+++ b/gnome-unstable/evolution/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 136984 2011-09-04 13:38:27Z ibiru $
+# $Id: PKGBUILD 137524 2011-09-08 19:32:34Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=evolution
pkgver=3.1.91
-pkgrel=1
+pkgrel=2
pkgdesc="Manage your email, contacts and schedule"
arch=('i686' 'x86_64')
license=('GPL')
diff --git a/gnome-unstable/folks/PKGBUILD b/gnome-unstable/folks/PKGBUILD
index a27541e31..13ff2b06c 100644
--- a/gnome-unstable/folks/PKGBUILD
+++ b/gnome-unstable/folks/PKGBUILD
@@ -1,7 +1,7 @@
-# $Id: PKGBUILD 136723 2011-08-31 17:52:23Z ibiru $
+# $Id: PKGBUILD 137520 2011-09-08 18:28:46Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=folks
-pkgver=0.6.1
+pkgver=0.6.2.1
pkgrel=1
pkgdesc="Library to aggregates people into metacontacts "
arch=(i686 x86_64)
@@ -11,7 +11,7 @@ depends=('telepathy-glib' 'libgee' 'libxml2' 'evolution-data-server' 'libsocialw
makedepends=('gobject-introspection' 'vala' 'intltool')
options=('!libtool')
source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.6/${pkgname}-${pkgver}.tar.xz)
-sha256sums=('c194c1feac58ed7f9870b08ef0658077967fe96d90eff02fad130237df10c9f4')
+sha256sums=('3eda79a71890b51b6f723067b61c32ef25e9041a9e188b483d7f23e3dcd328ee')
build() {
cd "$srcdir/$pkgname-$pkgver"
diff --git a/gnome-unstable/gdm/PKGBUILD b/gnome-unstable/gdm/PKGBUILD
index 88097b4fc..d151c85c7 100644
--- a/gnome-unstable/gdm/PKGBUILD
+++ b/gnome-unstable/gdm/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 136953 2011-09-03 20:03:13Z ibiru $
+# $Id: PKGBUILD 137518 2011-09-08 14:13:16Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gdm
pkgver=3.1.90
-pkgrel=3
+pkgrel=4
pkgdesc="Gnome Display Manager (a reimplementation of xdm)"
arch=('i686' 'x86_64')
license=('GPL')
@@ -17,7 +17,8 @@ install=gdm.install
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.xz
fix_external_program_directories.patch
gdm
- gdm-autologin.pam gdm-fingerprint.pam gdm.pam gdm-password.pam gdm-smartcard.pam gdm-welcome.pam)
+ gdm-autologin.pam gdm-fingerprint.pam gdm.pam gdm-password.pam gdm-smartcard.pam gdm-welcome.pam
+ fix-consolekit-registration.patch)
sha256sums=('3fb9c52b8a18f39539c53d84645b89836de25a3eb3a0b84388e76a4f988178bf'
'b7c19ab68dc38216f751be6d1e66d617fb9011e23185590e52ac1974d3bc1afb'
'272c08d8e8b50bf424d0705ac864d4c18c47ec4f6893b1af732c2efbc86c9550'
@@ -26,10 +27,12 @@ sha256sums=('3fb9c52b8a18f39539c53d84645b89836de25a3eb3a0b84388e76a4f988178bf'
'f1dfa4d88288d4b0a631a68a51b46c2da537bee8fe5a99f9f288c8ff75a50b19'
'0dbb37b4e2a2a2dd2305f0f69cf32d63d353d34aacaf805d2c2ec52fbe558bb4'
'df74b0dcfb17ea43cc1e268a27cd256c552672457db1af40b285452d16b3e2fd'
- '39bf3824cc505043dc3136356da16dab9df9f369f1077435a324be2ac16cf834')
+ '39bf3824cc505043dc3136356da16dab9df9f369f1077435a324be2ac16cf834'
+ '405d82ad12ea6371ddc031e7d86e5d2ade6fe054bebbfaf24c89ac0a85fcef1c')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
patch -Np1 -i "${srcdir}/fix_external_program_directories.patch"
+ patch -Np1 -i "${srcdir}/fix-consolekit-registration.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/gdm \
diff --git a/gnome-unstable/gdm/fix-consolekit-registration.patch b/gnome-unstable/gdm/fix-consolekit-registration.patch
new file mode 100644
index 000000000..282d7705e
--- /dev/null
+++ b/gnome-unstable/gdm/fix-consolekit-registration.patch
@@ -0,0 +1,98 @@
+From 984038d2df357750f49658ad0c5bfe0d2e812ffd Mon Sep 17 00:00:00 2001
+From: Ray Strode <rstrode@redhat.com>
+Date: Tue, 06 Sep 2011 15:41:07 +0000
+Subject: daemon: fix consolekit registration
+
+ioni pointed out on IRC, that since commit
+647cad5bf59a4ff3776ba1ae5cda6b1aaaa1cfb2
+
+the greeter session isn't getting fully registered
+with consolekit and so udev acls weren't being
+properly applied.
+
+This commit passes the tty to the worker process
+so that it can be used for registration.
+
+It also passes hostname, merely for completeness.
+---
+diff --git a/daemon/gdm-session-direct.c b/daemon/gdm-session-direct.c
+index 1d5c16a..c25bc9b 100644
+--- a/daemon/gdm-session-direct.c
++++ b/daemon/gdm-session-direct.c
+@@ -1401,6 +1401,8 @@ do_introspect (DBusConnection *connection,
+ " <signal name=\"SetupForProgram\">\n"
+ " <arg name=\"service_name\" type=\"s\"/>\n"
+ " <arg name=\"x11_display_name\" type=\"s\"/>\n"
++ " <arg name=\"display_device\" type=\"s\"/>\n"
++ " <arg name=\"hostname\" type=\"s\"/>\n"
+ " <arg name=\"x11_authority_file\" type=\"s\"/>\n"
+ " <arg name=\"log_file\" type=\"s\"/>\n"
+ " </signal>\n"
+@@ -2052,6 +2054,8 @@ send_setup_for_program (GdmSessionDirect *session,
+ DBusMessage *message;
+ DBusMessageIter iter;
+ const char *display_name;
++ const char *display_device;
++ const char *display_hostname;
+ const char *display_x11_authority_file;
+ GdmSessionConversation *conversation;
+
+@@ -2062,6 +2066,16 @@ send_setup_for_program (GdmSessionDirect *session,
+ } else {
+ display_name = "";
+ }
++ if (session->priv->display_hostname != NULL) {
++ display_hostname = session->priv->display_hostname;
++ } else {
++ display_hostname = "";
++ }
++ if (session->priv->display_device != NULL) {
++ display_device = session->priv->display_device;
++ } else {
++ display_device = "";
++ }
+ if (session->priv->display_x11_authority_file != NULL) {
+ display_x11_authority_file = session->priv->display_x11_authority_file;
+ } else {
+@@ -2077,6 +2091,8 @@ send_setup_for_program (GdmSessionDirect *session,
+ dbus_message_iter_init_append (message, &iter);
+ dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &service_name);
+ dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &display_name);
++ dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &display_device);
++ dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &display_hostname);
+ dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &display_x11_authority_file);
+ dbus_message_iter_append_basic (&iter, DBUS_TYPE_STRING, &log_file);
+
+diff --git a/daemon/gdm-session-worker.c b/daemon/gdm-session-worker.c
+index 2b46ca8..c402e6c 100644
+--- a/daemon/gdm-session-worker.c
++++ b/daemon/gdm-session-worker.c
+@@ -2597,6 +2597,8 @@ on_setup_for_program (GdmSessionWorker *worker,
+ DBusError error;
+ char *service;
+ char *x11_display_name;
++ char *console;
++ char *hostname;
+ char *x11_authority_file;
+ char *log_file;
+ dbus_bool_t res;
+@@ -2611,6 +2613,8 @@ on_setup_for_program (GdmSessionWorker *worker,
+ &error,
+ DBUS_TYPE_STRING, &service,
+ DBUS_TYPE_STRING, &x11_display_name,
++ DBUS_TYPE_STRING, &console,
++ DBUS_TYPE_STRING, &hostname,
+ DBUS_TYPE_STRING, &x11_authority_file,
+ DBUS_TYPE_STRING, &log_file,
+ DBUS_TYPE_INVALID);
+@@ -2621,6 +2625,8 @@ on_setup_for_program (GdmSessionWorker *worker,
+ worker->priv->service = g_strdup (service);
+ worker->priv->username = g_strdup (GDM_USERNAME);
+ worker->priv->x11_display_name = g_strdup (x11_display_name);
++ worker->priv->hostname = g_strdup (hostname);
++ worker->priv->display_device = g_strdup (console);
+ worker->priv->x11_authority_file = g_strdup (x11_authority_file);
+ worker->priv->log_file = g_strdup (log_file);
+ worker->priv->is_program_session = TRUE;
+--
+cgit v0.9.0.2
diff --git a/gnome-unstable/gnome-contacts/PKGBUILD b/gnome-unstable/gnome-contacts/PKGBUILD
index 81aae1ef1..df964f0b7 100644
--- a/gnome-unstable/gnome-contacts/PKGBUILD
+++ b/gnome-unstable/gnome-contacts/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 136955 2011-09-03 20:21:17Z ibiru $
+# $Id: PKGBUILD 137516 2011-09-08 13:39:42Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=gnome-contacts
-pkgver=0.1.3
+pkgver=0.1.4.1
pkgrel=1
pkgdesc="Contacts Manager for GNOME"
arch=(i686 x86_64)
url="http://www.gnome.org"
license=('GPL2')
groups=(gnome-extra)
-depends=('gtk3' 'folks' 'libnotify')
+depends=('gtk3' 'folks' 'libnotify' 'gnome-desktop')
makedepends=('intltool' 'vala')
install=
source=(http://download.gnome.org/sources/$pkgname/0.1/$pkgname-$pkgver.tar.xz)
-sha256sums=('3de2987af8bad5dce9d165bc07be1080ef2922f68ab0f93157c28fb7ad9af778')
+sha256sums=('66dfb898df93b70f40cf9ff290ab8db1bea08d69e637dfba5266de58fa5be367')
build() {
cd "$srcdir/$pkgname-$pkgver"
diff --git a/gnome-unstable/telepathy-mission-control/PKGBUILD b/gnome-unstable/telepathy-mission-control/PKGBUILD
new file mode 100644
index 000000000..bcb9c55a6
--- /dev/null
+++ b/gnome-unstable/telepathy-mission-control/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 137528 2011-09-08 19:52:46Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Ju Liu <liuju86 at gmail dot com>
+# Contributor: Bjorn Lindeijer <bjorn lindeijer nl>
+# Contributor: Andreas Zwinkau <beza1e1@web.de>
+pkgname=telepathy-mission-control
+pkgver=5.9.2
+pkgrel=1
+pkgdesc="A Telepathy component providing abstraction of some of the details of connection managers."
+arch=('i686' 'x86_64')
+url="http://telepathy.freedesktop.org/wiki/Mission Control"
+license=('LGPL2.1')
+depends=('telepathy-glib' 'libgnome-keyring')
+makedepends=('libxslt' 'python2')
+options=('!libtool')
+source=(http://telepathy.freedesktop.org/releases/telepathy-mission-control/$pkgname-$pkgver.tar.gz)
+md5sums=('312fb289f644a90d4514064586445d58')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr \
+ --libexecdir=/usr/lib/telepathy \
+ --enable-gnome-keyring
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/gnome-unstable/upower/PKGBUILD b/gnome-unstable/upower/PKGBUILD
index c4e769670..d100a2f6b 100644
--- a/gnome-unstable/upower/PKGBUILD
+++ b/gnome-unstable/upower/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 137028 2011-09-05 15:14:03Z ibiru $
+# $Id: PKGBUILD 137526 2011-09-08 19:34:27Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=upower
pkgver=0.9.13
-pkgrel=1
+pkgrel=2
pkgdesc="Abstraction for enumerating power devices, listening to device events and querying history and statistics"
arch=('i686' 'x86_64')
url="http://upower.freedesktop.org"
diff --git a/kde-unstable/kdebase-workspace/PKGBUILD b/kde-unstable/kdebase-workspace/PKGBUILD
index 27bcfb250..650265a83 100644
--- a/kde-unstable/kdebase-workspace/PKGBUILD
+++ b/kde-unstable/kdebase-workspace/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 137347 2011-09-07 13:23:24Z andrea $
+# $Id: PKGBUILD 137512 2011-09-08 10:05:49Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Pierre Schmitz <pierre@archlinux.de>
pkgname=kdebase-workspace
_pkgname=kde-workspace
pkgver=4.7.1
-pkgrel=3
+pkgrel=5
pkgdesc="KDE Base Workspace"
arch=('i686' 'x86_64')
url='http://www.kde.org'
@@ -17,7 +17,8 @@ groups=('kde')
depends=('kdepim-runtime' 'lm_sensors' 'libraw1394' 'libqalculate' 'qimageblitz'
'polkit-kde' 'consolekit' 'xorg-xprop' 'libxdamage' 'libxklavier'
'xorg-xsetroot' 'libxcomposite' 'libxinerama' 'libgles' 'libegl')
-makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdebindings-python')
+makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdebindings-python'
+ 'networkmanager')
optdepends=('kde-wallpapers: officials KDE wallapers')
replaces=('kdmtheme' 'kde-common' 'guidance-power-manager' 'policykit-kde' 'kdebase-kinfocenter')
conflicts=('kde-common' 'guidance-power-manager' 'policykit-kde' 'kdebase-kinfocenter')
@@ -40,12 +41,12 @@ sha1sums=('c7867d2f788086078abbcff53a035a6131232539'
'ac7bc292c865bc1ab8c02e6341aa7aeaf1a3eeee')
build() {
- cd ${srcdir}/${_pkgname}-${pkgver}
- patch -p0 -i ${srcdir}/kdm-zsh-profile.patch
- patch -p0 -i ${srcdir}/fixpath.patch
- patch -p0 -i ${srcdir}/terminate-server.patch
+ cd "${srcdir}"/${_pkgname}-${pkgver}
+ patch -p0 -i "${srcdir}"/kdm-zsh-profile.patch
+ patch -p0 -i "${srcdir}"/fixpath.patch
+ patch -p0 -i "${srcdir}"/terminate-server.patch
- cd ${srcdir}
+ cd "${srcdir}"
mkdir build
cd build
cmake ../${_pkgname}-${pkgver} \
@@ -55,23 +56,22 @@ build() {
-DWITH_Xmms=OFF \
-DWITH_Googlegadgets=OFF \
-DWITH_libgps=OFF \
- -DWITH_NetworkManager=OFF \
-DWITH_OpenGLES=ON \
-DKWIN_BUILD_WITH_OPENGLES=ON
make
}
package() {
- cd ${srcdir}/build
- make DESTDIR=${pkgdir} install
+ cd "${srcdir}"/build
+ make DESTDIR="${pkgdir}" install
- install -D -m755 ${srcdir}/kdm ${pkgdir}/etc/rc.d/kdm
- install -D -m644 ${srcdir}/kde.pam ${pkgdir}/etc/pam.d/kde
- install -D -m644 ${srcdir}/kde-np.pam ${pkgdir}/etc/pam.d/kde-np
- install -D -m644 ${srcdir}/kscreensaver.pam ${pkgdir}/etc/pam.d/kscreensaver
- install -d -m755 ${pkgdir}/usr/share/xsessions/
- ln -sf /usr/share/apps/kdm/sessions/kde-plasma{,-safe}.desktop ${pkgdir}/usr/share/xsessions/
- install -d -m755 ${pkgdir}/etc/kde/{env,shutdown}
+ install -D -m755 "${srcdir}"/kdm "${pkgdir}"/etc/rc.d/kdm
+ install -D -m644 "${srcdir}"/kde.pam "${pkgdir}"/etc/pam.d/kde
+ install -D -m644 "${srcdir}"/kde-np.pam "${pkgdir}"/etc/pam.d/kde-np
+ install -D -m644 "${srcdir}"/kscreensaver.pam "${pkgdir}"/etc/pam.d/kscreensaver
+ install -d -m755 "${pkgdir}"/usr/share/xsessions/
+ ln -sf /usr/share/apps/kdm/sessions/kde-plasma{,-safe}.desktop "${pkgdir}"/usr/share/xsessions/
+ install -d -m755 "${pkgdir}"/etc/kde/{env,shutdown}
- install -d -g 135 -o 135 ${pkgdir}/var/lib/kdm
+ install -d -g 135 -o 135 "${pkgdir}"/var/lib/kdm
}
diff --git a/multilib-testing/lib32-glibc/PKGBUILD b/multilib-testing/lib32-glibc/PKGBUILD
new file mode 100644
index 000000000..c0a6c9f1f
--- /dev/null
+++ b/multilib-testing/lib32-glibc/PKGBUILD
@@ -0,0 +1,170 @@
+# $Id: PKGBUILD 55287 2011-09-08 23:36:17Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: Jan de Groot <jgc@archlinux.org>
+# Contributor: Allan McRae <allan@archlinux.org>
+
+# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
+# NOTE: valgrind requires rebuild with each new glibc version
+
+_pkgbasename=glibc
+pkgname=lib32-$_pkgbasename
+pkgver=2.14
+pkgrel=6
+_glibcdate=20110908
+pkgdesc="GNU C Library for multilib"
+arch=('x86_64')
+url="http://www.gnu.org/software/libc"
+license=('GPL' 'LGPL')
+depends=("glibc>=$pkgver")
+makedepends=('gcc-multilib>=4.6')
+options=('!strip' '!emptydirs')
+source=(ftp://ftp.archlinux.org/other/glibc/${_pkgbasename}-${pkgver}_${_glibcdate}.tar.xz
+ glibc-2.10-dont-build-timezone.patch
+ glibc-2.10-bz4781.patch
+ glibc-__i686.patch
+ glibc-2.12.1-static-shared-getpagesize.patch
+ glibc-2.12.2-ignore-origin-of-privileged-program.patch
+ glibc-2.13-futex.patch
+ glibc-2.13-dlclose-search-reset.patch
+ glibc-2.14-libdl-crash.patch
+ glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
+ glibc-2.14-reexport-rpc-interface.patch
+ glibc-2.14-reinstall-nis-rpc-headers.patch
+ lib32-glibc.conf)
+md5sums=('069069eb9100cc7affd7ad884cb3c3e9'
+ '4dadb9203b69a3210d53514bb46f41c3'
+ '0c5540efc51c0b93996c51b57a8540ae'
+ '40cd342e21f71f5e49e32622b25acc52'
+ 'a3ac6f318d680347bb6e2805d42b73b2'
+ 'b042647ea7d6f22ad319e12e796bd13e'
+ '7d0154b7e17ea218c9fa953599d24cc4'
+ '22d09c58718fb3d1d31c3a6c14ca6886'
+ 'cea62cc6b903d222c5f26e05a3c0e0e6'
+ '13728807283f111e5d9d38cf38e0a461'
+ 'c5de2a946215d647c8af5432ec4b0da0'
+ '55febbb72139ac7b65757df085024b83'
+ '6e052f1cb693d5d3203f50f9d4e8c33b')
+
+build() {
+ cd ${srcdir}/glibc
+
+ # timezone data is in separate package (tzdata)
+ patch -Np1 -i ${srcdir}/glibc-2.10-dont-build-timezone.patch
+
+ # http://sources.redhat.com/bugzilla/show_bug.cgi?id=4781
+ patch -Np1 -i ${srcdir}/glibc-2.10-bz4781.patch
+
+ # http://sources.redhat.com/bugzilla/show_bug.cgi?id=411
+ # http://sourceware.org/ml/libc-alpha/2009-07/msg00072.html
+ patch -Np1 -i ${srcdir}/glibc-__i686.patch
+
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=11929
+ # using Fedora "fix" as patch in that bug report causes breakages...
+ patch -Np1 -i ${srcdir}/glibc-2.12.1-static-shared-getpagesize.patch
+
+ # http://www.exploit-db.com/exploits/15274/
+ # http://sourceware.org/git/?p=glibc.git;a=patch;h=d14e6b09 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.12.2-ignore-origin-of-privileged-program.patch
+
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=12403
+ patch -Np1 -i ${srcdir}/glibc-2.13-futex.patch
+
+ # https://bugzilla.redhat.com/show_bug.cgi?id=593675
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=2f811bf8 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.13-dlclose-search-reset.patch
+
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=675155e9 (only fedora branch...)
+ # http://sourceware.org/ml/libc-alpha/2011-06/msg00006.html
+ patch -Np1 -i ${srcdir}/glibc-2.14-libdl-crash.patch
+
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=13013
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=032c0ee3 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
+
+ # re-export RPC interface until libtirpc is ready as a replacement
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=acee4873 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.14-reexport-rpc-interface.patch
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=bdd816a3 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.14-reinstall-nis-rpc-headers.patch
+
+ cd ${srcdir}
+ mkdir glibc-build
+ cd glibc-build
+
+ export CC="gcc -m32"
+
+ # Hack to fix NPTL issues with Xen, only required on 32bit platforms
+ export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs"
+
+ echo "slibdir=/usr/lib32" >> configparms
+
+ # remove hardening options from CFLAGS for building libraries
+ CFLAGS=${CFLAGS/-fstack-protector/}
+ CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+
+ ${srcdir}/glibc/configure --prefix=/usr \
+ --libdir=/usr/lib32 --libexecdir=/usr/lib32 \
+ --with-headers=/usr/include \
+ --enable-add-ons=nptl,libidn \
+ --enable-kernel=2.6.27 \
+ --with-tls --with-__thread \
+ --enable-bind-now --without-gd \
+ --without-cvs --disable-profile \
+ --disable-multi-arch i686-unknown-linux-gnu
+
+ # build libraries with hardening disabled
+ echo "build-programs=no" >> configparms
+ make
+
+ # re-enable hardening for programs
+ sed -i "s#=no#=yes#" configparms
+ echo "CC += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms
+ echo "CXX += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms
+ make
+
+ # remove harding in preparation to run test-suite
+ sed -i '2,4d' configparms
+}
+
+check() {
+ cd ${srcdir}/glibc-build
+
+ # some errors are expected - manually check log files
+ make -k check || true
+}
+
+package() {
+ cd ${srcdir}/glibc-build
+ make install_root=${pkgdir} install
+
+ rm -rf ${pkgdir}/{etc,sbin,usr/{bin,sbin,share}}
+
+ # We need one 32 bit specific header file
+ find ${pkgdir}/usr/include -type f -not -name stubs-32.h -delete
+
+ # manually strip files as stripping libpthread-*.so and libthread_db.so
+ # with the default $STRIP_SHARED breaks gdb and stripping ld-*.so breaks
+ # valgrind on x86_64
+
+ cd $pkgdir
+ strip $STRIP_BINARIES usr/lib32/getconf/*
+
+ strip $STRIP_STATIC usr/lib32/*.a \
+ usr/lib32/{{ld,libpthread}-${pkgver},libthread_db-1.0}.so
+
+ strip $STRIP_SHARED usr/lib32/{libanl,libBrokenLocale,libc,libcidn,libcrypt}-${pkgver}.so \
+ usr/lib32/libnss_{compat,dns,files,hesiod,nis,nisplus}-${pkgver}.so \
+ usr/lib32/{libdl,libm,libnsl,libresolv,librt,libutil}-${pkgver}.so \
+ usr/lib32/{libmemusage,libpcprofile,libSegFault}.so \
+ usr/lib32/{pt_chown,{audit,gconv}/*.so}
+
+ # Dynamic linker
+ install -d -m755 ${pkgdir}/lib
+ ln -s ../usr/lib32/ld-linux.so.2 ${pkgdir}/lib/
+
+ # Add /usr/lib32 to the default library search path
+ install -Dm644 "$srcdir/lib32-glibc.conf" "$pkgdir/etc/ld.so.conf.d/lib32-glibc.conf"
+
+ # Symlink /usr/lib32/locale to /usr/lib/locale
+ ln -s ../lib/locale "$pkgdir/usr/lib32/locale"
+}
diff --git a/multilib-testing/lib32-glibc/glibc-2.10-bz4781.patch b/multilib-testing/lib32-glibc/glibc-2.10-bz4781.patch
new file mode 100644
index 000000000..cf1a97a18
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.10-bz4781.patch
@@ -0,0 +1,42 @@
+diff -Naur glibc-old/sysdeps/unix/sysv/linux/i386/clone.S glibc/sysdeps/unix/sysv/linux/i386/clone.S
+--- glibc-old/sysdeps/unix/sysv/linux/i386/clone.S 2009-05-09 13:35:30.000000000 +1000
++++ glibc/sysdeps/unix/sysv/linux/i386/clone.S 2009-05-23 13:27:46.000000000 +1000
+@@ -120,9 +120,6 @@
+ ret
+
+ L(thread_start):
+- cfi_startproc;
+- /* Clearing frame pointer is insufficient, use CFI. */
+- cfi_undefined (eip);
+ /* Note: %esi is zero. */
+ movl %esi,%ebp /* terminate the stack frame */
+ #ifdef RESET_PID
+@@ -155,7 +152,6 @@
+ jmp L(haspid)
+ .previous
+ #endif
+- cfi_endproc;
+
+ cfi_startproc
+ PSEUDO_END (BP_SYM (__clone))
+diff -Naur glibc-old/sysdeps/unix/sysv/linux/x86_64/clone.S glibc/sysdeps/unix/sysv/linux/x86_64/clone.S
+--- glibc-old/sysdeps/unix/sysv/linux/x86_64/clone.S 2009-05-09 13:35:30.000000000 +1000
++++ glibc/sysdeps/unix/sysv/linux/x86_64/clone.S 2009-05-23 13:27:46.000000000 +1000
+@@ -89,9 +89,6 @@
+ ret
+
+ L(thread_start):
+- cfi_startproc;
+- /* Clearing frame pointer is insufficient, use CFI. */
+- cfi_undefined (rip);
+ /* Clear the frame pointer. The ABI suggests this be done, to mark
+ the outermost frame obviously. */
+ xorl %ebp, %ebp
+@@ -116,7 +113,6 @@
+ /* Call exit with return value from function call. */
+ movq %rax, %rdi
+ call HIDDEN_JUMPTARGET (_exit)
+- cfi_endproc;
+
+ cfi_startproc;
+ PSEUDO_END (BP_SYM (__clone))
diff --git a/multilib-testing/lib32-glibc/glibc-2.10-dont-build-timezone.patch b/multilib-testing/lib32-glibc/glibc-2.10-dont-build-timezone.patch
new file mode 100644
index 000000000..d3abeff17
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.10-dont-build-timezone.patch
@@ -0,0 +1,13 @@
+timezone data has been split into the package sys-libs/timezone-data
+
+--- glibc-2.4/Makeconfig
++++ glibc-2.4/Makeconfig
+@@ -931,7 +931,7 @@
+ stdlib stdio-common libio malloc string wcsmbs time dirent \
+ grp pwd posix io termios resource misc socket sysvipc gmon \
+ gnulib iconv iconvdata wctype manual shadow gshadow po argp \
+- crypt nss localedata timezone rt conform debug \
++ crypt nss localedata rt conform debug \
+ $(add-on-subdirs) $(dlfcn) $(binfmt-subdir)
+
+ ifndef avoid-generated
diff --git a/multilib-testing/lib32-glibc/glibc-2.12.1-static-shared-getpagesize.patch b/multilib-testing/lib32-glibc/glibc-2.12.1-static-shared-getpagesize.patch
new file mode 100644
index 000000000..e84754279
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.12.1-static-shared-getpagesize.patch
@@ -0,0 +1,11 @@
+--- glibc-2.12-192-g7c08a05/sysdeps/unix/sysv/linux/getpagesize.c
++++ glibc-2.12.90-17/sysdeps/unix/sysv/linux/getpagesize.c
+@@ -28,7 +28,7 @@
+ int
+ __getpagesize ()
+ {
+-#ifdef __ASSUME_AT_PAGESIZE
++#if 0 && defined __ASSUME_AT_PAGESIZE
+ assert (GLRO(dl_pagesize) != 0);
+ return GLRO(dl_pagesize);
+ #else
diff --git a/multilib-testing/lib32-glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch b/multilib-testing/lib32-glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch
new file mode 100644
index 000000000..ce089b49c
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch
@@ -0,0 +1,26 @@
+From d14e6b09d60d52cc12f0396c3106b14e1bd0fe8f Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Thu, 9 Dec 2010 15:00:59 +0100
+Subject: [PATCH 1/1] Ignore origin of privileged program
+
+---
+ ChangeLog | 5 +++++
+ elf/dl-object.c | 3 +++
+ 2 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/elf/dl-object.c b/elf/dl-object.c
+index 22a1635..7674d49 100644
+--- a/elf/dl-object.c
++++ b/elf/dl-object.c
+@@ -214,6 +214,9 @@ _dl_new_object (char *realname, const char *libname, int type,
+ out:
+ new->l_origin = origin;
+ }
++ else if (INTUSE(__libc_enable_secure) && type == lt_executable)
++ /* The origin of a privileged program cannot be trusted. */
++ new->l_origin = (char *) -1;
+
+ return new;
+ }
+--
+1.7.2
diff --git a/multilib-testing/lib32-glibc/glibc-2.13-dlclose-search-reset.patch b/multilib-testing/lib32-glibc/glibc-2.13-dlclose-search-reset.patch
new file mode 100644
index 000000000..3ad8b418a
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.13-dlclose-search-reset.patch
@@ -0,0 +1,196 @@
+From 2f811bf88bed4a6c0dec8778847ba441736d509d Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Wed, 26 May 2010 18:28:59 +0200
+Subject: [PATCH] Fix scope handling during dl_close
+
+---
+ ChangeLog | 12 ++++++++++++
+ elf/Makefile | 10 +++++++++-
+ elf/dl-close.c | 7 +++++++
+ elf/unload8.c | 33 +++++++++++++++++++++++++++++++++
+ elf/unload8mod1.c | 7 +++++++
+ elf/unload8mod1x.c | 1 +
+ elf/unload8mod2.c | 7 +++++++
+ elf/unload8mod3.c | 27 +++++++++++++++++++++++++++
+ 8 files changed, 103 insertions(+), 1 deletions(-)
+ create mode 100644 elf/unload8.c
+ create mode 100644 elf/unload8mod1.c
+ create mode 100644 elf/unload8mod1x.c
+ create mode 100644 elf/unload8mod2.c
+ create mode 100644 elf/unload8mod3.c
+
+diff --git a/elf/Makefile b/elf/Makefile
+index 59e835f..65b6deb 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -89,6 +89,7 @@ distribute := rtld-Rules \
+ unload4mod1.c unload4mod2.c unload4mod3.c unload4mod4.c \
+ unload6mod1.c unload6mod2.c unload6mod3.c \
+ unload7mod1.c unload7mod2.c \
++ unload8mod1.c unload8mod1x.c unload8mod2.c unload8mod3.c \
+ tst-audit1.c tst-audit2.c tst-audit3.c tst-audit4.c \
+ tst-auditmod1.c tst-auditmod3a.c tst-auditmod3b.c \
+ tst-auditmod4a.c tst-auditmod4b.c \
+@@ -196,7 +197,7 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
+ tst-align tst-align2 $(tests-execstack-$(have-z-execstack)) \
+ tst-dlmodcount tst-dlopenrpath tst-deep1 \
+ tst-dlmopen1 tst-dlmopen2 tst-dlmopen3 \
+- unload3 unload4 unload5 unload6 unload7 tst-global1 order2 \
++ unload3 unload4 unload5 unload6 unload7 unload8 tst-global1 order2 \
+ tst-audit1 tst-audit2 \
+ tst-stackguard1 tst-addr1 tst-thrlock \
+ tst-unique1 tst-unique2
+@@ -247,6 +248,7 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
+ unload4mod1 unload4mod2 unload4mod3 unload4mod4 \
+ unload6mod1 unload6mod2 unload6mod3 \
+ unload7mod1 unload7mod2 \
++ unload8mod1 unload8mod1x unload8mod2 unload8mod3 \
+ order2mod1 order2mod2 order2mod3 order2mod4 \
+ tst-unique1mod1 tst-unique1mod2 \
+ tst-unique2mod1 tst-unique2mod2
+@@ -522,6 +524,9 @@ $(objpfx)unload6mod2.so: $(libdl)
+ $(objpfx)unload6mod3.so: $(libdl)
+ $(objpfx)unload7mod1.so: $(libdl)
+ $(objpfx)unload7mod2.so: $(objpfx)unload7mod1.so
++$(objpfx)unload8mod1.so: $(objpfx)unload8mod2.so
++$(objpfx)unload8mod2.so: $(objpfx)unload8mod3.so
++$(objpfx)unload8mod3.so: $(libdl)
+ $(objpfx)tst-initordera2.so: $(objpfx)tst-initordera1.so
+ $(objpfx)tst-initorderb2.so: $(objpfx)tst-initorderb1.so $(objpfx)tst-initordera2.so
+ $(objpfx)tst-initordera3.so: $(objpfx)tst-initorderb2.so $(objpfx)tst-initorderb1.so
+@@ -823,6 +828,9 @@ $(objpfx)unload7: $(libdl)
+ $(objpfx)unload7.out: $(objpfx)unload7mod1.so $(objpfx)unload7mod2.so
+ unload7-ENV = MALLOC_PERTURB_=85
+
++$(objpfx)unload8: $(libdl)
++$(objpfx)unload8.out: $(objpfx)unload8mod1.so $(objpfx)unload8mod1x.so
++
+ ifdef libdl
+ $(objpfx)tst-tls9-static: $(common-objpfx)dlfcn/libdl.a
+ $(objpfx)tst-tls9-static.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so
+diff --git a/elf/dl-close.c b/elf/dl-close.c
+index 700e765..f47d5f8 100644
+--- a/elf/dl-close.c
++++ b/elf/dl-close.c
+@@ -421,6 +421,13 @@ _dl_close_worker (struct link_map *map)
+
+ imap->l_scope_max = new_size;
+ }
++ else if (new_list != NULL)
++ {
++ /* We didn't change the scope array, so reset the search
++ list. */
++ imap->l_searchlist.r_list = NULL;
++ imap->l_searchlist.r_nlist = 0;
++ }
+
+ /* The loader is gone, so mark the object as not having one.
+ Note: l_idx != IDX_STILL_USED -> object will be removed. */
+diff --git a/elf/unload8.c b/elf/unload8.c
+new file mode 100644
+index 0000000..f984a38
+--- /dev/null
++++ b/elf/unload8.c
+@@ -0,0 +1,33 @@
++#include <dlfcn.h>
++#include <stdio.h>
++
++int
++main (void)
++{
++ void *h = dlopen ("$ORIGIN/unload8mod1.so", RTLD_LAZY);
++ if (h == NULL)
++ {
++ puts ("dlopen unload8mod1.so failed");
++ return 1;
++ }
++
++ void *h2 = dlopen ("$ORIGIN/unload8mod1x.so", RTLD_LAZY);
++ if (h2 == NULL)
++ {
++ puts ("dlopen unload8mod1x.so failed");
++ return 1;
++ }
++ dlclose (h2);
++
++ int (*mod1) (void) = dlsym (h, "mod1");
++ if (mod1 == NULL)
++ {
++ puts ("dlsym failed");
++ return 1;
++ }
++
++ mod1 ();
++ dlclose (h);
++
++ return 0;
++}
+diff --git a/elf/unload8mod1.c b/elf/unload8mod1.c
+new file mode 100644
+index 0000000..fe7e81c
+--- /dev/null
++++ b/elf/unload8mod1.c
+@@ -0,0 +1,7 @@
++extern void mod2 (void);
++
++void
++mod1 (void)
++{
++ mod2 ();
++}
+diff --git a/elf/unload8mod1x.c b/elf/unload8mod1x.c
+new file mode 100644
+index 0000000..835b634
+--- /dev/null
++++ b/elf/unload8mod1x.c
+@@ -0,0 +1 @@
++int mod1x;
+diff --git a/elf/unload8mod2.c b/elf/unload8mod2.c
+new file mode 100644
+index 0000000..2fd8b67
+--- /dev/null
++++ b/elf/unload8mod2.c
+@@ -0,0 +1,7 @@
++extern void mod3 (void);
++
++void
++mod2 (void)
++{
++ mod3 ();
++}
+diff --git a/elf/unload8mod3.c b/elf/unload8mod3.c
+new file mode 100644
+index 0000000..d49e22b
+--- /dev/null
++++ b/elf/unload8mod3.c
+@@ -0,0 +1,27 @@
++#include <dlfcn.h>
++#include <stdio.h>
++#include <stdlib.h>
++
++void
++mod3_fini2 (void)
++{
++}
++
++void
++mod3_fini (void)
++{
++ mod3_fini2 ();
++}
++
++void
++mod3 (void)
++{
++ void *h = dlopen ("$ORIGIN/unload8mod2.so", RTLD_LAZY);
++ if (h == NULL)
++ {
++ puts ("dlopen unload8mod2.so failed");
++ exit (1);
++ }
++
++ atexit (mod3_fini);
++}
+--
+1.7.3.4
+
diff --git a/multilib-testing/lib32-glibc/glibc-2.13-futex.patch b/multilib-testing/lib32-glibc/glibc-2.13-futex.patch
new file mode 100644
index 000000000..9b9c3ac45
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.13-futex.patch
@@ -0,0 +1,31 @@
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
++++ a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
+@@ -210,7 +210,7 @@ pthread_rwlock_timedrdlock:
+ cfi_restore(%r12)
+ retq
+
+-#ifdef __ASSUME_PRIVATE_FUTEX
++#ifdef __ASSUME_FUTEX_CLOCK_REALTIME
+ cfi_adjust_cfa_offset(16)
+ cfi_rel_offset(%r12, 8)
+ cfi_rel_offset(%r13, 0)
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S
++++ a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S
+@@ -192,7 +192,7 @@ pthread_rwlock_timedwrlock:
+
+ 7: movq %rdx, %rax
+
+-#ifndef __ASSUME_PRIVATE_FUTEX
++#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
+ addq $16, %rsp
+ cfi_adjust_cfa_offset(-16)
+ popq %r14
+@@ -207,7 +207,7 @@ pthread_rwlock_timedwrlock:
+ cfi_restore(%r12)
+ retq
+
+-#ifdef __ASSUME_PRIVATE_FUTEX
++#ifdef __ASSUME_FUTEX_CLOCK_REALTIME
+ cfi_adjust_cfa_offset(16)
+ cfi_rel_offset(%r12, 8)
+ cfi_rel_offset(%r13, 0)
diff --git a/multilib-testing/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch b/multilib-testing/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
new file mode 100644
index 000000000..ef91116e5
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
@@ -0,0 +1,26 @@
+From 032c0ee3ee28841d684950e33a77210118697566 Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Thu, 1 Sep 2011 10:46:14 +0200
+Subject: [PATCH] Avoid assertion failure when first DNS answer was empty
+
+---
+ ChangeLog | 4 ++++
+ resolv/res_query.c | 2 +-
+ 2 files changed, 5 insertions(+), 1 deletions(-)
+
+diff --git a/resolv/res_query.c b/resolv/res_query.c
+index 2f7cfaa..2ded9fb 100644
+--- a/resolv/res_query.c
++++ b/resolv/res_query.c
+@@ -248,7 +248,7 @@ __libc_res_nquery(res_state statp,
+ && *resplen2 > (int) sizeof (HEADER))
+ {
+ /* Special case of partial answer. */
+- assert (hp != hp2);
++ assert (n == 0 || hp != hp2);
+ hp = hp2;
+ }
+ else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER)
+--
+1.7.3.4
+
diff --git a/multilib-testing/lib32-glibc/glibc-2.14-libdl-crash.patch b/multilib-testing/lib32-glibc/glibc-2.14-libdl-crash.patch
new file mode 100644
index 000000000..ee29f8c20
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.14-libdl-crash.patch
@@ -0,0 +1,132 @@
+diff --git a/elf/dl-close.c b/elf/dl-close.c
+index 73b2a2f..9bd91e3 100644
+--- a/elf/dl-close.c
++++ b/elf/dl-close.c
+@@ -1,5 +1,5 @@
+ /* Close a shared object opened by `_dl_open'.
+- Copyright (C) 1996-2007, 2009, 2010, 2011 Free Software Foundation, Inc.
++ Copyright (C) 1996-2007, 2009, 2010 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
+@@ -119,17 +119,8 @@ _dl_close_worker (struct link_map *map)
+ if (map->l_direct_opencount > 0 || map->l_type != lt_loaded
+ || dl_close_state != not_pending)
+ {
+- if (map->l_direct_opencount == 0)
+- {
+- if (map->l_type == lt_loaded)
+- dl_close_state = rerun;
+- else if (map->l_type == lt_library)
+- {
+- struct link_map **oldp = map->l_initfini;
+- map->l_initfini = map->l_orig_initfini;
+- _dl_scope_free (oldp);
+- }
+- }
++ if (map->l_direct_opencount == 0 && map->l_type == lt_loaded)
++ dl_close_state = rerun;
+
+ /* There are still references to this object. Do nothing more. */
+ if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_FILES, 0))
+diff --git a/elf/dl-deps.c b/elf/dl-deps.c
+index 9e30594..3890d00 100644
+--- a/elf/dl-deps.c
++++ b/elf/dl-deps.c
+@@ -478,6 +478,7 @@ _dl_map_object_deps (struct link_map *map,
+ nneeded * sizeof needed[0]);
+ atomic_write_barrier ();
+ l->l_initfini = l_initfini;
++ l->l_free_initfini = 1;
+ }
+
+ /* If we have no auxiliary objects just go on to the next map. */
+@@ -681,6 +682,7 @@ Filters not supported with LD_TRACE_PRELINKING"));
+ l_initfini[nlist] = NULL;
+ atomic_write_barrier ();
+ map->l_initfini = l_initfini;
++ map->l_free_initfini = 1;
+ if (l_reldeps != NULL)
+ {
+ atomic_write_barrier ();
+@@ -689,5 +691,5 @@ Filters not supported with LD_TRACE_PRELINKING"));
+ _dl_scope_free (old_l_reldeps);
+ }
+ if (old_l_initfini != NULL)
+- map->l_orig_initfini = old_l_initfini;
++ _dl_scope_free (old_l_initfini);
+ }
+diff --git a/elf/dl-libc.c b/elf/dl-libc.c
+index 7be9483..a13fce3 100644
+--- a/elf/dl-libc.c
++++ b/elf/dl-libc.c
+@@ -265,13 +265,13 @@ libc_freeres_fn (free_mem)
+
+ for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns)
+ {
+- /* Remove all additional names added to the objects. */
+ for (l = GL(dl_ns)[ns]._ns_loaded; l != NULL; l = l->l_next)
+ {
+ struct libname_list *lnp = l->l_libname->next;
+
+ l->l_libname->next = NULL;
+
++ /* Remove all additional names added to the objects. */
+ while (lnp != NULL)
+ {
+ struct libname_list *old = lnp;
+@@ -279,6 +279,10 @@ libc_freeres_fn (free_mem)
+ if (! old->dont_free)
+ free (old);
+ }
++
++ /* Free the initfini dependency list. */
++ if (l->l_free_initfini)
++ free (l->l_initfini);
+ }
+
+ if (__builtin_expect (GL(dl_ns)[ns]._ns_global_scope_alloc, 0) != 0
+diff --git a/elf/rtld.c b/elf/rtld.c
+index 4a9109e..617e30e 100644
+--- a/elf/rtld.c
++++ b/elf/rtld.c
+@@ -2251,6 +2251,7 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n",
+ lnp->dont_free = 1;
+ lnp = lnp->next;
+ }
++ l->l_free_initfini = 0;
+
+ if (l != &GL(dl_rtld_map))
+ _dl_relocate_object (l, l->l_scope, GLRO(dl_lazy) ? RTLD_LAZY : 0,
+diff --git a/include/link.h b/include/link.h
+index e877104..051b99a 100644
+--- a/include/link.h
++++ b/include/link.h
+@@ -1,6 +1,6 @@
+ /* Data structure for communication from the run-time dynamic linker for
+ loaded ELF shared objects.
+- Copyright (C) 1995-2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
++ Copyright (C) 1995-2006, 2007, 2009, 2010 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
+@@ -192,6 +192,9 @@ struct link_map
+ during LD_TRACE_PRELINKING=1
+ contains any DT_SYMBOLIC
+ libraries. */
++ unsigned int l_free_initfini:1; /* Nonzero if l_initfini can be
++ freed, ie. not allocated with
++ the dummy malloc in ld.so. */
+
+ /* Collected information about own RPATH directories. */
+ struct r_search_path_struct l_rpath_dirs;
+@@ -240,9 +243,6 @@ struct link_map
+
+ /* List of object in order of the init and fini calls. */
+ struct link_map **l_initfini;
+- /* The init and fini list generated at startup, saved when the
+- object is also loaded dynamically. */
+- struct link_map **l_orig_initfini;
+
+ /* List of the dependencies introduced through symbol binding. */
+ struct link_map_reldeps
diff --git a/multilib-testing/lib32-glibc/glibc-2.14-reexport-rpc-interface.patch b/multilib-testing/lib32-glibc/glibc-2.14-reexport-rpc-interface.patch
new file mode 100644
index 000000000..e2beea881
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.14-reexport-rpc-interface.patch
@@ -0,0 +1,26 @@
+diff --git a/include/libc-symbols.h b/include/libc-symbols.h
+index 67e1ca2..5e7cca5 100644
+--- a/include/libc-symbols.h
++++ b/include/libc-symbols.h
+@@ -635,7 +635,7 @@ for linking")
+ # define libc_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+ # define libc_hidden_def(name) hidden_def (name)
+ # define libc_hidden_weak(name) hidden_weak (name)
+-# define libc_hidden_nolink(name, version) hidden_nolink (name, libc, version)
++# define libc_hidden_nolink(name, version) hidden_def (name)
+ # define libc_hidden_ver(local, name) hidden_ver (local, name)
+ # define libc_hidden_data_def(name) hidden_data_def (name)
+ # define libc_hidden_data_weak(name) hidden_data_weak (name)
+diff --git a/sunrpc/Makefile b/sunrpc/Makefile
+index 5134ce9..40c73d1 100644
+--- a/sunrpc/Makefile
++++ b/sunrpc/Makefile
+@@ -53,7 +53,7 @@ headers-in-tirpc = $(addprefix rpc/,auth.h auth_unix.h clnt.h pmap_clnt.h \
+ des_crypt.h)
+ headers-not-in-tirpc = $(addprefix rpc/,key_prot.h rpc_des.h) \
+ $(rpcsvc:%=rpcsvc/%) rpcsvc/bootparam.h
+-headers = rpc/netdb.h
++headers = rpc/netdb.h $(headers-in-tirpc) $(headers-not-in-tirpc)
+ install-others = $(inst_sysconfdir)/rpc
+ generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \
+ $(rpcsvc:%.x=rpcsvc/%.stmp) rpcgen
diff --git a/multilib-testing/lib32-glibc/glibc-2.14-reinstall-nis-rpc-headers.patch b/multilib-testing/lib32-glibc/glibc-2.14-reinstall-nis-rpc-headers.patch
new file mode 100644
index 000000000..eb0fd822d
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-2.14-reinstall-nis-rpc-headers.patch
@@ -0,0 +1,28 @@
+From bdd816a366c4e5bba5de7157d948e0c0737fb4fb Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Tue, 17 May 2011 17:42:30 +0200
+Subject: [PATCH] Reinstall NIS RPC headers
+
+---
+ nis/Makefile | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/nis/Makefile b/nis/Makefile
+index b5c9609..d2934d9 100644
+--- a/nis/Makefile
++++ b/nis/Makefile
+@@ -23,9 +23,9 @@ subdir := nis
+
+ aux := nis_hash
+
++headers := $(wildcard rpcsvc/*.[hx])
+ distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \
+- nisplus-parser.h nis_xdr.h nss \
+- $(wildcard rpcsvc/*.[hx])
++ nisplus-parser.h nis_xdr.h nss
+
+ # These are the databases available for the nis (and perhaps later nisplus)
+ # service. This must be a superset of the services in nss.
+--
+1.7.5.4
+
diff --git a/multilib-testing/lib32-glibc/glibc-__i686.patch b/multilib-testing/lib32-glibc/glibc-__i686.patch
new file mode 100644
index 000000000..28d5dd424
--- /dev/null
+++ b/multilib-testing/lib32-glibc/glibc-__i686.patch
@@ -0,0 +1,13 @@
+diff -Naur glibc-old//sysdeps/i386/Makefile glibc//sysdeps/i386/Makefile
+--- glibc-old//sysdeps/i386/Makefile 2010-03-18 11:52:30.000000000 +1000
++++ glibc//sysdeps/i386/Makefile 2010-04-16 15:05:50.000000000 +1000
+@@ -1,6 +1,7 @@
+ # The mpn functions need a #define for asm syntax flavor.
+-# Every i386 port in use uses gas syntax (I think).
+-asm-CPPFLAGS += -DGAS_SYNTAX
++# Every i386 port in use uses gas syntax (I think). Don't replace
++# __i686 in __i686.get_pc_thunk.bx.
++asm-CPPFLAGS += -DGAS_SYNTAX -U __i686
+
+ # The i386 `long double' is a distinct type we support.
+ long-double-fcts = yes
diff --git a/multilib-testing/lib32-glibc/lib32-glibc.conf b/multilib-testing/lib32-glibc/lib32-glibc.conf
new file mode 100644
index 000000000..9b08c3f43
--- /dev/null
+++ b/multilib-testing/lib32-glibc/lib32-glibc.conf
@@ -0,0 +1 @@
+/usr/lib32
diff --git a/multilib-testing/libtool-multilib/PKGBUILD b/multilib-testing/libtool-multilib/PKGBUILD
new file mode 100644
index 000000000..60dff1b3d
--- /dev/null
+++ b/multilib-testing/libtool-multilib/PKGBUILD
@@ -0,0 +1,72 @@
+# $Id: PKGBUILD 55288 2011-09-08 23:39:10Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: Allan McRae <allan@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
+
+# NOTE: requires rebuild with each new gcc version
+
+pkgbase=libtool-multilib
+pkgname=(libtool-multilib lib32-libltdl)
+pkgver=2.4
+pkgrel=5
+pkgdesc="A generic library support script for multilib"
+arch=('x86_64')
+url="http://www.gnu.org/software/libtool"
+license=('GPL')
+_gccver=4.6.1
+makedepends=("gcc-multilib=$_gccver")
+options=('!libtool')
+source=(ftp://ftp.gnu.org/pub/gnu/libtool/libtool-${pkgver}.tar.xz)
+md5sums=('4e6144439d95d7332dc50ace6dd24c55')
+
+build() {
+ cd "$srcdir"
+
+ rm -rf libtool-64 libtool-32
+ mv libtool-$pkgver libtool-64
+ cp -a libtool-64 libtool-32
+
+ msg2 "Building libtool-64..."
+ cd "$srcdir/libtool-64"
+ ./configure --prefix=/usr
+ make
+
+ msg2 "Building libtool-32..."
+ export CC="gcc -m32"
+ export CXX="g++ -m32"
+
+ cd "$srcdir/libtool-32"
+ ./configure --prefix=/usr --libdir=/usr/lib32
+ make
+}
+
+check() {
+ cd "$srcdir/libtool-64"
+ make check
+ cd "$srcdir/libtool-32"
+ make check
+}
+
+package_libtool-multilib() {
+ depends=('sh' "libltdl=$pkgver" "gcc-multilib=$_gccver" "lib32-libltdl=$pkgver")
+ groups=('multilib-devel')
+ install=libtool.install
+ provides=("libtool=$pkgver-$pkgrel")
+ conflicts=(libtool)
+
+ cd "$srcdir/libtool-64"
+ make DESTDIR=${pkgdir} install-binSCRIPTS install-man install-info \
+ install-data-local
+ rm -rf ${pkgdir}/usr/share/libtool/libltdl/
+}
+
+package_lib32-libltdl() {
+ pkgdesc="A system independent dlopen wrapper for GNU libtool (32-bit)"
+ depends=(lib32-glibc libltdl)
+ replaces=(lib32-libtool)
+ provides=("lib32-libtool=$pkgver-$pkgrel")
+ conflicts=(lib32-libtool)
+
+ cd "$srcdir/libtool-32"
+ make DESTDIR="$pkgdir" install-libLTLIBRARIES
+}
diff --git a/multilib-testing/libtool-multilib/libtool.install b/multilib-testing/libtool-multilib/libtool.install
new file mode 100644
index 000000000..424c8cb88
--- /dev/null
+++ b/multilib-testing/libtool-multilib/libtool.install
@@ -0,0 +1,22 @@
+infodir=/usr/share/info
+filelist=(libtool.info libtool.info-1 libtool.info-2)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/multilib/lib32-mpg123/PKGBUILD b/multilib/lib32-mpg123/PKGBUILD
index 44f3e60a9..ea566be0d 100644
--- a/multilib/lib32-mpg123/PKGBUILD
+++ b/multilib/lib32-mpg123/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 45641 2011-04-26 13:38:33Z bluewind $
+# $Id: PKGBUILD 55271 2011-09-08 08:35:25Z bluewind $
# Maintainer: Hugo Doria <hugo@archlinux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
_pkgbasename=mpg123
pkgname=lib32-$_pkgbasename
-pkgver=1.13.3
+pkgver=1.13.4
pkgrel=1
pkgdesc="A console based real time MPEG Audio Player for Layer 1, 2 and 3 (32-bit)"
arch=('x86_64')
@@ -15,8 +15,8 @@ makedepends=('lib32-sdl' gcc-multilib libtool-multilib)
optdepends=('lib32-sdl: for additional audio support')
options=('libtool')
source=(http://downloads.sourceforge.net/sourceforge/${_pkgbasename}/${_pkgbasename}-${pkgver}.tar.bz2)
-md5sums=('b1f990ce76dcf2fdf9d53ac39fc6bc7e')
-sha1sums=('899af289bfcbbb13cbe66d5d0541c25cecf5400d')
+md5sums=('073620b3938c4cb9c4f70e8fe3e114b8')
+sha1sums=('7fe195db9fe708c487a1d47a66e6e68d9b8e7a6e')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-openssl/PKGBUILD b/multilib/lib32-openssl/PKGBUILD
index 2f5fd6a6d..66bdf3066 100644
--- a/multilib/lib32-openssl/PKGBUILD
+++ b/multilib/lib32-openssl/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 39457 2011-02-10 15:44:47Z bluewind $
+# $Id: PKGBUILD 55269 2011-09-08 08:35:01Z bluewind $
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
_pkgbasename=openssl
pkgname=lib32-$_pkgbasename
_ver=1.0.0d
# use a pacman compatible version scheme
-pkgver=${_ver/[a-z]/.${_ver//[0-9.]/}}
+pkgver=1.0.0.e
pkgrel=1
pkgdesc='The Open Source toolkit for Secure Sockets Layer and Transport Layer Security (32-bit)'
arch=('x86_64')
diff --git a/multilib/libtool-multilib/PKGBUILD b/multilib/libtool-multilib/PKGBUILD
index 3f777ffa4..77ca73c32 100644
--- a/multilib/libtool-multilib/PKGBUILD
+++ b/multilib/libtool-multilib/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 54231 2011-08-14 23:28:02Z heftig $
+# $Id: PKGBUILD 55288 2011-09-08 23:39:10Z heftig $
# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
@@ -42,9 +42,9 @@ build() {
check() {
cd "$srcdir/libtool-64"
- #make check
+ make check
cd "$srcdir/libtool-32"
- #make check
+ make check
}
package_libtool-multilib() {
diff --git a/testing/glibc/PKGBUILD b/testing/glibc/PKGBUILD
new file mode 100644
index 000000000..ced42f275
--- /dev/null
+++ b/testing/glibc/PKGBUILD
@@ -0,0 +1,207 @@
+# $Id: PKGBUILD 137534 2011-09-08 21:30:58Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+
+# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
+# NOTE: valgrind requires rebuilt with each new glibc version
+
+pkgname=glibc
+pkgver=2.14
+pkgrel=6
+_glibcdate=20110908
+pkgdesc="GNU C Library"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/libc"
+license=('GPL' 'LGPL')
+groups=('base')
+depends=('linux-api-headers>=3.0' 'tzdata')
+makedepends=('gcc>=4.6')
+backup=(etc/gai.conf
+ etc/locale.gen
+ etc/nscd.conf)
+options=('!strip')
+install=glibc.install
+source=(ftp://ftp.archlinux.org/other/glibc/${pkgname}-${pkgver}_${_glibcdate}.tar.xz
+ glibc-2.10-dont-build-timezone.patch
+ glibc-2.10-bz4781.patch
+ glibc-__i686.patch
+ glibc-2.12.1-static-shared-getpagesize.patch
+ glibc-2.12.2-ignore-origin-of-privileged-program.patch
+ glibc-2.13-futex.patch
+ glibc-2.13-dlclose-search-reset.patch
+ glibc-2.14-libdl-crash.patch
+ glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
+ glibc-2.14-reexport-rpc-interface.patch
+ glibc-2.14-reinstall-nis-rpc-headers.patch
+ nscd
+ locale.gen.txt
+ locale-gen)
+md5sums=('069069eb9100cc7affd7ad884cb3c3e9'
+ '4dadb9203b69a3210d53514bb46f41c3'
+ '0c5540efc51c0b93996c51b57a8540ae'
+ '40cd342e21f71f5e49e32622b25acc52'
+ 'a3ac6f318d680347bb6e2805d42b73b2'
+ 'b042647ea7d6f22ad319e12e796bd13e'
+ '7d0154b7e17ea218c9fa953599d24cc4'
+ '22d09c58718fb3d1d31c3a6c14ca6886'
+ 'cea62cc6b903d222c5f26e05a3c0e0e6'
+ '13728807283f111e5d9d38cf38e0a461'
+ 'c5de2a946215d647c8af5432ec4b0da0'
+ '55febbb72139ac7b65757df085024b83'
+ 'b587ee3a70c9b3713099295609afde49'
+ '07ac979b6ab5eeb778d55f041529d623'
+ '476e9113489f93b348b21e144b6a8fcf')
+
+
+mksource() {
+ git clone git://sourceware.org/git/glibc.git
+ pushd glibc
+ git checkout -b glibc-2.14-arch origin/release/2.14/master
+ popd
+ tar -cvJf glibc-${pkgver}_${_glibcdate}.tar.xz glibc/*
+}
+
+build() {
+ cd ${srcdir}/glibc
+
+ # timezone data is in separate package (tzdata)
+ patch -Np1 -i ${srcdir}/glibc-2.10-dont-build-timezone.patch
+
+ # http://sources.redhat.com/bugzilla/show_bug.cgi?id=4781
+ patch -Np1 -i ${srcdir}/glibc-2.10-bz4781.patch
+
+ # http://sources.redhat.com/bugzilla/show_bug.cgi?id=411
+ # http://sourceware.org/ml/libc-alpha/2009-07/msg00072.html
+ patch -Np1 -i ${srcdir}/glibc-__i686.patch
+
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=11929
+ # using Fedora "fix" as patch in that bug report causes breakages...
+ patch -Np1 -i ${srcdir}/glibc-2.12.1-static-shared-getpagesize.patch
+
+ # http://www.exploit-db.com/exploits/15274/
+ # http://sourceware.org/git/?p=glibc.git;a=patch;h=d14e6b09 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.12.2-ignore-origin-of-privileged-program.patch
+
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=12403
+ patch -Np1 -i ${srcdir}/glibc-2.13-futex.patch
+
+ # https://bugzilla.redhat.com/show_bug.cgi?id=593675
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=2f811bf8 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.13-dlclose-search-reset.patch
+
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=675155e9 (only fedora branch...)
+ # http://sourceware.org/ml/libc-alpha/2011-06/msg00006.html
+ patch -Np1 -i ${srcdir}/glibc-2.14-libdl-crash.patch
+
+ # http://sourceware.org/bugzilla/show_bug.cgi?id=13013
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=032c0ee3 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
+
+ # re-export RPC interface until libtirpc is ready as a replacement
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=acee4873 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.14-reexport-rpc-interface.patch
+ # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=bdd816a3 (only fedora branch...)
+ patch -Np1 -i ${srcdir}/glibc-2.14-reinstall-nis-rpc-headers.patch
+
+ install -dm755 ${pkgdir}/etc
+ touch ${pkgdir}/etc/ld.so.conf
+
+ cd ${srcdir}
+ mkdir glibc-build
+ cd glibc-build
+
+ if [[ ${CARCH} = "i686" ]]; then
+ # Hack to fix NPTL issues with Xen, only required on 32bit platforms
+ export CFLAGS="${CFLAGS} -mno-tls-direct-seg-refs"
+ fi
+
+ echo "slibdir=/lib" >> configparms
+
+ # remove hardening options from CFLAGS for building libraries
+ CFLAGS=${CFLAGS/-fstack-protector/}
+ CFLAGS=${CFLAGS/-D_FORTIFY_SOURCE=2/}
+
+ ${srcdir}/glibc/configure --prefix=/usr \
+ --libdir=/usr/lib --libexecdir=/usr/lib \
+ --with-headers=/usr/include \
+ --enable-add-ons=nptl,libidn \
+ --enable-kernel=2.6.27 \
+ --with-tls --with-__thread \
+ --enable-bind-now --without-gd \
+ --without-cvs --disable-profile \
+ --disable-multi-arch
+
+ # build libraries with hardening disabled
+ echo "build-programs=no" >> configparms
+ make
+
+ # re-enable hardening for programs
+ sed -i "s#=no#=yes#" configparms
+ echo "CC += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms
+ echo "CXX += -fstack-protector -D_FORTIFY_SOURCE=2" >> configparms
+ make
+
+ # remove harding in preparation to run test-suite
+ sed -i '2,4d' configparms
+}
+
+check() {
+ cd ${srcdir}/glibc-build
+
+ # some errors are expected - manually check log files
+ make -k check || true
+}
+
+package() {
+ cd ${srcdir}/glibc-build
+ make install_root=${pkgdir} install
+
+ rm -f ${pkgdir}/etc/ld.so.{cache,conf}
+
+ install -dm755 ${pkgdir}/etc/rc.d
+ install -dm755 ${pkgdir}/usr/sbin
+ install -dm755 ${pkgdir}/usr/lib/locale
+ install -m644 ${srcdir}/glibc/nscd/nscd.conf ${pkgdir}/etc/nscd.conf
+ install -m755 ${srcdir}/nscd ${pkgdir}/etc/rc.d/nscd
+ install -m755 ${srcdir}/locale-gen ${pkgdir}/usr/sbin
+ install -m644 ${srcdir}/glibc/posix/gai.conf ${pkgdir}/etc/gai.conf
+
+ sed -i -e 's/^\tserver-user/#\tserver-user/' ${pkgdir}/etc/nscd.conf
+
+ # create /etc/locale.gen
+ install -m644 ${srcdir}/locale.gen.txt ${pkgdir}/etc/locale.gen
+ sed -i "s|/| |g" ${srcdir}/glibc/localedata/SUPPORTED
+ sed -i 's|\\| |g' ${srcdir}/glibc/localedata/SUPPORTED
+ sed -i "s|SUPPORTED-LOCALES=||" ${srcdir}/glibc/localedata/SUPPORTED
+ cat ${srcdir}/glibc/localedata/SUPPORTED >> ${pkgdir}/etc/locale.gen
+ sed -i "s|^|#|g" ${pkgdir}/etc/locale.gen
+
+ if [[ ${CARCH} = "x86_64" ]]; then
+ # fix for the linker
+ sed -i '/RTLDLIST/s%lib64%lib%' ${pkgdir}/usr/bin/ldd
+ # Comply with multilib binaries, they look for the linker in /lib64
+ mkdir ${pkgdir}/lib64
+ cd ${pkgdir}/lib64
+ ln -v -s ../lib/ld* .
+ fi
+
+ # manually strip files as stripping libpthread-*.so and libthread_db.so
+ # with the default $STRIP_SHARED breaks gdb and stripping ld-*.so breaks
+ # valgrind on x86_64
+
+ cd $pkgdir
+ strip $STRIP_BINARIES sbin/{ldconfig,sln} \
+ usr/bin/{gencat,getconf,getent,iconv,locale} \
+ usr/bin/{localedef,pcprofiledump,rpcgen,sprof} \
+ usr/lib/getconf/* \
+ usr/sbin/{iconvconfig,nscd}
+ [[ $CARCH = "i686" ]] && strip $STRIP_BINARIES usr/bin/lddlibc4
+
+ strip $STRIP_STATIC usr/lib/*.a \
+ lib/{{ld,libpthread}-${pkgver},libthread_db-1.0}.so
+
+ strip $STRIP_SHARED lib/{libanl,libBrokenLocale,libc,libcidn,libcrypt}-${pkgver}.so \
+ lib/libnss_{compat,dns,files,hesiod,nis,nisplus}-${pkgver}.so \
+ lib/{libdl,libm,libnsl,libresolv,librt,libutil}-${pkgver}.so \
+ lib/{libmemusage,libpcprofile,libSegFault}.so \
+ usr/lib/{pt_chown,{audit,gconv}/*.so}
+}
diff --git a/testing/glibc/glibc-2.10-bz4781.patch b/testing/glibc/glibc-2.10-bz4781.patch
new file mode 100644
index 000000000..cf1a97a18
--- /dev/null
+++ b/testing/glibc/glibc-2.10-bz4781.patch
@@ -0,0 +1,42 @@
+diff -Naur glibc-old/sysdeps/unix/sysv/linux/i386/clone.S glibc/sysdeps/unix/sysv/linux/i386/clone.S
+--- glibc-old/sysdeps/unix/sysv/linux/i386/clone.S 2009-05-09 13:35:30.000000000 +1000
++++ glibc/sysdeps/unix/sysv/linux/i386/clone.S 2009-05-23 13:27:46.000000000 +1000
+@@ -120,9 +120,6 @@
+ ret
+
+ L(thread_start):
+- cfi_startproc;
+- /* Clearing frame pointer is insufficient, use CFI. */
+- cfi_undefined (eip);
+ /* Note: %esi is zero. */
+ movl %esi,%ebp /* terminate the stack frame */
+ #ifdef RESET_PID
+@@ -155,7 +152,6 @@
+ jmp L(haspid)
+ .previous
+ #endif
+- cfi_endproc;
+
+ cfi_startproc
+ PSEUDO_END (BP_SYM (__clone))
+diff -Naur glibc-old/sysdeps/unix/sysv/linux/x86_64/clone.S glibc/sysdeps/unix/sysv/linux/x86_64/clone.S
+--- glibc-old/sysdeps/unix/sysv/linux/x86_64/clone.S 2009-05-09 13:35:30.000000000 +1000
++++ glibc/sysdeps/unix/sysv/linux/x86_64/clone.S 2009-05-23 13:27:46.000000000 +1000
+@@ -89,9 +89,6 @@
+ ret
+
+ L(thread_start):
+- cfi_startproc;
+- /* Clearing frame pointer is insufficient, use CFI. */
+- cfi_undefined (rip);
+ /* Clear the frame pointer. The ABI suggests this be done, to mark
+ the outermost frame obviously. */
+ xorl %ebp, %ebp
+@@ -116,7 +113,6 @@
+ /* Call exit with return value from function call. */
+ movq %rax, %rdi
+ call HIDDEN_JUMPTARGET (_exit)
+- cfi_endproc;
+
+ cfi_startproc;
+ PSEUDO_END (BP_SYM (__clone))
diff --git a/testing/glibc/glibc-2.10-dont-build-timezone.patch b/testing/glibc/glibc-2.10-dont-build-timezone.patch
new file mode 100644
index 000000000..d3abeff17
--- /dev/null
+++ b/testing/glibc/glibc-2.10-dont-build-timezone.patch
@@ -0,0 +1,13 @@
+timezone data has been split into the package sys-libs/timezone-data
+
+--- glibc-2.4/Makeconfig
++++ glibc-2.4/Makeconfig
+@@ -931,7 +931,7 @@
+ stdlib stdio-common libio malloc string wcsmbs time dirent \
+ grp pwd posix io termios resource misc socket sysvipc gmon \
+ gnulib iconv iconvdata wctype manual shadow gshadow po argp \
+- crypt nss localedata timezone rt conform debug \
++ crypt nss localedata rt conform debug \
+ $(add-on-subdirs) $(dlfcn) $(binfmt-subdir)
+
+ ifndef avoid-generated
diff --git a/testing/glibc/glibc-2.12.1-static-shared-getpagesize.patch b/testing/glibc/glibc-2.12.1-static-shared-getpagesize.patch
new file mode 100644
index 000000000..e84754279
--- /dev/null
+++ b/testing/glibc/glibc-2.12.1-static-shared-getpagesize.patch
@@ -0,0 +1,11 @@
+--- glibc-2.12-192-g7c08a05/sysdeps/unix/sysv/linux/getpagesize.c
++++ glibc-2.12.90-17/sysdeps/unix/sysv/linux/getpagesize.c
+@@ -28,7 +28,7 @@
+ int
+ __getpagesize ()
+ {
+-#ifdef __ASSUME_AT_PAGESIZE
++#if 0 && defined __ASSUME_AT_PAGESIZE
+ assert (GLRO(dl_pagesize) != 0);
+ return GLRO(dl_pagesize);
+ #else
diff --git a/testing/glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch b/testing/glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch
new file mode 100644
index 000000000..ce089b49c
--- /dev/null
+++ b/testing/glibc/glibc-2.12.2-ignore-origin-of-privileged-program.patch
@@ -0,0 +1,26 @@
+From d14e6b09d60d52cc12f0396c3106b14e1bd0fe8f Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Thu, 9 Dec 2010 15:00:59 +0100
+Subject: [PATCH 1/1] Ignore origin of privileged program
+
+---
+ ChangeLog | 5 +++++
+ elf/dl-object.c | 3 +++
+ 2 files changed, 8 insertions(+), 0 deletions(-)
+
+diff --git a/elf/dl-object.c b/elf/dl-object.c
+index 22a1635..7674d49 100644
+--- a/elf/dl-object.c
++++ b/elf/dl-object.c
+@@ -214,6 +214,9 @@ _dl_new_object (char *realname, const char *libname, int type,
+ out:
+ new->l_origin = origin;
+ }
++ else if (INTUSE(__libc_enable_secure) && type == lt_executable)
++ /* The origin of a privileged program cannot be trusted. */
++ new->l_origin = (char *) -1;
+
+ return new;
+ }
+--
+1.7.2
diff --git a/testing/glibc/glibc-2.13-dlclose-search-reset.patch b/testing/glibc/glibc-2.13-dlclose-search-reset.patch
new file mode 100644
index 000000000..3ad8b418a
--- /dev/null
+++ b/testing/glibc/glibc-2.13-dlclose-search-reset.patch
@@ -0,0 +1,196 @@
+From 2f811bf88bed4a6c0dec8778847ba441736d509d Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Wed, 26 May 2010 18:28:59 +0200
+Subject: [PATCH] Fix scope handling during dl_close
+
+---
+ ChangeLog | 12 ++++++++++++
+ elf/Makefile | 10 +++++++++-
+ elf/dl-close.c | 7 +++++++
+ elf/unload8.c | 33 +++++++++++++++++++++++++++++++++
+ elf/unload8mod1.c | 7 +++++++
+ elf/unload8mod1x.c | 1 +
+ elf/unload8mod2.c | 7 +++++++
+ elf/unload8mod3.c | 27 +++++++++++++++++++++++++++
+ 8 files changed, 103 insertions(+), 1 deletions(-)
+ create mode 100644 elf/unload8.c
+ create mode 100644 elf/unload8mod1.c
+ create mode 100644 elf/unload8mod1x.c
+ create mode 100644 elf/unload8mod2.c
+ create mode 100644 elf/unload8mod3.c
+
+diff --git a/elf/Makefile b/elf/Makefile
+index 59e835f..65b6deb 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -89,6 +89,7 @@ distribute := rtld-Rules \
+ unload4mod1.c unload4mod2.c unload4mod3.c unload4mod4.c \
+ unload6mod1.c unload6mod2.c unload6mod3.c \
+ unload7mod1.c unload7mod2.c \
++ unload8mod1.c unload8mod1x.c unload8mod2.c unload8mod3.c \
+ tst-audit1.c tst-audit2.c tst-audit3.c tst-audit4.c \
+ tst-auditmod1.c tst-auditmod3a.c tst-auditmod3b.c \
+ tst-auditmod4a.c tst-auditmod4b.c \
+@@ -196,7 +197,7 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
+ tst-align tst-align2 $(tests-execstack-$(have-z-execstack)) \
+ tst-dlmodcount tst-dlopenrpath tst-deep1 \
+ tst-dlmopen1 tst-dlmopen2 tst-dlmopen3 \
+- unload3 unload4 unload5 unload6 unload7 tst-global1 order2 \
++ unload3 unload4 unload5 unload6 unload7 unload8 tst-global1 order2 \
+ tst-audit1 tst-audit2 \
+ tst-stackguard1 tst-addr1 tst-thrlock \
+ tst-unique1 tst-unique2
+@@ -247,6 +248,7 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
+ unload4mod1 unload4mod2 unload4mod3 unload4mod4 \
+ unload6mod1 unload6mod2 unload6mod3 \
+ unload7mod1 unload7mod2 \
++ unload8mod1 unload8mod1x unload8mod2 unload8mod3 \
+ order2mod1 order2mod2 order2mod3 order2mod4 \
+ tst-unique1mod1 tst-unique1mod2 \
+ tst-unique2mod1 tst-unique2mod2
+@@ -522,6 +524,9 @@ $(objpfx)unload6mod2.so: $(libdl)
+ $(objpfx)unload6mod3.so: $(libdl)
+ $(objpfx)unload7mod1.so: $(libdl)
+ $(objpfx)unload7mod2.so: $(objpfx)unload7mod1.so
++$(objpfx)unload8mod1.so: $(objpfx)unload8mod2.so
++$(objpfx)unload8mod2.so: $(objpfx)unload8mod3.so
++$(objpfx)unload8mod3.so: $(libdl)
+ $(objpfx)tst-initordera2.so: $(objpfx)tst-initordera1.so
+ $(objpfx)tst-initorderb2.so: $(objpfx)tst-initorderb1.so $(objpfx)tst-initordera2.so
+ $(objpfx)tst-initordera3.so: $(objpfx)tst-initorderb2.so $(objpfx)tst-initorderb1.so
+@@ -823,6 +828,9 @@ $(objpfx)unload7: $(libdl)
+ $(objpfx)unload7.out: $(objpfx)unload7mod1.so $(objpfx)unload7mod2.so
+ unload7-ENV = MALLOC_PERTURB_=85
+
++$(objpfx)unload8: $(libdl)
++$(objpfx)unload8.out: $(objpfx)unload8mod1.so $(objpfx)unload8mod1x.so
++
+ ifdef libdl
+ $(objpfx)tst-tls9-static: $(common-objpfx)dlfcn/libdl.a
+ $(objpfx)tst-tls9-static.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so
+diff --git a/elf/dl-close.c b/elf/dl-close.c
+index 700e765..f47d5f8 100644
+--- a/elf/dl-close.c
++++ b/elf/dl-close.c
+@@ -421,6 +421,13 @@ _dl_close_worker (struct link_map *map)
+
+ imap->l_scope_max = new_size;
+ }
++ else if (new_list != NULL)
++ {
++ /* We didn't change the scope array, so reset the search
++ list. */
++ imap->l_searchlist.r_list = NULL;
++ imap->l_searchlist.r_nlist = 0;
++ }
+
+ /* The loader is gone, so mark the object as not having one.
+ Note: l_idx != IDX_STILL_USED -> object will be removed. */
+diff --git a/elf/unload8.c b/elf/unload8.c
+new file mode 100644
+index 0000000..f984a38
+--- /dev/null
++++ b/elf/unload8.c
+@@ -0,0 +1,33 @@
++#include <dlfcn.h>
++#include <stdio.h>
++
++int
++main (void)
++{
++ void *h = dlopen ("$ORIGIN/unload8mod1.so", RTLD_LAZY);
++ if (h == NULL)
++ {
++ puts ("dlopen unload8mod1.so failed");
++ return 1;
++ }
++
++ void *h2 = dlopen ("$ORIGIN/unload8mod1x.so", RTLD_LAZY);
++ if (h2 == NULL)
++ {
++ puts ("dlopen unload8mod1x.so failed");
++ return 1;
++ }
++ dlclose (h2);
++
++ int (*mod1) (void) = dlsym (h, "mod1");
++ if (mod1 == NULL)
++ {
++ puts ("dlsym failed");
++ return 1;
++ }
++
++ mod1 ();
++ dlclose (h);
++
++ return 0;
++}
+diff --git a/elf/unload8mod1.c b/elf/unload8mod1.c
+new file mode 100644
+index 0000000..fe7e81c
+--- /dev/null
++++ b/elf/unload8mod1.c
+@@ -0,0 +1,7 @@
++extern void mod2 (void);
++
++void
++mod1 (void)
++{
++ mod2 ();
++}
+diff --git a/elf/unload8mod1x.c b/elf/unload8mod1x.c
+new file mode 100644
+index 0000000..835b634
+--- /dev/null
++++ b/elf/unload8mod1x.c
+@@ -0,0 +1 @@
++int mod1x;
+diff --git a/elf/unload8mod2.c b/elf/unload8mod2.c
+new file mode 100644
+index 0000000..2fd8b67
+--- /dev/null
++++ b/elf/unload8mod2.c
+@@ -0,0 +1,7 @@
++extern void mod3 (void);
++
++void
++mod2 (void)
++{
++ mod3 ();
++}
+diff --git a/elf/unload8mod3.c b/elf/unload8mod3.c
+new file mode 100644
+index 0000000..d49e22b
+--- /dev/null
++++ b/elf/unload8mod3.c
+@@ -0,0 +1,27 @@
++#include <dlfcn.h>
++#include <stdio.h>
++#include <stdlib.h>
++
++void
++mod3_fini2 (void)
++{
++}
++
++void
++mod3_fini (void)
++{
++ mod3_fini2 ();
++}
++
++void
++mod3 (void)
++{
++ void *h = dlopen ("$ORIGIN/unload8mod2.so", RTLD_LAZY);
++ if (h == NULL)
++ {
++ puts ("dlopen unload8mod2.so failed");
++ exit (1);
++ }
++
++ atexit (mod3_fini);
++}
+--
+1.7.3.4
+
diff --git a/testing/glibc/glibc-2.13-futex.patch b/testing/glibc/glibc-2.13-futex.patch
new file mode 100644
index 000000000..9b9c3ac45
--- /dev/null
+++ b/testing/glibc/glibc-2.13-futex.patch
@@ -0,0 +1,31 @@
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
++++ a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S
+@@ -210,7 +210,7 @@ pthread_rwlock_timedrdlock:
+ cfi_restore(%r12)
+ retq
+
+-#ifdef __ASSUME_PRIVATE_FUTEX
++#ifdef __ASSUME_FUTEX_CLOCK_REALTIME
+ cfi_adjust_cfa_offset(16)
+ cfi_rel_offset(%r12, 8)
+ cfi_rel_offset(%r13, 0)
+--- a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S
++++ a/nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S
+@@ -192,7 +192,7 @@ pthread_rwlock_timedwrlock:
+
+ 7: movq %rdx, %rax
+
+-#ifndef __ASSUME_PRIVATE_FUTEX
++#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
+ addq $16, %rsp
+ cfi_adjust_cfa_offset(-16)
+ popq %r14
+@@ -207,7 +207,7 @@ pthread_rwlock_timedwrlock:
+ cfi_restore(%r12)
+ retq
+
+-#ifdef __ASSUME_PRIVATE_FUTEX
++#ifdef __ASSUME_FUTEX_CLOCK_REALTIME
+ cfi_adjust_cfa_offset(16)
+ cfi_rel_offset(%r12, 8)
+ cfi_rel_offset(%r13, 0)
diff --git a/testing/glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch b/testing/glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
new file mode 100644
index 000000000..ef91116e5
--- /dev/null
+++ b/testing/glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
@@ -0,0 +1,26 @@
+From 032c0ee3ee28841d684950e33a77210118697566 Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Thu, 1 Sep 2011 10:46:14 +0200
+Subject: [PATCH] Avoid assertion failure when first DNS answer was empty
+
+---
+ ChangeLog | 4 ++++
+ resolv/res_query.c | 2 +-
+ 2 files changed, 5 insertions(+), 1 deletions(-)
+
+diff --git a/resolv/res_query.c b/resolv/res_query.c
+index 2f7cfaa..2ded9fb 100644
+--- a/resolv/res_query.c
++++ b/resolv/res_query.c
+@@ -248,7 +248,7 @@ __libc_res_nquery(res_state statp,
+ && *resplen2 > (int) sizeof (HEADER))
+ {
+ /* Special case of partial answer. */
+- assert (hp != hp2);
++ assert (n == 0 || hp != hp2);
+ hp = hp2;
+ }
+ else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER)
+--
+1.7.3.4
+
diff --git a/testing/glibc/glibc-2.14-libdl-crash.patch b/testing/glibc/glibc-2.14-libdl-crash.patch
new file mode 100644
index 000000000..ee29f8c20
--- /dev/null
+++ b/testing/glibc/glibc-2.14-libdl-crash.patch
@@ -0,0 +1,132 @@
+diff --git a/elf/dl-close.c b/elf/dl-close.c
+index 73b2a2f..9bd91e3 100644
+--- a/elf/dl-close.c
++++ b/elf/dl-close.c
+@@ -1,5 +1,5 @@
+ /* Close a shared object opened by `_dl_open'.
+- Copyright (C) 1996-2007, 2009, 2010, 2011 Free Software Foundation, Inc.
++ Copyright (C) 1996-2007, 2009, 2010 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
+@@ -119,17 +119,8 @@ _dl_close_worker (struct link_map *map)
+ if (map->l_direct_opencount > 0 || map->l_type != lt_loaded
+ || dl_close_state != not_pending)
+ {
+- if (map->l_direct_opencount == 0)
+- {
+- if (map->l_type == lt_loaded)
+- dl_close_state = rerun;
+- else if (map->l_type == lt_library)
+- {
+- struct link_map **oldp = map->l_initfini;
+- map->l_initfini = map->l_orig_initfini;
+- _dl_scope_free (oldp);
+- }
+- }
++ if (map->l_direct_opencount == 0 && map->l_type == lt_loaded)
++ dl_close_state = rerun;
+
+ /* There are still references to this object. Do nothing more. */
+ if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_FILES, 0))
+diff --git a/elf/dl-deps.c b/elf/dl-deps.c
+index 9e30594..3890d00 100644
+--- a/elf/dl-deps.c
++++ b/elf/dl-deps.c
+@@ -478,6 +478,7 @@ _dl_map_object_deps (struct link_map *map,
+ nneeded * sizeof needed[0]);
+ atomic_write_barrier ();
+ l->l_initfini = l_initfini;
++ l->l_free_initfini = 1;
+ }
+
+ /* If we have no auxiliary objects just go on to the next map. */
+@@ -681,6 +682,7 @@ Filters not supported with LD_TRACE_PRELINKING"));
+ l_initfini[nlist] = NULL;
+ atomic_write_barrier ();
+ map->l_initfini = l_initfini;
++ map->l_free_initfini = 1;
+ if (l_reldeps != NULL)
+ {
+ atomic_write_barrier ();
+@@ -689,5 +691,5 @@ Filters not supported with LD_TRACE_PRELINKING"));
+ _dl_scope_free (old_l_reldeps);
+ }
+ if (old_l_initfini != NULL)
+- map->l_orig_initfini = old_l_initfini;
++ _dl_scope_free (old_l_initfini);
+ }
+diff --git a/elf/dl-libc.c b/elf/dl-libc.c
+index 7be9483..a13fce3 100644
+--- a/elf/dl-libc.c
++++ b/elf/dl-libc.c
+@@ -265,13 +265,13 @@ libc_freeres_fn (free_mem)
+
+ for (Lmid_t ns = 0; ns < GL(dl_nns); ++ns)
+ {
+- /* Remove all additional names added to the objects. */
+ for (l = GL(dl_ns)[ns]._ns_loaded; l != NULL; l = l->l_next)
+ {
+ struct libname_list *lnp = l->l_libname->next;
+
+ l->l_libname->next = NULL;
+
++ /* Remove all additional names added to the objects. */
+ while (lnp != NULL)
+ {
+ struct libname_list *old = lnp;
+@@ -279,6 +279,10 @@ libc_freeres_fn (free_mem)
+ if (! old->dont_free)
+ free (old);
+ }
++
++ /* Free the initfini dependency list. */
++ if (l->l_free_initfini)
++ free (l->l_initfini);
+ }
+
+ if (__builtin_expect (GL(dl_ns)[ns]._ns_global_scope_alloc, 0) != 0
+diff --git a/elf/rtld.c b/elf/rtld.c
+index 4a9109e..617e30e 100644
+--- a/elf/rtld.c
++++ b/elf/rtld.c
+@@ -2251,6 +2251,7 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n",
+ lnp->dont_free = 1;
+ lnp = lnp->next;
+ }
++ l->l_free_initfini = 0;
+
+ if (l != &GL(dl_rtld_map))
+ _dl_relocate_object (l, l->l_scope, GLRO(dl_lazy) ? RTLD_LAZY : 0,
+diff --git a/include/link.h b/include/link.h
+index e877104..051b99a 100644
+--- a/include/link.h
++++ b/include/link.h
+@@ -1,6 +1,6 @@
+ /* Data structure for communication from the run-time dynamic linker for
+ loaded ELF shared objects.
+- Copyright (C) 1995-2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
++ Copyright (C) 1995-2006, 2007, 2009, 2010 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
+@@ -192,6 +192,9 @@ struct link_map
+ during LD_TRACE_PRELINKING=1
+ contains any DT_SYMBOLIC
+ libraries. */
++ unsigned int l_free_initfini:1; /* Nonzero if l_initfini can be
++ freed, ie. not allocated with
++ the dummy malloc in ld.so. */
+
+ /* Collected information about own RPATH directories. */
+ struct r_search_path_struct l_rpath_dirs;
+@@ -240,9 +243,6 @@ struct link_map
+
+ /* List of object in order of the init and fini calls. */
+ struct link_map **l_initfini;
+- /* The init and fini list generated at startup, saved when the
+- object is also loaded dynamically. */
+- struct link_map **l_orig_initfini;
+
+ /* List of the dependencies introduced through symbol binding. */
+ struct link_map_reldeps
diff --git a/testing/glibc/glibc-2.14-reexport-rpc-interface.patch b/testing/glibc/glibc-2.14-reexport-rpc-interface.patch
new file mode 100644
index 000000000..e2beea881
--- /dev/null
+++ b/testing/glibc/glibc-2.14-reexport-rpc-interface.patch
@@ -0,0 +1,26 @@
+diff --git a/include/libc-symbols.h b/include/libc-symbols.h
+index 67e1ca2..5e7cca5 100644
+--- a/include/libc-symbols.h
++++ b/include/libc-symbols.h
+@@ -635,7 +635,7 @@ for linking")
+ # define libc_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+ # define libc_hidden_def(name) hidden_def (name)
+ # define libc_hidden_weak(name) hidden_weak (name)
+-# define libc_hidden_nolink(name, version) hidden_nolink (name, libc, version)
++# define libc_hidden_nolink(name, version) hidden_def (name)
+ # define libc_hidden_ver(local, name) hidden_ver (local, name)
+ # define libc_hidden_data_def(name) hidden_data_def (name)
+ # define libc_hidden_data_weak(name) hidden_data_weak (name)
+diff --git a/sunrpc/Makefile b/sunrpc/Makefile
+index 5134ce9..40c73d1 100644
+--- a/sunrpc/Makefile
++++ b/sunrpc/Makefile
+@@ -53,7 +53,7 @@ headers-in-tirpc = $(addprefix rpc/,auth.h auth_unix.h clnt.h pmap_clnt.h \
+ des_crypt.h)
+ headers-not-in-tirpc = $(addprefix rpc/,key_prot.h rpc_des.h) \
+ $(rpcsvc:%=rpcsvc/%) rpcsvc/bootparam.h
+-headers = rpc/netdb.h
++headers = rpc/netdb.h $(headers-in-tirpc) $(headers-not-in-tirpc)
+ install-others = $(inst_sysconfdir)/rpc
+ generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c) $(rpcsvc:%.x=x%.stmp) \
+ $(rpcsvc:%.x=rpcsvc/%.stmp) rpcgen
diff --git a/testing/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch b/testing/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch
new file mode 100644
index 000000000..eb0fd822d
--- /dev/null
+++ b/testing/glibc/glibc-2.14-reinstall-nis-rpc-headers.patch
@@ -0,0 +1,28 @@
+From bdd816a366c4e5bba5de7157d948e0c0737fb4fb Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Tue, 17 May 2011 17:42:30 +0200
+Subject: [PATCH] Reinstall NIS RPC headers
+
+---
+ nis/Makefile | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/nis/Makefile b/nis/Makefile
+index b5c9609..d2934d9 100644
+--- a/nis/Makefile
++++ b/nis/Makefile
+@@ -23,9 +23,9 @@ subdir := nis
+
+ aux := nis_hash
+
++headers := $(wildcard rpcsvc/*.[hx])
+ distribute := nss-nis.h nss-nisplus.h nis_intern.h Banner \
+- nisplus-parser.h nis_xdr.h nss \
+- $(wildcard rpcsvc/*.[hx])
++ nisplus-parser.h nis_xdr.h nss
+
+ # These are the databases available for the nis (and perhaps later nisplus)
+ # service. This must be a superset of the services in nss.
+--
+1.7.5.4
+
diff --git a/testing/glibc/glibc-__i686.patch b/testing/glibc/glibc-__i686.patch
new file mode 100644
index 000000000..28d5dd424
--- /dev/null
+++ b/testing/glibc/glibc-__i686.patch
@@ -0,0 +1,13 @@
+diff -Naur glibc-old//sysdeps/i386/Makefile glibc//sysdeps/i386/Makefile
+--- glibc-old//sysdeps/i386/Makefile 2010-03-18 11:52:30.000000000 +1000
++++ glibc//sysdeps/i386/Makefile 2010-04-16 15:05:50.000000000 +1000
+@@ -1,6 +1,7 @@
+ # The mpn functions need a #define for asm syntax flavor.
+-# Every i386 port in use uses gas syntax (I think).
+-asm-CPPFLAGS += -DGAS_SYNTAX
++# Every i386 port in use uses gas syntax (I think). Don't replace
++# __i686 in __i686.get_pc_thunk.bx.
++asm-CPPFLAGS += -DGAS_SYNTAX -U __i686
+
+ # The i386 `long double' is a distinct type we support.
+ long-double-fcts = yes
diff --git a/testing/glibc/glibc.install b/testing/glibc/glibc.install
new file mode 100644
index 000000000..7f85ade96
--- /dev/null
+++ b/testing/glibc/glibc.install
@@ -0,0 +1,20 @@
+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
+
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ usr/bin/install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ usr/bin/install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
diff --git a/testing/glibc/locale-gen b/testing/glibc/locale-gen
new file mode 100755
index 000000000..5aff344c4
--- /dev/null
+++ b/testing/glibc/locale-gen
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+set -e
+
+LOCALEGEN=/etc/locale.gen
+LOCALES=/usr/share/i18n/locales
+if [ -n "$POSIXLY_CORRECT" ]; then
+ unset POSIXLY_CORRECT
+fi
+
+
+[ -f $LOCALEGEN -a -s $LOCALEGEN ] || exit 0;
+
+# Remove all old locale dir and locale-archive before generating new
+# locale data.
+rm -rf /usr/lib/locale/* || true
+
+umask 022
+
+is_entry_ok() {
+ if [ -n "$locale" -a -n "$charset" ] ; then
+ true
+ else
+ echo "error: Bad entry '$locale $charset'"
+ false
+ fi
+}
+
+echo "Generating locales..."
+while read locale charset; do \
+ case $locale in \#*) continue;; "") continue;; esac; \
+ is_entry_ok || continue
+ echo -n " `echo $locale | sed 's/\([^.\@]*\).*/\1/'`"; \
+ echo -n ".$charset"; \
+ echo -n `echo $locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`; \
+ echo -n '...'; \
+ if [ -f $LOCALES/$locale ]; then input=$locale; else \
+ input=`echo $locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; fi; \
+ localedef -i $input -c -f $charset -A /usr/share/locale/locale.alias $locale; \
+ echo ' done'; \
+done < $LOCALEGEN
+echo "Generation complete."
diff --git a/testing/glibc/locale.gen.txt b/testing/glibc/locale.gen.txt
new file mode 100644
index 000000000..ccdd81734
--- /dev/null
+++ b/testing/glibc/locale.gen.txt
@@ -0,0 +1,23 @@
+# Configuration file for locale-gen
+#
+# lists of locales that are to be generated by the locale-gen command.
+#
+# Each line is of the form:
+#
+# <locale> <charset>
+#
+# where <locale> is one of the locales given in /usr/share/i18n/locales
+# and <charset> is one of the character sets listed in /usr/share/i18n/charmaps
+#
+# Examples:
+# en_US ISO-8859-1
+# en_US.UTF-8 UTF-8
+# de_DE ISO-8859-1
+# de_DE@euro ISO-8859-15
+#
+# The locale-gen command will generate all the locales,
+# placing them in /usr/lib/locale.
+#
+# A list of supported locales is included in this file.
+# Uncomment the ones you need.
+#
diff --git a/testing/glibc/nscd b/testing/glibc/nscd
new file mode 100755
index 000000000..8b14f2a3f
--- /dev/null
+++ b/testing/glibc/nscd
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/nscd`
+case "$1" in
+ start)
+ stat_busy "Starting nscd"
+ # create necessary directories if they don't already exist
+ mkdir -p /var/run/nscd /var/db/nscd 2>/dev/null
+ # remove stale files
+ rm -f /var/db/nscd/* /var/run/nscd/* 2>/dev/null
+ [ -z "$PID" ] && /usr/sbin/nscd
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon nscd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping nscd"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon nscd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/testing/libtool/PKGBUILD b/testing/libtool/PKGBUILD
new file mode 100644
index 000000000..80148151a
--- /dev/null
+++ b/testing/libtool/PKGBUILD
@@ -0,0 +1,48 @@
+# $Id: PKGBUILD 137506 2011-09-08 07:11:50Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
+
+# NOTE: requires rebuilt with each new gcc version
+
+pkgname=('libtool' 'libltdl')
+pkgver=2.4
+pkgrel=5
+pkgdesc="A generic library support script"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/libtool"
+license=('GPL')
+options=('!libtool')
+source=(ftp://ftp.gnu.org/pub/gnu/libtool/${pkgname}-${pkgver}.tar.xz)
+md5sums=('4e6144439d95d7332dc50ace6dd24c55')
+
+build() {
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ ./configure --prefix=/usr
+ make
+}
+
+check() {
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ make check
+}
+
+package_libtool() {
+ depends=('sh' "libltdl=$pkgver" 'gcc=4.6.1')
+ groups=('base-devel')
+ install=libtool.install
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+
+ make DESTDIR=${pkgdir} install-binSCRIPTS install-man install-info \
+ install-data-local
+ rm -rf ${pkgdir}/usr/share/libtool/libltdl/
+}
+
+package_libltdl() {
+ pkgdesc="A system independent dlopen wrapper for GNU libtool"
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ make DESTDIR=${pkgdir} install-libLTLIBRARIES install-includeHEADERS \
+ install-ltdlincludeHEADERS install-data-local
+ rm -rf ${pkgdir}/usr/share/{aclocal,libtool/config}
+}
diff --git a/testing/libtool/libtool.install b/testing/libtool/libtool.install
new file mode 100644
index 000000000..73cf56422
--- /dev/null
+++ b/testing/libtool/libtool.install
@@ -0,0 +1,20 @@
+infodir=usr/share/info
+filelist=(libtool.info libtool.info-1 libtool.info-2)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}