summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gentoo.org>2023-08-16 17:53:49 -0400
committerMatt Turner <mattst88@gentoo.org>2023-08-16 18:07:19 -0400
commit2fc21400cd3c0037cd3c64fe832a9ccb72b98aab (patch)
treedfc63048c7257a77b65b7811e236bc44d259bb33 /media-libs/mesa
parentdev-util/vulkan-tools: Drop old versions (diff)
downloadgentoo-2fc21400cd3c0037cd3c64fe832a9ccb72b98aab.tar.gz
gentoo-2fc21400cd3c0037cd3c64fe832a9ccb72b98aab.tar.bz2
gentoo-2fc21400cd3c0037cd3c64fe832a9ccb72b98aab.zip
media-libs/mesa: Drop old versions
Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'media-libs/mesa')
-rw-r--r--media-libs/mesa/Manifest8
-rw-r--r--media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings-2.patch49
-rw-r--r--media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings.patch37
-rw-r--r--media-libs/mesa/files/mesa-23.1.0-intel-Disable-shader-cache-when-executing-intel_clc-.patch30
-rw-r--r--media-libs/mesa/mesa-22.3.7-r1.ebuild456
-rw-r--r--media-libs/mesa/mesa-23.0.3-r1.ebuild462
-rw-r--r--media-libs/mesa/mesa-23.1.0.ebuild449
-rw-r--r--media-libs/mesa/mesa-23.1.1.ebuild447
-rw-r--r--media-libs/mesa/mesa-23.1.2-r1.ebuild449
-rw-r--r--media-libs/mesa/mesa-23.1.2.ebuild447
-rw-r--r--media-libs/mesa/mesa-23.1.3.ebuild450
-rw-r--r--media-libs/mesa/mesa-23.1.4.ebuild450
-rw-r--r--media-libs/mesa/mesa-23.1.5.ebuild450
13 files changed, 0 insertions, 4184 deletions
diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest
index cd190e1e73f7..0be7b2cf8698 100644
--- a/media-libs/mesa/Manifest
+++ b/media-libs/mesa/Manifest
@@ -1,9 +1 @@
-DIST mesa-22.3.7.tar.xz 17136476 BLAKE2B 291e94302d3a177f842def9339d1ba012bf10de792b7120985255168faac6b87a73d1d59d8b430f56ea2a2640ca0890a5c3721188b70c528b9aad9788d7e139d SHA512 c37bbcb3c0be1908726d6f83bfe98126d681935e401e03946e8b540611f832d2f272a2ac470600c2b77caa5b9a3a9059eb34bd9a93fcf88df114bedf8c39bf5a
-DIST mesa-23.0.3.tar.xz 17627728 BLAKE2B e716d9ddce3da649239c1bc37ec208b9669f316f6b547ca0c69937043f371f0d59ead34fec427297171916045061ddb8783d126f6dec5ece90a0719003fe2c40 SHA512 52c778de61daa406c6a1e96a657e9b6fdcc71c8cfda80b7f53acc6470556c7d502c057b9481bb0c3d57ef0263263413fd0d25d53ebf5aa0246fbcc3309de64ae
-DIST mesa-23.1.0.tar.xz 18204148 BLAKE2B 47cc90da14a2c33bb54c7811e99b439fadef81a15b63e535210a329bad5e2524fcb415cc5ed51a8deb65ccc9a341af78f02178c93758f09946978179e494382c SHA512 bbcfd0dd8e5414826631e80edbbe48218115a7461ef4ac1f2e4e090a48d6c0e1ab3b51dd45e988d5f1572f29bfc03c33769263c0f3e04033138d5b1ec102e8c9
-DIST mesa-23.1.1.tar.xz 18299068 BLAKE2B b17a71205248f2e97c60aa944d8b5b19d51592ba9288d2f04a8498eabaa19308f7ec7a813b948d3fad1001ae14da8771e403c68f7a4159c7f3b8830b919d64dc SHA512 ac5522307d75ff71289a62e2e5827edca70a88e028563ed11907504b9727925186893cd40e5948f1f16c29d8ad9fad39012d7569276e2c75be97aef9c106baf8
-DIST mesa-23.1.2.tar.xz 18333300 BLAKE2B a98dddf9c6cd0f69ec980e1080b53c92513ac03161dfba3355b83da674d6148dbd66c7e0403795eea7c3ce28fb5ff392a96607f34e4caf68a58ac8eb157cf146 SHA512 728e79720d950b0f39fa55c21dff7caed3650e88dff52a2f3e70540a049f1baf78178e62e5d6b1e59c76f6555ab0be3f0043cfbddd4745c0a742ccef2f5774d4
-DIST mesa-23.1.3.tar.xz 18358052 BLAKE2B 99ce2a458c049b60cf13278d5e2e04d9eebefe04d5cbfcba7ff13421724bfd7877ec24086e513d249f1e7b1d537acea90e2ae53d71ef420213a5764ce61d8c4f SHA512 44f0658138ef99dcede5e4c33d5733af836283f05b031b07f3f8b3bc03b301bc7ab9dc15248829cf3dfc423f2da8935b372b25df8b9ef15a511ba16ccd913959
-DIST mesa-23.1.4.tar.xz 18414456 BLAKE2B 9c696766f4f7af9a2d12c6e7663f300e4dbcfc27ee210770151a8be76b3413b51aad1e2a00f4cf38695cf26d5b684e38a65de8a63723597a0ff97f3a9935b1a1 SHA512 4063c7848f507b5e25cfc862394268147254b90c9f3eb19035cce338b0a9cb611b7380c1c73f0e4feeddde68124225df7dee7b9db5f019603dfde2b88ff46a21
-DIST mesa-23.1.5.tar.xz 18438676 BLAKE2B 9919de93df171dd884ef39f52e480e62ef7f4cd55e43b507316af7de39b222ddec12914628d136d40a80f8398f517708a67a64b99858bba3c86686956b7c91bc SHA512 c5eac5a497561374eaf931214aebc9001820c5ab49f9b8c5634b62af081b03b2f21c169c936524b2953c8815eb27dfb5c8c12276b9b1c119722cd6fea0b22d85
DIST mesa-23.1.6.tar.xz 18505124 BLAKE2B 78b71ede0655e538a71d22ecbfb0bed7497c258a16ce5f7d9b627a4c9372f26292a50aec848a4923524e4862b00a6d5d3d2521b05033d9cf39d31f037bdb9254 SHA512 24f1c626fa05a82bcdfb24b67b8e5f96f94d5748309631b83e8d7a62142853cd3be90b92c56bac3bc4d223bf40b424d6d6a9977537b899107295b7d45d7e2575
diff --git a/media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings-2.patch b/media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings-2.patch
deleted file mode 100644
index 5992583a1fa0..000000000000
--- a/media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings-2.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-https://bugs.gentoo.org/904072
-https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21647
-
-From 689ce66a4332524b4eb98877de6f75d05dd05c60 Mon Sep 17 00:00:00 2001
-From: Alexandros Frantzis <alexandros.frantzis@collabora.com>
-Date: Thu, 2 Mar 2023 10:10:42 +0200
-Subject: [PATCH] vulkan/wsi/wayland: Fix destruction of event queue with
- proxies still attached.
-
-Destroy the surface dmabuf feedback proxy before destroying the event
-queue that the proxy is attached to.
-
-This silences a warning that libwayland 1.22 emits for programs that use
-Vulkan/Wayland:
-
-warning: queue 0x557a4efbcf70 destroyed while proxies still attached:
- zwp_linux_dmabuf_feedback_v1@18 still attached
-
-Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
-Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21647>
---- a/src/vulkan/wsi/wsi_common_wayland.c
-+++ b/src/vulkan/wsi/wsi_common_wayland.c
-@@ -1157,18 +1157,18 @@ wsi_wl_surface_destroy(VkIcdSurfaceBase *icd_surface, VkInstance _instance,
- struct wsi_wl_surface *wsi_wl_surface =
- wl_container_of((VkIcdSurfaceWayland *)icd_surface, wsi_wl_surface, base);
-
-- if (wsi_wl_surface->surface)
-- wl_proxy_wrapper_destroy(wsi_wl_surface->surface);
--
-- if (wsi_wl_surface->display)
-- wsi_wl_display_destroy(wsi_wl_surface->display);
--
- if (wsi_wl_surface->wl_dmabuf_feedback) {
- zwp_linux_dmabuf_feedback_v1_destroy(wsi_wl_surface->wl_dmabuf_feedback);
- dmabuf_feedback_fini(&wsi_wl_surface->dmabuf_feedback);
- dmabuf_feedback_fini(&wsi_wl_surface->pending_dmabuf_feedback);
- }
-
-+ if (wsi_wl_surface->surface)
-+ wl_proxy_wrapper_destroy(wsi_wl_surface->surface);
-+
-+ if (wsi_wl_surface->display)
-+ wsi_wl_display_destroy(wsi_wl_surface->display);
-+
- vk_free2(&instance->alloc, pAllocator, wsi_wl_surface);
- }
-
---
-GitLab
diff --git a/media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings.patch b/media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings.patch
deleted file mode 100644
index 537d070c091e..000000000000
--- a/media-libs/mesa/files/mesa-23.0.2-wayland-crash-warnings.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-https://bugs.gentoo.org/904072
-https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21646
-
-From ee5d2250fd159689aae3f7d632a6226971bea85c Mon Sep 17 00:00:00 2001
-From: Alexandros Frantzis <alexandros.frantzis@collabora.com>
-Date: Thu, 2 Mar 2023 09:35:08 +0200
-Subject: [PATCH] egl/wayland: Fix destruction of event queue with proxies
- still attached.
-
-Destroy the display wrapper proxy before destroying the event queue that
-the proxy is attached to.
-
-This silences a warning that libwayland 1.22 emits for programs that use
-EGL/Wayland:
-
-warning: queue 0x562a5ed2cd20 destroyed while proxies still attached:
- wl_display@1 still attached
-
-Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
-Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21646>
---- a/src/egl/drivers/dri2/platform_wayland.c
-+++ b/src/egl/drivers/dri2/platform_wayland.c
-@@ -2865,10 +2865,10 @@ dri2_teardown_wayland(struct dri2_egl_display *dri2_dpy)
- wl_shm_destroy(dri2_dpy->wl_shm);
- if (dri2_dpy->wl_registry)
- wl_registry_destroy(dri2_dpy->wl_registry);
-- if (dri2_dpy->wl_queue)
-- wl_event_queue_destroy(dri2_dpy->wl_queue);
- if (dri2_dpy->wl_dpy_wrapper)
- wl_proxy_wrapper_destroy(dri2_dpy->wl_dpy_wrapper);
-+ if (dri2_dpy->wl_queue)
-+ wl_event_queue_destroy(dri2_dpy->wl_queue);
-
- if (dri2_dpy->own_device)
- wl_display_disconnect(dri2_dpy->wl_dpy);
---
-GitLab
diff --git a/media-libs/mesa/files/mesa-23.1.0-intel-Disable-shader-cache-when-executing-intel_clc-.patch b/media-libs/mesa/files/mesa-23.1.0-intel-Disable-shader-cache-when-executing-intel_clc-.patch
deleted file mode 100644
index 511dfed9fab5..000000000000
--- a/media-libs/mesa/files/mesa-23.1.0-intel-Disable-shader-cache-when-executing-intel_clc-.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 28efca603bf11f361eb741d23ef181a3b6905f74 Mon Sep 17 00:00:00 2001
-From: Matt Turner <mattst88@gmail.com>
-Date: Thu, 11 May 2023 13:51:25 -0400
-Subject: [PATCH] intel: Disable shader cache when executing intel_clc during
- the build
-
-With the shader cache enabled, intel_clc attempts to write to ~/.cache.
-Many distributions' build systems limit file-system access, and will
-kill the process thus causing the build to fail.
-
-Fixes: 639665053fa ("anv/grl: Build OpenCL kernels")
----
- src/intel/vulkan/grl/meson.build | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/intel/vulkan/grl/meson.build b/src/intel/vulkan/grl/meson.build
-index 3d7567cfc13..c0056b3493d 100644
---- a/src/intel/vulkan/grl/meson.build
-+++ b/src/intel/vulkan/grl/meson.build
-@@ -142,6 +142,7 @@ foreach t : [['125', 'gfx125', 'dg2']]
- # without modifying grl source code, remove
- # if fixed there
- ],
-+ env: ['MESA_SHADER_CACHE_DISABLE=true'],
- depends : [prog_intel_clc]
- )
- endforeach
---
-2.39.3
-
diff --git a/media-libs/mesa/mesa-22.3.7-r1.ebuild b/media-libs/mesa/mesa-22.3.7-r1.ebuild
deleted file mode 100644
index 8a7b2e946b8e..000000000000
--- a/media-libs/mesa/mesa-22.3.7-r1.ebuild
+++ /dev/null
@@ -1,456 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? ( || ( video_cards_intel video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3[${MULTILIB_USEDEP}]
- dev-libs/libclc
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 10.
-# 3. Specify LLVM_MAX_SLOT, e.g. 9.
-LLVM_MAX_SLOT="16"
-LLVM_DEPSTR="
- || (
- sys-devel/llvm:16[${MULTILIB_USEDEP}]
- sys-devel/llvm:15[${MULTILIB_USEDEP}]
- )
- <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${MULTILIB_USEDEP}]
-"
-LLVM_DEPSTR_AMDGPU=${LLVM_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-CLANG_DEPSTR=${LLVM_DEPSTR//llvm/clang}
-CLANG_DEPSTR_AMDGPU=${CLANG_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-RDEPEND="${RDEPEND}
- llvm? (
- opencl? (
- video_cards_r600? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${CLANG_DEPSTR}
- )
- )
- )
- )
- !opencl? (
- video_cards_r600? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${LLVM_DEPSTR}
- )
- )
- )
- )
- )
-"
-unset {LLVM,CLANG}_DEPSTR{,_AMDGPU}
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- opencl? (
- >=sys-devel/gcc-4.6
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? ( dev-util/glslang )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib*/libglapi.so.0.0.0
- usr/lib*/libGLESv1_CM.so.1.1.0
- usr/lib*/libGLESv2.so.2.0.0
- usr/lib*/libGL.so.1.2.0
- usr/lib*/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- local flags=${MULTILIB_USEDEP}
- if use video_cards_r600 || use video_cards_radeon || use video_cards_radeonsi
- then
- flags+=",llvm_targets_AMDGPU(-)"
- fi
-
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${flags}]" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${flags}]"
-}
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use opencl; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi; then
- ewarn "Ignoring USE=opencl since VIDEO_CARDS does not contain r600 or radeonsi"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- # opencl stuff
- emesonargs+=(
- -Dgallium-opencl="$(usex opencl icd disabled)"
- )
-
- if use vulkan; then
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.0.3-r1.ebuild b/media-libs/mesa/mesa-23.0.3-r1.ebuild
deleted file mode 100644
index 738282587631..000000000000
--- a/media-libs/mesa/mesa-23.0.3-r1.ebuild
+++ /dev/null
@@ -1,462 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? ( || ( video_cards_intel video_cards_r300 video_cards_r600 video_cards_radeonsi video_cards_nouveau video_cards_vmware ) )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3[${MULTILIB_USEDEP}]
- dev-libs/libclc
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. List all the working slots (with min versions) in ||, newest first.
-# 2. Update the := to specify *max* version, e.g. < 10.
-# 3. Specify LLVM_MAX_SLOT, e.g. 9.
-LLVM_MAX_SLOT="16"
-LLVM_DEPSTR="
- || (
- sys-devel/llvm:16[${MULTILIB_USEDEP}]
- sys-devel/llvm:15[${MULTILIB_USEDEP}]
- )
- <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${MULTILIB_USEDEP}]
-"
-LLVM_DEPSTR_AMDGPU=${LLVM_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-CLANG_DEPSTR=${LLVM_DEPSTR//llvm/clang}
-CLANG_DEPSTR_AMDGPU=${CLANG_DEPSTR//]/,llvm_targets_AMDGPU(-)]}
-RDEPEND="${RDEPEND}
- llvm? (
- opencl? (
- video_cards_r600? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${CLANG_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${CLANG_DEPSTR}
- )
- )
- )
- )
- !opencl? (
- video_cards_r600? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- !video_cards_r600? (
- video_cards_radeonsi? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- !video_cards_r600? (
- !video_cards_radeonsi? (
- video_cards_radeon? (
- ${LLVM_DEPSTR_AMDGPU}
- )
- )
- )
- !video_cards_r600? (
- !video_cards_radeon? (
- !video_cards_radeonsi? (
- ${LLVM_DEPSTR}
- )
- )
- )
- )
- )
-"
-unset {LLVM,CLANG}_DEPSTR{,_AMDGPU}
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- ${PYTHON_DEPS}
- opencl? (
- >=sys-devel/gcc-4.6
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? ( dev-util/glslang )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib*/libglapi.so.0.0.0
- usr/lib*/libGLESv1_CM.so.1.1.0
- usr/lib*/libGLESv2.so.2.0.0
- usr/lib*/libGL.so.1.2.0
- usr/lib*/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-23.0.2-wayland-crash-warnings.patch
- "${FILESDIR}"/${PN}-23.0.2-wayland-crash-warnings-2.patch
-)
-
-llvm_check_deps() {
- local flags=${MULTILIB_USEDEP}
- if use video_cards_r600 || use video_cards_radeon || use video_cards_radeonsi
- then
- flags+=",llvm_targets_AMDGPU(-)"
- fi
-
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${flags}]" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${flags}]"
-}
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use opencl; then
- if ! use video_cards_r600 &&
- ! use video_cards_radeonsi; then
- ewarn "Ignoring USE=opencl since VIDEO_CARDS does not contain r600 or radeonsi"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- # opencl stuff
- emesonargs+=(
- -Dgallium-opencl="$(usex opencl icd disabled)"
- )
-
- if use vulkan; then
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.1.0.ebuild b/media-libs/mesa/mesa-23.1.0.ebuild
deleted file mode 100644
index 514e313ab820..000000000000
--- a/media-libs/mesa/mesa-23.1.0.ebuild
+++ /dev/null
@@ -1,449 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..11} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? (
- || (
- video_cards_intel
- video_cards_r300
- video_cards_r600
- video_cards_radeonsi
- video_cards_nouveau
- video_cards_vmware
- )
- )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- virtual/libelf:0=
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- vulkan? (
- video_cards_intel? (
- amd64? (
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- )
- )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. Specify LLVM_MAX_SLOT (inclusive), e.g. 16.
-# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15.
-LLVM_MAX_SLOT="16"
-LLVM_MIN_SLOT="15"
-LLVM_USE_DEPS="llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}"
-PER_SLOT_DEPSTR="
- (
- !opencl? ( sys-devel/llvm:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( dev-util/spirv-llvm-translator:@SLOT@ )
- vulkan? ( video_cards_intel? ( dev-util/spirv-llvm-translator:@SLOT@ ) )
- )
-"
-LLVM_DEPSTR="
- || (
- $(for ((slot=LLVM_MAX_SLOT; slot>=LLVM_MIN_SLOT; slot--)); do
- echo "${PER_SLOT_DEPSTR//@SLOT@/${slot}}"
- done)
- )
- !opencl? ( <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
- opencl? ( <sys-devel/clang-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
-"
-RDEPEND="${RDEPEND}
- llvm? ( ${LLVM_DEPSTR} )
-"
-unset LLVM_MIN_SLOT {LLVM,PER_SLOT}_DEPSTR
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- >=dev-util/meson-1.0.0
- ${PYTHON_DEPS}
- opencl? (
- >=virtual/rust-1.62.0
- >=dev-util/bindgen-0.58.0
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? (
- dev-util/glslang
- video_cards_intel? (
- amd64? (
- $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
- )
- )
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib/libglapi.so.0.0.0
- usr/lib/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${LLVM_USE_DEPS}]" || return 1
- fi
- if use opencl || { use vulkan && use video_cards_intel; }; then
- has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]"
-}
-
-PATCHES=(
- # Temporary rusticl workaround: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7717#note_1832122
- "${FILESDIR}/clang_resource_dir.patch"
-
- "${FILESDIR}"/${PN}-23.1.0-intel-Disable-shader-cache-when-executing-intel_clc-.patch
-)
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" || return 1
- if use vulkan && use video_cards_intel && use amd64; then
- python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1
- fi
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- if use llvm && use opencl; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst
- emesonargs+=(
- $(meson_native_true gallium-rusticl)
- -Drust_std=2021
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- if use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- emesonargs+=($(meson_feature llvm intel-clc))
- fi
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.1.1.ebuild b/media-libs/mesa/mesa-23.1.1.ebuild
deleted file mode 100644
index f92b393b0f53..000000000000
--- a/media-libs/mesa/mesa-23.1.1.ebuild
+++ /dev/null
@@ -1,447 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..12} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? (
- || (
- video_cards_intel
- video_cards_r300
- video_cards_r600
- video_cards_radeonsi
- video_cards_nouveau
- video_cards_vmware
- )
- )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- virtual/libelf:0=
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- vulkan? (
- video_cards_intel? (
- amd64? (
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- )
- )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. Specify LLVM_MAX_SLOT (inclusive), e.g. 16.
-# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15.
-LLVM_MAX_SLOT="16"
-LLVM_MIN_SLOT="15"
-LLVM_USE_DEPS="llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}"
-PER_SLOT_DEPSTR="
- (
- !opencl? ( sys-devel/llvm:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( dev-util/spirv-llvm-translator:@SLOT@ )
- vulkan? ( video_cards_intel? ( dev-util/spirv-llvm-translator:@SLOT@ ) )
- )
-"
-LLVM_DEPSTR="
- || (
- $(for ((slot=LLVM_MAX_SLOT; slot>=LLVM_MIN_SLOT; slot--)); do
- echo "${PER_SLOT_DEPSTR//@SLOT@/${slot}}"
- done)
- )
- !opencl? ( <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
- opencl? ( <sys-devel/clang-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
-"
-RDEPEND="${RDEPEND}
- llvm? ( ${LLVM_DEPSTR} )
-"
-unset LLVM_MIN_SLOT {LLVM,PER_SLOT}_DEPSTR
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- >=dev-util/meson-1.0.0
- ${PYTHON_DEPS}
- opencl? (
- >=virtual/rust-1.62.0
- >=dev-util/bindgen-0.58.0
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? (
- dev-util/glslang
- video_cards_intel? (
- amd64? (
- $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
- )
- )
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib/libglapi.so.0.0.0
- usr/lib/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${LLVM_USE_DEPS}]" || return 1
- fi
- if use opencl || { use vulkan && use video_cards_intel; }; then
- has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]"
-}
-
-PATCHES=(
- # Temporary rusticl workaround: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7717#note_1832122
- "${FILESDIR}/clang_resource_dir.patch"
-)
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" || return 1
- if use vulkan && use video_cards_intel && use amd64; then
- python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1
- fi
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- if use llvm && use opencl; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst
- emesonargs+=(
- $(meson_native_true gallium-rusticl)
- -Drust_std=2021
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- if use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- emesonargs+=($(meson_feature llvm intel-clc))
- fi
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.1.2-r1.ebuild b/media-libs/mesa/mesa-23.1.2-r1.ebuild
deleted file mode 100644
index 0b34a1fa96ec..000000000000
--- a/media-libs/mesa/mesa-23.1.2-r1.ebuild
+++ /dev/null
@@ -1,449 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..12} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? (
- || (
- video_cards_intel
- video_cards_r300
- video_cards_r600
- video_cards_radeonsi
- video_cards_nouveau
- video_cards_vmware
- )
- )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_lavapipe? ( llvm vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- virtual/libelf:0=
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- vulkan? (
- video_cards_intel? (
- amd64? (
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- )
- )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. Specify LLVM_MAX_SLOT (inclusive), e.g. 16.
-# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15.
-LLVM_MAX_SLOT="16"
-LLVM_MIN_SLOT="15"
-LLVM_USE_DEPS="llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}"
-PER_SLOT_DEPSTR="
- (
- !opencl? ( sys-devel/llvm:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( dev-util/spirv-llvm-translator:@SLOT@ )
- vulkan? ( video_cards_intel? ( dev-util/spirv-llvm-translator:@SLOT@ ) )
- )
-"
-LLVM_DEPSTR="
- || (
- $(for ((slot=LLVM_MAX_SLOT; slot>=LLVM_MIN_SLOT; slot--)); do
- echo "${PER_SLOT_DEPSTR//@SLOT@/${slot}}"
- done)
- )
- !opencl? ( <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
- opencl? ( <sys-devel/clang-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
-"
-RDEPEND="${RDEPEND}
- llvm? ( ${LLVM_DEPSTR} )
-"
-unset LLVM_MIN_SLOT {LLVM,PER_SLOT}_DEPSTR
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- >=dev-util/meson-1.0.0
- ${PYTHON_DEPS}
- opencl? (
- >=virtual/rust-1.62.0
- >=dev-util/bindgen-0.58.0
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? (
- dev-util/glslang
- video_cards_intel? (
- amd64? (
- $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
- )
- )
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib/libglapi.so.0.0.0
- usr/lib/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${LLVM_USE_DEPS}]" || return 1
- fi
- if use opencl || { use vulkan && use video_cards_intel; }; then
- has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]"
-}
-
-PATCHES=(
- # Temporary rusticl workaround: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7717#note_1832122
- "${FILESDIR}/clang_resource_dir.patch"
-)
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" || return 1
- if use vulkan && use video_cards_intel && use amd64; then
- python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1
- fi
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- if use llvm && use opencl; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst
- emesonargs+=(
- $(meson_native_true gallium-rusticl)
- -Drust_std=2021
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_lavapipe swrast
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- if use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- emesonargs+=($(meson_feature llvm intel-clc))
- fi
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.1.2.ebuild b/media-libs/mesa/mesa-23.1.2.ebuild
deleted file mode 100644
index f92b393b0f53..000000000000
--- a/media-libs/mesa/mesa-23.1.2.ebuild
+++ /dev/null
@@ -1,447 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..12} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? (
- || (
- video_cards_intel
- video_cards_r300
- video_cards_r600
- video_cards_radeonsi
- video_cards_nouveau
- video_cards_vmware
- )
- )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- virtual/libelf:0=
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- vulkan? (
- video_cards_intel? (
- amd64? (
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- )
- )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. Specify LLVM_MAX_SLOT (inclusive), e.g. 16.
-# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15.
-LLVM_MAX_SLOT="16"
-LLVM_MIN_SLOT="15"
-LLVM_USE_DEPS="llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}"
-PER_SLOT_DEPSTR="
- (
- !opencl? ( sys-devel/llvm:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( dev-util/spirv-llvm-translator:@SLOT@ )
- vulkan? ( video_cards_intel? ( dev-util/spirv-llvm-translator:@SLOT@ ) )
- )
-"
-LLVM_DEPSTR="
- || (
- $(for ((slot=LLVM_MAX_SLOT; slot>=LLVM_MIN_SLOT; slot--)); do
- echo "${PER_SLOT_DEPSTR//@SLOT@/${slot}}"
- done)
- )
- !opencl? ( <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
- opencl? ( <sys-devel/clang-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
-"
-RDEPEND="${RDEPEND}
- llvm? ( ${LLVM_DEPSTR} )
-"
-unset LLVM_MIN_SLOT {LLVM,PER_SLOT}_DEPSTR
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- >=dev-util/meson-1.0.0
- ${PYTHON_DEPS}
- opencl? (
- >=virtual/rust-1.62.0
- >=dev-util/bindgen-0.58.0
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? (
- dev-util/glslang
- video_cards_intel? (
- amd64? (
- $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
- )
- )
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib/libglapi.so.0.0.0
- usr/lib/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${LLVM_USE_DEPS}]" || return 1
- fi
- if use opencl || { use vulkan && use video_cards_intel; }; then
- has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]"
-}
-
-PATCHES=(
- # Temporary rusticl workaround: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7717#note_1832122
- "${FILESDIR}/clang_resource_dir.patch"
-)
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" || return 1
- if use vulkan && use video_cards_intel && use amd64; then
- python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1
- fi
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- if use llvm && use opencl; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst
- emesonargs+=(
- $(meson_native_true gallium-rusticl)
- -Drust_std=2021
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- if use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- emesonargs+=($(meson_feature llvm intel-clc))
- fi
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.1.3.ebuild b/media-libs/mesa/mesa-23.1.3.ebuild
deleted file mode 100644
index c42c875820a7..000000000000
--- a/media-libs/mesa/mesa-23.1.3.ebuild
+++ /dev/null
@@ -1,450 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..12} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? (
- || (
- video_cards_intel
- video_cards_r300
- video_cards_r600
- video_cards_radeonsi
- video_cards_nouveau
- video_cards_vmware
- )
- )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_lavapipe? ( llvm vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- virtual/libelf:0=
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- vulkan? (
- video_cards_intel? (
- amd64? (
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- )
- )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. Specify LLVM_MAX_SLOT (inclusive), e.g. 16.
-# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15.
-LLVM_MAX_SLOT="16"
-LLVM_MIN_SLOT="15"
-LLVM_USE_DEPS="llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}"
-PER_SLOT_DEPSTR="
- (
- !opencl? ( sys-devel/llvm:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( dev-util/spirv-llvm-translator:@SLOT@ )
- vulkan? ( video_cards_intel? ( amd64? ( dev-util/spirv-llvm-translator:@SLOT@ ) ) )
- )
-"
-LLVM_DEPSTR="
- || (
- $(for ((slot=LLVM_MAX_SLOT; slot>=LLVM_MIN_SLOT; slot--)); do
- echo "${PER_SLOT_DEPSTR//@SLOT@/${slot}}"
- done)
- )
- !opencl? ( <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
- opencl? ( <sys-devel/clang-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
-"
-RDEPEND="${RDEPEND}
- llvm? ( ${LLVM_DEPSTR} )
-"
-unset LLVM_MIN_SLOT {LLVM,PER_SLOT}_DEPSTR
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- >=dev-util/meson-1.0.0
- ${PYTHON_DEPS}
- opencl? (
- >=virtual/rust-1.62.0
- >=dev-util/bindgen-0.58.0
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? (
- dev-util/glslang
- video_cards_intel? (
- amd64? (
- $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
- )
- )
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib/libglapi.so.0.0.0
- usr/lib/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${LLVM_USE_DEPS}]" || return 1
- fi
- if use opencl || { use vulkan && use video_cards_intel && use amd64; }; then
- has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]"
-}
-
-PATCHES=(
- # Temporary rusticl workaround: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7717#note_1832122
- "${FILESDIR}/clang_resource_dir.patch"
-)
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" || return 1
- if use vulkan && use video_cards_intel && use amd64; then
- python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1
- fi
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- if use llvm && use opencl; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst
- emesonargs+=(
- $(meson_native_true gallium-rusticl)
- -Drust_std=2021
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_lavapipe swrast
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- if use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- emesonargs+=($(meson_feature llvm intel-clc))
- fi
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dexpat=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.1.4.ebuild b/media-libs/mesa/mesa-23.1.4.ebuild
deleted file mode 100644
index c44daa0c39c2..000000000000
--- a/media-libs/mesa/mesa-23.1.4.ebuild
+++ /dev/null
@@ -1,450 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..12} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? (
- || (
- video_cards_intel
- video_cards_r300
- video_cards_r600
- video_cards_radeonsi
- video_cards_nouveau
- video_cards_vmware
- )
- )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_lavapipe? ( llvm vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- virtual/libelf:0=
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- vulkan? (
- video_cards_intel? (
- amd64? (
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- )
- )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. Specify LLVM_MAX_SLOT (inclusive), e.g. 16.
-# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15.
-LLVM_MAX_SLOT="16"
-LLVM_MIN_SLOT="15"
-LLVM_USE_DEPS="llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}"
-PER_SLOT_DEPSTR="
- (
- !opencl? ( sys-devel/llvm:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( dev-util/spirv-llvm-translator:@SLOT@ )
- vulkan? ( video_cards_intel? ( amd64? ( dev-util/spirv-llvm-translator:@SLOT@ ) ) )
- )
-"
-LLVM_DEPSTR="
- || (
- $(for ((slot=LLVM_MAX_SLOT; slot>=LLVM_MIN_SLOT; slot--)); do
- echo "${PER_SLOT_DEPSTR//@SLOT@/${slot}}"
- done)
- )
- !opencl? ( <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
- opencl? ( <sys-devel/clang-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
-"
-RDEPEND="${RDEPEND}
- llvm? ( ${LLVM_DEPSTR} )
-"
-unset LLVM_MIN_SLOT {LLVM,PER_SLOT}_DEPSTR
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- >=dev-util/meson-1.0.0
- ${PYTHON_DEPS}
- opencl? (
- >=virtual/rust-1.62.0
- >=dev-util/bindgen-0.58.0
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? (
- dev-util/glslang
- video_cards_intel? (
- amd64? (
- $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
- )
- )
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib/libglapi.so.0.0.0
- usr/lib/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${LLVM_USE_DEPS}]" || return 1
- fi
- if use opencl || { use vulkan && use video_cards_intel && use amd64; }; then
- has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]"
-}
-
-PATCHES=(
- # Temporary rusticl workaround: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7717#note_1832122
- "${FILESDIR}/clang_resource_dir.patch"
-)
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" || return 1
- if use vulkan && use video_cards_intel && use amd64; then
- python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1
- fi
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- if use llvm && use opencl; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst
- emesonargs+=(
- $(meson_native_true gallium-rusticl)
- -Drust_std=2021
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_lavapipe swrast
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- if use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- emesonargs+=($(meson_feature llvm intel-clc))
- fi
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dexpat=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}
diff --git a/media-libs/mesa/mesa-23.1.5.ebuild b/media-libs/mesa/mesa-23.1.5.ebuild
deleted file mode 100644
index c44daa0c39c2..000000000000
--- a/media-libs/mesa/mesa-23.1.5.ebuild
+++ /dev/null
@@ -1,450 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9..12} )
-
-inherit llvm meson-multilib python-any-r1 linux-info
-
-MY_P="${P/_/-}"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="https://www.mesa3d.org/ https://mesa.freedesktop.org/"
-
-if [[ ${PV} == 9999 ]]; then
- EGIT_REPO_URI="https://gitlab.freedesktop.org/mesa/mesa.git"
- inherit git-r3
-else
- SRC_URI="https://archive.mesa3d.org/${MY_P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
-fi
-
-LICENSE="MIT"
-SLOT="0"
-RESTRICT="!test? ( test )"
-
-RADEON_CARDS="r300 r600 radeon radeonsi"
-VIDEO_CARDS="${RADEON_CARDS} d3d12 freedreno intel lavapipe lima nouveau panfrost v3d vc4 virgl vivante vmware"
-for card in ${VIDEO_CARDS}; do
- IUSE_VIDEO_CARDS+=" video_cards_${card}"
-done
-
-IUSE="${IUSE_VIDEO_CARDS}
- cpu_flags_x86_sse2 d3d9 debug gles1 +gles2 +llvm
- lm-sensors opencl osmesa +proprietary-codecs selinux
- test unwind vaapi valgrind vdpau vulkan
- vulkan-overlay wayland +X xa zink +zstd"
-
-REQUIRED_USE="
- d3d9? (
- || (
- video_cards_intel
- video_cards_r300
- video_cards_r600
- video_cards_radeonsi
- video_cards_nouveau
- video_cards_vmware
- )
- )
- vulkan? ( video_cards_radeonsi? ( llvm ) )
- vulkan-overlay? ( vulkan )
- video_cards_lavapipe? ( llvm vulkan )
- video_cards_radeon? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_r300? ( x86? ( llvm ) amd64? ( llvm ) )
- video_cards_radeonsi? ( llvm )
- vdpau? ( X )
- xa? ( X )
- zink? ( vulkan )
-"
-
-LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.110"
-RDEPEND="
- >=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}]
- >=media-libs/libglvnd-1.3.2[X?,${MULTILIB_USEDEP}]
- >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}]
- unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )
- llvm? (
- video_cards_radeonsi? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_r600? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- video_cards_radeon? (
- virtual/libelf:0=[${MULTILIB_USEDEP}]
- )
- )
- lm-sensors? ( sys-apps/lm-sensors:=[${MULTILIB_USEDEP}] )
- opencl? (
- >=virtual/opencl-3
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- virtual/libelf:0=
- )
- vaapi? (
- >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
- )
- vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
- vulkan? (
- video_cards_intel? (
- amd64? (
- dev-libs/libclc[spirv(-)]
- >=dev-util/spirv-tools-1.3.231.0
- )
- )
- )
- selinux? ( sys-libs/libselinux[${MULTILIB_USEDEP}] )
- wayland? ( >=dev-libs/wayland-1.18.0[${MULTILIB_USEDEP}] )
- ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_intel?,video_cards_nouveau?,video_cards_vc4?,video_cards_vivante?,video_cards_vmware?,${MULTILIB_USEDEP}]
- X? (
- >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
- >=x11-libs/libxshmfence-1.1[${MULTILIB_USEDEP}]
- >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
- >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
- >=x11-libs/libxcb-1.13:=[${MULTILIB_USEDEP}]
- x11-libs/libXfixes[${MULTILIB_USEDEP}]
- )
- zink? ( media-libs/vulkan-loader:=[${MULTILIB_USEDEP}] )
- zstd? ( app-arch/zstd:=[${MULTILIB_USEDEP}] )
-"
-for card in ${RADEON_CARDS}; do
- RDEPEND="${RDEPEND}
- video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
- "
-done
-RDEPEND="${RDEPEND}
- video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
-"
-
-# Please keep the LLVM dependency block separate. Since LLVM is slotted,
-# we need to *really* make sure we're not pulling one than more slot
-# simultaneously.
-#
-# How to use it:
-# 1. Specify LLVM_MAX_SLOT (inclusive), e.g. 16.
-# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15.
-LLVM_MAX_SLOT="16"
-LLVM_MIN_SLOT="15"
-LLVM_USE_DEPS="llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}"
-PER_SLOT_DEPSTR="
- (
- !opencl? ( sys-devel/llvm:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}] )
- opencl? ( dev-util/spirv-llvm-translator:@SLOT@ )
- vulkan? ( video_cards_intel? ( amd64? ( dev-util/spirv-llvm-translator:@SLOT@ ) ) )
- )
-"
-LLVM_DEPSTR="
- || (
- $(for ((slot=LLVM_MAX_SLOT; slot>=LLVM_MIN_SLOT; slot--)); do
- echo "${PER_SLOT_DEPSTR//@SLOT@/${slot}}"
- done)
- )
- !opencl? ( <sys-devel/llvm-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
- opencl? ( <sys-devel/clang-$((LLVM_MAX_SLOT + 1)):=[${LLVM_USE_DEPS}] )
-"
-RDEPEND="${RDEPEND}
- llvm? ( ${LLVM_DEPSTR} )
-"
-unset LLVM_MIN_SLOT {LLVM,PER_SLOT}_DEPSTR
-
-DEPEND="${RDEPEND}
- video_cards_d3d12? ( dev-util/directx-headers[${MULTILIB_USEDEP}] )
- valgrind? ( dev-util/valgrind )
- wayland? ( >=dev-libs/wayland-protocols-1.24 )
- X? (
- x11-libs/libXrandr[${MULTILIB_USEDEP}]
- x11-base/xorg-proto
- )
-"
-BDEPEND="
- >=dev-util/meson-1.0.0
- ${PYTHON_DEPS}
- opencl? (
- >=virtual/rust-1.62.0
- >=dev-util/bindgen-0.58.0
- )
- sys-devel/bison
- sys-devel/flex
- virtual/pkgconfig
- $(python_gen_any_dep ">=dev-python/mako-0.8.0[\${PYTHON_USEDEP}]")
- vulkan? (
- dev-util/glslang
- video_cards_intel? (
- amd64? (
- $(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
- )
- )
- )
- wayland? ( dev-util/wayland-scanner )
-"
-
-S="${WORKDIR}/${MY_P}"
-EGIT_CHECKOUT_DIR=${S}
-
-QA_WX_LOAD="
-x86? (
- usr/lib/libglapi.so.0.0.0
- usr/lib/libOSMesa.so.8.0.0
- usr/lib/libGLX_mesa.so.0.0.0
-)"
-
-llvm_check_deps() {
- if use opencl; then
- has_version "sys-devel/clang:${LLVM_SLOT}[${LLVM_USE_DEPS}]" || return 1
- fi
- if use opencl || { use vulkan && use video_cards_intel && use amd64; }; then
- has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1
- fi
- has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]"
-}
-
-PATCHES=(
- # Temporary rusticl workaround: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7717#note_1832122
- "${FILESDIR}/clang_resource_dir.patch"
-)
-
-pkg_pretend() {
- if use vulkan; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_freedreno &&
- ! use video_cards_intel &&
- ! use video_cards_radeonsi &&
- ! use video_cards_v3d; then
- ewarn "Ignoring USE=vulkan since VIDEO_CARDS does not contain d3d12, freedreno, intel, radeonsi, or v3d"
- fi
- fi
-
- if use vaapi; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vaapi since VIDEO_CARDS does not contain d3d12, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use vdpau; then
- if ! use video_cards_d3d12 &&
- ! use video_cards_r300 &&
- ! use video_cards_r600 &&
- ! use video_cards_radeonsi &&
- ! use video_cards_nouveau; then
- ewarn "Ignoring USE=vdpau since VIDEO_CARDS does not contain d3d12, r300, r600, radeonsi, or nouveau"
- fi
- fi
-
- if use xa; then
- if ! use video_cards_freedreno &&
- ! use video_cards_nouveau &&
- ! use video_cards_vmware; then
- ewarn "Ignoring USE=xa since VIDEO_CARDS does not contain freedreno, nouveau, or vmware"
- fi
- fi
-
- if ! use llvm; then
- use opencl && ewarn "Ignoring USE=opencl since USE does not contain llvm"
- fi
-
- if use osmesa && ! use llvm; then
- ewarn "OSMesa will be slow without enabling USE=llvm"
- fi
-}
-
-python_check_deps() {
- python_has_version -b ">=dev-python/mako-0.8.0[${PYTHON_USEDEP}]" || return 1
- if use vulkan && use video_cards_intel && use amd64; then
- python_has_version -b "dev-python/ply[${PYTHON_USEDEP}]" || return 1
- fi
-}
-
-pkg_setup() {
- # warning message for bug 459306
- if use llvm && has_version sys-devel/llvm[!debug=]; then
- ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
- ewarn "detected! This can cause problems. For details, see bug 459306."
- fi
-
- if use video_cards_intel ||
- use video_cards_radeonsi; then
- if kernel_is -ge 5 11 3; then
- CONFIG_CHECK="~KCMP"
- elif kernel_is -ge 5 11; then
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- elif kernel_is -ge 5 10 20; then
- CONFIG_CHECK="~KCMP"
- else
- CONFIG_CHECK="~CHECKPOINT_RESTORE"
- fi
- linux-info_pkg_setup
- fi
-
- if use llvm; then
- llvm_pkg_setup
- fi
- python-any-r1_pkg_setup
-}
-
-multilib_src_configure() {
- local emesonargs=()
-
- local platforms
- use X && platforms+="x11"
- use wayland && platforms+=",wayland"
- emesonargs+=(-Dplatforms=${platforms#,})
-
- if use video_cards_intel ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_use d3d9 gallium-nine))
- else
- emesonargs+=(-Dgallium-nine=false)
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vaapi gallium-va))
- use vaapi && emesonargs+=( -Dva-libs-path="${EPREFIX}"/usr/$(get_libdir)/va/drivers )
- else
- emesonargs+=(-Dgallium-va=disabled)
- fi
-
- if use video_cards_d3d12; then
- emesonargs+=($(meson_feature vaapi gallium-d3d12-video))
- fi
-
- if use video_cards_d3d12 ||
- use video_cards_r300 ||
- use video_cards_r600 ||
- use video_cards_radeonsi ||
- use video_cards_nouveau; then
- emesonargs+=($(meson_feature vdpau gallium-vdpau))
- else
- emesonargs+=(-Dgallium-vdpau=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_nouveau ||
- use video_cards_vmware; then
- emesonargs+=($(meson_feature xa gallium-xa))
- else
- emesonargs+=(-Dgallium-xa=disabled)
- fi
-
- if use video_cards_freedreno ||
- use video_cards_lima ||
- use video_cards_panfrost ||
- use video_cards_v3d ||
- use video_cards_vc4 ||
- use video_cards_vivante; then
- gallium_enable -- kmsro
- fi
-
- gallium_enable -- swrast
- gallium_enable video_cards_freedreno freedreno
- gallium_enable video_cards_intel crocus i915 iris
- gallium_enable video_cards_lima lima
- gallium_enable video_cards_d3d12 d3d12
- gallium_enable video_cards_nouveau nouveau
- gallium_enable video_cards_panfrost panfrost
- gallium_enable video_cards_v3d v3d
- gallium_enable video_cards_vc4 vc4
- gallium_enable video_cards_virgl virgl
- gallium_enable video_cards_vivante etnaviv
- gallium_enable video_cards_vmware svga
- gallium_enable zink zink
-
- gallium_enable video_cards_r300 r300
- gallium_enable video_cards_r600 r600
- gallium_enable video_cards_radeonsi radeonsi
- if ! use video_cards_r300 && \
- ! use video_cards_r600; then
- gallium_enable video_cards_radeon r300 r600
- fi
-
- if use llvm && use opencl; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- # See https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/docs/rusticl.rst
- emesonargs+=(
- $(meson_native_true gallium-rusticl)
- -Drust_std=2021
- )
- fi
-
- if use vulkan; then
- vulkan_enable video_cards_lavapipe swrast
- vulkan_enable video_cards_freedreno freedreno
- vulkan_enable video_cards_intel intel intel_hasvk
- vulkan_enable video_cards_d3d12 microsoft-experimental
- vulkan_enable video_cards_radeonsi amd
- vulkan_enable video_cards_v3d broadcom
- fi
-
- driver_list() {
- local drivers="$(sort -u <<< "${1// /$'\n'}")"
- echo "${drivers//$'\n'/,}"
- }
-
- local vulkan_layers
- use vulkan && vulkan_layers+="device-select"
- use vulkan-overlay && vulkan_layers+=",overlay"
- emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
-
- if use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix)/$(get_libdir)/pkgconfig"
- emesonargs+=($(meson_feature llvm intel-clc))
- fi
-
- emesonargs+=(
- $(meson_use test build-tests)
- -Dglx=$(usex X dri disabled)
- -Dshared-glapi=enabled
- -Ddri3=enabled
- -Degl=enabled
- -Dexpat=enabled
- -Dgbm=enabled
- -Dglvnd=true
- $(meson_feature gles1)
- $(meson_feature gles2)
- $(meson_feature llvm)
- $(meson_feature lm-sensors lmsensors)
- $(meson_use osmesa)
- $(meson_use selinux)
- $(meson_feature unwind libunwind)
- $(meson_feature zstd)
- $(meson_use cpu_flags_x86_sse2 sse2)
- -Dvalgrind=$(usex valgrind auto disabled)
- -Dvideo-codecs=$(usex proprietary-codecs "h264dec,h264enc,h265dec,h265enc,vc1dec" "")
- -Dgallium-drivers=$(driver_list "${GALLIUM_DRIVERS[*]}")
- -Dvulkan-drivers=$(driver_list "${VULKAN_DRIVERS[*]}")
- --buildtype $(usex debug debug plain)
- -Db_ndebug=$(usex debug false true)
- )
- meson_src_configure
-}
-
-multilib_src_test() {
- meson_src_test -t 100
-}
-
-# $1 - VIDEO_CARDS flag (check skipped for "--")
-# other args - names of DRI drivers to enable
-gallium_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- GALLIUM_DRIVERS+=("$@")
- fi
-}
-
-vulkan_enable() {
- if [[ $1 == -- ]] || use $1; then
- shift
- VULKAN_DRIVERS+=("$@")
- fi
-}