summaryrefslogtreecommitdiff
path: root/multilib
diff options
context:
space:
mode:
Diffstat (limited to 'multilib')
-rw-r--r--multilib/lib32-mesa/PKGBUILD18
-rw-r--r--multilib/lib32-mesa/mesa-8.0.3-llvm-3.1-fixes.patch44
2 files changed, 54 insertions, 8 deletions
diff --git a/multilib/lib32-mesa/PKGBUILD b/multilib/lib32-mesa/PKGBUILD
index 5a5c9fc2c..3804b7ee1 100644
--- a/multilib/lib32-mesa/PKGBUILD
+++ b/multilib/lib32-mesa/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 71024 2012-05-21 22:26:05Z lcarlier $
+# $Id: PKGBUILD 71697 2012-06-01 13:11:41Z lcarlier $
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
@@ -16,23 +16,23 @@ if [ "${_git}" = "true" ]; then
pkgver=8.0.3
fi
-pkgrel=3
+pkgrel=3.1
arch=('x86_64')
-makedepends=('glproto>=1.4.15' 'lib32-libdrm>=2.4.31' 'lib32-libxxf86vm>=1.1.1' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.0.1' 'lib32-libx11>=1.4.99.1'
+makedepends=('glproto>=1.4.15' 'lib32-libdrm>=2.4.33' 'lib32-libxxf86vm>=1.1.1' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.0.1' 'lib32-libx11>=1.4.99.1'
'lib32-libxt>=1.1.1' 'lib32-gcc-libs>=4.6.1' 'dri2proto>=2.6' 'python2' 'libxml2' 'gcc-multilib' 'imake' 'lib32-llvm' 'namcap')
url="http://mesa3d.sourceforge.net"
license=('custom')
+source=('mesa-8.0.3-llvm-3.1-fixes.patch')
if [ "${_git}" = "true" ]; then
# mesa git shot from 7.11 branch - see for state: http://cgit.freedesktop.org/mesa/mesa/commit/?h=7.11&id=1ae00c5960af83bea9545a18a1754bad83d5cbd0
- #source=('ftp://ftp.archlinux.org/other/mesa/mesa-1ae00c5960af83bea9545a18a1754bad83d5cbd0.tar.bz2')
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=(${source[@]} "MesaLib-git${_gitdate}.zip"::"http://cgit.freedesktop.org/mesa/mesa/snapshot/mesa-4464ee1a9aa3745109cee23531e3fb2323234d07.tar.bz2")
- md5sums=('cc5ee15e306b8c15da6a478923797171')
+ source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2")
+ md5sums=('0082f4d17674155aa13bc611a5687788'
+ 'cc5ee15e306b8c15da6a478923797171')
fi
-options=('!buildflags')
+#options=('!buildflags')
build() {
export CC="gcc -m32"
@@ -47,6 +47,8 @@ build() {
cd ${srcdir}/?esa-*
+ patch -Np1 -i "${srcdir}/mesa-8.0.3-llvm-3.1-fixes.patch"
+
autoreconf -vfi
if [ "${_git}" = "true" ]; then
diff --git a/multilib/lib32-mesa/mesa-8.0.3-llvm-3.1-fixes.patch b/multilib/lib32-mesa/mesa-8.0.3-llvm-3.1-fixes.patch
new file mode 100644
index 000000000..922577aef
--- /dev/null
+++ b/multilib/lib32-mesa/mesa-8.0.3-llvm-3.1-fixes.patch
@@ -0,0 +1,44 @@
+diff --git a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
+index a50a51d..f1bb4d9 100644
+--- a/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
++++ b/src/gallium/auxiliary/gallivm/lp_bld_debug.cpp
+@@ -235,7 +235,24 @@ lp_disassemble(const void* func)
+ int AsmPrinterVariant = AsmInfo->getAssemblerDialect();
+ #endif
+
+-#if HAVE_LLVM >= 0x0300
++#if HAVE_LLVM >= 0x0301
++ OwningPtr<const MCRegisterInfo> MRI(T->createMCRegInfo(Triple));
++ if (!MRI) {
++ debug_printf("error: no register info for target %s\n", Triple.c_str());
++ return;
++ }
++
++ OwningPtr<const MCInstrInfo> MII(T->createMCInstrInfo());
++ if (!MII) {
++ debug_printf("error: no instruction info for target %s\n", Triple.c_str());
++ return;
++ }
++#endif
++
++#if HAVE_LLVM >= 0x0301
++ OwningPtr<MCInstPrinter> Printer(
++ T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *MII, *MRI, *STI));
++#elif HAVE_LLVM == 0x0300
+ OwningPtr<MCInstPrinter> Printer(
+ T->createMCInstPrinter(AsmPrinterVariant, *AsmInfo, *STI));
+ #elif HAVE_LLVM >= 0x0208
+diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
+index fe7616b..68f8808 100644
+--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
++++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
+@@ -62,7 +62,11 @@
+ extern "C" void
+ lp_register_oprofile_jit_event_listener(LLVMExecutionEngineRef EE)
+ {
++#if HAVE_LLVM >= 0x0301
++ llvm::unwrap(EE)->RegisterJITEventListener(llvm::JITEventListener::createOProfileJITEventListener());
++#else
+ llvm::unwrap(EE)->RegisterJITEventListener(llvm::createOProfileJITEventListener());
++#endif
+ }