summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gentoo.org>2023-11-09 09:53:55 -0800
committerMatt Turner <mattst88@gentoo.org>2023-11-09 10:39:56 -0800
commit66c3be451de6b402da1d74e74985fc175abd3672 (patch)
tree09b97571b616eb7bdb3852b92f58a71784b43426 /media-libs
parentdev-util/intel_clc: Add new package, version 9999 (diff)
downloadgentoo-66c3be451de6b402da1d74e74985fc175abd3672.tar.gz
gentoo-66c3be451de6b402da1d74e74985fc175abd3672.tar.bz2
gentoo-66c3be451de6b402da1d74e74985fc175abd3672.zip
media-libs/mesa: Depend on external dev-util/intel_clc
intel_clc is an executable that is used to compile OpenCL C code to SPIR-V during the build of media-libs/mesa. It is needed to build code to support Vulkan ray tracing APIs on supported Intel GPUs. intel_clc is a part of Mesa, but since it must run on the build machine, I have split it into its own package that can be installed separately. This simplifies some of the dependencies and also allows for cross compilation. Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/mesa/mesa-9999.ebuild25
1 files changed, 4 insertions, 21 deletions
diff --git a/media-libs/mesa/mesa-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild
index e74f085ef100..ef6c7bed1363 100644
--- a/media-libs/mesa/mesa-9999.ebuild
+++ b/media-libs/mesa/mesa-9999.ebuild
@@ -86,14 +86,6 @@ RDEPEND="
>=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}]
@@ -133,14 +125,6 @@ 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@
- sys-devel/clang:@SLOT@[${LLVM_USE_DEPS}]
- )
- )
- )
)
"
LLVM_DEPSTR="
@@ -182,6 +166,8 @@ BDEPEND="
video_cards_intel? (
amd64? (
$(python_gen_any_dep "dev-python/ply[\${PYTHON_USEDEP}]")
+ ~dev-util/intel_clc-${PV}
+ dev-libs/libclc[spirv(-)]
)
)
)
@@ -202,8 +188,6 @@ 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 && 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}]"
@@ -406,9 +390,8 @@ multilib_src_configure() {
use vulkan-overlay && vulkan_layers+=",overlay"
emesonargs+=(-Dvulkan-layers=${vulkan_layers#,})
- if use llvm && use vulkan && use video_cards_intel; then
- PKG_CONFIG_PATH="$(get_llvm_prefix "${LLVM_MAX_SLOT}")/$(get_libdir)/pkgconfig"
- emesonargs+=(-Dintel-clc=enabled)
+ if use llvm && use vulkan && use video_cards_intel && use amd64; then
+ emesonargs+=(-Dintel-clc=system)
else
emesonargs+=(-Dintel-clc=disabled)
fi