summaryrefslogtreecommitdiff
path: root/multilib
diff options
context:
space:
mode:
Diffstat (limited to 'multilib')
-rw-r--r--multilib/lib32-keyutils/PKGBUILD4
-rw-r--r--multilib/lib32-krb5/PKGBUILD13
-rw-r--r--multilib/lib32-krb5/krb5-1.9.1-2011-007.patch40
-rw-r--r--multilib/lib32-libcap/PKGBUILD9
-rw-r--r--multilib/lib32-libdrm/PKGBUILD17
-rw-r--r--multilib/lib32-libdrm/git_fixes.diff13
-rw-r--r--multilib/lib32-libogg/PKGBUILD6
-rw-r--r--multilib/lib32-libssh2/PKGBUILD10
-rw-r--r--multilib/lib32-libxcursor/PKGBUILD6
-rw-r--r--multilib/lib32-libxext/PKGBUILD6
-rw-r--r--multilib/lib32-libxfixes/PKGBUILD12
-rw-r--r--multilib/lib32-libxi/PKGBUILD6
-rw-r--r--multilib/lib32-libxrandr/PKGBUILD6
-rw-r--r--multilib/lib32-llvm/PKGBUILD60
-rw-r--r--multilib/lib32-llvm/clang-pure64.patch29
-rw-r--r--multilib/lib32-llvm/enable-lto.patch18
-rw-r--r--multilib/lib32-llvm/fix-gold-lto-linking.patch11
-rw-r--r--multilib/lib32-mesa/PKGBUILD18
-rw-r--r--multilib/lib32-mesa/fix-build-with-llvm-3.0.patch330
-rw-r--r--multilib/lib32-pcre/PKGBUILD6
-rw-r--r--multilib/lib32-pixman/PKGBUILD6
-rw-r--r--multilib/lib32-readline/PKGBUILD18
-rw-r--r--multilib/lib32-udev/PKGBUILD8
23 files changed, 500 insertions, 152 deletions
diff --git a/multilib/lib32-keyutils/PKGBUILD b/multilib/lib32-keyutils/PKGBUILD
index 8398edd1d..4a840c87b 100644
--- a/multilib/lib32-keyutils/PKGBUILD
+++ b/multilib/lib32-keyutils/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
_pkgbasename=keyutils
pkgname=lib32-$_pkgbasename
-pkgver=1.5.2
+pkgver=1.5.5
pkgrel=1
pkgdesc="Linux Key Management Utilities (32-bit)"
arch=(x86_64)
@@ -11,7 +11,7 @@ license=('GPL2' 'LGPL2.1')
depends=(lib32-glibc $_pkgbasename)
makedepends=(gcc-multilib)
source=(http://people.redhat.com/~dhowells/$_pkgbasename/$_pkgbasename-$pkgver.tar.bz2)
-md5sums=('19811ee31f683058a9aae3e6a3a23a7f')
+md5sums=('9e8ab5164bc8f84be148761cc89e9d6f')
build() {
cd "$srcdir/$_pkgbasename-$pkgver"
diff --git a/multilib/lib32-krb5/PKGBUILD b/multilib/lib32-krb5/PKGBUILD
index 32debcbae..1b70b9d2b 100644
--- a/multilib/lib32-krb5/PKGBUILD
+++ b/multilib/lib32-krb5/PKGBUILD
@@ -4,7 +4,7 @@
_pkgbasename=krb5
pkgname=lib32-$_pkgbasename
-pkgver=1.9.1
+pkgver=1.9.2
pkgrel=1
pkgdesc="The Kerberos network authentication system (32-bit)"
arch=('x86_64')
@@ -15,14 +15,21 @@ makedepends=('perl' gcc-multilib)
provides=('lib32-heimdal')
replaces=('lib32-heimdal')
conflicts=('lib32-heimdal')
-source=(http://web.mit.edu/kerberos/dist/${_pkgbasename}/1.9/${_pkgbasename}-${pkgver}-signed.tar)
-sha1sums=('e23a1795a237521493da9cf3443ac8b98a90c066')
+source=(http://web.mit.edu/kerberos/dist/${_pkgbasename}/1.9/${_pkgbasename}-${pkgver}-signed.tar
+krb5-1.9.1-2011-007.patch)
+sha1sums=('aa06f778ee1f9791cd4c5cf4c9e9465769ffec92'
+ '31a130542e92b70c807b2dbe6f9b182dc14f5e9f')
options=('!emptydirs')
build() {
tar zxvf ${_pkgbasename}-${pkgver}.tar.gz
cd "${srcdir}/${_pkgbasename}-${pkgver}/src"
+ # Apply upstream patch to fix a null pointer dereference when processing TGS requests
+ # CVE-2011-1530
+ # see http://web.mit.edu/kerberos/advisories/MITKRB5-SA-2011-007.txt
+ patch -Np2 -i ${srcdir}/krb5-1.9.1-2011-007.patch
+
export CC="gcc -m32"
export CXX="g++ -m32"
export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
diff --git a/multilib/lib32-krb5/krb5-1.9.1-2011-007.patch b/multilib/lib32-krb5/krb5-1.9.1-2011-007.patch
new file mode 100644
index 000000000..f1ffdd4d1
--- /dev/null
+++ b/multilib/lib32-krb5/krb5-1.9.1-2011-007.patch
@@ -0,0 +1,40 @@
+diff --git a/src/kdc/Makefile.in b/src/kdc/Makefile.in
+index f46cad3..102fbaa 100644
+--- a/src/kdc/Makefile.in
++++ b/src/kdc/Makefile.in
+@@ -67,6 +67,7 @@ check-unix:: rtest
+
+ check-pytests::
+ $(RUNPYTEST) $(srcdir)/t_workers.py $(PYTESTFLAGS)
++ $(RUNPYTEST) $(srcdir)/t_emptytgt.py $(PYTESTFLAGS)
+
+ install::
+ $(INSTALL_PROGRAM) krb5kdc ${DESTDIR}$(SERVER_BINDIR)/krb5kdc
+diff --git a/src/kdc/do_tgs_req.c b/src/kdc/do_tgs_req.c
+index c169c54..840a2ef 100644
+--- a/src/kdc/do_tgs_req.c
++++ b/src/kdc/do_tgs_req.c
+@@ -243,7 +243,8 @@ tgt_again:
+ if (!tgs_1 || !data_eq(*server_1, *tgs_1)) {
+ errcode = find_alternate_tgs(request, &server);
+ firstpass = 0;
+- goto tgt_again;
++ if (errcode == 0)
++ goto tgt_again;
+ }
+ }
+ status = "UNKNOWN_SERVER";
+diff --git a/src/kdc/t_emptytgt.py b/src/kdc/t_emptytgt.py
+new file mode 100644
+index 0000000..1760bcd
+--- /dev/null
++++ b/src/kdc/t_emptytgt.py
+@@ -0,0 +1,8 @@
++#!/usr/bin/python
++from k5test import *
++
++realm = K5Realm(start_kadmind=False, create_host=False)
++output = realm.run_as_client([kvno, 'krbtgt/'], expected_code=1)
++if 'not found in Kerberos database' not in output:
++ fail('TGT lookup for empty realm failed in unexpected way')
++success('Empty tgt lookup.')
diff --git a/multilib/lib32-libcap/PKGBUILD b/multilib/lib32-libcap/PKGBUILD
index 5846329f3..5f5c6ba46 100644
--- a/multilib/lib32-libcap/PKGBUILD
+++ b/multilib/lib32-libcap/PKGBUILD
@@ -3,16 +3,17 @@
_pkgbasename=libcap
pkgname=lib32-$_pkgbasename
-pkgver=2.21
+pkgver=2.22
pkgrel=1
pkgdesc="POSIX 1003.1e capabilities (32-bit)"
arch=(x86_64)
url="http://www.kernel.org/pub/linux/libs/security/linux-privs/"
-license=('GPL')
+license=('GPL2')
depends=('lib32-attr' $_pkgbasename)
makedepends=('gcc-multilib')
-source=(http://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${_pkgbasename}-${pkgver}.tar.gz)
-md5sums=('61966ef40f2dee8731b69db895e4548d')
+source=(http://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/${_pkgbasename}-${pkgver}.tar.gz{,.asc})
+md5sums=('b4896816b626bea445f0b3849bdd4077'
+ '9d0983e25e5a251d098507f9561d2b27')
build() {
cd ${srcdir}/${_pkgbasename}-${pkgver}
diff --git a/multilib/lib32-libdrm/PKGBUILD b/multilib/lib32-libdrm/PKGBUILD
index f139d9267..93f3763a3 100644
--- a/multilib/lib32-libdrm/PKGBUILD
+++ b/multilib/lib32-libdrm/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 57787 2011-11-02 16:54:51Z lcarlier $
+# $Id: PKGBUILD 60845 2011-12-19 13:05:47Z lcarlier $
# Contributor: Jan de Groot <jgc@archlinux.org>
_pkgbasename=libdrm
pkgname=lib32-$_pkgbasename
-pkgver=2.4.27
-pkgrel=2
+pkgver=2.4.29
+pkgrel=1
pkgdesc="Userspace interface to kernel DRM services (32-bit)"
arch=(x86_64)
license=('custom')
@@ -13,9 +13,11 @@ makedepends=(gcc-multilib)
options=('!libtool')
url="http://dri.freedesktop.org/"
source=(http://dri.freedesktop.org/${_pkgbasename}/${_pkgbasename}-${pkgver}.tar.bz2
- no-pthread-stubs.patch)
-md5sums=('0fba4f42735cd3d24dd7a8cde0023fbd'
- 'c722c8406507b7e3a8da7a3030d1d9cf')
+ no-pthread-stubs.patch
+ git_fixes.diff)
+md5sums=('96d5e3e9edd55f4b016fe3b5dd0a1953'
+ 'c722c8406507b7e3a8da7a3030d1d9cf'
+ 'aebd5336568090b8ec084fabcfb08071')
build() {
cd "${srcdir}/${_pkgbasename}-${pkgver}"
@@ -26,6 +28,9 @@ build() {
patch -Np1 -i "${srcdir}/no-pthread-stubs.patch"
+ # git fixes - currently none
+ patch -Np1 -i ${srcdir}/git_fixes.diff
+
# libtoolize --force
autoreconf --force --install
./configure --prefix=/usr --libdir=/usr/lib32 \
diff --git a/multilib/lib32-libdrm/git_fixes.diff b/multilib/lib32-libdrm/git_fixes.diff
new file mode 100644
index 000000000..dc80155f2
--- /dev/null
+++ b/multilib/lib32-libdrm/git_fixes.diff
@@ -0,0 +1,13 @@
+diff --git a/intel/intel_bufmgr_gem.c b/intel/intel_bufmgr_gem.c
+index 19441f3..eb9dd32 100644
+--- a/intel/intel_bufmgr_gem.c
++++ b/intel/intel_bufmgr_gem.c
+@@ -958,7 +958,7 @@ static void drm_intel_gem_bo_purge_vma_cache(drm_intel_bufmgr_gem *bufmgr_gem)
+ bufmgr_gem->vma_cache.next,
+ vma_list);
+ assert(bo_gem->map_count == 0);
+- DRMLISTDEL(&bo_gem->vma_list);
++ DRMLISTDELINIT(&bo_gem->vma_list);
+
+ if (bo_gem->mem_virtual) {
+ munmap(bo_gem->mem_virtual, bo_gem->bo.size);
diff --git a/multilib/lib32-libogg/PKGBUILD b/multilib/lib32-libogg/PKGBUILD
index ff8614b23..966a76789 100644
--- a/multilib/lib32-libogg/PKGBUILD
+++ b/multilib/lib32-libogg/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 40915 2011-03-01 15:20:49Z bluewind $
+# $Id: PKGBUILD 60957 2011-12-19 19:09:59Z bluewind $
# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
_pkgbasename=libogg
pkgname=lib32-$_pkgbasename
-pkgver=1.2.2
+pkgver=1.3.0
pkgrel=1
pkgdesc="Ogg bitstream and framing library (32-bit)"
arch=('x86_64')
@@ -13,7 +13,7 @@ depends=('lib32-glibc' $_pkgbasename)
makedepends=(gcc-multilib)
options=('!libtool')
source=(http://downloads.xiph.org/releases/ogg/$_pkgbasename-$pkgver.tar.gz)
-md5sums=('5a9fcabc9a1b7c6f1cd75ddc78f36c56')
+md5sums=('0a7eb40b86ac050db3a789ab65fe21c2')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-libssh2/PKGBUILD b/multilib/lib32-libssh2/PKGBUILD
index 963693b7b..88ac921e1 100644
--- a/multilib/lib32-libssh2/PKGBUILD
+++ b/multilib/lib32-libssh2/PKGBUILD
@@ -1,5 +1,5 @@
# Maintainer: Florian Pritz <flo@xssn.at>
-# $Id: PKGBUILD 53557 2011-08-05 17:14:21Z bluewind $
+# $Id: PKGBUILD 60959 2011-12-19 19:12:57Z bluewind $
# Contributor: Angel Velasquez <angvp@archlinux.org>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
@@ -7,17 +7,17 @@
_pkgbasename=libssh2
pkgname=lib32-$_pkgbasename
-pkgver=1.2.7
-pkgrel=2
+pkgver=1.3.0
+pkgrel=1
pkgdesc="A library implementing the SSH2 protocol as defined by Internet Drafts (32-bit)"
url="http://www.libssh2.org/"
arch=('i686' 'x86_64')
license=('BSD')
-depends=('openssl' $_pkgbasename)
+depends=('lib32-openssl' $_pkgbasename)
makedepends=('zlib' "gcc-multilib")
options=('!libtool')
source=("http://www.libssh2.org/download/${_pkgbasename}-${pkgver}.tar.gz")
-md5sums=('a5d78344886f1282e4008c09bf568076')
+md5sums=('6425331899ccf1015f1ed79448cb4709')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-libxcursor/PKGBUILD b/multilib/lib32-libxcursor/PKGBUILD
index ee8df1005..75d09684a 100644
--- a/multilib/lib32-libxcursor/PKGBUILD
+++ b/multilib/lib32-libxcursor/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 31535 2010-11-02 00:00:15Z heftig $
+# $Id: PKGBUILD 60955 2011-12-19 19:05:52Z bluewind $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Alexander Baldeck <alexander@archlinux.org>
_pkgbasename=libxcursor
pkgname=lib32-$_pkgbasename
-pkgver=1.1.11
+pkgver=1.1.12
pkgrel=1
pkgdesc="X cursor management library (32-bit)"
arch=(x86_64)
@@ -13,7 +13,7 @@ depends=('lib32-libxfixes' 'lib32-libxrender' $_pkgbasename)
makedepends=('xorg-util-macros' gcc-multilib)
options=('!libtool')
source=(${url}/releases/individual/lib/libXcursor-${pkgver}.tar.bz2)
-sha1sums=('35491bd17cbcdda712e1a064c67ccbc523e2702c')
+sha1sums=('f68d7baed5ecf4b1ae88004dd05ef4680d63ee2c')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-libxext/PKGBUILD b/multilib/lib32-libxext/PKGBUILD
index 7c6e68080..00c6cb8e5 100644
--- a/multilib/lib32-libxext/PKGBUILD
+++ b/multilib/lib32-libxext/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 31542 2010-11-02 00:03:44Z heftig $
+# $Id: PKGBUILD 60953 2011-12-19 19:05:14Z bluewind $
# Maintainer: Jan de Groot <jgc@archlinux.org>
_pkgbasename=libxext
pkgname=lib32-$_pkgbasename
-pkgver=1.2.0
+pkgver=1.3.0
pkgrel=1
pkgdesc="X11 miscellaneous extensions library (32-bit)"
arch=(x86_64)
@@ -13,7 +13,7 @@ depends=('lib32-libx11' 'xextproto' $_pkgbasename)
makedepends=('xorg-util-macros' 'gcc-multilib')
options=('!libtool')
source=(${url}/releases/individual/lib/libXext-${pkgver}.tar.bz2)
-sha1sums=('090d7109c5fffde8a0063e10f22f3e2ec48cf19e')
+sha1sums=('0bf3708177b9320091ebc069e905c042c31d859d')
build() {
cd "${srcdir}/libXext-${pkgver}"
diff --git a/multilib/lib32-libxfixes/PKGBUILD b/multilib/lib32-libxfixes/PKGBUILD
index a8b980fa5..2e2e1553e 100644
--- a/multilib/lib32-libxfixes/PKGBUILD
+++ b/multilib/lib32-libxfixes/PKGBUILD
@@ -1,19 +1,19 @@
-# $Id: PKGBUILD 26653 2010-09-15 22:47:51Z bluewind $
+# $Id: PKGBUILD 60948 2011-12-19 19:00:52Z bluewind $
#Maintainer: Jan de Groot <jgc@archlinux.org>
_pkgbasename=libxfixes
pkgname=lib32-$_pkgbasename
-pkgver=4.0.5
-pkgrel=3
+pkgver=5.0
+pkgrel=1
pkgdesc="X11 miscellaneous 'fixes' extension library (32-bit)"
arch=('x86_64')
url="http://xorg.freedesktop.org/"
license=('custom')
-depends=('lib32-libx11>=1.3.4' $_pkgbasename)
-makedepends=('pkg-config' gcc-multilib "fixesproto>=4.1.1")
+depends=('lib32-libx11' $_pkgbasename)
+makedepends=('pkg-config' gcc-multilib )
options=('!libtool')
source=(${url}/releases/individual/lib/libXfixes-${pkgver}.tar.bz2)
-sha1sums=('255dfb9a8c50d795c60711ec4764f76cd0620cbf')
+sha1sums=('3e4d374e9026111a04cd669d4b3434273fc34fe0')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-libxi/PKGBUILD b/multilib/lib32-libxi/PKGBUILD
index 4f3f85361..f8e99e866 100644
--- a/multilib/lib32-libxi/PKGBUILD
+++ b/multilib/lib32-libxi/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 39079 2011-02-06 10:58:56Z ibiru $
+# $Id: PKGBUILD 60951 2011-12-19 19:03:45Z bluewind $
# Maintainer: Jan de Groot <jgc@archlinux.org>
_pkgbasename=libxi
pkgname=lib32-$_pkgbasename
-pkgver=1.4.1
+pkgver=1.4.4
pkgrel=1
pkgdesc="X11 Input extension library (32-bit)"
arch=('x86_64')
@@ -13,7 +13,7 @@ makedepends=('pkgconfig' 'xorg-util-macros' gcc-multilib)
options=(!libtool)
license=('custom')
source=(${url}/releases/individual/lib/libXi-${pkgver}.tar.bz2)
-sha1sums=('15c9d369cc76c73b5e3833ba3b39355e6cc06636')
+sha1sums=('e4ca1b45368214ba246bfad398ea087125c79f31')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-libxrandr/PKGBUILD b/multilib/lib32-libxrandr/PKGBUILD
index 370b5cde2..9f8e38ce7 100644
--- a/multilib/lib32-libxrandr/PKGBUILD
+++ b/multilib/lib32-libxrandr/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 31551 2010-11-02 00:08:36Z heftig $
+# $Id: PKGBUILD 60945 2011-12-19 18:58:48Z bluewind $
# Maintainer: Alexander Baldeck <alexander@archlinux.org>
# Contributor: Jan de Groot <jgc@archlinux.org>
_pkgbasename=libxrandr
pkgname=lib32-$_pkgbasename
-pkgver=1.3.1
+pkgver=1.3.2
pkgrel=1
pkgdesc="X11 RandR extension library (32-bit)"
arch=('x86_64')
@@ -13,7 +13,7 @@ depends=('lib32-libxext' 'lib32-libxrender' 'randrproto' $_pkgbasename)
makedepends=('xorg-util-macros' gcc-multilib)
options=('!libtool')
source=(${url}/releases/individual/lib/libXrandr-${pkgver}.tar.bz2)
-sha1sums=('8e89622b0656cb2eb22c1f3c646c797dc648ead5')
+sha1sums=('0c844a4c5237f96794f0c18a5af16dc5ab7a36ec')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-llvm/PKGBUILD b/multilib/lib32-llvm/PKGBUILD
index 4b990ad39..e7ff5c5ef 100644
--- a/multilib/lib32-llvm/PKGBUILD
+++ b/multilib/lib32-llvm/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 51447 2011-07-09 06:18:32Z lcarlier $
+# $Id: PKGBUILD 60966 2011-12-19 19:56:09Z lcarlier $
# Maintainer: Evangelos Foutras <foutrelis@gmail.com>
# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
# Contributor: Sebastian Nowicki <sebnow@gmail.com>
@@ -10,32 +10,21 @@
# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
pkgname=('lib32-llvm')
-pkgver=2.9
-#_gcc_ver=4.6.1
-pkgrel=2
+pkgver=3.0
+pkgrel=1
arch=('x86_64')
url="http://llvm.org/"
license=('custom:University of Illinois/NCSA Open Source License')
makedepends=('lib32-libffi' 'python2' 'gcc-multilib')
-source=(http://llvm.org/releases/$pkgver/llvm-$pkgver.tgz
- http://llvm.org/releases/$pkgver/clang-$pkgver.tgz
- ftp://ftp.archlinux.org/other/community/clang/gcc-headers-4.5.2.tar.xz
- clang-plugin-loader-registry.patch
- cindexer-clang-path.patch
- clang-toolchains-gcc-versions.patch
- clang-pure64.patch
- enable-lto.patch)
-md5sums=('793138412d2af2c7c7f54615f8943771'
- '634de18d04b7a4ded19ec4c17d23cfca'
- '70e23a3dc2b38ecb2bb4d2c48f47295d'
- '02c23b4aaca3445b8bf39fddb2f9906e'
- '87a7162dbe99e9ffce6c40bd09f5f4f0'
- '8da236120a9a287a977b575b8b905c93'
- '225ee6b531f8327f34f344a18cb4ec81'
- '8f7582d7440e4a8342c3aea9ec714fb4')
+source=(http://llvm.org/releases/$pkgver/llvm-$pkgver.tar.gz
+ http://llvm.org/releases/$pkgver/clang-$pkgver.tar.gz
+ clang-plugin-loader-registry.patch)
+sha256sums=('519eb11d3499ce99c6ffdb8718651fc91425ed7690eac91c8d6853474f7c0477'
+ 'b64e72da356d7c3428cfd7ac620d49ec042c84eaee13c26024879f555f4e126d'
+ 'a0a4494f2a692789670be37fd390906dcaa37b1824f740bdaaea21182f2f3a9c')
build() {
- cd "$srcdir/llvm-$pkgver"
+ cd "$srcdir/llvm-$pkgver.src"
export CC="gcc -m32"
export CXX="g++ -m32"
@@ -57,19 +46,6 @@ build() {
# See http://lists.cs.uiuc.edu/pipermail/cfe-dev/2010-April/008559.html
patch -Np1 -i "$srcdir/clang-plugin-loader-registry.patch"
- # Fix clang path in CIndexer.cpp (https://bugs.archlinux.org/task/22799)
- #patch -d tools/clang -Np0 -i "$srcdir/cindexer-clang-path.patch"
-
- # Add GCC 4.6.0 to GccVersions (FS#23631)
- #patch -d tools/clang -Np1 -i "$srcdir/clang-toolchains-gcc-versions.patch"
-
- # Adjust lib paths
- #patch -d tools/clang -Np0 -i "$srcdir/clang-pure64.patch"
-
- # Make -flto work
- # Use gold instead of default linker, and always use the plugin
- #patch -d tools/clang -Np0 -i "$srcdir/enable-lto.patch"
-
# Apply strip option to configure
_optimized_switch="enable"
[[ $(check_option strip) == n ]] && _optimized_switch="disable"
@@ -77,12 +53,6 @@ build() {
# Include location of libffi headers in CPPFLAGS
export CPPFLAGS="$CPPFLAGS $(pkg-config --cflags libffi)"
- # TODO: Uncomment when clang works with GCC 4.6+
- #_cxx_headers="/usr/include/c++/$_gcc_ver"
- #if [[ ! -d $_cxx_headers ]]; then
- # error "Couldn't find the C++ headers, PKGBUILD needs fixing!"
- # return 1
- #fi
_cxx_headers="/usr/include/c++/clang-$pkgver"
_32bit_headers=""
@@ -114,21 +84,13 @@ package() {
pkgdesc="Low Level Virtual Machine (32 bits version)"
depends=('perl' 'lib32-libffi' 'llvm')
- cd "$srcdir/llvm-$pkgver"
+ cd "$srcdir/llvm-$pkgver.src"
# We move the clang directory out of the tree so it won't get installed and
# then we bring it back in for the clang package
# mv tools/clang "$srcdir"
# -j1 is due to race conditions during the installation of the OCaml bindings
make -j1 DESTDIR="$pkgdir" install
- # mv "$srcdir/clang" tools
-
- # OCaml bindings go to a separate package
- # rm -rf "$srcdir"/{ocaml,ocamldoc}
- # mv "$pkgdir"/usr/{lib/ocaml,share/doc/llvm/ocamldoc} "$srcdir"
-
- # Remove duplicate files installed by the OCaml bindings
- # rm "$pkgdir"/usr/{lib/llvm/libllvm*,share/doc/llvm/ocamldoc.tar.gz}
# Fix permissions of static libs
chmod -x "$pkgdir"/usr/lib32/llvm/*.a
diff --git a/multilib/lib32-llvm/clang-pure64.patch b/multilib/lib32-llvm/clang-pure64.patch
index da6178519..9bbbfaa8b 100644
--- a/multilib/lib32-llvm/clang-pure64.patch
+++ b/multilib/lib32-llvm/clang-pure64.patch
@@ -3,36 +3,11 @@ Index: lib/Driver/Tools.cpp
--- lib/Driver/Tools.cpp (revision 123373)
+++ lib/Driver/Tools.cpp (working copy)
@@ -3306,7 +3306,7 @@
- else if (ToolChain.getArch() == llvm::Triple::arm)
- CmdArgs.push_back("/lib/ld-linux.so.3");
+ else if (ToolChain.getArch() == llvm::Triple::ppc64)
+ CmdArgs.push_back("/lib64/ld64.so.1");
else
- CmdArgs.push_back("/lib64/ld-linux-x86-64.so.2");
+ CmdArgs.push_back("/lib/ld-linux-x86-64.so.2");
}
CmdArgs.push_back("-o");
-Index: lib/Driver/ToolChains.cpp
-===================================================================
---- lib/Driver/ToolChains.cpp (revision 123373)
-+++ lib/Driver/ToolChains.cpp (working copy)
-@@ -1317,18 +1317,10 @@
- if (Arch == llvm::Triple::x86)
- Suffix64 = "/64";
-
-- std::string Lib32 = "lib";
--
-- bool Exists;
-- if (!llvm::sys::fs::exists("/lib32", Exists) && Exists)
-- Lib32 = "lib32";
--
-+ std::string Lib32 = "lib32";
- std::string Lib64 = "lib";
-- bool Symlink;
-- if (!llvm::sys::fs::exists("/lib64", Exists) && Exists &&
-- (llvm::sys::fs::is_symlink("/lib64", Symlink) || !Symlink))
-- Lib64 = "lib64";
-
-+ bool Exists;
- std::string GccTriple = "";
- if (Arch == llvm::Triple::arm) {
- if (!llvm::sys::fs::exists("/usr/lib/gcc/arm-linux-gnueabi", Exists) &&
diff --git a/multilib/lib32-llvm/enable-lto.patch b/multilib/lib32-llvm/enable-lto.patch
index 40d93104a..3c8691b17 100644
--- a/multilib/lib32-llvm/enable-lto.patch
+++ b/multilib/lib32-llvm/enable-lto.patch
@@ -2,17 +2,12 @@ Index: lib/Driver/ToolChains.cpp
===================================================================
--- lib/Driver/ToolChains.cpp (revision 123373)
+++ lib/Driver/ToolChains.cpp (working copy)
-@@ -1398,11 +1398,11 @@
- Lib = Lib64;
- }
+@@ -1398,7 +1398,7 @@
+ PPaths.push_back(Twine(GCCInstallation.getParentLibPath() + "/../" +
+ GCCInstallation.getTriple() + "/bin").str());
-- llvm::sys::Path LinkerPath(Base + "/../../../../" + GccTriple + "/bin/ld");
-+ llvm::sys::Path LinkerPath(Base + "/../../../../" + GccTriple + "/bin/ld.gold");
- if (!llvm::sys::fs::exists(LinkerPath.str(), Exists) && Exists)
- Linker = LinkerPath.str();
- else
-- Linker = GetProgramPath("ld");
-+ Linker = GetProgramPath("ld.gold");
+- Linker = GetProgramPath("ld");
++ Linker = GetProgramPath("ld.gold");
LinuxDistro Distro = DetectLinuxDistro(Arch);
@@ -27,7 +22,8 @@ Index: lib/Driver/Tools.cpp
- if (Args.hasArg(options::OPT_use_gold_plugin)) {
+ // if (Args.hasArg(options::OPT_use_gold_plugin)) {
CmdArgs.push_back("-plugin");
- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so";
+- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so";
++ std::string Plugin = ToolChain.getDriver().Dir + "/../lib/llvm/LLVMgold.so";
CmdArgs.push_back(Args.MakeArgString(Plugin));
- }
+ // }
diff --git a/multilib/lib32-llvm/fix-gold-lto-linking.patch b/multilib/lib32-llvm/fix-gold-lto-linking.patch
new file mode 100644
index 000000000..84d166471
--- /dev/null
+++ b/multilib/lib32-llvm/fix-gold-lto-linking.patch
@@ -0,0 +1,11 @@
+diff -upr llvm-3.0.src.orig/tools/gold/Makefile llvm-3.0.src/tools/gold/Makefile
+--- llvm-3.0.src.orig/tools/gold/Makefile 2011-05-31 23:00:45.000000000 +0300
++++ llvm-3.0.src/tools/gold/Makefile 2011-12-04 22:06:59.000000000 +0200
+@@ -26,6 +26,6 @@ LINK_COMPONENTS := support
+ # Because off_t is used in the public API, the largefile parts are required for
+ # ABI compatibility.
+ CXXFLAGS+=-I$(BINUTILS_INCDIR) -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
+-CXXFLAGS+=$(SharedLibDir)/$(SharedPrefix)LTO$(SHLIBEXT)
++CXXFLAGS+=-L $(SharedLibDir) -lLTO
+
+ include $(LEVEL)/Makefile.common
diff --git a/multilib/lib32-mesa/PKGBUILD b/multilib/lib32-mesa/PKGBUILD
index 04d00d5de..b88939af8 100644
--- a/multilib/lib32-mesa/PKGBUILD
+++ b/multilib/lib32-mesa/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 59540 2011-11-27 22:56:07Z lcarlier $
+# $Id: PKGBUILD 60968 2011-12-19 20:44:35Z lcarlier $
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
@@ -19,8 +19,8 @@ if [ "${_git}" = "true" ]; then
pkgver=7.11.2
fi
-pkgrel=1
-arch=(x86_64)
+pkgrel=2
+arch=('x86_64')
makedepends=('glproto>=1.4.14' 'lib32-libdrm>=2.4.26' 'lib32-libxxf86vm>=1.1.1' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.0.1' 'lib32-libx11>=1.4.3'
'lib32-libxt>=1.1.1' 'lib32-gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'gcc-multilib' imake 'lib32-udev' 'lib32-llvm' 'namcap')
url="http://mesa3d.sourceforge.net"
@@ -31,9 +31,9 @@ if [ "${_git}" = "true" ]; then
source=("MesaLib-git${_gitdate}.zip"::"http://cgit.freedesktop.org/mesa/mesa/snapshot/mesa-ef9f16f6322a89fb699fbe3da868b10f9acaef98.tar.bz2")
md5sums=('817a63bb60b81f4f817ffc9ed0a3dddd')
else
- source=("ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2")
+ source=("ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2" fix-build-with-llvm-3.0.patch)
#source=(${source[@]} "MesaLib-git${_gitdate}.zip"::"http://cgit.freedesktop.org/mesa/mesa/snapshot/mesa-4464ee1a9aa3745109cee23531e3fb2323234d07.tar.bz2")
- md5sums=('0837c52698fe3252369c3fdb5195afcc')
+ md5sums=('0837c52698fe3252369c3fdb5195afcc' '73501728793dc895bfc80dfb3253d39e')
fi
build() {
@@ -43,7 +43,13 @@ build() {
# for our llvm-config for 32 bit
export LLVM_CONFIG=/usr/lib32/llvm/llvm-config
- cd ${srcdir}/?esa-*
+ cd ${srcdir}/?esa-*
+
+ if [ "${_git}" = "false" ]; then
+ # fix building of mesa-7.11.2 with llvm-3.0
+ patch -Np1 -i ../fix-build-with-llvm-3.0.patch
+ fi
+
autoreconf -vfi
if [ "${_git}" = "true" ]; then
diff --git a/multilib/lib32-mesa/fix-build-with-llvm-3.0.patch b/multilib/lib32-mesa/fix-build-with-llvm-3.0.patch
new file mode 100644
index 000000000..ceb5aa129
--- /dev/null
+++ b/multilib/lib32-mesa/fix-build-with-llvm-3.0.patch
@@ -0,0 +1,330 @@
+diff --git a/src/gallium/auxiliary/draw/draw_llvm.c b/src/gallium/auxiliary/draw/draw_llvm.c
+index 56c26f5..d477c40 100644
+--- a/src/gallium/auxiliary/draw/draw_llvm.c
++++ b/src/gallium/auxiliary/draw/draw_llvm.c
+@@ -96,7 +96,7 @@ draw_llvm_generate_elts(struct draw_llvm *llvm, struct draw_llvm_variant *var);
+ * Create LLVM type for struct draw_jit_texture
+ */
+ static LLVMTypeRef
+-create_jit_texture_type(struct gallivm_state *gallivm)
++create_jit_texture_type(struct gallivm_state *gallivm, const char *struct_name)
+ {
+ LLVMTargetDataRef target = gallivm->target;
+ LLVMTypeRef texture_type;
+@@ -120,13 +120,21 @@ create_jit_texture_type(struct gallivm_state *gallivm)
+ elem_types[DRAW_JIT_TEXTURE_BORDER_COLOR] =
+ LLVMArrayType(LLVMFloatTypeInContext(gallivm->context), 4);
+
++#if HAVE_LLVM >= 0x0300
++ texture_type = LLVMStructCreateNamed(gallivm->context, struct_name);
++ LLVMStructSetBody(texture_type, elem_types,
++ Elements(elem_types), 0);
++#else
+ texture_type = LLVMStructTypeInContext(gallivm->context, elem_types,
+ Elements(elem_types), 0);
+
++ LLVMAddTypeName(gallivm->module, struct_name, texture_type);
++
+ /* Make sure the target's struct layout cache doesn't return
+ * stale/invalid data.
+ */
+ LLVMInvalidateStructLayout(gallivm->target, texture_type);
++#endif
+
+ LP_CHECK_MEMBER_OFFSET(struct draw_jit_texture, width,
+ target, texture_type,
+@@ -176,7 +184,7 @@ create_jit_texture_type(struct gallivm_state *gallivm)
+ */
+ static LLVMTypeRef
+ create_jit_context_type(struct gallivm_state *gallivm,
+- LLVMTypeRef texture_type)
++ LLVMTypeRef texture_type, const char *struct_name)
+ {
+ LLVMTargetDataRef target = gallivm->target;
+ LLVMTypeRef float_type = LLVMFloatTypeInContext(gallivm->context);
+@@ -189,11 +197,17 @@ create_jit_context_type(struct gallivm_state *gallivm,
+ elem_types[3] = LLVMPointerType(float_type, 0); /* viewport */
+ elem_types[4] = LLVMArrayType(texture_type,
+ PIPE_MAX_VERTEX_SAMPLERS); /* textures */
+-
++#if HAVE_LLVM >= 0x0300
++ context_type = LLVMStructCreateNamed(gallivm->context, struct_name);
++ LLVMStructSetBody(context_type, elem_types,
++ Elements(elem_types), 0);
++#else
+ context_type = LLVMStructTypeInContext(gallivm->context, elem_types,
+ Elements(elem_types), 0);
++ LLVMAddTypeName(gallivm->module, struct_name, context_type);
+
+ LLVMInvalidateStructLayout(gallivm->target, context_type);
++#endif
+
+ LP_CHECK_MEMBER_OFFSET(struct draw_jit_context, vs_constants,
+ target, context_type, 0);
+@@ -215,7 +229,7 @@ create_jit_context_type(struct gallivm_state *gallivm,
+ * Create LLVM type for struct pipe_vertex_buffer
+ */
+ static LLVMTypeRef
+-create_jit_vertex_buffer_type(struct gallivm_state *gallivm)
++create_jit_vertex_buffer_type(struct gallivm_state *gallivm, const char *struct_name)
+ {
+ LLVMTargetDataRef target = gallivm->target;
+ LLVMTypeRef elem_types[3];
+@@ -225,10 +239,17 @@ create_jit_vertex_buffer_type(struct gallivm_state *gallivm)
+ elem_types[1] = LLVMInt32TypeInContext(gallivm->context);
+ elem_types[2] = LLVMPointerType(LLVMInt8TypeInContext(gallivm->context), 0); /* vs_constants */
+
++#if HAVE_LLVM >= 0x0300
++ vb_type = LLVMStructCreateNamed(gallivm->context, struct_name);
++ LLVMStructSetBody(vb_type, elem_types,
++ Elements(elem_types), 0);
++#else
+ vb_type = LLVMStructTypeInContext(gallivm->context, elem_types,
+ Elements(elem_types), 0);
++ LLVMAddTypeName(gallivm->module, struct_name, vb_type);
+
+ LLVMInvalidateStructLayout(gallivm->target, vb_type);
++#endif
+
+ LP_CHECK_MEMBER_OFFSET(struct pipe_vertex_buffer, stride,
+ target, vb_type, 0);
+@@ -258,10 +279,17 @@ create_jit_vertex_header(struct gallivm_state *gallivm, int data_elems)
+ elem_types[1] = LLVMArrayType(LLVMFloatTypeInContext(gallivm->context), 4);
+ elem_types[2] = LLVMArrayType(elem_types[1], data_elems);
+
++#if HAVE_LLVM >= 0x0300
++ vertex_header = LLVMStructCreateNamed(gallivm->context, struct_name);
++ LLVMStructSetBody(vertex_header, elem_types,
++ Elements(elem_types), 0);
++#else
+ vertex_header = LLVMStructTypeInContext(gallivm->context, elem_types,
+ Elements(elem_types), 0);
++ LLVMAddTypeName(gallivm->module, struct_name, vertex_header);
+
+ LLVMInvalidateStructLayout(gallivm->target, vertex_header);
++#endif
+
+ /* these are bit-fields and we can't take address of them
+ LP_CHECK_MEMBER_OFFSET(struct vertex_header, clipmask,
+@@ -284,8 +312,6 @@ create_jit_vertex_header(struct gallivm_state *gallivm, int data_elems)
+ target, vertex_header,
+ DRAW_JIT_VERTEX_DATA);
+
+- LLVMAddTypeName(gallivm->module, struct_name, vertex_header);
+-
+ return vertex_header;
+ }
+
+@@ -299,19 +325,15 @@ create_jit_types(struct draw_llvm *llvm)
+ struct gallivm_state *gallivm = llvm->gallivm;
+ LLVMTypeRef texture_type, context_type, buffer_type, vb_type;
+
+- texture_type = create_jit_texture_type(gallivm);
+- LLVMAddTypeName(gallivm->module, "texture", texture_type);
++ texture_type = create_jit_texture_type(gallivm, "texture");
+
+- context_type = create_jit_context_type(gallivm, texture_type);
+- LLVMAddTypeName(gallivm->module, "draw_jit_context", context_type);
++ context_type = create_jit_context_type(gallivm, texture_type, "draw_jit_context");
+ llvm->context_ptr_type = LLVMPointerType(context_type, 0);
+
+ buffer_type = LLVMPointerType(LLVMIntTypeInContext(gallivm->context, 8), 0);
+- LLVMAddTypeName(gallivm->module, "buffer", buffer_type);
+ llvm->buffer_ptr_type = LLVMPointerType(buffer_type, 0);
+
+- vb_type = create_jit_vertex_buffer_type(gallivm);
+- LLVMAddTypeName(gallivm->module, "pipe_vertex_buffer", vb_type);
++ vb_type = create_jit_vertex_buffer_type(gallivm, "pipe_vertex_buffer");
+ llvm->vb_ptr_type = LLVMPointerType(vb_type, 0);
+ }
+
+diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
+index 8636cd6..f44749d 100644
+--- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
++++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
+@@ -27,17 +27,23 @@
+
+ #include <llvm-c/Core.h>
+ #include <llvm/Target/TargetMachine.h>
+-#include <llvm/Target/TargetRegistry.h>
+-#include <llvm/Target/TargetSelect.h>
+ #include <llvm/Target/TargetInstrInfo.h>
+ #include <llvm/Support/raw_ostream.h>
+ #include <llvm/Support/MemoryObject.h>
+
++#if HAVE_LLVM >= 0x0300
++#include <llvm/Support/TargetRegistry.h>
++#include <llvm/Support/TargetSelect.h>
++#else /* HAVE_LLVM < 0x0300 */
++#include <llvm/Target/TargetRegistry.h>
++#include <llvm/Target/TargetSelect.h>
++#endif /* HAVE_LLVM < 0x0300 */
++
+ #if HAVE_LLVM >= 0x0209
+ #include <llvm/Support/Host.h>
+-#else
++#else /* HAVE_LLVM < 0x0209 */
+ #include <llvm/System/Host.h>
+-#endif
++#endif /* HAVE_LLVM < 0x0209 */
+
+ #if HAVE_LLVM >= 0x0207
+ #include <llvm/MC/MCDisassembler.h>
+@@ -193,14 +199,23 @@ lp_disassemble(const void* func)
+
+ InitializeAllDisassemblers();
+
++#if HAVE_LLVM >= 0x0300
++ OwningPtr<const MCAsmInfo> AsmInfo(T->createMCAsmInfo(Triple));
++#else
+ OwningPtr<const MCAsmInfo> AsmInfo(T->createAsmInfo(Triple));
++#endif
+
+ if (!AsmInfo) {
+ debug_printf("error: no assembly info for target %s\n", Triple.c_str());
+ return;
+ }
+
++#if HAVE_LLVM >= 0x0300
++ const MCSubtargetInfo *STI = T->createMCSubtargetInfo(Triple, sys::getHostCPUName(), "");
++ OwningPtr<const MCDisassembler> DisAsm(T->createMCDisassembler(*STI));
++#else
+ OwningPtr<const MCDisassembler> DisAsm(T->createMCDisassembler());
++#endif
+ if (!DisAsm) {
+ debug_printf("error: no disassembler for target %s\n", Triple.c_str());
+ return;
+@@ -213,7 +228,11 @@ lp_disassemble(const void* func)
+ #else
+ int AsmPrinterVariant = AsmInfo->getAssemblerDialect();
+ #endif
+-#if HAVE_LLVM >= 0x0208
++
++#if HAVE_LLVM >= 0x0300
++ OwningPtr<MCInstPrinter> Printer(
++ T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI));
++#elif HAVE_LLVM >= 0x0208
+ OwningPtr<MCInstPrinter> Printer(
+ T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo));
+ #else
+@@ -253,7 +272,11 @@ lp_disassemble(const void* func)
+
+ if (!DisAsm->getInstruction(Inst, Size, memoryObject,
+ pc,
+- nulls())) {
++#if HAVE_LLVM >= 0x0300
++ nulls(), nulls())) {
++#else
++ nulls())) {
++#endif
+ debug_printf("invalid\n");
+ pc += 1;
+ }
+@@ -276,7 +299,9 @@ lp_disassemble(const void* func)
+ * Print the instruction.
+ */
+
+-#if HAVE_LLVM >= 0x208
++#if HAVE_LLVM >= 0x0300
++ Printer->printInst(&Inst, Out, "");
++#elif HAVE_LLVM >= 0x208
+ Printer->printInst(&Inst, Out);
+ #else
+ Printer->printInst(&Inst);
+@@ -289,7 +314,11 @@ lp_disassemble(const void* func)
+
+ pc += Size;
+
++#if HAVE_LLVM >= 0x0300
++ const MCInstrDesc &TID = TII->get(Inst.getOpcode());
++#else
+ const TargetInstrDesc &TID = TII->get(Inst.getOpcode());
++#endif
+
+ /*
+ * Keep track of forward jumps to a nearby address.
+diff --git a/src/gallium/auxiliary/gallivm/lp_bld_type.c b/src/gallium/auxiliary/gallivm/lp_bld_type.c
+index c5cf6d4..efd159f 100644
+--- a/src/gallium/auxiliary/gallivm/lp_bld_type.c
++++ b/src/gallium/auxiliary/gallivm/lp_bld_type.c
+@@ -325,16 +325,18 @@ lp_typekind_name(LLVMTypeKind t)
+ return "LLVMArrayTypeKind";
+ case LLVMPointerTypeKind:
+ return "LLVMPointerTypeKind";
++#if HAVE_LLVM < 0x0300
+ case LLVMOpaqueTypeKind:
+ return "LLVMOpaqueTypeKind";
++#endif
+ case LLVMVectorTypeKind:
+ return "LLVMVectorTypeKind";
+ case LLVMMetadataTypeKind:
+ return "LLVMMetadataTypeKind";
+- /* Only in LLVM 2.7 and later???
++#if HAVE_LLVM == 0x0207
+ case LLVMUnionTypeKind:
+ return "LLVMUnionTypeKind";
+- */
++#endif
+ default:
+ return "unknown LLVMTypeKind";
+ }
+diff --git a/src/gallium/drivers/llvmpipe/lp_jit.c b/src/gallium/drivers/llvmpipe/lp_jit.c
+index 268f0fa..ce92a80 100644
+--- a/src/gallium/drivers/llvmpipe/lp_jit.c
++++ b/src/gallium/drivers/llvmpipe/lp_jit.c
+@@ -68,10 +68,17 @@ lp_jit_create_types(struct llvmpipe_context *lp)
+ elem_types[LP_JIT_TEXTURE_BORDER_COLOR] =
+ LLVMArrayType(LLVMFloatTypeInContext(lc), 4);
+
++#if HAVE_LLVM >= 0x0300
++ texture_type = LLVMStructCreateNamed(gallivm->context, "texture");
++ LLVMStructSetBody(texture_type, elem_types,
++ Elements(elem_types), 0);
++#else
+ texture_type = LLVMStructTypeInContext(lc, elem_types,
+ Elements(elem_types), 0);
++ LLVMAddTypeName(gallivm->module, "texture", texture_type);
+
+ LLVMInvalidateStructLayout(gallivm->target, texture_type);
++#endif
+
+ LP_CHECK_MEMBER_OFFSET(struct lp_jit_texture, width,
+ gallivm->target, texture_type,
+@@ -112,8 +119,6 @@ lp_jit_create_types(struct llvmpipe_context *lp)
+
+ LP_CHECK_STRUCT_SIZE(struct lp_jit_texture,
+ gallivm->target, texture_type);
+-
+- LLVMAddTypeName(gallivm->module, "texture", texture_type);
+ }
+
+ /* struct lp_jit_context */
+@@ -129,11 +134,19 @@ lp_jit_create_types(struct llvmpipe_context *lp)
+ elem_types[LP_JIT_CTX_TEXTURES] = LLVMArrayType(texture_type,
+ PIPE_MAX_SAMPLERS);
+
++#if HAVE_LLVM >= 0x0300
++ context_type = LLVMStructCreateNamed(gallivm->context, "context");
++ LLVMStructSetBody(context_type, elem_types,
++ Elements(elem_types), 0);
++#else
+ context_type = LLVMStructTypeInContext(lc, elem_types,
+ Elements(elem_types), 0);
+
+ LLVMInvalidateStructLayout(gallivm->target, context_type);
+
++ LLVMAddTypeName(gallivm->module, "context", context_type);
++#endif
++
+ LP_CHECK_MEMBER_OFFSET(struct lp_jit_context, constants,
+ gallivm->target, context_type,
+ LP_JIT_CTX_CONSTANTS);
+@@ -155,8 +168,6 @@ lp_jit_create_types(struct llvmpipe_context *lp)
+ LP_CHECK_STRUCT_SIZE(struct lp_jit_context,
+ gallivm->target, context_type);
+
+- LLVMAddTypeName(gallivm->module, "context", context_type);
+-
+ lp->jit_context_ptr_type = LLVMPointerType(context_type, 0);
+ }
+
diff --git a/multilib/lib32-pcre/PKGBUILD b/multilib/lib32-pcre/PKGBUILD
index 63bc0da22..b798dc530 100644
--- a/multilib/lib32-pcre/PKGBUILD
+++ b/multilib/lib32-pcre/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 57529 2011-10-30 08:00:24Z bluewind $
+# $Id: PKGBUILD 60943 2011-12-19 18:57:19Z bluewind $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
_pkgbasename=pcre
pkgname=lib32-$_pkgbasename
-pkgver=8.20
+pkgver=8.21
pkgrel=1
pkgdesc="A library that implements Perl 5-style regular expressions (32-bit)"
arch=('x86_64')
@@ -13,7 +13,7 @@ depends=('lib32-gcc-libs' $_pkgbasename)
makedepends=('gcc-multilib')
options=('!libtool')
source=(ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/${_pkgbasename}-${pkgver}.tar.bz2)
-md5sums=('a1931c70e1273e3450d5036fe273d25c')
+md5sums=('0a7b592bea64b7aa7f4011fc7171a730')
build() {
cd "${srcdir}"/${_pkgbasename}-${pkgver}
diff --git a/multilib/lib32-pixman/PKGBUILD b/multilib/lib32-pixman/PKGBUILD
index b2e57ee93..a064566ee 100644
--- a/multilib/lib32-pixman/PKGBUILD
+++ b/multilib/lib32-pixman/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 38980 2011-02-04 14:53:22Z ibiru $
+# $Id: PKGBUILD 60941 2011-12-19 18:56:50Z bluewind $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
_pkgbasename=pixman
pkgname=lib32-$_pkgbasename
-pkgver=0.20.2
+pkgver=0.24.0
pkgrel=1
pkgdesc="Pixman library (32-bit)"
arch=('x86_64')
@@ -12,7 +12,7 @@ depends=('lib32-glibc' $_pkgbasename)
makedepends=('gcc-multilib')
options=('!libtool')
source=(http://xorg.freedesktop.org/releases/individual/lib/${_pkgbasename}-${pkgver}.tar.bz2)
-sha1sums=('9972c8f8ce484f7649d9f588168cd29f61c05c63')
+sha1sums=('a3b73c3ea6cada20d705203a394f574aa69e2177')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-readline/PKGBUILD b/multilib/lib32-readline/PKGBUILD
index ea951db7b..7ec1ea250 100644
--- a/multilib/lib32-readline/PKGBUILD
+++ b/multilib/lib32-readline/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 57756 2011-11-02 09:06:48Z bluewind $
+# $Id: PKGBUILD 60938 2011-12-19 18:55:02Z bluewind $
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
_pkgbasename=readline
pkgname=lib32-$_pkgbasename
_basever=6.2
-_patchlevel=001 #prepare for some patches
+_patchlevel=002 #prepare for some patches
pkgver=$_basever.$_patchlevel
pkgrel=1
pkgdesc="GNU readline library (32-bit)"
@@ -17,11 +17,14 @@ makedepends=('gcc-multilib')
source=(http://ftp.gnu.org/gnu/readline/readline-$_basever.tar.gz)
if [ $_patchlevel -gt 00 ]; then
for (( p=1; p<=$((10#${_patchlevel})); p++ )); do
- source=(${source[@]} http://ftp.gnu.org/gnu/readline/readline-$_basever-patches/readline${_basever//./}-$(printf "%03d" $p))
+ source=(${source[@]} http://ftp.gnu.org/gnu/readline/readline-$_basever-patches/readline${_basever//./}-$(printf "%03d" $p){,.sig})
done
fi
md5sums=('67948acb2ca081f23359d0256e9a271c'
- '83287d52a482f790dfb30ec0a8746669')
+ '83287d52a482f790dfb30ec0a8746669'
+ '8e6a51e2e0e6e45a82752e3692c111ac'
+ '0665020ea118e8434bd145fb71f452cc'
+ '285361ca6d48c51ae2428157e174e812')
build() {
cd ${srcdir}/${_pkgbasename}-$_basever
@@ -30,10 +33,9 @@ build() {
export CXX="g++ -m32"
export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
- for p in ../readline61-*; do
- [ -e "$p" ] || continue
- msg "applying patch ${p}"
- patch -Np0 -i ${p}
+ for (( p=1; p<=$((10#${_patchlevel})); p++ )); do
+ msg "applying patch readline${_basever//./}-$(printf "%03d" $p)"
+ patch -Np0 -i $srcdir/readline${_basever//./}-$(printf "%03d" $p)
done
# Remove RPATH from shared objects (FS#14366)
diff --git a/multilib/lib32-udev/PKGBUILD b/multilib/lib32-udev/PKGBUILD
index 21c6b26d0..36240f6c1 100644
--- a/multilib/lib32-udev/PKGBUILD
+++ b/multilib/lib32-udev/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id$
+# $Id: PKGBUILD 60965 2011-12-19 19:41:38Z lcarlier $
# Maintainer: Aaron Griffin <aaron@archlinux.org>
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
# Maintainer: Thomas Bächler <thomas@archlinux.org>
pkgname=('lib32-udev')
-pkgver=174
+pkgver=175
pkgrel=1
arch=('x86_64')
pkgdesc="The userspace dev tools (udev) (32-bit)"
@@ -14,8 +14,8 @@ options=(!makeflags !libtool)
depends=('lib32-glibc' 'lib32-glib2' 'lib32-acl' 'lib32-libusb-compat' 'udev')
makedepends=('gcc-multilib' 'gperf')
#source=(http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev-$pkgver.tar.bz2)
-source=(http://people.freedesktop.org/~kay/udev-$pkgver.tar.bz2)
-md5sums=('3b84706046a33d7a7e00491a1136804d')
+source=(http://people.freedesktop.org/~kay/udev/udev-$pkgver.tar.bz2)
+md5sums=('2fc9c1efcbde98e3d73ffee7a77aea47')
build() {
export CC="gcc -m32"