diff options
author | Marek Szuba <marecki@gentoo.org> | 2020-04-08 16:10:15 +0100 |
---|---|---|
committer | Marek Szuba <marecki@gentoo.org> | 2020-04-09 19:01:09 +0100 |
commit | 1b2237b3a3f151cd80f893460ce7f3609484ecda (patch) | |
tree | 4aaf8a69bad5ff239dc8bfe399288fb402ff7be0 /dev-util | |
parent | sys-libs/libcap-ng: amd64 stable wrt bug #716794 (diff) | |
download | gentoo-1b2237b3a3f151cd80f893460ce7f3609484ecda.tar.gz gentoo-1b2237b3a3f151cd80f893460ce7f3609484ecda.tar.bz2 gentoo-1b2237b3a3f151cd80f893460ce7f3609484ecda.zip |
dev-util/intel-ocl-sdk: require an ICD loader instead of running standalone
At least version 4.4.0.117 works fine with a loader, and in any case
using in standalone mode an OpenCL implementation which exclusively targets
CPUs is of limited use.
Approved-by: Rick Farina <zerochaos@gentoo.org>
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'dev-util')
-rw-r--r-- | dev-util/intel-ocl-sdk/intel-ocl-sdk-4.4.0.117-r2.ebuild | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/dev-util/intel-ocl-sdk/intel-ocl-sdk-4.4.0.117-r2.ebuild b/dev-util/intel-ocl-sdk/intel-ocl-sdk-4.4.0.117-r2.ebuild new file mode 100644 index 000000000000..0d0b0d0a8d3c --- /dev/null +++ b/dev-util/intel-ocl-sdk/intel-ocl-sdk-4.4.0.117-r2.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit rpm multilib + +DESCRIPTION="Intel's implementation of the OpenCL standard" +HOMEPAGE="https://software.intel.com/en-us/articles/opencl-sdk/" +SRC_URI="https://registrationcenter.intel.com/irc_nas/4181/intel_sdk_for_ocl_applications_2014_ubuntu_${PV}_x64.tgz" + +LICENSE="Intel-SDP" +SLOT="0" +IUSE="android +system-tbb system-clang +system-boost" +KEYWORDS="-* ~amd64" +RESTRICT="bindist mirror" + +RDEPEND=">=virtual/opencl-3 + sys-process/numactl + system-tbb? ( >=dev-cpp/tbb-4.2.20131118 ) + system-clang? ( =sys-devel/clang-3.4* ) + system-boost? ( >=dev-libs/boost-1.52.0:= ) +" +DEPEND="" + +S=${WORKDIR}/intel_sdk_for_ocl_applications_2014_ubuntu_${PV}_x64/ +INTEL_CL=opt/intel/opencl-1.2-${PV} +INTEL_VENDOR_DIR=usr/$(get_libdir)/OpenCL/vendors/intel/ + +QA_PREBUILT="${INTEL_OCL}/*" + +src_unpack() { + default + + PKGS="base devel intel-cpu intel-devel" + + use android && PKGS="$PKGS intel-devel-android" + + for PKG in ${PKGS}; do + FILENAME="opencl-1.2-${PKG}-4.4.0.117-1.x86_64.deb" + einfo "Extracting \"${FILENAME}\"..." + ar x "${S}/$FILENAME" || die + unpack ./data.tar.gz + done +} + +src_prepare() { + # Remove bundled stuff + if use system-boost; then + rm -f "${WORKDIR}/${INTEL_CL}"/lib64/libboost*.so* + fi + if use system-clang; then + rm -f "${WORKDIR}/${INTEL_CL}"/lib64/libclang* + fi + if use system-tbb; then + rm -f "${WORKDIR}/${INTEL_CL}"/lib64/libtbb* + fi +} + +src_install() { + insinto /etc/OpenCL/vendors/ + doins "${WORKDIR}/${INTEL_CL}"/etc/intel64.icd + + insinto /"${INTEL_CL}"/lib64 + insopts -m 755 + doins "${WORKDIR}/${INTEL_CL}"/lib64/* + + insinto /"${INTEL_CL}"/bin + doins "${WORKDIR}"/"${INTEL_CL}"/bin/* + + # TODO put this somewhere + # doins ${INTEL_CL}/eclipse-plug-in/OpenCL_SDK_0.1.0.jar + + dodir "${INTEL_VENDOR_DIR}" + dosym "/opt/intel/opencl-1.2-${PV}/lib64/libOpenCL.so" "${INTEL_VENDOR_DIR}/libOpenCL.so" + dosym "/opt/intel/opencl-1.2-${PV}/lib64/libOpenCL.so.1" "${INTEL_VENDOR_DIR}/libOpenCL.so.1" + dosym "/opt/intel/opencl-1.2-${PV}/lib64/libOpenCL.so.1.2" "${INTEL_VENDOR_DIR}/libOpenCL.so.1.2" +} |