Signed-off-by: Michał Górny <mgo...@gentoo.org> --- media-libs/mesa/mesa-24.0.0.ebuild | 53 +++++++----------------------- media-libs/mesa/mesa-9999.ebuild | 53 +++++++----------------------- 2 files changed, 22 insertions(+), 84 deletions(-)
diff --git a/media-libs/mesa/mesa-24.0.0.ebuild b/media-libs/mesa/mesa-24.0.0.ebuild index 7d7f3b5ed165..5f3a7985bdf5 100644 --- a/media-libs/mesa/mesa-24.0.0.ebuild +++ b/media-libs/mesa/mesa-24.0.0.ebuild @@ -3,9 +3,10 @@ EAPI=8 +LLVM_COMPAT=( {15..17} ) PYTHON_COMPAT=( python3_{10..12} ) -inherit llvm meson-multilib python-any-r1 linux-info +inherit llvm-r1 meson-multilib python-any-r1 linux-info MY_P="${P/_/-}" @@ -64,6 +65,13 @@ RDEPEND=" >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}] unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( + $(llvm_gen_dep " + sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + opencl? ( + dev-util/spirv-llvm-translator:\${LLVM_SLOT} + sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + ) + ") video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) @@ -109,37 +117,6 @@ 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. 17. -# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15. -LLVM_MAX_SLOT="17" -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@ ) - ) -" -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-1.611.0[${MULTILIB_USEDEP}] ) valgrind? ( dev-debug/valgrind ) @@ -185,14 +162,6 @@ x86? ( 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 - has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1 - fi - has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]" -} - pkg_pretend() { if use vulkan; then if ! use video_cards_d3d12 && @@ -269,7 +238,7 @@ pkg_setup() { fi if use llvm; then - llvm_pkg_setup + llvm-r1_pkg_setup fi python-any-r1_pkg_setup } @@ -363,7 +332,7 @@ multilib_src_configure() { fi if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix "${LLVM_MAX_SLOT}")/$(get_libdir)/pkgconfig" + 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) diff --git a/media-libs/mesa/mesa-9999.ebuild b/media-libs/mesa/mesa-9999.ebuild index 7d7f3b5ed165..5f3a7985bdf5 100644 --- a/media-libs/mesa/mesa-9999.ebuild +++ b/media-libs/mesa/mesa-9999.ebuild @@ -3,9 +3,10 @@ EAPI=8 +LLVM_COMPAT=( {15..17} ) PYTHON_COMPAT=( python3_{10..12} ) -inherit llvm meson-multilib python-any-r1 linux-info +inherit llvm-r1 meson-multilib python-any-r1 linux-info MY_P="${P/_/-}" @@ -64,6 +65,13 @@ RDEPEND=" >=sys-libs/zlib-1.2.8[${MULTILIB_USEDEP}] unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] ) llvm? ( + $(llvm_gen_dep " + sys-devel/llvm:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + opencl? ( + dev-util/spirv-llvm-translator:\${LLVM_SLOT} + sys-devel/clang:\${LLVM_SLOT}[llvm_targets_AMDGPU(+),${MULTILIB_USEDEP}] + ) + ") video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] ) @@ -109,37 +117,6 @@ 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. 17. -# 2. Specify LLVM_MIN_SLOT (inclusive), e.g. 15. -LLVM_MAX_SLOT="17" -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@ ) - ) -" -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-1.611.0[${MULTILIB_USEDEP}] ) valgrind? ( dev-debug/valgrind ) @@ -185,14 +162,6 @@ x86? ( 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 - has_version "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || return 1 - fi - has_version "sys-devel/llvm:${LLVM_SLOT}[${LLVM_USE_DEPS}]" -} - pkg_pretend() { if use vulkan; then if ! use video_cards_d3d12 && @@ -269,7 +238,7 @@ pkg_setup() { fi if use llvm; then - llvm_pkg_setup + llvm-r1_pkg_setup fi python-any-r1_pkg_setup } @@ -363,7 +332,7 @@ multilib_src_configure() { fi if use llvm && use opencl; then - PKG_CONFIG_PATH="$(get_llvm_prefix "${LLVM_MAX_SLOT}")/$(get_libdir)/pkgconfig" + 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) -- 2.43.0