Newer
Older
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=mesa
pkgdesc="Mesa DRI OpenGL library"
$pkgname-dricore $pkgname-glapi $pkgname-egl $pkgname-gl $pkgname-gles
$pkgname-xatracker $pkgname-osmesa $pkgname-gbm
depends_dev="libdrm-dev dri2proto libx11-dev libxext-dev libxxf86vm-dev
libxdamage-dev libxfixes-dev libxcb-dev glproto dri3proto presentproto
libxshmfence-dev"
makedepends="$depends_dev expat-dev xextproto python 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
source="ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/mesa-$pkgver.tar.xz
_dri_driverdir=/usr/lib/xorg/modules/dri
_dri_drivers="r200,radeon,nouveau,swrast"
_intel_dri=
case "$CARCH" in
x86*)
_dri_drivers="${_dri_drivers},i915,i965"
subpackages="$subpackages $pkgname-dri-intel:intel"
for i in $source; do
case $i in
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac
libtoolize --force \
&& aclocal \
&& automake --add-missing \
&& autoreconf || return 1
[ "$CLIBC" = "musl" ] && export CFLAGS="$CFLAGS -D_XOPEN_SOURCE=700"
./configure \
--build=$CBUILD \
--host=$CHOST \
--prefix=/usr \
--with-dri-driverdir=$_dri_driverdir \
--with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast \
--with-dri-drivers=${_dri_drivers} \
--enable-dri \
--enable-glx \
--enable-osmesa \
--enable-gles1 \
--enable-gles2 \
--enable-egl \
--enable-texture-float \
--enable-xa \
find "$pkgdir" -name '*.la' -delete
}
dricore() {
pkgdesc="Mesa dricore runtime libraries"
install -d "$subpkgdir"/usr/lib "$subpkgdir"/etc
mv "$pkgdir"/usr/lib/libdricore*.so.* \
"$subpkgdir"/usr/lib/
mv "$pkgdir"/etc/drirc "$subpkgdir"/etc/drirc
egl() {
replaces="mesa"
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/
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"
install -d "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libgbm.so.* \
_mv_dri() {
pkgdesc="Mesa DRI driver for $@"
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
}
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
ati() { _mv_dri radeon_dri r200_dri r300_dri r600_dri radeonsi_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; }
_wayland() {
pkgdesc="Mesa libwayland-egl library"
mkdir -p "$subpkgdir"/usr/lib
mv "$pkgdir"/usr/lib/libwayland-egl.so.* "$subpkgdir"/usr/lib/ \
|| return 1
}
md5sums="553e525d2f20ed48fca8f1ec3176fd83 mesa-10.6.3.tar.xz
a1a766b4c6a96d67cad9bd7ad5c578e8 glx_ro_text_segm.patch
924983cef0c3ede76e5011a179bac155 musl-fixes.patch"
sha256sums="58592e07c350cd2e8969b73fa83048c657a39fe2f13f3b88f5e5818fe2e4676d mesa-10.6.3.tar.xz
004f52adefaeccfd4553e0b1d09ad769891d69d05880094c7a45d19623e674a6 glx_ro_text_segm.patch
aecc3d03d00d34bfb26f54679000fdb8719571b14161e4be4db962fba0f96d24 musl-fixes.patch"
sha512sums="4474e089c0b618d0b0469e31c213d84530f9dd22d4280612f34370578a7e7dfdfd1ac499feae470f032e462f5d7532aafa4416a7dd97d0cd6d9332aec5b44446 mesa-10.6.3.tar.xz
c3d4804ebc24c7216e4c9d4995fb92e116be7f478024b44808ee134a4c93bb51d1f66fe5fb6eca254f124c4abf6f81272b027824b3e2650a9607818bf793035a glx_ro_text_segm.patch
9f7a050f09571a2b17098d495b82e2e85b293fb7285e7d6d7c3c48cd4220a1bdcc61a7321ba78dd14860939ecabe7e89b32d6110f3728f793273e1e26b78a553 musl-fixes.patch"