From 2285b1c837666dc816122187a8b4efbae563334a Mon Sep 17 00:00:00 2001 From: Marek Szuba Date: Wed, 1 Apr 2020 23:36:31 +0100 Subject: [PATCH] dev-util/opencl-headers: new package The first release of unified Khronos OpenCL headers, which unlike old headers (which is what app-eselect/eselect-opencl installs) work with all released OpenCL versions rather than having different versions supported by files from different directories. Note that in order to avoid file collisions with eselect-opencl this package presently installs header files into /usr/$(get_libdir)/OpenCL/vendors/opencl-icd-loader/include , which is why it needs multilib support and why it will likely not work right when installed standalone (in contrast to being pulled in by dev-libs/opencl-icd-loader). Signed-off-by: Marek Szuba --- dev-util/opencl-headers/Manifest | 1 + dev-util/opencl-headers/metadata.xml | 24 +++++++++++++++ .../opencl-headers-2020.03.13.ebuild | 29 +++++++++++++++++++ 3 files changed, 54 insertions(+) create mode 100644 dev-util/opencl-headers/Manifest create mode 100644 dev-util/opencl-headers/metadata.xml create mode 100644 dev-util/opencl-headers/opencl-headers-2020.03.13.ebuild diff --git a/dev-util/opencl-headers/Manifest b/dev-util/opencl-headers/Manifest new file mode 100644 index 000000000000..21be9a936d4a --- /dev/null +++ b/dev-util/opencl-headers/Manifest @@ -0,0 +1 @@ +DIST opencl-headers-2020.03.13.tar.gz 48540 BLAKE2B 5befbf7b1ed9df7e45789f1a5c3ec15a2bb0bee4cf50f89e424b6c69534c045c0774fd6f6424d5311c5415c9e6714033b6c70d3c641f60c037a9c3fab3e00bb6 SHA512 4bf368325f6034b2c59b9d3a22f7c12eec078e5e5a0bdcc3f1f5870e211bf7d03ae7137897262440a9c98a35592f4405d85fae1b53246e56b5544af51bf9b39a diff --git a/dev-util/opencl-headers/metadata.xml b/dev-util/opencl-headers/metadata.xml new file mode 100644 index 000000000000..f5bc8eb8de51 --- /dev/null +++ b/dev-util/opencl-headers/metadata.xml @@ -0,0 +1,24 @@ + + + + + marecki@gentoo.org + Marek Szuba + + + The OpenCL API headers in this package are unified headers and are designed to work + with all released OpenCL versions. This differs from previous OpenCL API headers, + where version-specific API headers either existed in separate branches, or + in separate folders in a branch. + + By default, the OpenCL API headers in this repository are for the latest OpenCL + version supported. To use these API headers to target a different OpenCL version, + an application may #define the preprocessor value CL_TARGET_OPENCL_VERSION before + including the OpenCL API headers. The CL_TARGET_OPENCL_VERSION is a three digit + decimal value representing the OpenCL API version. + + + KhronosGroup/OpenCL-Headers + + + diff --git a/dev-util/opencl-headers/opencl-headers-2020.03.13.ebuild b/dev-util/opencl-headers/opencl-headers-2020.03.13.ebuild new file mode 100644 index 000000000000..0c64e9cc994a --- /dev/null +++ b/dev-util/opencl-headers/opencl-headers-2020.03.13.ebuild @@ -0,0 +1,29 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit multilib-minimal + +MY_PN="OpenCL-Headers" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="Unified C language headers for the OpenCL API" +HOMEPAGE="https://github.com/KhronosGroup/OpenCL-Headers" +SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +S="${WORKDIR}/${MY_P}" + +multilib_src_install() { + # Ideally we would install these directly into /usr/include but that would conflict + # with eselect-opencl, therefore we install these into the vendor directory used by + # dev-libs/opencl-icd-loader. Hopefully we will get this resolved soon and we can + # stop messing with multilib in this package. + local ocl_dir="/usr/$(get_libdir)/OpenCL/vendors/opencl-icd-loader" + insinto "${ocl_dir}"/include + doins -r "${S}"/CL +} -- 2.26.2