diff options
-rw-r--r-- | main/mesa/APKBUILD | 81 | ||||
-rw-r--r-- | main/mesa/musl-fixes.patch | 11 |
2 files changed, 65 insertions, 27 deletions
diff --git a/main/mesa/APKBUILD b/main/mesa/APKBUILD index 80d0092a3f..ac14836b40 100644 --- a/main/mesa/APKBUILD +++ b/main/mesa/APKBUILD @@ -1,17 +1,18 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=mesa -pkgver=12.0.6 -pkgrel=2 +pkgver=17.0.3 +pkgrel=0 pkgdesc="Mesa DRI OpenGL library" url="http://www.mesa3d.org" arch="all" license="LGPL" depends= subpackages="$pkgname-dev - $pkgname-dri-ati:ati - $pkgname-dri-nouveau:nouveau - $pkgname-dri-swrast:swrast - $pkgname-dri-vmwgfx:vmwgfx + $pkgname-dri-ati:_dri + $pkgname-dri-nouveau:_dri + $pkgname-dri-swrast:_dri + $pkgname-dri-vmwgfx:_dri + $pkgname-dri-virtio:_dri $pkgname-glapi $pkgname-egl $pkgname-gl $pkgname-gles $pkgname-xatracker $pkgname-osmesa $pkgname-gbm $pkgname-libwayland-egl:_wayland @@ -24,7 +25,7 @@ makedepends="$depends_dev expat-dev xextproto python2 libxt-dev makedepend talloc-dev py-libxml2 flex bison llvm-dev eudev-dev libvdpau-dev libxvmc-dev gettext zlib-dev wayland-dev libelf-dev py-mako autoconf automake libtool" -source="ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/mesa-$pkgver.tar.xz +source="https://mesa.freedesktop.org/archive/mesa-$pkgver.tar.xz 0001-glapi-Link-with-glapi-when-built-shared.patch glx_ro_text_segm.patch musl-fixes.patch @@ -34,23 +35,28 @@ replaces="mesa-dricore" _dri_driverdir=/usr/lib/xorg/modules/dri _dri_drivers="r200,radeon,nouveau,swrast" -_gallium_drivers="r300,r600,radeonsi,nouveau,svga,swrast" +_gallium_drivers="r300,r600,radeonsi,nouveau,svga,swrast,virgl" +_vulkan_drivers="radeon" -_builddir="$srcdir/mesa-$pkgver" +builddir="$srcdir/mesa-$pkgver" + +_arch_opts= -_intel_dri= case "$CARCH" in x86*) _dri_drivers="${_dri_drivers},i915,i965" - subpackages="$subpackages $pkgname-dri-intel:intel" + _vulcan_drivers="$_vulcan_drivers,intel" + subpackages="$subpackages $pkgname-dri-intel:_dri" + _arch_opts="--enable-xa --enable-dri3" ;; arm*) _gallium_drivers="${_gallium_drivers},vc4" + _arch_opts="--disable-xa" ;; esac prepare() { - cd "$_builddir" + cd "$builddir" for i in $source; do case $i in *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; @@ -63,9 +69,9 @@ prepare() { } build() { - cd "$_builddir" + cd "$builddir" - [ "$CLIBC" = "musl" ] && export CFLAGS="$CFLAGS -D_XOPEN_SOURCE=700" + export CFLAGS="$CFLAGS -D_XOPEN_SOURCE=700" ./configure \ --build=$CBUILD \ --host=$CHOST \ @@ -77,12 +83,14 @@ build() { --enable-glx-rts \ --with-gallium-drivers=${_gallium_drivers} \ --with-dri-drivers=${_dri_drivers} \ + --with-vulcan-drivers=${_vulkan_drivers} \ --enable-llvm-shared-libs \ --enable-gallium-llvm \ --with-egl-platforms=x11,drm,wayland \ --enable-shared-glapi \ --enable-gbm \ --disable-glx-tls \ + --disable-nine \ --enable-dri \ --enable-glx \ --enable-osmesa \ @@ -92,13 +100,14 @@ build() { --enable-texture-float \ --enable-xa \ --enable-vdpau \ + $_arch_opts \ || return 1 make || return 1 } package() { - cd "$_builddir" + cd "$builddir" make -j1 DESTDIR="$pkgdir" install || return 1 } @@ -157,7 +166,6 @@ gbm() { } _mv_dri() { - pkgdesc="Mesa DRI driver for $@" install -d "$subpkgdir"/$_dri_driverdir while [ $# -gt 0 ]; do @@ -188,15 +196,34 @@ _mv_gpipe() { # done } -ati() { _mv_dri radeon_dri r200_dri r300_dri r600_dri radeonsi_dri \ - && _mv_vdpau r300 r600 radeonsi \ - && _mv_gpipe r300 r600; } -intel() { _mv_dri i915_dri i965_dri; } -nouveau() { _mv_dri nouveau_dri nouveau_vieux_dri \ - && _mv_vdpau nouveau \ - && _mv_gpipe nouveau; } -swrast() { _mv_dri swrast_dri kms_swrast_dri && _mv_gpipe swrast; } -vmwgfx() { _mv_dri vmwgfx_dri && _mv_gpipe vmwgfx; } +_dri() { + local n=${subpkgname##*-dri-} + pkgdesc="Mesa DRI driver for $n" + case $n in + ati) + _mv_dri radeon_dri r200_dri r300_dri r600_dri radeonsi_dri \ + && _mv_vdpau r300 r600 radeonsi \ + && _mv_gpipe r300 r600 + ;; + intel) + _mv_dri i915_dri i965_dri + ;; + nouveau) + _mv_dri nouveau_dri nouveau_vieux_dri \ + && _mv_vdpau nouveau \ + && _mv_gpipe nouveau + ;; + swrast) + _mv_dri swrast_dri kms_swrast_dri && _mv_gpipe swrast + ;; + vmwgfx) + _mv_dri vmwgfx_dri && _mv_gpipe vmwgfx + ;; + virtio) + _mv_dri virtio_gpu_dri + ;; + esac +} _wayland() { pkgdesc="Mesa libwayland-egl library" @@ -205,7 +232,7 @@ _wayland() { || return 1 } -sha512sums="2492044f6a3c9d98937146e3a3bd8e262cb1edbb11c3e6d5114fe8c83aa9c846ec3f266b9712adb66fbe080121043772899ca18ddcc3b7a838a84417b6701aae mesa-12.0.6.tar.xz +sha512sums="0bcf1609b54fdabb30ec0a500b78e039bd50060c2c7f5a2e57fca29e1a311fb785dadc3cd311018ebe8020d1cc6320181ece2d2aa39d2f215b0ebf2cb0a55165 mesa-17.0.3.tar.xz 0914c16bd917292ed15881ad1e152c972c8ffa634147917517627e583127ef834375817ccc0ce85bdb28f9268fabe6bc150bfd41e1b214caafc58dcb7741a740 0001-glapi-Link-with-glapi-when-built-shared.patch c3d4804ebc24c7216e4c9d4995fb92e116be7f478024b44808ee134a4c93bb51d1f66fe5fb6eca254f124c4abf6f81272b027824b3e2650a9607818bf793035a glx_ro_text_segm.patch -9f7a050f09571a2b17098d495b82e2e85b293fb7285e7d6d7c3c48cd4220a1bdcc61a7321ba78dd14860939ecabe7e89b32d6110f3728f793273e1e26b78a553 musl-fixes.patch" +163bb96773686a7446f40a8415acef762910afb2f4f2271d429d9cbd9e3048111c8c0023c1f072fa63f33b68b2aea9d066efd9083904265151eeccbe8ccb7227 musl-fixes.patch" diff --git a/main/mesa/musl-fixes.patch b/main/mesa/musl-fixes.patch index dd3e6bb64a..ac5e5aa7a9 100644 --- a/main/mesa/musl-fixes.patch +++ b/main/mesa/musl-fixes.patch @@ -9,3 +9,14 @@ #include "pipe/p_compiler.h" #include "pipe/p_state.h" +--- a/src/util/u_endian.h.orig 2016-11-04 12:16:00.480356454 +0100 ++++ b/src/util/u_endian.h 2016-11-04 12:16:11.984347944 +0100 +@@ -27,7 +27,7 @@ + #ifndef U_ENDIAN_H + #define U_ENDIAN_H + +-#if defined(__GLIBC__) || defined(ANDROID) ++#if defined(__linux__) || defined(ANDROID) + #include <endian.h> + + #if __BYTE_ORDER == __LITTLE_ENDIAN |