commit:     2285b1c837666dc816122187a8b4efbae563334a
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Wed Apr  1 22:36:31 2020 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Thu Apr  2 00:20:14 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2285b1c8

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 <marecki <AT> gentoo.org>

 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(+)

diff --git a/dev-util/opencl-headers/Manifest b/dev-util/opencl-headers/Manifest
new file mode 100644
index 00000000000..21be9a936d4
--- /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 00000000000..f5bc8eb8de5
--- /dev/null
+++ b/dev-util/opencl-headers/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Marek Szuba</name>
+       </maintainer>
+       <longdescription lang="en">
+               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.
+       </longdescription>
+       <upstream>
+               <remote-id type="github">KhronosGroup/OpenCL-Headers</remote-id>
+       </upstream>
+</pkgmetadata>
+

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 00000000000..0c64e9cc994
--- /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
+}

Reply via email to