[arch-commits] Commit in lib32-mesa/repos/multilib-x86_64 (3 files)

lcarlier at nymeria.archlinux.org lcarlier at nymeria.archlinux.org
Wed Jan 23 20:39:24 UTC 2013


    Date: Wednesday, January 23, 2013 @ 21:39:23
  Author: lcarlier
Revision: 82751

archrelease: copy trunk to multilib-x86_64

Added:
  lib32-mesa/repos/multilib-x86_64/PKGBUILD
    (from rev 82750, lib32-mesa/trunk/PKGBUILD)
  lib32-mesa/repos/multilib-x86_64/llvm32.patch
    (from rev 82750, lib32-mesa/trunk/llvm32.patch)
Deleted:
  lib32-mesa/repos/multilib-x86_64/PKGBUILD

--------------+
 PKGBUILD     |  509 ++++++++++++++++++++++++++++-----------------------------
 llvm32.patch |  284 +++++++++++++++++++++++++++++++
 2 files changed, 539 insertions(+), 254 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD	2013-01-23 20:39:17 UTC (rev 82750)
+++ PKGBUILD	2013-01-23 20:39:23 UTC (rev 82751)
@@ -1,254 +0,0 @@
-# $Id$
-# Contributor: Jan de Groot <jgc at archlinux.org>
-# Contributor: Andreas Radke <andyrtr at archlinux.org>
-
-pkgbase=lib32-mesa
-pkgname=('lib32-libglapi' 'lib32-libgl' 'lib32-mesa' 'lib32-osmesa' 'lib32-libgles' 'lib32-ati-dri' 'lib32-intel-dri'
-         'lib32-nouveau-dri') # lib32-libgbm needs udev
-#_git=true
-#_gitdate=20121005
-_git=false
-
-if [ "${_git}" = "true" ]; then
-    pkgver=8.99.git_$_gitdate
-  else
-    pkgver=9.0.1
-fi
-
-pkgrel=1
-arch=('x86_64')
-makedepends=('glproto>=1.4.16' 'lib32-libdrm>=2.4.39' 'lib32-libxxf86vm>=1.1.2' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.1.0'
-             'lib32-libx11>=1.5.0' 'lib32-libxt>=1.1.3' 'lib32-gcc-libs>=4.7.1-6' 'dri2proto>=2.8' 'python2' 'libxml2'
-             'gcc-multilib' 'imake' 'lib32-llvm')
-url="http://mesa3d.sourceforge.net"
-license=('custom')
-options=('!libtool')
-#source=(git_fixes.diff)
-source=()
-if [ "${_git}" = "true" ]; then
-  # mesa git shot from 9.0 branch - see for state: http://cgit.freedesktop.org/mesa/mesa/log/?h=9.0
-  #source=(${source[@]} 'ftp://ftp.archlinux.org/other/mesa/mesa-41d14eaf193c6b1eb87fe1998808a887f1c6c698.tar.gz')
-  source=(${source[@]} "MesaLib-git${_gitdate}.zip"::"http://cgit.freedesktop.org/mesa/mesa/snapshot/mesa-542f6feda9bf18267dbd337943a5e871400d425a.tar.gz")
-else
-  source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2")
-fi
-md5sums=('97d6554c05ea7449398afe3a0ede7018')
-
-build() {
-  export CC="gcc -m32"
-  export CXX="g++ -m32"
-  export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
-  # for our llvm-config for 32 bit
-  export LLVM_CONFIG=/usr/bin/llvm-config32
-
-  # fix segfault with gfx cards > Ati R700
-  # export CFLAGS="${CFLAGS} -O1"
-  # export CXXFLAGS="${CXXFLAGS} -O1"
-
-  cd ${srcdir}/?esa-*
-
-  COMMONOPTS="--prefix=/usr \
-    --sysconfdir=/etc \
-    --with-dri-driverdir=/usr/lib32/xorg/modules/dri \
-    --with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast \
-    --with-dri-drivers=i915,i965,r200,radeon,nouveau,swrast \
-    --enable-gallium-llvm \
-    --disable-gallium-egl --enable-shared-glapi \
-    --enable-shared-glapi \
-    --enable-glx-tls \
-    --enable-dri \
-    --enable-gles1 \
-    --enable-gles2 \
-    --disable-egl \
-    --enable-texture-float \
-    --enable-osmesa \
-    --enable-32-bit \
-    --libdir=/usr/lib32 "
-    # --enable-gbm disabled because it needs udev
-
-  if [ "${_git}" = "true" ]; then
-    ./autogen.sh \
-      $COMMONOPTS
-  else
-    autoreconf -vfi
-    ./configure \
-      $COMMONOPTS
-  fi
-
-  make
-}
-
-package_lib32-libglapi() {
-  depends=('lib32-glibc' 'libglapi')
-  pkgdesc="free implementation of the GL API -- shared library. The Mesa GL API module is responsible for dispatching all the gl* functions (32-bits)"
-
-  cd ${srcdir}/?esa-*   
-
-  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
-
-  install -m755 -d "${pkgdir}/usr/share/licenses/libglapi"
-  ln -s libglapi "${pkgdir}/usr/share/licenses/libglapi/lib32-libglapi"
-}
-
-package_lib32-libgl() {
-  depends=('lib32-libdrm>=2.4.39' 'lib32-libxxf86vm>=1.1.2' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.1.0' 'lib32-libglapi'
-           'libgl')
-  pkgdesc="Mesa 3-D graphics library and DRI software rasterizer (32-bit)"
-  # currently disabled so force the remove
-  conflicts=('lib32-libgbm')
-  replace=('lib32-libgbm')
-
-  cd ${srcdir}/?esa-*
-
-  # fix linking because of splitted package
-  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
-
-  # libGL & libdricore
-  make -C src/glx DESTDIR="${pkgdir}" install
-  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
-  
-  # fix linking because of splitted package - cleanup
-  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
-  
-  # --with-gallium-drivers=swrast
-  make -C src/gallium/targets/dri-swrast DESTDIR="${pkgdir}" install
-
-  install -m755 -d "${pkgdir}/usr/share/licenses/libgl"
-  ln -s libgl "${pkgdir}/usr/share/licenses/libgl/lib32-libgl"
-}
-
-package_lib32-mesa() {
-  # check also gl.pc
-  depends=('lib32-libgl' 'lib32-libx11>=1.5.0' 'lib32-libxext>=1.3.1' 'lib32-libxdamage' 'lib32-libxfixes' 'lib32-libxcb'
-           'lib32-libxxf86vm' 'mesa')
-  pkgdesc="Mesa 3-D graphics libraries and include files (32-bit)"
-
-  cd ${srcdir}/?esa-*
-
-  # .pc files
-  make -C src/mesa DESTDIR="${pkgdir}" install-pkgconfigDATA
-  make -C src/mesa/drivers/dri DESTDIR="${pkgdir}" install-pkgconfigDATA
-
-  install -m755 -d "${pkgdir}/usr/share/licenses/mesa"
-  ln -s mesa "$pkgdir/usr/share/licenses/mesa/lib32-mesa"
-}
-
-package_lib32-osmesa() {
-  depends=('lib32-libglapi' 'lib32-gcc-libs' 'osmesa')
-  optdepends=('opengl-man-pages: for the OpenGL API man pages')
-  pkgdesc="Mesa 3D off-screen rendering library (32-bits)"
-
-  # fix linking because of splitted package
-  make -C ${srcdir}/?esa-*/src/mapi/shared-glapi DESTDIR="${pkgdir}" install
-
-  make -C ${srcdir}/?esa-*/src/mesa/drivers/osmesa DESTDIR="${pkgdir}" install
-  
-  # fix linking because of splitted package - cleanup
-  make -C ${srcdir}/?esa-*/src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
-}
-
-# package_lib32-libgbm() {
-#   depends=('lib32-libglapi' 'lib32-libdrm' 'libgbm')
-#   pkgdesc="Mesa gbm library (32-bit)"
-# 
-#   cd ${srcdir}/?esa-*
-# 
-#   # fix linking because of splitted package
-#   make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
-# 
-#   make -C src/gbm DESTDIR="${pkgdir}" install
-# 
-#   # fix linking because of splitted package - cleanup
-#   make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
-# 
-#   install -m755 -d "${pkgdir}/usr/share/licenses/libgbm"
-#   ln -s libgbm "$pkgdir/usr/share/licenses/libgbm/lib32-libgbm"
-# }
-
-package_lib32-libgles() {
-  depends=('lib32-libglapi' 'lib32-libdrm' 'libgles')
-  pkgdesc="Mesa GLES libraries (32-bit)"
-
-  cd ${srcdir}/?esa-*
-
-  # fix linking because of splitted package
-  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
-
-  # --enable-gles1 --enable-gles2
-  make -C src/mapi/es1api DESTDIR="${pkgdir}" install
-  make -C src/mapi/es2api DESTDIR="${pkgdir}" install
-
-  # fix linking because of splitted package - cleanup
-  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
-  
-  rm -r "${pkgdir}"/usr/include
-  
-  install -m755 -d "${pkgdir}/usr/share/licenses/libgles"
-  ln -s libgles "$pkgdir/usr/share/licenses/libgles/lib32-libgles"
-}
-
-package_lib32-ati-dri() {
-  depends=("lib32-libgl=${pkgver}" 'ati-dri')
-  pkgdesc="Mesa DRI radeon/r200 + Gallium3D for r300 and later chipsets drivers for AMD/ATI Radeon (32-bit)"
-  conflicts=('xf86-video-ati<6.9.0-6')
-
-  cd ${srcdir}/?esa-*
-  
-  # fix linking because of splitted package
-  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
-
-  # classic mesa drivers for radeon,r200
-  make -C src/mesa/drivers/dri/radeon DESTDIR="${pkgdir}" install
-  make -C src/mesa/drivers/dri/r200 DESTDIR="${pkgdir}" install
-  # gallium3D driver for r300,r600
-  make -C src/gallium/targets/dri-r300 DESTDIR="${pkgdir}" install
-  make -C src/gallium/targets/dri-r600 DESTDIR="${pkgdir}" install
-  make -C src/gallium/targets/dri-radeonsi DESTDIR="${pkgdir}" install
-  
-  # fix linking because of splitted package - cleanup
-  make -C src/mesa/libdricore DESTDIR="${pkgdir}" uninstall
-  
-  install -m755 -d "${pkgdir}/usr/share/licenses/ati-dri"
-  ln -s ati-dri "$pkgdir/usr/share/licenses/ati-dri/lib32-ati-dri"
-}
-
-package_lib32-intel-dri() {
-  depends=("lib32-libgl=${pkgver}" 'intel-dri')
-  pkgdesc="Mesa DRI drivers for Intel (32-bit)"
-
-  cd ${srcdir}/?esa-*
-  
-  # fix linking because of splitted package
-  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
-
-  make -C src/mesa/drivers/dri/i915 DESTDIR="${pkgdir}" install
-  make -C src/mesa/drivers/dri/i965 DESTDIR="${pkgdir}" install
-  
-  # fix linking because of splitted package - cleanup
-  make -C src/mesa/libdricore DESTDIR="${pkgdir}" uninstall
-  
-  install -m755 -d "${pkgdir}/usr/share/licenses/intel-dri"
-  ln -s intel-dri "$pkgdir/usr/share/licenses/intel-dri/lib32-intel-dri"
-}
-
-package_lib32-nouveau-dri() {
-  depends=("lib32-libgl=${pkgver}" 'nouveau-dri')
-  pkgdesc="Mesa classic DRI + Gallium3D drivers for Nouveau (32-bit)"
-
-  cd ${srcdir}/?esa-*
-  
-  # fix linking because of splitted package
-  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
-
-  # classic mesa driver for nv10 , nv20 nouveau_vieux_dri.so
-  make -C src/mesa/drivers/dri/nouveau DESTDIR="${pkgdir}" install
-  # gallium3D driver for nv30 - nv40 - nv50 nouveau_dri.so
-  make -C src/gallium/targets/dri-nouveau DESTDIR="${pkgdir}" install
-  
-  # fix linking because of splitted package - cleanup
-  make -C src/mesa/libdricore DESTDIR="${pkgdir}" uninstall
-  
-  install -m755 -d "${pkgdir}/usr/share/licenses/nouveau-dri"
-  ln -s nouveau-dri "$pkgdir/usr/share/licenses/nouveau-dri/lib32-nouveau-dri"
-}
-

