diff options
author | 2023-01-25 09:04:17 +0100 | |
---|---|---|
committer | 2023-01-25 09:10:17 +0100 | |
commit | b23f012858c0264279150651716ff765b7e0797e (patch) | |
tree | 9d0aeedd23b848e4f4a396b4c4b7bd194b9c5fb0 /dev-libs | |
parent | sys-devel/clang-runtime: Add 17.0.0.9999 live ebuild (diff) | |
download | gentoo-b23f012858c0264279150651716ff765b7e0797e.tar.gz gentoo-b23f012858c0264279150651716ff765b7e0797e.tar.bz2 gentoo-b23f012858c0264279150651716ff765b7e0797e.zip |
dev-libs/libclc: Add 17.0.0.9999 live ebuild
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-libs')
-rw-r--r-- | dev-libs/libclc/libclc-17.0.0.9999.ebuild | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/dev-libs/libclc/libclc-17.0.0.9999.ebuild b/dev-libs/libclc/libclc-17.0.0.9999.ebuild new file mode 100644 index 000000000000..c424e4a83842 --- /dev/null +++ b/dev-libs/libclc/libclc-17.0.0.9999.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..11} ) +inherit cmake llvm llvm.org python-any-r1 + +DESCRIPTION="OpenCL C library" +HOMEPAGE="https://libclc.llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions || ( MIT BSD )" +SLOT="0" +KEYWORDS="" +IUSE="spirv video_cards_nvidia video_cards_r600 video_cards_radeonsi" + +LLVM_MAX_SLOT=16 +BDEPEND=" + ${PYTHON_DEPS} + || ( + ( + sys-devel/clang:16 + spirv? ( dev-util/spirv-llvm-translator:16 ) + ) + ( + sys-devel/clang:15 + spirv? ( dev-util/spirv-llvm-translator:15 ) + ) + ( + sys-devel/clang:14 + spirv? ( dev-util/spirv-llvm-translator:14 ) + ) + ( + sys-devel/clang:13 + spirv? ( dev-util/spirv-llvm-translator:13 ) + ) + ) +" + +LLVM_COMPONENTS=( libclc ) +llvm.org_set_globals + +llvm_check_deps() { + if use spirv; then + has_version -b "dev-util/spirv-llvm-translator:${LLVM_SLOT}" || + return 1 + fi + has_version -b "sys-devel/clang:${LLVM_SLOT}" +} + +pkg_setup() { + llvm_pkg_setup + python-any-r1_pkg_setup +} + +src_configure() { + local libclc_targets=() + + use spirv && libclc_targets+=( + "spirv-mesa3d-" + "spirv64-mesa3d-" + ) + use video_cards_nvidia && libclc_targets+=( + "nvptx--" + "nvptx64--" + "nvptx--nvidiacl" + "nvptx64--nvidiacl" + ) + use video_cards_r600 && libclc_targets+=( + "r600--" + ) + use video_cards_radeonsi && libclc_targets+=( + "amdgcn--" + "amdgcn-mesa-mesa3d" + "amdgcn--amdhsa" + ) + [[ ${#libclc_targets[@]} ]] || die "libclc target missing!" + + libclc_targets=${libclc_targets[*]} + local mycmakeargs=( + -DLIBCLC_TARGETS_TO_BUILD="${libclc_targets// /;}" + ) + cmake_src_configure +} |