mirror of
https://github.com/outbackdingo/ports.git
synced 2026-01-27 18:20:07 +00:00
Merge pull request #6505 from lumarogit/mesa
(testing) mesa: fix build with LLVM 17
This commit is contained in:
2
testing/mesa/.checksums
Normal file
2
testing/mesa/.checksums
Normal file
@@ -0,0 +1,2 @@
|
||||
e3318926ad93230d2bef48ac0ab0d8f1 fix-build-llvm17.patch
|
||||
1b95b46eb977b2b34cd9c02e93ca4659 mesa-23.1.7.tar.xz
|
||||
96
testing/mesa/.pkgfiles
Normal file
96
testing/mesa/.pkgfiles
Normal file
@@ -0,0 +1,96 @@
|
||||
mesa-23.1.7-2
|
||||
drwxr-xr-x root/root usr/
|
||||
drwxr-xr-x root/root usr/bin/
|
||||
-r-xr-xr-x root/root usr/bin/mesa-overlay-control.py
|
||||
drwxr-xr-x root/root usr/include/
|
||||
drwxr-xr-x root/root usr/include/EGL/
|
||||
-rw-r--r-- root/root usr/include/EGL/eglext_angle.h
|
||||
-rw-r--r-- root/root usr/include/EGL/eglmesaext.h
|
||||
drwxr-xr-x root/root usr/include/GL/
|
||||
drwxr-xr-x root/root usr/include/GL/internal/
|
||||
-rw-r--r-- root/root usr/include/GL/internal/dri_interface.h
|
||||
-rw-r--r-- root/root usr/include/GL/osmesa.h
|
||||
-rw-r--r-- root/root usr/include/gbm.h
|
||||
-rw-r--r-- root/root usr/include/xa_composite.h
|
||||
-rw-r--r-- root/root usr/include/xa_context.h
|
||||
-rw-r--r-- root/root usr/include/xa_tracker.h
|
||||
drwxr-xr-x root/root usr/lib/
|
||||
drwxr-xr-x root/root usr/lib/dri/
|
||||
hrwxr-xr-x root/root usr/lib/dri/crocus_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/i915_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/iris_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/kms_swrast_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/nouveau_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/nouveau_drv_video.so link to usr/lib/dri/r600_drv_video.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/r300_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/r600_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
-rwxr-xr-x root/root usr/lib/dri/r600_drv_video.so
|
||||
-rwxr-xr-x root/root usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/radeonsi_drv_video.so link to usr/lib/dri/r600_drv_video.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/swrast_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/virtio_gpu_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/virtio_gpu_drv_video.so link to usr/lib/dri/r600_drv_video.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/vmwgfx_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
hrwxr-xr-x root/root usr/lib/dri/zink_dri.so link to usr/lib/dri/radeonsi_dri.so
|
||||
lrwxrwxrwx root/root usr/lib/libEGL_mesa.so -> libEGL_mesa.so.0
|
||||
lrwxrwxrwx root/root usr/lib/libEGL_mesa.so.0 -> libEGL_mesa.so.0.0.0
|
||||
-rwxr-xr-x root/root usr/lib/libEGL_mesa.so.0.0.0
|
||||
lrwxrwxrwx root/root usr/lib/libGLX_indirect.so.0 -> libGLX_mesa.so.0
|
||||
lrwxrwxrwx root/root usr/lib/libGLX_mesa.so -> libGLX_mesa.so.0
|
||||
lrwxrwxrwx root/root usr/lib/libGLX_mesa.so.0 -> libGLX_mesa.so.0.0.0
|
||||
-rwxr-xr-x root/root usr/lib/libGLX_mesa.so.0.0.0
|
||||
lrwxrwxrwx root/root usr/lib/libOSMesa.so -> libOSMesa.so.8
|
||||
lrwxrwxrwx root/root usr/lib/libOSMesa.so.8 -> libOSMesa.so.8.0.0
|
||||
-rwxr-xr-x root/root usr/lib/libOSMesa.so.8.0.0
|
||||
-rwxr-xr-x root/root usr/lib/libVkLayer_INTEL_nullhw.so
|
||||
-rwxr-xr-x root/root usr/lib/libVkLayer_MESA_device_select.so
|
||||
-rwxr-xr-x root/root usr/lib/libVkLayer_MESA_overlay.so
|
||||
lrwxrwxrwx root/root usr/lib/libgbm.so -> libgbm.so.1
|
||||
lrwxrwxrwx root/root usr/lib/libgbm.so.1 -> libgbm.so.1.0.0
|
||||
-rwxr-xr-x root/root usr/lib/libgbm.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/libglapi.so -> libglapi.so.0
|
||||
lrwxrwxrwx root/root usr/lib/libglapi.so.0 -> libglapi.so.0.0.0
|
||||
-rwxr-xr-x root/root usr/lib/libglapi.so.0.0.0
|
||||
-rwxr-xr-x root/root usr/lib/libvulkan_intel.so
|
||||
-rwxr-xr-x root/root usr/lib/libvulkan_radeon.so
|
||||
lrwxrwxrwx root/root usr/lib/libxatracker.so -> libxatracker.so.2
|
||||
lrwxrwxrwx root/root usr/lib/libxatracker.so.2 -> libxatracker.so.2.5.0
|
||||
-rwxr-xr-x root/root usr/lib/libxatracker.so.2.5.0
|
||||
drwxr-xr-x root/root usr/lib/pkgconfig/
|
||||
-rw-r--r-- root/root usr/lib/pkgconfig/dri.pc
|
||||
-rw-r--r-- root/root usr/lib/pkgconfig/gbm.pc
|
||||
-rw-r--r-- root/root usr/lib/pkgconfig/osmesa.pc
|
||||
-rw-r--r-- root/root usr/lib/pkgconfig/xatracker.pc
|
||||
drwxr-xr-x root/root usr/lib/vdpau/
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_nouveau.so -> libvdpau_nouveau.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_nouveau.so.1 -> libvdpau_nouveau.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_nouveau.so.1.0 -> libvdpau_nouveau.so.1.0.0
|
||||
hrwxr-xr-x root/root usr/lib/vdpau/libvdpau_nouveau.so.1.0.0 link to usr/lib/vdpau/libvdpau_r600.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_r600.so -> libvdpau_r600.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_r600.so.1 -> libvdpau_r600.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_r600.so.1.0 -> libvdpau_r600.so.1.0.0
|
||||
-rwxr-xr-x root/root usr/lib/vdpau/libvdpau_r600.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_radeonsi.so -> libvdpau_radeonsi.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_radeonsi.so.1 -> libvdpau_radeonsi.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_radeonsi.so.1.0 -> libvdpau_radeonsi.so.1.0.0
|
||||
hrwxr-xr-x root/root usr/lib/vdpau/libvdpau_radeonsi.so.1.0.0 link to usr/lib/vdpau/libvdpau_r600.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_virtio_gpu.so -> libvdpau_virtio_gpu.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_virtio_gpu.so.1 -> libvdpau_virtio_gpu.so.1.0.0
|
||||
lrwxrwxrwx root/root usr/lib/vdpau/libvdpau_virtio_gpu.so.1.0 -> libvdpau_virtio_gpu.so.1.0.0
|
||||
hrwxr-xr-x root/root usr/lib/vdpau/libvdpau_virtio_gpu.so.1.0.0 link to usr/lib/vdpau/libvdpau_r600.so.1.0.0
|
||||
drwxr-xr-x root/root usr/share/
|
||||
drwxr-xr-x root/root usr/share/drirc.d/
|
||||
-rw-r--r-- root/root usr/share/drirc.d/00-mesa-defaults.conf
|
||||
-rw-r--r-- root/root usr/share/drirc.d/00-radv-defaults.conf
|
||||
drwxr-xr-x root/root usr/share/glvnd/
|
||||
drwxr-xr-x root/root usr/share/glvnd/egl_vendor.d/
|
||||
-rw-r--r-- root/root usr/share/glvnd/egl_vendor.d/50_mesa.json
|
||||
drwxr-xr-x root/root usr/share/vulkan/
|
||||
drwxr-xr-x root/root usr/share/vulkan/explicit_layer.d/
|
||||
-rw-r--r-- root/root usr/share/vulkan/explicit_layer.d/VkLayer_INTEL_nullhw.json
|
||||
-rw-r--r-- root/root usr/share/vulkan/explicit_layer.d/VkLayer_MESA_overlay.json
|
||||
drwxr-xr-x root/root usr/share/vulkan/icd.d/
|
||||
-rw-r--r-- root/root usr/share/vulkan/icd.d/intel_icd.x86_64.json
|
||||
-rw-r--r-- root/root usr/share/vulkan/icd.d/radeon_icd.x86_64.json
|
||||
drwxr-xr-x root/root usr/share/vulkan/implicit_layer.d/
|
||||
-rw-r--r-- root/root usr/share/vulkan/implicit_layer.d/VkLayer_MESA_device_select.json
|
||||
30
testing/mesa/fix-build-llvm17.patch
Normal file
30
testing/mesa/fix-build-llvm17.patch
Normal file
@@ -0,0 +1,30 @@
|
||||
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
||||
index 24d0823..97fcfc1 100644
|
||||
--- a/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
||||
+++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
||||
@@ -42,19 +42,23 @@
|
||||
|
||||
#include <llvm/Config/llvm-config.h>
|
||||
#include <llvm-c/Analysis.h>
|
||||
+#if LLVM_VERSION_MAJOR < 17
|
||||
#include <llvm-c/Transforms/Scalar.h>
|
||||
-#if LLVM_VERSION_MAJOR >= 7
|
||||
+#endif
|
||||
+#if LLVM_VERSION_MAJOR >= 7 && LLVM_VERSION_MAJOR < 17
|
||||
#include <llvm-c/Transforms/Utils.h>
|
||||
#endif
|
||||
#include <llvm-c/BitWriter.h>
|
||||
#if GALLIVM_USE_NEW_PASS == 1
|
||||
#include <llvm-c/Transforms/PassBuilder.h>
|
||||
#elif GALLIVM_HAVE_CORO == 1
|
||||
-#if LLVM_VERSION_MAJOR <= 8 && (DETECT_ARCH_AARCH64 || DETECT_ARCH_ARM || DETECT_ARCH_S390 || DETECT_ARCH_MIPS64)
|
||||
+#if LLVM_VERSION_MAJOR <= 8 && LLVM_VERSION_MAJOR < 17 && (DETECT_ARCH_AARCH64 || DETECT_ARCH_ARM || DETECT_ARCH_S390 || DETECT_ARCH_MIPS64)
|
||||
#include <llvm-c/Transforms/IPO.h>
|
||||
#endif
|
||||
+#if LLVM_VERSION_MAJOR < 17
|
||||
#include <llvm-c/Transforms/Coroutines.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
unsigned gallivm_perf = 0;
|
||||
|
||||
8
testing/mesa/post-install.sh
Normal file
8
testing/mesa/post-install.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
printf '%s\n' "Optional dependencies:
|
||||
libva
|
||||
libvdpau
|
||||
llvm
|
||||
xf86-video-intel
|
||||
xf86-video-amdgpu"
|
||||
8
testing/mesa/pre-install.sh
Normal file
8
testing/mesa/pre-install.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
|
||||
printf '%s\n' "Optional dependencies:
|
||||
libva
|
||||
libvdpau
|
||||
llvm
|
||||
xf86-video-intel
|
||||
xf86-video-amdgpu"
|
||||
43
testing/mesa/spkgbuild
Executable file
43
testing/mesa/spkgbuild
Executable file
@@ -0,0 +1,43 @@
|
||||
# description : OpenGL compatible 3D graphics library
|
||||
# depends : python3-mako elfutils bison flex libxext libxdamage libxshmfence libxxf86vm libxrandr libdrm libglvnd glslang
|
||||
# optional : libva libvdpau llvm wayland-protocols
|
||||
|
||||
name=mesa
|
||||
version=23.1.7
|
||||
release=2
|
||||
source="https://mesa.freedesktop.org/archive/$name-$version.tar.xz
|
||||
fix-build-llvm17.patch"
|
||||
|
||||
build() {
|
||||
# Fix build with LLVM 17
|
||||
patch -d $name-$version -Np1 -i $SRC/fix-build-llvm17.patch
|
||||
|
||||
scratch isinstalled vulkan-icd-loader && OPT_MESA_GALLIUM='zink,'
|
||||
scratch isinstalled libvdpau && OPT_MESA_VDPAU='-D gallium-vdpau=enabled' || OPT_MESA_VDPAU='-D gallium-vdpau=disabled'
|
||||
scratch isinstalled libva && OPT_MESA_VAAPI='-D gallium-va=enabled' || OPT_MESA_VAAPI='-D gallium-va=disabled'
|
||||
scratch isinstalled wayland-protocols && OPT_MESA_PLATFORMS='wayland,x11' || OPT_MESA_PLATFORMS='x11'
|
||||
|
||||
venom-meson $name-$version build \
|
||||
-D dri3=enabled \
|
||||
-D egl=enabled \
|
||||
-D llvm=enabled \
|
||||
-D shared-llvm=enabled \
|
||||
-D gbm=enabled \
|
||||
-D gles1=disabled \
|
||||
-D gles2=enabled \
|
||||
-D glx=dri \
|
||||
-D osmesa=true \
|
||||
-D gallium-xa=enabled \
|
||||
-D gallium-drivers=${OPT_MESA_GALLIUM}crocus,iris,nouveau,r300,r600,radeonsi,svga,swrast,virgl,i915 \
|
||||
-D platforms=${OPT_MESA_PLATFORMS} \
|
||||
-D shared-glapi=enabled \
|
||||
-D vulkan-drivers=amd,intel \
|
||||
-D vulkan-layers=device-select,intel-nullhw,overlay \
|
||||
-D video-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc \
|
||||
$OPT_MESA_VDPAU $OPT_MESA_VAAPI -D glvnd=true
|
||||
meson compile -C build
|
||||
DESTDIR=$PKG meson install --no-rebuild -C build
|
||||
|
||||
# indirect rendering symlink
|
||||
ln -s libGLX_mesa.so.0 $PKG/usr/lib/libGLX_indirect.so.0
|
||||
}
|
||||
Reference in New Issue
Block a user