Copied: lib32-mesa/repos/multilib-x86_64/PKGBUILD (from rev 82750, lib32-mesa/trunk/PKGBUILD)
===================================================================
--- PKGBUILD	                        (rev 0)
+++ PKGBUILD	2013-01-23 20:39:23 UTC (rev 82751)
@@ -0,0 +1,255 @@
+# $Id$
+# Contributor: Jan de Groot <jgc at archlinux.org>
+# Contributor: Andreas Radke <andyrtr at archlinux.org>
+
+pkgbase=lib32-mesa
+pkgname=('lib32-libglapi' 'lib32-libgl' 'lib32-mesa' 'lib32-osmesa' 'lib32-libgles' 'lib32-ati-dri' 'lib32-intel-dri'
+         'lib32-nouveau-dri') # lib32-libgbm needs udev
+#_git=true
+#_gitdate=20121005
+_git=false
+
+if [ "${_git}" = "true" ]; then
+    pkgver=8.99.git_$_gitdate
+  else
+    pkgver=9.0.2
+fi
+
+pkgrel=1
+arch=('x86_64')
+makedepends=('glproto>=1.4.16' 'lib32-libdrm>=2.4.39' 'lib32-libxxf86vm>=1.1.2' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.1.0'
+             'lib32-libx11>=1.5.0' 'lib32-libxt>=1.1.3' 'lib32-gcc-libs>=4.7.1-6' 'dri2proto>=2.8' 'python2' 'libxml2'
+             'gcc-multilib' 'imake' 'lib32-llvm-amdgpu-snapshot')
+url="http://mesa3d.sourceforge.net"
+license=('custom')
+options=('!libtool')
+source=(llvm32.patch)
+if [ "${_git}" = "true" ]; then
+  # mesa git shot from 9.0 branch - see for state: http://cgit.freedesktop.org/mesa/mesa/log/?h=9.0
+  #source=(${source[@]} 'ftp://ftp.archlinux.org/other/mesa/mesa-41d14eaf193c6b1eb87fe1998808a887f1c6c698.tar.gz')
+  source=(${source[@]} "MesaLib-git${_gitdate}.zip"::"http://cgit.freedesktop.org/mesa/mesa/snapshot/mesa-542f6feda9bf18267dbd337943a5e871400d425a.tar.gz")
+else
+  source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2")
+fi
+md5sums=('5fe9ad0c5beed19bc98d8c34aaad4ade'
+         'dc45d1192203e418163e0017640e1cfc')
+
+build() {
+  export CC="gcc -m32"
+  export CXX="g++ -m32"
+  export PKG_CONFIG_PATH="/usr/lib32/pkgconfig"
+  # for our llvm-config for 32 bit
+  export LLVM_CONFIG=/usr/bin/llvm-config32
+
+  cd ${srcdir}/?esa-*
+
+  patch -Np1 -i ${srcdir}/llvm32.patch
+
+  COMMONOPTS="--prefix=/usr \
+    --sysconfdir=/etc \
+    --with-dri-driverdir=/usr/lib32/xorg/modules/dri \
+    --with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast \
+    --with-dri-drivers=i915,i965,r200,radeon,nouveau,swrast \
+    --enable-gallium-llvm \
+    --disable-gallium-egl --enable-shared-glapi \
+    --enable-shared-glapi \
+    --enable-glx-tls \
+    --enable-dri \
+    --enable-gles1 \
+    --enable-gles2 \
+    --disable-egl \
+    --enable-texture-float \
+    --enable-osmesa \
+    --enable-32-bit \
+    --libdir=/usr/lib32 "
+    # --enable-gbm disabled because it needs udev
+
+  if [ "${_git}" = "true" ]; then
+    ./autogen.sh \
+      $COMMONOPTS
+  else
+    autoreconf -vfi
+    ./configure \
+      $COMMONOPTS
+  fi
+
+  # fix a build break with new llvm
+  sed -i "s:-Werror=implicit-function-declaration::" src/gallium/drivers/r600/Makefile
+
+  make
+}
+
+package_lib32-libglapi() {
+  depends=('lib32-glibc' 'libglapi')
+  pkgdesc="free implementation of the GL API -- shared library. The Mesa GL API module is responsible for dispatching all the gl* functions (32-bits)"
+
+  cd ${srcdir}/?esa-*   
+
+  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
+
+  install -m755 -d "${pkgdir}/usr/share/licenses/libglapi"
+  ln -s libglapi "${pkgdir}/usr/share/licenses/libglapi/lib32-libglapi"
+}
+
+package_lib32-libgl() {
+  depends=('lib32-libdrm>=2.4.39' 'lib32-libxxf86vm>=1.1.2' 'lib32-libxdamage>=1.1.3' 'lib32-expat>=2.1.0' 'lib32-libglapi'
+           'libgl')
+  pkgdesc="Mesa 3-D graphics library and DRI software rasterizer (32-bit)"
+  # currently disabled so force the remove
+  conflicts=('lib32-libgbm')
+  replace=('lib32-libgbm')
+
+  cd ${srcdir}/?esa-*
+
+  # fix linking because of splitted package
+  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
+
+  # libGL & libdricore
+  make -C src/glx DESTDIR="${pkgdir}" install
+  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
+  
+  # fix linking because of splitted package - cleanup
+  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
+  
+  # --with-gallium-drivers=swrast
+  make -C src/gallium/targets/dri-swrast DESTDIR="${pkgdir}" install
+
+  install -m755 -d "${pkgdir}/usr/share/licenses/libgl"
+  ln -s libgl "${pkgdir}/usr/share/licenses/libgl/lib32-libgl"
+}
+
+package_lib32-mesa() {
+  # check also gl.pc
+  depends=('lib32-libgl' 'lib32-libx11>=1.5.0' 'lib32-libxext>=1.3.1' 'lib32-libxdamage' 'lib32-libxfixes' 'lib32-libxcb'
+           'lib32-libxxf86vm' 'mesa')
+  pkgdesc="Mesa 3-D graphics libraries and include files (32-bit)"
+
+  cd ${srcdir}/?esa-*
+
+  # .pc files
+  make -C src/mesa DESTDIR="${pkgdir}" install-pkgconfigDATA
+  make -C src/mesa/drivers/dri DESTDIR="${pkgdir}" install-pkgconfigDATA
+
+  install -m755 -d "${pkgdir}/usr/share/licenses/mesa"
+  ln -s mesa "$pkgdir/usr/share/licenses/mesa/lib32-mesa"
+}
+
+package_lib32-osmesa() {
+  depends=('lib32-libglapi' 'lib32-gcc-libs' 'osmesa')
+  optdepends=('opengl-man-pages: for the OpenGL API man pages')
+  pkgdesc="Mesa 3D off-screen rendering library (32-bits)"
+
+  # fix linking because of splitted package
+  make -C ${srcdir}/?esa-*/src/mapi/shared-glapi DESTDIR="${pkgdir}" install
+
+  make -C ${srcdir}/?esa-*/src/mesa/drivers/osmesa DESTDIR="${pkgdir}" install
+  
+  # fix linking because of splitted package - cleanup
+  make -C ${srcdir}/?esa-*/src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
+}
+
+# package_lib32-libgbm() {
+#   depends=('lib32-libglapi' 'lib32-libdrm' 'libgbm')
+#   pkgdesc="Mesa gbm library (32-bit)"
+# 
+#   cd ${srcdir}/?esa-*
+# 
+#   # fix linking because of splitted package
+#   make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
+# 
+#   make -C src/gbm DESTDIR="${pkgdir}" install
+# 
+#   # fix linking because of splitted package - cleanup
+#   make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
+# 
+#   install -m755 -d "${pkgdir}/usr/share/licenses/libgbm"
+#   ln -s libgbm "$pkgdir/usr/share/licenses/libgbm/lib32-libgbm"
+# }
+
+package_lib32-libgles() {
+  depends=('lib32-libglapi' 'lib32-libdrm' 'libgles')
+  pkgdesc="Mesa GLES libraries (32-bit)"
+
+  cd ${srcdir}/?esa-*
+
+  # fix linking because of splitted package
+  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" install
+
+  # --enable-gles1 --enable-gles2
+  make -C src/mapi/es1api DESTDIR="${pkgdir}" install
+  make -C src/mapi/es2api DESTDIR="${pkgdir}" install
+
+  # fix linking because of splitted package - cleanup
+  make -C src/mapi/shared-glapi DESTDIR="${pkgdir}" uninstall
+  
+  rm -r "${pkgdir}"/usr/include
+  
+  install -m755 -d "${pkgdir}/usr/share/licenses/libgles"
+  ln -s libgles "$pkgdir/usr/share/licenses/libgles/lib32-libgles"
+}
+
+package_lib32-ati-dri() {
+  depends=("lib32-libgl=${pkgver}" 'ati-dri')
+  pkgdesc="Mesa DRI radeon/r200 + Gallium3D for r300 and later chipsets drivers for AMD/ATI Radeon (32-bit)"
+  conflicts=('xf86-video-ati<6.9.0-6')
+
+  cd ${srcdir}/?esa-*
+  
+  # fix linking because of splitted package
+  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
+
+  # classic mesa drivers for radeon,r200
+  make -C src/mesa/drivers/dri/radeon DESTDIR="${pkgdir}" install
+  make -C src/mesa/drivers/dri/r200 DESTDIR="${pkgdir}" install
+  # gallium3D driver for r300,r600
+  make -C src/gallium/targets/dri-r300 DESTDIR="${pkgdir}" install
+  make -C src/gallium/targets/dri-r600 DESTDIR="${pkgdir}" install
+  make -C src/gallium/targets/dri-radeonsi DESTDIR="${pkgdir}" install
+  
+  # fix linking because of splitted package - cleanup
+  make -C src/mesa/libdricore DESTDIR="${pkgdir}" uninstall
+  
+  install -m755 -d "${pkgdir}/usr/share/licenses/ati-dri"
+  ln -s ati-dri "$pkgdir/usr/share/licenses/ati-dri/lib32-ati-dri"
+}
+
+package_lib32-intel-dri() {
+  depends=("lib32-libgl=${pkgver}" 'intel-dri')
+  pkgdesc="Mesa DRI drivers for Intel (32-bit)"
+
+  cd ${srcdir}/?esa-*
+  
+  # fix linking because of splitted package
+  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
+
+  make -C src/mesa/drivers/dri/i915 DESTDIR="${pkgdir}" install
+  make -C src/mesa/drivers/dri/i965 DESTDIR="${pkgdir}" install
+  
+  # fix linking because of splitted package - cleanup
+  make -C src/mesa/libdricore DESTDIR="${pkgdir}" uninstall
+  
+  install -m755 -d "${pkgdir}/usr/share/licenses/intel-dri"
+  ln -s intel-dri "$pkgdir/usr/share/licenses/intel-dri/lib32-intel-dri"
+}
+
+package_lib32-nouveau-dri() {
+  depends=("lib32-libgl=${pkgver}" 'nouveau-dri')
+  pkgdesc="Mesa classic DRI + Gallium3D drivers for Nouveau (32-bit)"
+
+  cd ${srcdir}/?esa-*
+  
+  # fix linking because of splitted package
+  make -C src/mesa/libdricore DESTDIR="${pkgdir}" install
+
+  # classic mesa driver for nv10 , nv20 nouveau_vieux_dri.so
+  make -C src/mesa/drivers/dri/nouveau DESTDIR="${pkgdir}" install
+  # gallium3D driver for nv30 - nv40 - nv50 nouveau_dri.so
+  make -C src/gallium/targets/dri-nouveau DESTDIR="${pkgdir}" install
+  
+  # fix linking because of splitted package - cleanup
+  make -C src/mesa/libdricore DESTDIR="${pkgdir}" uninstall
+  
+  install -m755 -d "${pkgdir}/usr/share/licenses/nouveau-dri"
+  ln -s nouveau-dri "$pkgdir/usr/share/licenses/nouveau-dri/lib32-nouveau-dri"
+}
+

