commit:     5d184b31cc80996fed4b938fc2b3e68e27b1e29c
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Thu May 11 18:26:48 2023 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Fri May 12 17:18:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5d184b31

media-libs/mesa: Enable Intel Vulkan ray-tracing support

Requires USE=llvm. Note that Vulkan ray-tracing support is only
available on amd64, per upstream.

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 media-libs/mesa/mesa-9999.ebuild | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/media-libs/mesa/mesa-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild
index 80d191b25459..1cafc813c908 100644
--- a/media-libs/mesa/mesa-9999.ebuild
+++ b/media-libs/mesa/mesa-9999.ebuild
@@ -76,6 +76,7 @@ RDEPEND="
                >=media-libs/libva-1.7.3:=[${MULTILIB_USEDEP}]
        )
        vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
+       vulkan? ( video_cards_intel? ( >=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}]
@@ -114,6 +115,7 @@ 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="
@@ -167,6 +169,8 @@ x86? (
 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}]"
@@ -364,6 +368,11 @@ multilib_src_configure() {
        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)

Reply via email to