blob: 3943557c010872082faf12c6d6a467e7243659d5 (
plain) (
tree)
|
|
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=mesa
pkgver=18.1.3
pkgrel=2
pkgdesc="Mesa DRI OpenGL library"
url="https://www.mesa3d.org"
arch="all"
license="MIT AND X11 AND SGI-B-2.0 AND BSL-1.0"
depends=
subpackages="$pkgname-dev
$pkgname-dri-ati:_dri
$pkgname-dri-nouveau:_dri
$pkgname-dri-freedreno:_dri
$pkgname-dri-swrast:_dri
$pkgname-dri-virtio:_dri
$pkgname-glapi $pkgname-egl $pkgname-gl $pkgname-gles
$pkgname-xatracker $pkgname-osmesa $pkgname-gbm
$pkgname-libwayland-egl:_wayland
"
_llvmver=4
depends_dev="libdrm-dev dri2proto libxext-dev libxdamage-dev libxcb-dev glproto
dri3proto presentproto libxshmfence-dev"
makedepends="$depends_dev expat-dev xextproto libxt-dev makedepend py3-mako
flex bison llvm$_llvmver-dev eudev-dev libvdpau-dev python3 py-libxml2
libxvmc-dev libxfixes-dev wayland-dev libelf-dev wayland-protocols
autoconf automake libtool libxxf86vm-dev libx11-dev zlib-dev"
source="https://mesa.freedesktop.org/archive/mesa-$pkgver.tar.xz
glx_ro_text_segm.patch
musl-fixes.patch
musl-fix-includes.patch
amdgpu-pthread-header.patch
disk_cache-stack-overflow.patch
drmdeps.patch
python3-compat.patch
intel.patch
"
replaces="mesa-dricore"
_dri_driverdir=/usr/lib/xorg/modules/dri
_dri_drivers="r200,radeon,nouveau,swrast"
_gallium_drivers="r300,r600,radeonsi,nouveau,freedreno,swrast,virgl"
_vulkan_drivers="radeon"
builddir="$srcdir/mesa-$pkgver"
_arch_opts=
case "$CARCH" in
x86* | pmmx)
_dri_drivers="${_dri_drivers},i915,i965"
_gallium_drivers="${_gallium_drivers},svga"
_vulkan_drivers="${_vulkan_drivers},intel"
subpackages="$subpackages $pkgname-dri-intel:_dri $pkgname-dri-vmwgfx:_dri"
;;
arm*)
_gallium_drivers="${_gallium_drivers},vc4"
case "$CARCH" in
armhf) CFLAGS="$CFLAGS -mfpu=neon";;
esac
;;
esac
prepare() {
cd "$builddir"
default_prepare
libtoolize --force \
&& aclocal \
&& automake --add-missing \
&& autoreconf
}
build() {
cd "$builddir"
export CFLAGS="$CFLAGS -D_XOPEN_SOURCE=700"
PYTHON2=python3 ./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--sysconfdir=/etc \
--with-dri-driverdir=$_dri_driverdir \
--disable-asm \
--disable-xvmc \
--enable-glx-rts \
--with-gallium-drivers=${_gallium_drivers} \
--with-dri-drivers=${_dri_drivers} \
--with-vulkan-drivers=${_vulkan_drivers} \
--with-llvm-prefix=/usr/lib/llvm$_llvmver \
--enable-llvm-shared-libs \
--enable-llvm \
--with-platforms=x11,drm,wayland \
--enable-shared-glapi \
--enable-gbm \
--disable-glx-tls \
--disable-nine \
--enable-dri \
--enable-dri3 \
--enable-glx \
--enable-osmesa \
--enable-gles1 \
--enable-gles2 \
--enable-egl \
--enable-texture-float \
--enable-xa \
--enable-vdpau \
$_arch_opts
make
}
check() {
cd "$builddir"
# Compiler test requires LLVM 3.8 and Python 2
for i in gtest util mapi; do
make -C "src/$i" check
done
}
package() {
cd "$builddir"
make -j1 DESTDIR="$pkgdir" install
}
egl() {
replaces="mesa"
pkgdesc="Mesa libEGL runtime libraries"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libEGL.so* \
"$subpkgdir"/usr/lib/
}
gl() {
replaces="mesa"
pkgdesc="Mesa libGL runtime libraries"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libGL.so* \
"$subpkgdir"/usr/lib/
}
glapi() {
replaces="$pkgname-gles"
pkgdesc="Mesa shared glapi"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libglapi.so.* \
"$subpkgdir"/usr/lib/
}
gles() {
replaces="mesa"
pkgdesc="Mesa libGLESv2 runtime libraries"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libGLES*.so* \
"$subpkgdir"/usr/lib/
}
xatracker() {
pkgdesc="Mesa XA state tracker for vmware"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libxatracker*.so.* \
"$subpkgdir"/usr/lib/
}
osmesa() {
pkgdesc="Mesa offscreen rendering libraries"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libOSMesa.so.* \
"$subpkgdir"/usr/lib/
}
gbm() {
pkgdesc="Mesa gbm library"
replaces="mesa"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libgbm.so.* \
"$subpkgdir"/usr/lib/
}
_mv_dri() {
install -d "$subpkgdir"/$_dri_driverdir
while [ $# -gt 0 ]; do
mv "$pkgdir"/$_dri_driverdir/${1}.so \
"$subpkgdir"/$_dri_driverdir/ || return 1
shift
done
}
_mv_vdpau() {
local i
install -d "$subpkgdir"/usr/lib/vdpau
for i in "$@"; do
mv "$pkgdir"/usr/lib/vdpau/libvdpau_$i.* \
"$subpkgdir"/usr/lib/vdpau/ || return 1
done
}
_mv_gpipe() {
return 0
# http://cgit.freedesktop.org/mesa/mesa/commit/?id=44ec468e8033553c26a112cebba41c343db00eb1
# https://code.google.com/p/chromium/issues/detail?id=412089
# local i
# install -d "$subpkgdir"/usr/lib/gallium-pipe
# for i in "$@"; do
# mv "$pkgdir"/usr/lib/gallium-pipe/pipe_$i.* \
# "$subpkgdir"/usr/lib/gallium-pipe/ || return 1
# done
}
_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
;;
freedreno)
_mv_dri msm_dri kgsl_dri
;;
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"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libwayland-egl.so.* "$subpkgdir"/usr/lib/ \
|| return 1
}
sha512sums="f6e5b81a80a309a36a04759d18364d3c71c48d1cb88f87b2f5432ef003092a22046e88ce2082031d5d52b60ba36f585d8df52e06ecc7a5158079936236f36887 mesa-18.1.3.tar.xz
c3d4804ebc24c7216e4c9d4995fb92e116be7f478024b44808ee134a4c93bb51d1f66fe5fb6eca254f124c4abf6f81272b027824b3e2650a9607818bf793035a glx_ro_text_segm.patch
9f7a050f09571a2b17098d495b82e2e85b293fb7285e7d6d7c3c48cd4220a1bdcc61a7321ba78dd14860939ecabe7e89b32d6110f3728f793273e1e26b78a553 musl-fixes.patch
c7d91a660a033df91fac9c557039efc8669f0c26b2d35997d50753938b70d1af0bd110dcab3f8236eafab7d4be5dd7cd128a3e057e67e7e6a38a73fd6a7ef62e musl-fix-includes.patch
245d0d64d858dfadeeb544f31f7d0bb6ecb746a7fd5ec99755d679ae1a1eef4198d66473fb24d333eb6786bb8657012771e8285d67f165dc61a031df801947aa amdgpu-pthread-header.patch
f40ff04ac73c090c74d1955de6013c5aa41fb77f28b2b82d89cfc1880306a9ca1dde4581592db19f0a0ec6d85032f1ed5d953103ab0d075f9f0b7e459a028c45 disk_cache-stack-overflow.patch
6800bc62aebfba22a2562c858c27391b47c5675020bd67f040da93ffe4d5d8ac828907a44c7cee6a4ebe63821b58c2515b4012f1f23473670b1de8670426a430 drmdeps.patch
61ddf4f33f11b4fbaa334bec04d184236f01bc8cad4340cb74b66c92fc8c0c985d36507cf43b504d186dc108fc2e5ae348ed28ea8a680ba4dfdb74994fc440f7 python3-compat.patch
baa0039c65b760ac60d55a112cc3fe9c59759e6f6e31c9c0dc46cfc1dcca91726706d6fb3328e11c043ba1f84f01dd56d0208ee153b05174fde74252d3d7d95c intel.patch"
|