diff options
author | Marek Szuba <marecki@gentoo.org> | 2020-04-01 23:36:31 +0100 |
---|---|---|
committer | Marek Szuba <marecki@gentoo.org> | 2020-04-02 01:20:14 +0100 |
commit | 2285b1c837666dc816122187a8b4efbae563334a (patch) | |
tree | ee135ecd17d97f64c5f9d3c4b4dc0f921cde6597 | |
parent | cmake.eclass: do not append -DNDEBUG to CPPFLAGS (diff) | |
download | gentoo-2285b1c837666dc816122187a8b4efbae563334a.tar.gz gentoo-2285b1c837666dc816122187a8b4efbae563334a.tar.bz2 gentoo-2285b1c837666dc816122187a8b4efbae563334a.zip |
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@gentoo.org>
-rw-r--r-- | dev-util/opencl-headers/Manifest | 1 | ||||
-rw-r--r-- | dev-util/opencl-headers/metadata.xml | 24 | ||||
-rw-r--r-- | dev-util/opencl-headers/opencl-headers-2020.03.13.ebuild | 29 |
3 files changed, 54 insertions, 0 deletions
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 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>marecki@gentoo.org</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 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 +} |