summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO28
-rw-r--r--.gitignore5
-rw-r--r--PKGBUILD83
3 files changed, 75 insertions, 41 deletions
diff --git a/.SRCINFO b/.SRCINFO
index cf37271682d6..09e05d32be23 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,26 +1,22 @@
pkgbase = lib32-mesa-git
pkgdesc = an open-source implementation of the OpenGL specification, git version
- pkgver = 21.0.0_devel.132228.574429f9528
+ pkgver = 24.0.0_devel.179925.0e481bf4632.d41d8cd
pkgrel = 1
url = https://www.mesa3d.org
arch = x86_64
license = custom
makedepends = python-mako
makedepends = lib32-libxml2
- makedepends = lib32-libx11
makedepends = xorgproto
- makedepends = lib32-gcc-libs
makedepends = lib32-libvdpau
- makedepends = lib32-libelf
makedepends = git
- makedepends = mesa-git
makedepends = lib32-libglvnd
makedepends = wayland-protocols
- makedepends = lib32-wayland
makedepends = meson
makedepends = lib32-libva
makedepends = lib32-libxrandr
- makedepends = lib32-llvm=11.0.0
+ makedepends = python-packaging
+ makedepends = lib32-llvm=17.0.6
depends = mesa-git
depends = lib32-gcc-libs
depends = lib32-libdrm
@@ -28,27 +24,38 @@ pkgbase = lib32-mesa-git
depends = lib32-libxxf86vm
depends = lib32-libxdamage
depends = lib32-libxshmfence
- depends = lib32-elfutils
+ depends = lib32-libelf
depends = lib32-libunwind
depends = lib32-lm_sensors
depends = glslang
depends = lib32-vulkan-icd-loader
depends = lib32-zstd
- depends = lib32-llvm-libs=11.0.0
+ depends = lib32-libxcb
+ depends = lib32-libxfixes
+ depends = lib32-expat
+ depends = lib32-libxext
+ depends = lib32-libx11
+ depends = lib32-zlib
+ depends = lib32-glibc
+ depends = lib32-llvm-libs=17.0.6
optdepends = opengl-man-pages: for the OpenGL API man pages
provides = lib32-mesa
provides = lib32-vulkan-intel
provides = lib32-vulkan-radeon
+ provides = lib32-vulkan-mesa-layers
provides = lib32-libva-mesa-driver
provides = lib32-mesa-vdpau
+ provides = lib32-mesa-libgl
provides = lib32-opengl-driver
provides = lib32-vulkan-driver
conflicts = lib32-mesa
conflicts = lib32-vulkan-intel
conflicts = lib32-vulkan-radeon
+ conflicts = lib32-vulkan-mesa-layers
conflicts = lib32-libva-mesa-driver
conflicts = lib32-mesa-vdpau
- source = mesa::git+https://gitlab.freedesktop.org/mesa/mesa.git
+ conflicts = lib32-mesa-libgl
+ source = mesa::git+https://gitlab.freedesktop.org/mesa/mesa.git#branch=main
source = LICENSE
source = llvm32.native
md5sums = SKIP
@@ -59,4 +66,3 @@ pkgbase = lib32-mesa-git
sha512sums = c7dbb390ebde291c517a854fcbe5166c24e95206f768cc9458ca896b2253aabd6df12a7becf831998721b2d622d0c02afdd8d519e77dea8e1d6807b35f0166fe
pkgname = lib32-mesa-git
-
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000000000000..4c0d754f3710
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,5 @@
+lib32-mesa-git-*
+mesa
+pkg
+src
+
diff --git a/PKGBUILD b/PKGBUILD
index 7a6821553bce..4fc8170f81ed 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,4 +1,5 @@
-# Maintainer: Lone_Wolf <lone_wolf@klaas-de-kat.nl>
+# Maintainer: Reza Jahanbakhshi <reza.jahanbakhshi at gmail dot com
+# Contributor: Lone_Wolf <lone_wolf@klaas-de-kat.nl>
# Contributor: Armin K. <krejzi at email dot com>
# Contributor: Kristian Klausen <klausenbusk@hotmail.com>
# Contributor: Egon Ashrafinia <e.ashrafinia@gmail.com>
@@ -11,24 +12,26 @@
pkgname=lib32-mesa-git
pkgdesc="an open-source implementation of the OpenGL specification, git version"
-pkgver=21.0.0_devel.132228.574429f9528
+pkgver=24.0.0_devel.179925.0e481bf4632.d41d8cd
pkgrel=1
arch=('x86_64')
-makedepends=('python-mako' 'lib32-libxml2' 'lib32-libx11' 'xorgproto'
- 'lib32-gcc-libs' 'lib32-libvdpau' 'lib32-libelf' 'git' 'mesa-git' 'lib32-libglvnd'
- 'wayland-protocols' 'lib32-wayland' 'meson' 'lib32-libva' 'lib32-libxrandr')
-depends=('mesa-git' 'lib32-gcc-libs' 'lib32-libdrm' 'lib32-wayland' 'lib32-libxxf86vm' 'lib32-libxdamage' 'lib32-libxshmfence'
- 'lib32-elfutils' 'lib32-libunwind' 'lib32-lm_sensors' 'glslang' 'lib32-vulkan-icd-loader' 'lib32-zstd')
+makedepends=('python-mako' 'lib32-libxml2' 'xorgproto'
+ 'lib32-libvdpau' 'git' 'lib32-libglvnd' 'wayland-protocols'
+ 'meson' 'lib32-libva' 'lib32-libxrandr' 'python-packaging')
+depends=('mesa-git' 'lib32-gcc-libs' 'lib32-libdrm' 'lib32-wayland' 'lib32-libxxf86vm'
+ 'lib32-libxdamage' 'lib32-libxshmfence' 'lib32-libelf' 'lib32-libunwind'
+ 'lib32-lm_sensors' 'glslang' 'lib32-vulkan-icd-loader' 'lib32-zstd'
+ 'lib32-libxcb' 'lib32-libxfixes' 'lib32-expat' 'lib32-libxext' 'lib32-libx11'
+ 'lib32-zlib' 'lib32-glibc'
+)
optdepends=('opengl-man-pages: for the OpenGL API man pages')
-provides=('lib32-mesa' 'lib32-vulkan-intel' 'lib32-vulkan-radeon' 'lib32-libva-mesa-driver' 'lib32-mesa-vdpau' 'lib32-opengl-driver' 'lib32-vulkan-driver')
-conflicts=('lib32-mesa' 'lib32-vulkan-intel' 'lib32-vulkan-radeon' 'lib32-libva-mesa-driver' 'lib32-mesa-vdpau')
+provides=('lib32-mesa' 'lib32-vulkan-intel' 'lib32-vulkan-radeon' 'lib32-vulkan-mesa-layers' 'lib32-libva-mesa-driver' 'lib32-mesa-vdpau' 'lib32-mesa-libgl' 'lib32-opengl-driver' 'lib32-vulkan-driver')
+conflicts=('lib32-mesa' 'lib32-vulkan-intel' 'lib32-vulkan-radeon' 'lib32-vulkan-mesa-layers' 'lib32-libva-mesa-driver' 'lib32-mesa-vdpau' 'lib32-mesa-libgl')
url="https://www.mesa3d.org"
license=('custom')
-source=('mesa::git+https://gitlab.freedesktop.org/mesa/mesa.git'
- 'LICENSE'
- 'llvm32.native'
-)
-
+source=('mesa::git+https://gitlab.freedesktop.org/mesa/mesa.git#branch=main'
+ 'LICENSE'
+ 'llvm32.native')
md5sums=('SKIP'
'5c65a0fe315dd347e09b1f2826a1df5a'
'6b4a19068a323d7f90a3d3cd315ed1f9')
@@ -73,8 +76,8 @@ case $MESA_WHICH_LLVM in
;;
4)
# extra/llvm
- makedepends+=(lib32-llvm=11.0.0)
- depends+=(lib32-llvm-libs=11.0.0)
+ makedepends+=(lib32-llvm=17.0.6)
+ depends+=(lib32-llvm-libs=17.0.6)
;;
*)
esac
@@ -82,8 +85,20 @@ esac
pkgver() {
cd mesa
- read -r _ver <VERSION
- echo ${_ver/-/_}.$(git rev-list --count HEAD).$(git rev-parse --short HEAD)
+ local _ver
+ _ver=$(<VERSION)
+
+ local _patchver
+ local _patchfile
+ for _patchfile in "${source[@]}"; do
+ _patchfile="${_patchfile%%::*}"
+ _patchfile="${_patchfile##*/}"
+ [[ $_patchfile = *.patch ]] || continue
+ _patchver="${_patchver}$(md5sum ${srcdir}/${_patchfile} | cut -c1-32)"
+ done
+ _patchver="$(echo -n $_patchver | md5sum | cut -c1-7)"
+
+ echo ${_ver/-/_}.$(git rev-list --count HEAD).$(git rev-parse --short HEAD).${_patchver}
}
prepare() {
@@ -92,37 +107,46 @@ prepare() {
if [ -d _build ]; then
rm -rf _build
fi
+
+ local _patchfile
+ for _patchfile in "${source[@]}"; do
+ _patchfile="${_patchfile%%::*}"
+ _patchfile="${_patchfile##*/}"
+ [[ $_patchfile = *.patch ]] || continue
+ echo "Applying patch $_patchfile..."
+ patch --directory=mesa --forward --strip=1 --input="${srcdir}/${_patchfile}"
+ done
}
+
build () {
- export CC="gcc -m32"
- export CXX="g++ -m32"
+ export CC="${CC:-gcc}"
+ export CXX="${CXX:-g++}"
+ CC="$CC -m32"
+ CXX="$CXX -m32"
+
export PKG_CONFIG=/usr/bin/i686-pc-linux-gnu-pkg-config
meson setup mesa _build \
--native-file llvm32.native \
-D b_ndebug=true \
- -D b_lto=true \
-D buildtype=plain \
--wrap-mode=nofallback \
-D prefix=/usr \
-D sysconfdir=/etc \
--libdir=/usr/lib32 \
-D platforms=x11,wayland \
- -D dri-drivers=i915,i965,r200,r100,nouveau \
- -D gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl,iris,zink \
- -D vulkan-drivers=amd,intel \
+ -D gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl,iris,zink,crocus \
+ -D vulkan-drivers=amd,intel,swrast,virtio,intel_hasvk \
-D dri3=enabled \
-D egl=enabled \
-D gallium-extra-hud=true \
- -D vulkan-overlay-layer=true \
- -D vulkan-device-select-layer=true \
+ -D vulkan-layers=device-select,overlay \
-D gallium-nine=true \
-D gallium-omx=disabled \
-D gallium-opencl=disabled \
-D gallium-va=enabled \
-D gallium-vdpau=enabled \
-D gallium-xa=enabled \
- -D gallium-xvmc=disabled \
-D gbm=enabled \
-D gles1=disabled \
-D gles2=enabled \
@@ -138,7 +162,7 @@ build () {
-D zstd=enabled \
-D microsoft-clc=disabled
- meson configure _build
+ meson configure --no-pager _build
ninja $NINJAFLAGS -C _build
}
@@ -153,13 +177,12 @@ package() {
rm -rf "$pkgdir"/usr/share/drirc.d/
rm -rf "$pkgdir"/usr/share/vulkan/explicit_layer.d/
rm -rf "$pkgdir"/usr/share/vulkan/implicit_layer.d/VkLayer_MESA_device_select.json
-
+
# remove script file from /usr/bin
# https://gitlab.freedesktop.org/mesa/mesa/issues/2230
rm "${pkgdir}/usr/bin/mesa-overlay-control.py"
rmdir "${pkgdir}/usr/bin"
-
# indirect rendering
ln -s /usr/lib32/libGLX_mesa.so.0 "${pkgdir}/usr/lib32/libGLX_indirect.so.0"
install -m644 -Dt "$pkgdir"/usr/share/licenses/$pkgbase/ "$srcdir"/LICENSE