diff --git a/extra/mesa-amber/.SRCINFO b/extra/mesa-amber/.SRCINFO new file mode 100644 index 000000000..08f002863 --- /dev/null +++ b/extra/mesa-amber/.SRCINFO @@ -0,0 +1,47 @@ +pkgbase = mesa-amber + pkgdesc = classic OpenGL (non-Gallium3D) drivers + pkgver = 21.3.9 + pkgrel = 6 + url = https://www.mesa3d.org/ + arch = x86_64 + license = MIT AND BSD-3-Clause AND SGI-B-2.0 + makedepends = cmake + makedepends = elfutils + makedepends = libdrm + makedepends = libglvnd + makedepends = libunwind + makedepends = libx11 + makedepends = libxdamage + makedepends = libxml2 + makedepends = libxrandr + makedepends = libxshmfence + makedepends = libxxf86vm + makedepends = meson + makedepends = python-mako + makedepends = valgrind + makedepends = wayland + makedepends = wayland-protocols + makedepends = xorgproto + makedepends = zstd + source = https://mesa.freedesktop.org/archive/mesa-21.3.9.tar.xz + source = https://mesa.freedesktop.org/archive/mesa-21.3.9.tar.xz.sig + source = LICENSE + validpgpkeys = 71C4B75620BC75708B4BDB254C95FAAB3EB073EC + sha256sums = 91fe6f20339884e37a7c47bfba42fb1cd397512c9ed5ad423de369f047cd8b5c + sha256sums = SKIP + sha256sums = 7052ba73bb07ea78873a2431ee4e828f4e72bda7d176d07f770fa48373dec537 + b2sums = 79669f9492c505b1729c526adf5a8261737b6088bdf01db654a0dca8ba22600ec985b574edfeee3a28c76e6e0f815782362973876e1d75b58f4417f45df70add + b2sums = SKIP + b2sums = 1ecf007b82260710a7bf5048f47dd5d600c168824c02c595af654632326536a6527fbe0738670ee7b921dd85a70425108e0f471ba85a8e1ca47d294ad74b4adb + +pkgname = mesa-amber + depends = libdrm + depends = libglvnd + depends = libxfixes + depends = libxshmfence + depends = libxxf86vm + depends = wayland + depends = zstd + provides = mesa=21.3.9 + provides = opengl-driver + conflicts = mesa diff --git a/extra/mesa-amber/PKGBUILD b/extra/mesa-amber/PKGBUILD index d3bf72a2c..318af4500 100644 --- a/extra/mesa-amber/PKGBUILD +++ b/extra/mesa-amber/PKGBUILD @@ -10,64 +10,104 @@ highmem=1 pkgname=mesa-amber -pkgdesc="classic OpenGL (non-Gallium3D) drivers" pkgver=21.3.9 -pkgrel=4 -arch=('x86_64') -makedepends=('python-mako' 'libxml2' 'libx11' 'xorgproto' 'libdrm' 'libxshmfence' 'libxxf86vm' - 'libxdamage' 'wayland' 'wayland-protocols' 'zstd' 'elfutils' - 'libglvnd' 'libunwind' 'libxrandr' 'valgrind' 'cmake' 'meson') +pkgrel=6 +pkgdesc="classic OpenGL (non-Gallium3D) drivers" url="https://www.mesa3d.org/" -license=('custom') -source=(https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig} - LICENSE) -sha512sums=('4cec6f4f50f444fcd327f7c40f8899c2f265e348e121455262b540b1f890a1468bbea59965af0876c548fa97aa0a05a1b23fa6ca7d308bd60328cfdeab757684' +arch=('x86_64') +license=('MIT AND BSD-3-Clause AND SGI-B-2.0') +makedepends=( + 'cmake' + 'elfutils' + 'libdrm' + 'libglvnd' + 'libunwind' + 'libx11' + 'libxdamage' + 'libxml2' + 'libxrandr' + 'libxshmfence' + 'libxxf86vm' + 'meson' + 'python-mako' + 'valgrind' + 'wayland' + 'wayland-protocols' + 'xorgproto' + 'zstd' +) +source=( + https://mesa.freedesktop.org/archive/mesa-${pkgver}.tar.xz{,.sig} + LICENSE +) +sha256sums=('91fe6f20339884e37a7c47bfba42fb1cd397512c9ed5ad423de369f047cd8b5c' 'SKIP' - 'f9f0d0ccf166fe6cb684478b6f1e1ab1f2850431c06aa041738563eb1808a004e52cdec823c103c9e180f03ffc083e95974d291353f0220fe52ae6d4897fecc7') -#validpgpkeys=('57551DE15B968F6341C248F68D8E31AFC32428A6') # Eric Engestrom + '7052ba73bb07ea78873a2431ee4e828f4e72bda7d176d07f770fa48373dec537') +b2sums=('79669f9492c505b1729c526adf5a8261737b6088bdf01db654a0dca8ba22600ec985b574edfeee3a28c76e6e0f815782362973876e1d75b58f4417f45df70add' + 'SKIP' + '1ecf007b82260710a7bf5048f47dd5d600c168824c02c595af654632326536a6527fbe0738670ee7b921dd85a70425108e0f471ba85a8e1ca47d294ad74b4adb') validpgpkeys=('71C4B75620BC75708B4BDB254C95FAAB3EB073EC') # Dylan Baker prepare() { cd mesa-$pkgver + + # Include package release in version string so Chromium invalidates + # its GPU cache; otherwise it can cause pages to render incorrectly. + # https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/2020604 + echo "$pkgver-arch$epoch.$pkgrel" >VERSION } build() { - arch-meson mesa-$pkgver build \ + local meson_options=( -D b_lto=$([[ $CARCH == aarch64 ]] && echo true || echo false) \ - -D b_ndebug=true \ - -D amber=true \ - -D platforms=auto \ + -D amber=true + -D b_ndebug=true -D dri-drivers=r100,r200,nouveau \ - -D gallium-drivers=swrast \ - -D vulkan-drivers=auto \ - -D dri3=enabled \ - -D egl=enabled \ - -D gbm=enabled \ - -D gles1=disabled \ - -D gles2=enabled \ - -D glvnd=auto \ - -D glx=dri \ - -D libunwind=enabled \ - -D llvm=disabled \ - -D lmsensors=disabled \ - -D osmesa=true \ - -D shared-glapi=enabled \ - -D microsoft-clc=disabled \ + -D dri3=enabled + -D egl=enabled + -D gallium-drivers=swrast + -D gbm=enabled + -D gles1=disabled + -D gles2=enabled + -D glvnd=true + -D glx=dri + -D libunwind=enabled + -D llvm=disabled + -D lmsensors=disabled + -D microsoft-clc=disabled + -D osmesa=true + -D platforms=x11,wayland + -D shared-glapi=enabled -D valgrind=enabled + -D vulkan-drivers=auto + ) - # Print config - meson configure build + # Build only minimal debug info to reduce size + CFLAGS+=' -g1' + CXXFLAGS+=' -g1' - ninja -C build + arch-meson mesa-$pkgver build "${meson_options[@]}" + meson configure build # Print config meson compile -C build } package() { - depends=('libglvnd' 'libdrm' 'zstd' 'wayland' 'libxshmfence' 'libxxf86vm' 'libxfixes') + depends=( + 'libdrm' + 'libglvnd' + 'libxfixes' + 'libxshmfence' + 'libxxf86vm' + 'wayland' + 'zstd' + ) conflicts=('mesa') - provides=("mesa=${pkgver}" "opengl-driver") + provides=( + "mesa=${pkgver}" + "opengl-driver" + ) - DESTDIR="${pkgdir}" meson install -C build + meson install -C build --destdir "${pkgdir}" # indirect rendering ln -s /usr/lib/libGLX_amber.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0" diff --git a/extra/mesa-amber/keys/pgp/71C4B75620BC75708B4BDB254C95FAAB3EB073EC.asc b/extra/mesa-amber/keys/pgp/71C4B75620BC75708B4BDB254C95FAAB3EB073EC.asc new file mode 100644 index 000000000..c586f6b43 --- /dev/null +++ b/extra/mesa-amber/keys/pgp/71C4B75620BC75708B4BDB254C95FAAB3EB073EC.asc @@ -0,0 +1,22 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mDMEWnyK+hYJKwYBBAHaRw8BAQdAciqI9uB5/t6i0/M+WXq4meqx9RtBN3y0bo09 +IckAQSy0IUR5bGFuIEJha2VyIDxkeWxhbkBwbndiYWtlcnMuY29tPoiZBBMWCgBB +AhsDBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAhkBFiEEccS3ViC8dXCLS9slTJX6 +qz6wc+wFAl5CyRoFCQWncaAACgkQTJX6qz6wc+yGeQEAvd8Uu2CsWW2RuZ0dLP6A +6BT1Dd57pBi5UlQrtHDdkP0A/022qYev+aIIeLPxectXcoCbqGXVKdBudhxMaXlM +8WMPtCVEeWxhbiBCYWtlciA8YmFrZXIuZHlsYW4uY0BnbWFpbC5jb20+iJYEExYK +AD4CGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AWIQRxxLdWILx1cItL2yVMlfqr +PrBz7AUCXkLJGgUJBadxoAAKCRBMlfqrPrBz7L5IAQCQwtt0+waBHFf29nMkuFU2 +mrS4Px749lZpIILEml4L3QD/UhKLZwt28hyquDOsU4xy/J3UvzYaJWweEcE0qx3f +xQq0JUR5bGFuIEJha2VyIDxkeWxhbmJha2VyQGZhc3RtYWlsLmNvbT6IlgQTFgoA +PgIbAwULCQgHAwUVCgkICwUWAgMBAAIeAQIXgBYhBHHEt1YgvHVwi0vbJUyV+qs+ +sHPsBQJeQskaBQkFp3GgAAoJEEyV+qs+sHPs1HABALMRh3el0aLLbOriVEZjt17o +sFRr2szBBy9bWgpmWEXFAQD6uLq7UMLw5QLbXIik58X6PwEwtyIizB0jR3/SAWLK +ALQtRHlsYW4gQmFrZXIgKEludGVsKSA8ZHlsYW4uYy5iYWtlckBpbnRlbC5jb20+ +iJYEExYKAD4CGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AWIQRxxLdWILx1cItL +2yVMlfqrPrBz7AUCXkLJGgUJBadxoAAKCRBMlfqrPrBz7HcMAP9LifBpsO1eAGXr +96CtmN/R39ncuYwlvAZs/g53ruuS8AEAzMefQmjKGLICNr/mUPNWsV2gBT68fRA4 +g6Ra5uaCMwc= +=QIFd +-----END PGP PUBLIC KEY BLOCK-----