Copied: lib32-mesa/repos/multilib-x86_64/llvm32.patch (from rev 82750, lib32-mesa/trunk/llvm32.patch)
===================================================================
--- llvm32.patch	                        (rev 0)
+++ llvm32.patch	2013-01-23 20:39:23 UTC (rev 82751)
@@ -0,0 +1,284 @@
+From 8d9778589f4b3a174e884338adb0fe1bdeca5eb7 Mon Sep 17 00:00:00 2001
+From: Tom Stellard <thomas.stellard at amd.com>
+Date: Thu, 10 May 2012 14:21:54 +0000
+Subject: radeon: Support LLVM 3.2
+
+LLVM 3.2 and newer requires that the R600/SI backend be part of the
+LLVM tree.
+---
+diff --git a/configure.ac b/configure.ac
+index 896f98a..32f412b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1661,6 +1661,7 @@ if test "x$enable_gallium_llvm" = xyes; then
+             if $LLVM_CONFIG --components | grep -q '\<mcjit\>'; then
+                 LLVM_COMPONENTS="${LLVM_COMPONENTS} mcjit"
+             fi
++            LLVM_COMPONENTS="${LLVM_COMPONENTS} all-targets"
+             if test "x$enable_opencl" = xyes; then
+                 LLVM_COMPONENTS="${LLVM_COMPONENTS} ipo linker instrumentation"
+             fi
+@@ -1782,6 +1783,23 @@ gallium_require_drm_loader() {
+     fi
+ }
+ 
++radeon_llvm_check() {
++    LLVM_VERSION_MAJOR=`echo $LLVM_VERSION | cut -d. -f1`
++    if test "$LLVM_VERSION_MAJOR" -lt "3" -o "x$LLVM_VERSION" = "x3.0"; then
++        AC_MSG_ERROR([LLVM 3.1 or newer is required for the r600/radeonsi llvm compiler.])
++    fi
++    if test "$LLVM_VERSION_MAJOR" -ge "3" -a "x$LLVM_VERSION" != "x3.1" && $LLVM_CONFIG --targets-built | grep -qv '\<AMDGPU\>' ; then
++        AC_MSG_ERROR([To use the r600/radeonsi LLVM backend with LLVM 3.2 and newer, you need to fetch the LLVM source from:
++                      git://people.freedesktop.org/~tstellar/llvm master
++                      and build with --enable-experimental-targets==AMDGPU])
++    fi
++    if test "$LLVM_VERSION" = "3.2"; then
++        dnl LLVM 3.2 does not add experimental libraries to llvm-config's
++        dnl library list.
++        LLVM_LIBS="$LLVM_LIBS -lLLVMAMDGPUCodeGen -lLLVMAMDGPUDesc -lLLVMAMDGPUAsmPrinter -lLLVMAMDGPUInfo `$LLVM_CONFIG --libs mc`"
++    fi
++}
++
+ dnl Gallium drivers
+ dnl Duplicates in GALLIUM_DRIVERS_DIRS are removed by sorting it after this block
+ if test "x$with_gallium_drivers" != x; then
+@@ -1812,9 +1830,7 @@ if test "x$with_gallium_drivers" != x; then
+             gallium_require_drm_loader
+             GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS r600"
+             if test "x$enable_r600_llvm" = xyes -o "x$enable_opencl" = xyes; then
+-                if test "x$LLVM_VERSION" != "x3.1"; then
+-                    AC_MSG_ERROR([LLVM 3.1 is required for the r600 llvm compiler.])
+-                fi
++                radeon_llvm_check
+                 NEED_RADEON_GALLIUM=yes;
+             fi
+             if test "x$enable_r600_llvm" = xyes; then
+@@ -1829,9 +1845,7 @@ if test "x$with_gallium_drivers" != x; then
+             PKG_CHECK_MODULES([RADEON], [libdrm_radeon >= $LIBDRM_RADEON_REQUIRED])
+             gallium_require_drm_loader
+             GALLIUM_DRIVERS_DIRS="$GALLIUM_DRIVERS_DIRS radeonsi"
+-            if test "x$LLVM_VERSION" != "x3.1"; then
+-                AC_MSG_ERROR([LLVM 3.1 is required to build the radeonsi driver.])
+-            fi
++            radeon_llvm_check
+ 	    NEED_RADEON_GALLIUM=yes;
+             gallium_check_st "radeon/drm" "dri-radeonsi" "xorg-radeonsi" "" "" "vdpau-radeonsi" ""
+             ;;
+diff --git a/src/gallium/drivers/radeon/Makefile b/src/gallium/drivers/radeon/Makefile
+index 7f1c613..bcc2646 100644
+--- a/src/gallium/drivers/radeon/Makefile
++++ b/src/gallium/drivers/radeon/Makefile
+@@ -12,6 +12,12 @@ TBLGEN = $(LLVM_BINDIR)/llvm-tblgen
+ 
+ CXXFLAGS+= $(LLVM_CXXFLAGS)
+ 
++ifeq ($(LLVM_VERSION),3.1)
++	CPP_SOURCES += $(LLVM_CPP_SOURCES)
++else
++	CXXFLAGS+= -DEXTERNAL_LLVM
++endif
++
+ include ../../Makefile.template
+ 
+ CXXFLAGS := $(filter-out -DDEBUG, $(CXXFLAGS))
+diff --git a/src/gallium/drivers/radeon/Makefile.sources b/src/gallium/drivers/radeon/Makefile.sources
+index c5d1207..5e79342 100644
+--- a/src/gallium/drivers/radeon/Makefile.sources
++++ b/src/gallium/drivers/radeon/Makefile.sources
+@@ -23,8 +23,7 @@ TD_FILES := \
+ 	SIRegisterInfo.td	\
+ 	SISchedule.td
+ 
+-
+-GENERATED_SOURCES := \
++LLVM_GENERATED_SOURCES := \
+ 	R600Intrinsics.td		\
+ 	R600RegisterInfo.td		\
+ 	SIRegisterInfo.td		\
+@@ -41,7 +40,7 @@ GENERATED_SOURCES := \
+ 	AMDGPUGenMCCodeEmitter.inc	\
+ 	AMDGPUGenDFAPacketizer.inc
+ 
+-CPP_SOURCES := \
++LLVM_CPP_SOURCES := \
+ 	AMDIL7XXDevice.cpp		\
+ 	AMDILCFGStructurizer.cpp	\
+ 	AMDILDevice.cpp			\
+@@ -81,6 +80,8 @@ CPP_SOURCES := \
+ 	MCTargetDesc/SIMCCodeEmitter.cpp \
+ 	MCTargetDesc/R600MCCodeEmitter.cpp \
+ 	TargetInfo/AMDGPUTargetInfo.cpp	\
++
++CPP_SOURCES := \
+ 	radeon_llvm_emit.cpp
+ 
+ C_SOURCES := \
+diff --git a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
+index 1b67bfe..625b0b4 100644
+--- a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
++++ b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
+@@ -90,6 +90,7 @@ radeon_llvm_compile(LLVMModuleRef M, unsigned char ** bytes,
+    /* XXX: Can we just initialize the AMDGPU target here? */
+    InitializeAllTargets();
+    InitializeAllTargetMCs();
++   InitializeAllAsmPrinters();
+ #else
+    LLVMInitializeAMDGPUTargetInfo();
+    LLVMInitializeAMDGPUTarget();
+--
+cgit v0.9.0.2-2-gbebe
+From 67fcb3c2b4ecbd87e465b6c6b316be44811ea116 Mon Sep 17 00:00:00 2001
+From: Tom Stellard <thomas.stellard at amd.com>
+Date: Mon, 01 Oct 2012 21:00:00 +0000
+Subject: configure.ac: Use amdgpu component for LLVM 3.2
+
+The amdgpu component actually does exist.  I must have been using an
+older version of llvm-config by accident when I first made this change.
+---
+diff --git a/configure.ac b/configure.ac
+index 32f412b..0de506d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1793,10 +1793,8 @@ radeon_llvm_check() {
+                       git://people.freedesktop.org/~tstellar/llvm master
+                       and build with --enable-experimental-targets==AMDGPU])
+     fi
+-    if test "$LLVM_VERSION" = "3.2"; then
+-        dnl LLVM 3.2 does not add experimental libraries to llvm-config's
+-        dnl library list.
+-        LLVM_LIBS="$LLVM_LIBS -lLLVMAMDGPUCodeGen -lLLVMAMDGPUDesc -lLLVMAMDGPUAsmPrinter -lLLVMAMDGPUInfo `$LLVM_CONFIG --libs mc`"
++    if test "x$LLVM_VERSION" = "x3.2"; then
++        LLVM_LIBS="$LLVM_LIBS `$LLVM_CONFIG --libs amdgpu`"
+     fi
+ }
+ 
+--
+cgit v0.9.0.2-2-gbebe
+From 4cc530f452436a5304a628d1428ed7f07247a175 Mon Sep 17 00:00:00 2001
+From: Tom Stellard <thomas.stellard at amd.com>
+Date: Wed, 10 Oct 2012 21:00:13 +0000
+Subject: radeon/llvm: Fix build with LLVM 3.2
+
+---
+diff --git a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
+index 2f2eb4c..21661a0 100644
+--- a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
++++ b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
+@@ -36,13 +36,16 @@
+ #include <llvm/Support/TargetRegistry.h>
+ #include <llvm/Support/TargetSelect.h>
+ #include <llvm/Support/Threading.h>
+-#include <llvm/Target/TargetData.h>
+ #include <llvm/Target/TargetMachine.h>
+-
+ #include <llvm/Transforms/Scalar.h>
+-
+ #include <llvm-c/Target.h>
+ 
++#if HAVE_LLVM < 0x0302
++#include <llvm/Target/TargetData.h>
++#else
++#include <llvm/DataLayout.h>
++#endif
++
+ #include <iostream>
+ #include <stdlib.h>
+ #include <stdio.h>
+@@ -120,7 +123,11 @@ radeon_llvm_compile(LLVMModuleRef M, unsigned char ** bytes,
+                      ));
+    TargetMachine &AMDGPUTargetMachine = *tm.get();
+    PassManager PM;
++#if HAVE_LLVM < 0x0302
+    PM.add(new TargetData(*AMDGPUTargetMachine.getTargetData()));
++#else
++   PM.add(new DataLayout(*AMDGPUTargetMachine.getDataLayout()));
++#endif
+    PM.add(createPromoteMemoryToRegisterPass());
+    AMDGPUTargetMachine.setAsmVerbosityDefault(true);
+ 
+--
+cgit v0.9.0.2-2-gbebe
+From b21455f27db6e55e708f8e264f4a15412ee8fa52 Mon Sep 17 00:00:00 2001
+From: Dmitry Cherkasov <dcherkassov at gmail.com>
+Date: Wed, 17 Oct 2012 18:03:13 +0000
+Subject: configure.ac: Fix LLVM 3.2 r600/radeonsi error message
+
+Reviewed-by: Tom Stellard <thomas.stellard at amd.com>
+Signed-off-by: Dmitry Cherkasov <Dmitrii.Cherkasov at amd.com>
+---
+diff --git a/configure.ac b/configure.ac
+index aefa142..ca24856 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1757,7 +1757,7 @@ radeon_llvm_check() {
+     if test "$LLVM_VERSION_MAJOR" -ge "3" -a "x$LLVM_VERSION" != "x3.1" && $LLVM_CONFIG --targets-built | grep -qv '\<AMDGPU\>' ; then
+         AC_MSG_ERROR([To use the r600/radeonsi LLVM backend with LLVM 3.2 and newer, you need to fetch the LLVM source from:
+                       git://people.freedesktop.org/~tstellar/llvm master
+-                      and build with --enable-experimental-targets==AMDGPU])
++                      and build with --enable-experimental-targets=AMDGPU])
+     fi
+     if test "x$LLVM_VERSION" = "x3.2"; then
+         LLVM_LIBS="$LLVM_LIBS `$LLVM_CONFIG --libs amdgpu`"
+--
+cgit v0.9.0.2-2-gbebe
+From d2b0338e3354fadc90a3751520f4aa44ba01954f Mon Sep 17 00:00:00 2001
+From: Tom Stellard <thomas.stellard at amd.com>
+Date: Wed, 17 Oct 2012 19:21:48 +0000
+Subject: r600g: Remove special handling of PRED_SET* insructions for LLVM 3.2
+
+The 3.2 version of the backend now sets all the correct fields for
+PRED_SET* instructions.
+---
+diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c
+index 053a988..58b7fb2 100644
+--- a/src/gallium/drivers/r600/r600_shader.c
++++ b/src/gallium/drivers/r600/r600_shader.c
+@@ -330,6 +330,7 @@ static unsigned r600_alu_from_byte_stream(struct r600_shader_ctx *ctx,
+ 			alu.src[src_idx].sel += 512;
+ 	}
+ 
++#if HAVE_LLVM < 0x0302
+ 	if (alu.inst == CTX_INST(V_SQ_ALU_WORD1_OP2_SQ_OP2_INST_PRED_SETNE) ||
+ 	    alu.inst == CTX_INST(V_SQ_ALU_WORD1_OP2_SQ_OP2_INST_PRED_SETE) ||
+ 	    alu.inst == CTX_INST(V_SQ_ALU_WORD1_OP2_SQ_OP2_INST_PRED_SETE_INT) ||
+@@ -340,6 +341,7 @@ static unsigned r600_alu_from_byte_stream(struct r600_shader_ctx *ctx,
+ 		alu.src[1].chan = 0;
+ 		alu.last = 1;
+ 	}
++#endif
+ 
+ 	if (alu.execute_mask) {
+ 		alu.pred_sel = 0;
+--
+cgit v0.9.0.2-2-gbebe
+From f2f17fc348c847bbf5c54bb75b76e1661e8ced60 Mon Sep 17 00:00:00 2001
+From: Tom Stellard <thomas.stellard at amd.com>
+Date: Mon, 01 Oct 2012 21:01:06 +0000
+Subject: radeon/llvm: Only initialize the AMDGPU target
+
+---
+diff --git a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
+index 625b0b4..2f2eb4c 100644
+--- a/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
++++ b/src/gallium/drivers/radeon/radeon_llvm_emit.cpp
+@@ -86,17 +86,11 @@ radeon_llvm_compile(LLVMModuleRef M, unsigned char ** bytes,
+ 
+    Triple AMDGPUTriple(sys::getDefaultTargetTriple());
+ 
+-#ifdef EXTERNAL_LLVM
+-   /* XXX: Can we just initialize the AMDGPU target here? */
+-   InitializeAllTargets();
+-   InitializeAllTargetMCs();
+-   InitializeAllAsmPrinters();
+-#else
+    LLVMInitializeAMDGPUTargetInfo();
+    LLVMInitializeAMDGPUTarget();
+    LLVMInitializeAMDGPUTargetMC();
+    LLVMInitializeAMDGPUAsmPrinter();
+-#endif
++
+    std::string err;
+    const Target * AMDGPUTarget = TargetRegistry::lookupTarget("r600", err);
+    if(!AMDGPUTarget) {
+--
+cgit v0.9.0.2-2-gbebe




More information about the arch-commits mailing list