summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libclc')
-rw-r--r--dev-libs/libclc/Manifest1
-rw-r--r--dev-libs/libclc/libclc-18.0.0_pre20240113.ebuild87
2 files changed, 88 insertions, 0 deletions
diff --git a/dev-libs/libclc/Manifest b/dev-libs/libclc/Manifest
index 216581af7dd4..8ddfd7e4f2e8 100644
--- a/dev-libs/libclc/Manifest
+++ b/dev-libs/libclc/Manifest
@@ -4,4 +4,5 @@ DIST llvm-project-16.0.6.src.tar.xz 118013488 BLAKE2B 95192d39cbd2914e5609db3659
DIST llvm-project-16.0.6.src.tar.xz.sig 566 BLAKE2B 2060cebd5ed57cb8a86a44238c43dfd4b921649298b10c3d19da308374c1e49869174294e29943c2af459fe06428264e26881d6c1288ebbc48686cc2cf467c7a SHA512 ca249262c7102e0889ec1bdc6f71a3a6f0e7e5d5fbab8abcd6fccd2871e7955eff7af5b055a76006097baf0dfaf2f5069eff3035b3107fc552abdb2481b21447
DIST llvm-project-17.0.6.src.tar.xz 127838860 BLAKE2B d6ede1a9fda8756995c3e0654111941649e15794179641806f18919f1dc68c41ca0cabd5693b5096d05dccc3a391cd20d34af1137bf8af92ed3117a1ce84d1b2 SHA512 6d85bf749e0d77553cc215cbfa61cec4ac4f4f652847f56f946b6a892a99a5ea40b6ab8b39a9708a035001f007986941ccf17e4635260a8b0c1fa59e78d41e30
DIST llvm-project-17.0.6.src.tar.xz.sig 438 BLAKE2B 186e75b6a0fbfe1e85408589c149e1800fcc47d685b74e4260018e05cd08bc793d1d1197c9c50e177eea941a3d0c65cb0c583ce6dae449099b920adf8a508ef7 SHA512 f78c55053a6450625f3e95f52c305110b4468a9854fec75831b65b8d6ceee3c9206ab9e63c4b5fda8be9bd344f72cfbdaae0520ed240abd505e08ebeaa25d340
+DIST llvm-project-8d817f6479a5df874028a8b40fd30aecd3479005.tar.gz 204890108 BLAKE2B 8c57c556371b37d00cda753a40f1162e678d89fa40e8f2b90a38aab7e17f9debfb2ebad53a3a95aa530a9e3e2b4b735828e404e576c8f2738370ec41c28badce SHA512 a38ce082ca1b999888ee0a633b94a02258579591e6ce73ba4722eafb9f0610f9624887eca43e4a6ae567c07ffc014f4ea4137e905899407951265d7c93785f18
DIST llvm-project-a085402ef54379758e6c996dbaedfcb92ad222b5.tar.gz 204569231 BLAKE2B 75403225fbe54f0921b279b237a90f1922b16997d1538fa5f225e04451fa2fc4a28e886efb7460ef0c26a3a964f0c57084e331b0736fa223926259c76d873200 SHA512 b8c6b0c7c0a4c369ecfa7ac71cf96549a19853e14bdf061b6b54429ce7ed998b236bb9ed3adbd6bf1c70c7e975508f751ebd0031ac2ff474d32216048a1c5f2d
diff --git a/dev-libs/libclc/libclc-18.0.0_pre20240113.ebuild b/dev-libs/libclc/libclc-18.0.0_pre20240113.ebuild
new file mode 100644
index 000000000000..70dacd0cf8da
--- /dev/null
+++ b/dev-libs/libclc/libclc-18.0.0_pre20240113.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2024 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"
+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
+}