From 47114c2da0048e46973af8bdaddfe86f7b500ca6 Mon Sep 17 00:00:00 2001 From: TheK0tYaRa Date: Mon, 6 Oct 2025 21:04:41 +0300 Subject: [PATCH] dev-libs/opencl-clang-16.0.5 --- dev-libs/opencl-clang/Manifest | 1 + ...pencl-clang-16.0.1-clang_library_dir.patch | 27 ++++++++++++ ...pencl-clang-17.0.0-clang_library_dir.patch | 19 +++++++++ ...opencl-clang-8.0.0-clang_library_dir.patch | 11 +++++ dev-libs/opencl-clang/metadata.xml | 19 +++++++++ .../opencl-clang/opencl-clang-16.0.5.ebuild | 41 +++++++++++++++++++ .../md5-cache/dev-libs/opencl-clang-16.0.5 | 16 ++++++++ 7 files changed, 134 insertions(+) create mode 100644 dev-libs/opencl-clang/Manifest create mode 100644 dev-libs/opencl-clang/files/opencl-clang-16.0.1-clang_library_dir.patch create mode 100644 dev-libs/opencl-clang/files/opencl-clang-17.0.0-clang_library_dir.patch create mode 100644 dev-libs/opencl-clang/files/opencl-clang-8.0.0-clang_library_dir.patch create mode 100644 dev-libs/opencl-clang/metadata.xml create mode 100644 dev-libs/opencl-clang/opencl-clang-16.0.5.ebuild create mode 100644 metadata/md5-cache/dev-libs/opencl-clang-16.0.5 diff --git a/dev-libs/opencl-clang/Manifest b/dev-libs/opencl-clang/Manifest new file mode 100644 index 0000000..1b3178b --- /dev/null +++ b/dev-libs/opencl-clang/Manifest @@ -0,0 +1 @@ +DIST opencl-clang-16.0.5.tar.gz 33673 BLAKE2B f20ed500fac841dff6cde7119ce1d36ac0c23ba645693d3b10cecd4b389a2a580c9675b494de9b3aa013b9f1c078c0e3f19bb97440a2e72a724139f1d6d38557 SHA512 4d0a6561840678241bfb2e5910e5df4104a9747e4223a5bd5cbab69456f9efe031188bef09897037a06218f1bf9a58dfad51de5556ee7267417bd68f2452bf4b diff --git a/dev-libs/opencl-clang/files/opencl-clang-16.0.1-clang_library_dir.patch b/dev-libs/opencl-clang/files/opencl-clang-16.0.1-clang_library_dir.patch new file mode 100644 index 0000000..2e9678c --- /dev/null +++ b/dev-libs/opencl-clang/files/opencl-clang-16.0.1-clang_library_dir.patch @@ -0,0 +1,27 @@ +--- a/cl_headers/CMakeLists.txt ++++ b/cl_headers/CMakeLists.txt +@@ -19,15 +19,15 @@ + endfunction(copy_file) + + if(USE_PREBUILT_LLVM) +- set(OPENCL_HEADERS_DIR +- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") +- if(NOT EXISTS ${OPENCL_HEADERS_DIR}) +- set(OPENCL_HEADERS_DIR +- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/include/") +- endif() +- if(NOT EXISTS ${OPENCL_HEADERS_DIR}) +- message(FATAL_ERROR "[OPENCL-CLANG] Unable to find clang include folder at ${OPENCL_HEADERS_DIR}") +- endif() ++ if(EXISTS "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/") ++ set(OPENCL_HEADERS_DIR ++ "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") ++ elseif(EXISTS "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/") ++ set(OPENCL_HEADERS_DIR ++ "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/include/") ++ else() ++ message(FATAL_ERROR "[OPENCL-CLANG] Couldn't find prebuilt LLVM include directory.") ++ endif() + else(USE_PREBUILT_LLVM) + set(OPENCL_HEADERS_DIR "${CLANG_SOURCE_DIR}/lib/Headers") + endif(USE_PREBUILT_LLVM) diff --git a/dev-libs/opencl-clang/files/opencl-clang-17.0.0-clang_library_dir.patch b/dev-libs/opencl-clang/files/opencl-clang-17.0.0-clang_library_dir.patch new file mode 100644 index 0000000..dd72e72 --- /dev/null +++ b/dev-libs/opencl-clang/files/opencl-clang-17.0.0-clang_library_dir.patch @@ -0,0 +1,19 @@ +--- a/cl_headers/CMakeLists.txt ++++ b/cl_headers/CMakeLists.txt +@@ -19,12 +19,12 @@ + endfunction(copy_file) + + if(USE_PREBUILT_LLVM) +- if(EXISTS "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/") ++ if(EXISTS "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/") + set(OPENCL_HEADERS_DIR +- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") +- elseif(EXISTS "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/") ++ "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") ++ elseif(EXISTS "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/") + set(OPENCL_HEADERS_DIR +- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/include/") ++ "${CLANG_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}/include/") + else() + message(FATAL_ERROR "[OPENCL-CLANG] Couldn't find prebuilt LLVM include directory.") + endif() diff --git a/dev-libs/opencl-clang/files/opencl-clang-8.0.0-clang_library_dir.patch b/dev-libs/opencl-clang/files/opencl-clang-8.0.0-clang_library_dir.patch new file mode 100644 index 0000000..54ca251 --- /dev/null +++ b/dev-libs/opencl-clang/files/opencl-clang-8.0.0-clang_library_dir.patch @@ -0,0 +1,11 @@ +--- a/cl_headers/CMakeLists.txt ++++ b/cl_headers/CMakeLists.txt +@@ -13,7 +13,7 @@ + + if(USE_PREBUILT_LLVM) + set(OPENCL_HEADERS_DIR +- "${LLVM_LIBRARY_DIRS}/clang/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") ++ "${CLANG_LIBRARY_DIRS}/${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}/include/") + else(USE_PREBUILT_LLVM) + set(OPENCL_HEADERS_DIR "${CLANG_SOURCE_DIR}/lib/Headers") + endif(USE_PREBUILT_LLVM) diff --git a/dev-libs/opencl-clang/metadata.xml b/dev-libs/opencl-clang/metadata.xml new file mode 100644 index 0000000..8d57fc8 --- /dev/null +++ b/dev-libs/opencl-clang/metadata.xml @@ -0,0 +1,19 @@ + + + + + gentoo@taujhe.de + Jan Henke + + + proxy-maint@gentoo.org + Proxy Maintainers + + + conikost@gentoo.org + Conrad Kostecki + + + intel/opencl-clang + + diff --git a/dev-libs/opencl-clang/opencl-clang-16.0.5.ebuild b/dev-libs/opencl-clang/opencl-clang-16.0.5.ebuild new file mode 100644 index 0000000..157c6cb --- /dev/null +++ b/dev-libs/opencl-clang/opencl-clang-16.0.5.ebuild @@ -0,0 +1,41 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LLVM_COMPAT=( 16 ) + +inherit cmake llvm-r1 + +DESCRIPTION="OpenCL-oriented thin wrapper library around clang" +HOMEPAGE="https://github.com/intel/opencl-clang" +SRC_URI="https://github.com/intel/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" +S="${WORKDIR}/${PN}-${PV}" + +LICENSE="UoI-NCSA" +SLOT="$(ver_cut 1)" +KEYWORDS="amd64 ~riscv" + +RDEPEND=" + dev-util/spirv-llvm-translator:${SLOT}= + $(llvm_gen_dep ' + llvm-core/clang:${LLVM_SLOT}=[static-analyzer] + llvm-core/llvm:${LLVM_SLOT}= + ') +" + +DEPEND="${RDEPEND}" + +PATCHES=( + "${FILESDIR}"/${PN}-16.0.1-clang_library_dir.patch +) + +src_configure() { + local mycmakeargs=( + -DCLANG_LIBRARY_DIRS="${EPREFIX}"/usr/lib + -DCMAKE_INSTALL_PREFIX="$(get_llvm_prefix)" + -Wno-dev + ) + + cmake_src_configure +} diff --git a/metadata/md5-cache/dev-libs/opencl-clang-16.0.5 b/metadata/md5-cache/dev-libs/opencl-clang-16.0.5 new file mode 100644 index 0000000..4408144 --- /dev/null +++ b/metadata/md5-cache/dev-libs/opencl-clang-16.0.5 @@ -0,0 +1,16 @@ +BDEPEND=app-alternatives/ninja >=dev-build/cmake-3.20.5 +DEFINED_PHASES=compile configure install prepare setup test +DEPEND=dev-util/spirv-llvm-translator:16= llvm_slot_16? ( llvm-core/clang:16=[static-analyzer] llvm-core/llvm:16= ) +DESCRIPTION=OpenCL-oriented thin wrapper library around clang +EAPI=8 +HOMEPAGE=https://github.com/intel/opencl-clang +INHERIT=cmake llvm-r1 +IUSE=+llvm_slot_16 +KEYWORDS=amd64 ~riscv +LICENSE=UoI-NCSA +RDEPEND=dev-util/spirv-llvm-translator:16= llvm_slot_16? ( llvm-core/clang:16=[static-analyzer] llvm-core/llvm:16= ) +REQUIRED_USE=^^ ( llvm_slot_16 ) +SLOT=16 +SRC_URI=https://github.com/intel/opencl-clang/archive/refs/tags/v16.0.5.tar.gz -> opencl-clang-16.0.5.tar.gz +_eclasses_=toolchain-funcs a0b29008c671a362b505f96fa80ce9c0 flag-o-matic a7afe42e95fb46ce9691605acfb24672 multiprocessing 1e32df7deee68372153dca65f4a7c21f ninja-utils 2df4e452cea39a9ec8fb543ce059f8d6 xdg-utils 42869b3c8d86a70ef3cf75165a395e09 cmake 460729dc36f68cf03b044bc1d367e34a llvm-utils 64536677f4b4365e25e9b739163bed58 llvm-r1 5a1fde9f55315992645818a877837527 +_md5_=ea74837738dc8071a8b2bdbccc5efde8