commit:     46b7f3ed36428cc68026ca25678ff0d7986bcd0e
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 25 16:09:46 2023 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Jul 25 16:11:36 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46b7f3ed

dev-libs/libclc: Add 18.x live ebuilds

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-libs/libclc/libclc-18.0.0.9999.ebuild | 88 +++++++++++++++++++++++++++++++
 1 file changed, 88 insertions(+)

diff --git a/dev-libs/libclc/libclc-18.0.0.9999.ebuild 
b/dev-libs/libclc/libclc-18.0.0.9999.ebuild
new file mode 100644
index 000000000000..117d489acdec
--- /dev/null
+++ b/dev-libs/libclc/libclc-18.0.0.9999.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+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=17
+BDEPEND="
+       ${PYTHON_DEPS}
+       || (
+               (
+                       sys-devel/clang:17
+                       spirv? ( dev-util/spirv-llvm-translator:17 )
+               )
+               (
+                       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
+}

Reply via email to