# Maintainer: Márcio Silva pkgbase=mesa-git pkgname=( mesa-git ) true && pkgname=( khrplatform-devel-git libcl-libre-git libegl-wayland-git libgbm-git libgl-gallium-git libgl-git libglapi-git libgles-git libvg-git libwayland-egl-git osmesa-git ati-dri-git intel-dri-git nouveau-dri-git ati-xvmc-git nouveau-xvmc-git soft-xvmc-git mesa-git ) true && pkgver=9.0.0.git20120906 true && pkgrel=1 _mesaver=9.0 arch=( i686 x86_64 mips64el ) makedepends=( clang dri2proto git glproto-git imake libdrm-git libxdamage libxml2 libxxf86vm libxvmc llvm python2 wayland ) # wine for d3d1x api license=( MIT Khronos LGPL ) url=http://mesa3d.sourceforge.net #source=( # ftp://ftp.freedesktop.org/pub/mesa/$pkgver/MesaLib-$pkgver.tar.bz2 #) #sha512sums=( # b7e8879e92252d0588d9eeeed904fd502ce1f48551b9a97f52aeb1318c79a80fab27504521107d61fbb5d986b2d778d89023a892baf9f1c5a5d2ee3746fefa57 #) _gitroot=git://anongit.freedesktop.org/git/${pkgbase%-git}/${pkgbase%-git} _gitname=${pkgbase%-git} build() { msg 'Connecting to git.freedesktop.org GIT server....' if [ -d $_gitname ] ; then cd $_gitname && git pull origin else git clone $_gitroot --depth 1 fi msg 'GIT checkout done or server timeout' msg 'Starting make...' cd $srcdir # Cleanup and prepare the build dir [ -d build ] && rm -rf build cp -r $_gitname build cd build #cd $srcdir/Mesa-$pkgver autoreconf -vfi ./autogen.sh --prefix=/usr \ --enable-dri \ --enable-egl \ --enable-gallium-egl \ --enable-gallium-g3dvl \ --enable-gallium-gbm \ --enable-gallium-llvm \ --enable-gbm \ --enable-gles1 \ --enable-gles2 \ --enable-glx \ --enable-glx-tls \ --enable-opencl \ --enable-openvg \ --enable-osmesa \ --enable-r600-llvm-compiler \ --enable-shared-glapi \ --enable-texture-float \ --enable-xa \ --enable-xvmc \ --with-clang-libdir=/usr/lib \ --with-egl-platforms=drm,x11,wayland \ --with-dri-driverdir=/usr/lib/xorg/modules/dri \ --with-dri-drivers=i915,i965,r200,nouveau,radeon,swrast \ --with-gallium-drivers=r300,r600,nouveau,swrast #--enable-d3d1x \ echo -e "\ninstall: " >> src/mesa/drivers/osmesa/Makefile make } package_khrplatform-devel-git() { conflicts=( khrplatform-devel ) provides=( khrplatform-devel=${_mesaver} ) pkgdesc='Khronos platform development package' cd $srcdir/build install -m755 -d $pkgdir/usr/include/KHR install -m755 -d $pkgdir/usr/share/licenses/khrplatform-devel bin/minstall include/KHR/khrplatform.h $pkgdir/usr/include/KHR bin/minstall docs/COPYING $pkgdir/usr/share/licenses/khrplatform-devel bin/minstall docs/license.html $pkgdir/usr/share/licenses/khrplatform-devel } package_libcl-libre-git() { depends=( gcc-libs libdrm-git libffi libxcb udev ) conflicts=( libcl ) provides=( libcl ) replaces=( libcl ) pkgdesc='A libre version of OpenCL library and ICD loader, (Mesa OpenCL)' make -C $srcdir/build/src/gallium/targets/opencl DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/lib/opencl install -m755 -d $pkgdir/usr/share/licenses/libcl #bin/minstall src/gallium/targets/opencl/libOpenCL.la $pkgdir/usr/lib #bin/minstall lib/libOpenCL.so* $pkgdir/usr/lib #bin/minstall src/gallium/targets/pipe-loader/*.so $pkgdir/usr/lib/opencl bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libcl bin/minstall docs/license.html $pkgdir/usr/share/licenses/libcl } package_libegl-wayland-git() { depends=( khrplatform-devel-git libgbm-git libxext libxfixes libvg-git wayland ) conflicts=( libegl libegl-git libegl-wayland ) provides=( libegl=$_mesaver libegl-git=$_mesaver ) pkgdesc='Mesa EGL libraries and headers, with wayland Support' #make -C $srcdir/build/src/egl DESTDIR=$pkgdir install #make -C $srcdir/build/src/gallium/targets/egl-static DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/include/EGL install -m755 -d $pkgdir/usr/lib/egl install -m755 -d $pkgdir/usr/lib/pkgconfig install -m755 -d $pkgdir/usr/share/doc/libegl install -m755 -d $pkgdir/usr/share/licenses/libegl bin/minstall include/EGL/* $pkgdir/usr/include/EGL bin/minstall src/egl/main/libEGL.la $pkgdir/usr/lib bin/minstall lib/libEGL.so* $pkgdir/usr/lib bin/minstall lib/egl/egl_gallium.so $pkgdir/usr/lib/egl bin/minstall src/egl/main/egl.pc $pkgdir/usr/lib/pkgconfig bin/minstall docs/egl.html $pkgdir/usr/share/doc/libegl bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libegl bin/minstall docs/license.html $pkgdir/usr/share/licenses/libegl } package_libgbm-git() { depends=( gcc-libs libdrm-git libffi libglapi-git libxcb udev ) conflicts=( libgbm ) provides=( libgbm=$_mesaver ) pkgdesc='Mesa GBM libraries and header' #make -C $srcdir/build/src/gbm DESTDIR=$pkgdir install #make -C $srcdir/build/src/gallium/targets/gbm DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/lib/include install -m755 -d $pkgdir/usr/lib/gbm install -m755 -d $pkgdir/usr/lib/pkgconfig install -m755 -d $pkgdir/usr/share/licenses/libgbm bin/minstall src/gbm/main/gbm.h $pkgdir/usr/include bin/minstall src/gbm/libgbm.la $pkgdir/usr/lib bin/minstall lib/libgbm.so* $pkgdir/usr/lib bin/minstall src/gallium/targets/gbm/gbm_gallium_drm.so $pkgdir/usr/lib/gbm bin/minstall src/gallium/targets/pipe-loader/*.so $pkgdir/usr/lib/gbm bin/minstall src/gbm/main/gbm.pc $pkgdir/usr/lib/pkgconfig bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libgbm bin/minstall docs/license.html $pkgdir/usr/share/licenses/libgbm } package_libgl-gallium-git() { depends=( expat gcc-libs libdrm-git libglapi-git libxdamage libxxf86vm ) conflicts=( libgl libgl-git ) provides=( libgl=$_mesaver libgl-git=$_mesaver ) pkgdesc='Mesa 3D OpenGL graphics library and DRI Gallium software rasterizer' #make -C $srcdir/build/src/glx DESTDIR=$pkgdir install #make -C $srcdir/build/src/mesa/libdricore DESTDIR=$pkgdir install #make -C $srcdir/build/src/gallium/targets/dri-swrast DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/lib/xorg/modules/dri install -m755 -d $pkgdir/usr/share/doc/libgl install -m755 -d $pkgdir/usr/share/licenses/libgl bin/minstall src/glx/libGL.la $pkgdir/usr/lib bin/minstall lib/libGL.so* $pkgdir/usr/lib bin/minstall src/mesa/libdricore/libdricore*.la $pkgdir/usr/lib bin/minstall lib/libdricore*.so* $pkgdir/usr/lib bin/minstall lib/gallium/swrast_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall docs/libGL.txt $pkgdir/usr/share/doc/libgl bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libgl bin/minstall docs/license.html $pkgdir/usr/share/licenses/libgl } package_libgl-git() { depends=( expat gcc-libs libdrm-git libglapi-git libxdamage libxxf86vm ) conflicts=( libgl libgl-gallium-git ) provides=( libgl=$_mesaver libgl-gallium-git=$_mesaver ) pkgdesc='Mesa 3D OpenGL graphics library and DRI software rasterizer' #make -C $srcdir/build/src/glx DESTDIR=$pkgdir install #make -C $srcdir/build/src/mesa/libdricore DESTDIR=$pkgdir install #make -C $srcdir/build/src/mesa/drivers/dri/swrast DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/lib/xorg/modules/dri install -m755 -d $pkgdir/usr/share/doc/libgl install -m755 -d $pkgdir/usr/share/licenses/libgl bin/minstall src/glx/libGL.la $pkgdir/usr/lib bin/minstall lib/libGL.so* $pkgdir/usr/lib bin/minstall src/mesa/libdricore/libdricore*.la $pkgdir/usr/lib bin/minstall lib/libdricore*.so* $pkgdir/usr/lib bin/minstall src/mesa/drivers/dri/swrast/swrast_dri.la $pkgdir/usr/lib/xorg/modules/dri bin/minstall lib/swrast_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall docs/libGL.txt $pkgdir/usr/share/doc/libgl bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libgl bin/minstall docs/license.html $pkgdir/usr/share/licenses/libgl } package_libglapi-git() { depends=( glibc ) conflicts=( libglapi ) provides=( libglapi=$_mesaver ) pkgdesc='free implementation of the GL API -- shared library. The Mesa GL API module is responsible for dispatching all the gl* functions' make -C $srcdir/build/src/mapi/shared-glapi DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/lib install -m755 -d $pkgdir/usr/share/licenses/libglapi #bin/minstall src/mapi/shared-glapi/libglapi.la $pkgdir/usr/lib #bin/minstall lib/libglapi.so* $pkgdir/usr/lib bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libglapi bin/minstall docs/license.html $pkgdir/usr/share/licenses/libglapi } package_libgles-git() { depends=( khrplatform-devel-git libdrm-git libglapi-git ) conflicts=( libgles ) provides=( libgles=$_mesaver ) pkgdesc='Mesa GLES libraries and headers' #make -C $srcdir/build/src/mapi/es1api DESTDIR=$pkgdir install #make -C $srcdir/build/src/mapi/es2api DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/include/GLES install -m755 -d $pkgdir/usr/include/GLES2 install -m755 -d $pkgdir/usr/lib/pkgconfig install -m755 -d $pkgdir/usr/share/licenses/libgles bin/minstall include/GLES/* $pkgdir/usr/include/GLES bin/minstall include/GLES2/* $pkgdir/usr/include/GLES2 bin/minstall src/mapi/es1api/libGLESv1_CM.la $pkgdir/usr/lib bin/minstall src/mapi/es2api/libGLESv2.la $pkgdir/usr/lib bin/minstall lib/libGLESv*.so* $pkgdir/usr/lib bin/minstall src/mapi/es1api/glesv1_cm.pc $pkgdir/usr/lib/pkgconfig bin/minstall src/mapi/es2api/glesv2.pc $pkgdir/usr/lib/pkgconfig bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libgles bin/minstall docs/license.html $pkgdir/usr/share/licenses/libgles } package_libvg-git() { depends=( glibc ) conflicts=( libvg ) provides=( libvg=$_mesaver ) pkgdesc='Mesa OpenVG libraries and headers' make -C $srcdir/build/src/mapi/vgapi DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/include/VG #install -m755 -d $pkgdir/usr/lib/pkgconfig #install -m755 -d $pkgdir/usr/share/doc/libvg install -m755 -d $pkgdir/usr/share/licenses/libvg #bin/minstall include/VG/* $pkgdir/usr/include/VG #bin/minstall src/mapi/vgapi/libOpenVG.la $pkgdir/usr/lib #bin/minstall lib/libOpenVG.so* $pkgdir/usr/lib #bin/minstall src/mapi/vgapi/vg.pc $pkgdir/usr/lib/pkgconfig #bin/minstall docs/openvg.html $pkgdir/usr/share/doc/libvg bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libvg bin/minstall docs/license.html $pkgdir/usr/share/licenses/libvg } package_libwayland-egl-git() { depends=( glibc ) conflicts=( libwayland-egl ) provides=( libwayland-egl=$_mesaver ) pkgdesc='Mesa Wayland-EGL library' make -C $srcdir/build/src/egl/wayland/wayland-egl DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/lib/pkgconfig install -m755 -d $pkgdir/usr/share/licenses/libwayland #bin/minstall src/egl/wayland/wayland-egl/libwayland-egl.la $pkgdir/usr/lib #bin/minstall lib/libwayland-egl.so* $pkgdir/usr/lib #bin/minstall src/egl/wayland/wayland-egl/wayland-egl.pc $pkgdir/usr/lib/pkgconfig bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libwayland bin/minstall docs/license.html $pkgdir/usr/share/licenses/libwayland } package_osmesa-git() { depends=( mesa-git ) conflicts=( osmesa ) provides=( osmesa=$_mesaver ) optdepends=( 'opengl-man-pages: for the OpenGL API man pages' ) pkgdesc='Mesa 3D off-screen rendering library' make -C $srcdir/build/src/mesa/drivers/osmesa DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/lib/pkgconfig #install -m755 -d $pkgdir/usr/share/doc/osmesa install -m755 -d $pkgdir/usr/share/licenses/osmesa #bin/minstall src/mesa/drivers/osmesa/libOSMesa.la $pkgdir/usr/lib #bin/minstall lib/libOSMesa.so* $pkgdir/usr/lib #bin/minstall src/mesa/drivers/osmesa/osmesa.pc $pkgdir/usr/lib/pkgconfig #bin/minstall docs/osmesa.html $pkgdir/usr/share/doc/osmesa bin/minstall docs/COPYING $pkgdir/usr/share/licenses/osmesa bin/minstall docs/license.html $pkgdir/usr/share/licenses/osmesa } package_ati-dri-git() { depends=( libgl-git ) conflicts=( ati-dri 'xf86-video-ati<6.9.0-6' ) provides=( ati-dri=$_mesaver ) pkgdesc='Mesa DRI + Gallium3D r300 drivers for AMD/ATI Radeon' # classic mesa driver for R300 r300_dri.so #make -C $srcdir/build/src/mesa/drivers/dri/r200 DESTDIR=$pkgdir install #make -C $srcdir/build/src/mesa/drivers/dri/radeon DESTDIR=$pkgdir install # gallium3D driver for R300 r300_dri.so #make -C $srcdir/build/src/gallium/targets/dri-r300 DESTDIR=$pkgdir install #make -C $srcdir/build/src/gallium/targets/dri-r600 DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/lib/xorg/modules/dri install -m755 -d $pkgdir/usr/share/licenses/ati-dri # classic mesa driver for R300 r300_dri.so bin/minstall lib/r200_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall lib/radeon_dri.so $pkgdir/usr/lib/xorg/modules/dri # gallium3D driver for R300 r300_dri.so bin/minstall lib/gallium/r300_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall lib/gallium/r600_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall docs/COPYING $pkgdir/usr/share/licenses/ati-dri bin/minstall docs/license.html $pkgdir/usr/share/licenses/ati-dri } package_intel-dri-git() { depends=( libgl-git ) conflicts=( intel-dri ) provides=( intel-dri=$_mesaver ) pkgdesc='Mesa DRI drivers for Intel' #make -C $srcdir/build/src/mesa/drivers/dri/i915 DESTDIR=$pkgdir install #make -C $srcdir/build/src/mesa/drivers/dri/i965 DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/lib/xorg/modules/dri install -m755 -d $pkgdir/usr/share/licenses/intel-dri bin/minstall lib/i915_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall lib/i965_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall docs/COPYING $pkgdir/usr/share/licenses/intel-dri bin/minstall docs/license.html $pkgdir/usr/share/licenses/intel-dri } package_nouveau-dri-git() { depends=( libgl-git ) conflicts=( nouveau-dri ) provides=( nouveau-dri=$_mesaver ) pkgdesc='Mesa classic DRI + Gallium3D drivers for Nouveau' # classic mesa driver for nv10 , nv20 nouveau_vieux_dri.so #make -C $srcdir/build/src/mesa/drivers/dri/nouveau DESTDIR=$pkgdir install # gallium3D driver for nv30 - nv40 - nv50 nouveau_dri.so #make -C $srcdir/build/src/gallium/targets/dri-nouveau DESTDIR=$pkgdir install cd $srcdir/build install -m755 -d $pkgdir/usr/lib/xorg/modules/dri install -m755 -d $pkgdir/usr/share/licenses/nouveau-dri bin/minstall lib/nouveau_vieux_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall lib/gallium/nouveau_dri.so $pkgdir/usr/lib/xorg/modules/dri bin/minstall docs/COPYING $pkgdir/usr/share/licenses/nouveau-dri bin/minstall docs/license.html $pkgdir/usr/share/licenses/nouveau-dri } package_ati-xvmc-git() { depends=( gcc-libs libdrm-git libxv ) conflicts=( ati-xvmc ) provides=( ati-xvmc=$_mesaver ) pkgdesc='Mesa Gallium3D XvMC libraries for ATI' make -C $srcdir/build/src/gallium/targets/xvmc-r300 DESTDIR=$pkgdir install make -C $srcdir/build/src/gallium/targets/xvmc-r600 DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/lib install -m755 -d $pkgdir/usr/share/licenses/ati-xvmc #bin/minstall lib/gallium/libXvMCr?00.so* $pkgdir/usr/lib bin/minstall docs/COPYING $pkgdir/usr/share/licenses/libxvmc bin/minstall docs/license.html $pkgdir/usr/share/licenses/libxvmc } package_nouveau-xvmc-git() { depends=( gcc-libs libdrm-git libxv ) conflicts=( nouveau-xvmc ) provides=( nouveau-xvmc=$_mesaver ) pkgdesc='Mesa Gallium3D XvMC library for Nouveau' make -C $srcdir/build/src/gallium/targets/xvmc-nouveau DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/lib install -m755 -d $pkgdir/usr/share/licenses/nouveau-xvmc #bin/minstall lib/gallium/libXvMCnouveau.so* $pkgdir/usr/lib bin/minstall docs/COPYING $pkgdir/usr/share/licenses/nouveau-xvmc bin/minstall docs/license.html $pkgdir/usr/share/licenses/nouveau-xvmc } package_soft-xvmc-git() { depends=( gcc-libs libdrm-git libxv ) conflicts=( soft-xvmc ) provides=( soft-xvmc=$_mesaver ) pkgdesc='Mesa Gallium3D XvMC library for Software Rasterizer' make -C $srcdir/build/src/gallium/targets/xvmc-softpipe DESTDIR=$pkgdir install cd $srcdir/build #install -m755 -d $pkgdir/usr/lib install -m755 -d $pkgdir/usr/share/licenses/soft-xvmc #bin/minstall lib/gallium/libXvMCsoftpipe.so* $pkgdir/usr/lib bin/minstall docs/COPYING $pkgdir/usr/share/licenses/soft-xvmc bin/minstall docs/license.html $pkgdir/usr/share/licenses/soft-xvmc } package_mesa-git() { depends=( dri2proto glproto-git libgl-git ) optdepends=( 'ati-dri-git: for ATI Video Hardware' 'intel-dri-git: for Intel Video Hardware' 'nouveau-dri-git: for nVidia Video Hardware' 'ati-xvmc-git: for X11 Video Motion Compensation on ATI Video Hardware' 'nouveau-xvmc-git: for X11 Video Motion Compensation on nVidia Video Hardware' 'soft-xvmc-git: for X11 Video Motion Compensation on DRI Software Rasterizer' 'libcl: for OpenCL Graphics Video Hardware Support' 'libwayland-egl-git: for Wayland Desktop Graphics' 'opengl-man-pages: for the OpenGL API man pages' ) conflicts=( mesa ) provides=( mesa=$_mesaver ) pkgdesc='Mesa 3-D graphics libraries and include files' cd $srcdir/build make DESTDIR=$pkgdir install rm -fr $pkgdir/usr/include/{EGL,GLES,GLES2,KHR,VG,gbm.h} rm -fr $pkgdir/usr/lib/{egl,gbm,opencl,xorg} rm -f $pkgdir/usr/lib/{libEGL*,libGL*,libGLESv*,libOSMesa*,libOpenCL*,libOpenVG*,libXvMC*,libdricore*,libgbm*,libglapi*,libwayland*} rm -f $pkgdir/usr/lib/pkgconfig/{egl.pc,gbm.pc,glesv1_cm.pc,glesv2.pc,osmesa.pc,vg.pc,wayland-egl.pc} install -m755 -d $pkgdir/usr/share/licenses/mesa bin/minstall docs/COPYING $pkgdir/usr/share/licenses/mesa bin/minstall docs/license.html $pkgdir/usr/share/licenses/mesa }