summaryrefslogtreecommitdiff
path: root/dev-util/nvidia-cuda-sdk
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-util/nvidia-cuda-sdk
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-util/nvidia-cuda-sdk')
-rw-r--r--dev-util/nvidia-cuda-sdk/Manifest12
-rw-r--r--dev-util/nvidia-cuda-sdk/metadata.xml16
-rw-r--r--dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-6.5.19.ebuild156
-rw-r--r--dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-7.5.18.ebuild143
-rw-r--r--dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.44-r1.ebuild143
-rw-r--r--dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.61.ebuild144
6 files changed, 614 insertions, 0 deletions
diff --git a/dev-util/nvidia-cuda-sdk/Manifest b/dev-util/nvidia-cuda-sdk/Manifest
new file mode 100644
index 000000000000..1a04479f39d0
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/Manifest
@@ -0,0 +1,12 @@
+DIST cuda_6.5.19_linux_32.run 81882112 SHA256 9f767f38b84f52c097bec81669f99e4a6c4c9c09b5da1bc09fe49e0f804bc7a6 SHA512 1ce9bd6b472b7e4f1fb181eb340dfcb757714d59a89aaa02146cfe1a97c8ccb7eb7699b4ec823276f277eb4d82d95050eaba17e7ed5fd2e47b9b5d78531c5d4e WHIRLPOOL ac94b4e7f29811b4240623fb69b3c54214e7f0c60a286d899944dbab9da7fd3c122760199a3357667e33879bd48fbf352d5d39029acca6021e7caf21785557ed
+DIST cuda_6.5.19_linux_64.run 982446238 SHA256 5279bc159b72b7445d8aae5f289d24bb4042c35422ef32da68049d8f666d3ff5 SHA512 06854f020a5f72cf4bd714859e6966248ac2f589284113674e869fdaa1254cae27d4101940758ecda5df4724ad3e448a1f6d0c053b6cbc28107750872b6a5797 WHIRLPOOL 6ae8e53719e12997de60ec3688167f3fe33b1145d01217182e39ac386c25b358c8ba6cee45ad6c80e33ef66fd9a511338dce4589f10a31635b8437b6e528fd7a
+DIST cuda_7.5.18_linux.run 1195424633 SHA256 08411d536741075131a1858a68615b8b73c51988e616e83b835e4632eea75eec SHA512 97459dfd124060200f1c43f763e5bce0bea53e35ed4bef72bee6c8ba1c04ecffb8695af11755443513316f91fdb5cb4d35662f7b87bca7e3de85d562d4e49363 WHIRLPOOL 59d186f5e9176db25e5991e8088417ac778953c3ed2f0dcef034968f7ea695c5d4cfea81759ac0f7f1290c3842d9d0339b5b74d2d90ec8b333135aa1b986ca10
+DIST cuda_8.0.44_linux.run 1457082926 SHA256 64dc4ab867261a0d690735c46d7cc9fc60d989da0d69dc04d1714e409cacbdf0 SHA512 1bf9d8e6b853c2a971b8d908a043adc5b11ec7033faed04a773c42680882753f98bc33b46f6b301c24c0f780f74bc237dce5766fc857f1a905e6c1f200728d86 WHIRLPOOL e90fa2088cd70aef2794c1ce2db126d6186bc3c44d14c1cf7cb4a66f889cbb4799485d1d71ab045e2dfaed9bfabcea224ca04b7f97e9bce061ac9fbd31c62fdd
+DIST cuda_8.0.61_375.26_linux.run 1465528129 SHA256 9ceca9c2397f841024e03410bfd6eabfd72b384256fbed1c1e4834b5b0ce9dc4 SHA512 d22303719a9feff64f95bf6a966f1caa2bf0cf8c955e475ce08ce54faa5e098d336c2db223ef0185c1f23b9c52b7d2f81a63515485219cfc016d72bda979248b WHIRLPOOL 650a0e8bc9ad2d0637cd4a82a057bf77e613559d1080a86009f594c73adb8879de62b26dac9d8e3f572806556bf878505382479e596d4ce91929ab94b882489a
+EBUILD nvidia-cuda-sdk-6.5.19.ebuild 3992 SHA256 9ba333c19ea35b959c0b47883293948922222996fd3f7518b39d6ecf38d4c2f1 SHA512 367460c2bc89549774ead4cde22c875ed3df9f8002fdd6666289649c6749295389204a11cd0cd6ab201cb2eed1e43d1cda45aea42b9864c9a7fb5ba813aaa04e WHIRLPOOL a6d471060a563bc2e0c7472af84921fc50674d39889ae45d0cacba53e6655b799036fdd05b6cbfa6e410446ae72557c6d24c5a68b848b10366dd96075a82c858
+EBUILD nvidia-cuda-sdk-7.5.18.ebuild 3568 SHA256 59c7fdef2fc7f32917af8b41ead94049b9fd56dfe1011596d10b8719ffaf87f7 SHA512 199004e748db588de447c71ac2bddb08fdfbbc099a335ecbcd7e57978cc3cbb9cfdd6a87765c6b315cfac067248c133eeff1a98fc2e9d331a138ccb5266a1f7e WHIRLPOOL 2cb71ade48b0b8a2089a55d9798a431ef63ab3ef9b23684da1bda821d666814374fce06f2c8885ce719f1c2aed4f45dc732b89e1d18e87c8237235053d6da646
+EBUILD nvidia-cuda-sdk-8.0.44-r1.ebuild 3757 SHA256 5a141cb188f96e47755a50d896f183cf7026da8a9d06f650d6205abd950c4f79 SHA512 b2270c56dc77e85db6963c01965afb4a85b7acf3790630d955adf0d64d2ca09203c9423285684c99432037c8378dd5856c5ccf4b91a0b364f54c282765c149d9 WHIRLPOOL 47db788b6825dad04a809b100d2d7775ae7110ccd6e5a8ba27f7f6882dcef5f9e9f1970dc50577532c04c09f03864ffaca26378639a6b47f5e366c21c6e8439f
+EBUILD nvidia-cuda-sdk-8.0.61.ebuild 3803 SHA256 8c2e415f4c88eef97c94b503ca61fa0fcfdc1de2ee7f8453be85f2342f420ec4 SHA512 91ed589b1841b6069e24ea8fd12fc55d73c7bca0b33cd6b7b37746fbd3c896ce8224a5622b7750720595d1f36a7daecc3661612148f58e6e6e79028b2a0333fa WHIRLPOOL f5eddd4d4b8990429f3bd55d6250150fff4a8b0687b4f3556b98c73fa8b4d963632e1cdf86352ef34e7a6d3b2108597e5e1965c3a7c1a6b1682fc3e46c1a9144
+MISC ChangeLog 4632 SHA256 302ee13070c9599a7df8923f6bb29cb4841e66c11f1c7adb9da7451f70bb8df1 SHA512 d06821356c8c68c23fdfd14e6d5ffb2263373713db1f8675340049fb1280966e942a8ca6c40ed0cd15a416229d8fff45365a2a2e9f2fb64b30f17303de10fb3e WHIRLPOOL 92907fc9e73251b860e7ee8517c3e35123acc4812e1e13f0e1e8e607bca3f5ac75a0b706610c0ae07daf5d6a5d306b833aff5a5fcacb2cdd6c41c8c4138ca8ae
+MISC ChangeLog-2015 11675 SHA256 db9efe400d5ff1168c942206146c5b6e2d847578d6638b48c8e52d6da2efd1ec SHA512 95089cb719e9817b82e8d36649f0b59ad82ba5df135c0914af45cb7bf246a1523c4746eb7015910fa92e3ddf6368b0e31c5b19d780a90f8bae0fb305849bed24 WHIRLPOOL 0638a4984df55307fb3d008ae05bed7966eebd0814f8eefe113e59f185df0a13e271732cb14e864af5b3b707e718ad805ae3c1a681b6d445934f9f1e5f028924
+MISC metadata.xml 394 SHA256 62e27e2f2871962baa5f68b39db9fa811cf0a60cd43f71513747f1c348c6b947 SHA512 f20a681825a67b16424264661572ef279bade1ff346f846c5fd7e802f6d0c012653f462580ad48a03d333735cfd7525a62efd389c9f42dd6181d51adf0455767 WHIRLPOOL cb72b223e6d133d0eb13a422d5b6b0c76638341d6f44fafee5343c2fe5d62a0a013e8c687e0888033f69aa6bfdbe3c5d81a7d77746b9dea0f87812c84f95481d
diff --git a/dev-util/nvidia-cuda-sdk/metadata.xml b/dev-util/nvidia-cuda-sdk/metadata.xml
new file mode 100644
index 000000000000..9ab4f583a9c4
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <use>
+ <flag name="opencl">
+ Build OpenCL binaries.
+ </flag>
+ <flag name="cuda">
+ Build CUDA binaries.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-6.5.19.ebuild b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-6.5.19.ebuild
new file mode 100644
index 000000000000..f48ac080ba5f
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-6.5.19.ebuild
@@ -0,0 +1,156 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cuda eutils flag-o-matic portability toolchain-funcs unpacker versionator
+
+MYD=$(get_version_component_range 1)_$(get_version_component_range 2)
+
+DESCRIPTION="NVIDIA CUDA Software Development Kit"
+HOMEPAGE="http://developer.nvidia.com/cuda"
+CURI="http://developer.download.nvidia.com/compute/cuda/${MYD}/rel/installers"
+SRC_URI="
+ amd64? ( ${CURI}/cuda_${PV}_linux_64.run )
+ x86? ( ${CURI}/cuda_${PV}_linux_32.run )"
+
+LICENSE="CUDPP"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="debug +doc +examples opencl +cuda"
+
+RDEPEND="
+ ~dev-util/nvidia-cuda-toolkit-${PV}
+ media-libs/freeglut
+ examples? (
+ media-libs/freeimage
+ media-libs/glew:0=
+ virtual/mpi
+ >=x11-drivers/nvidia-drivers-340.32[uvm]
+ x86? ( <x11-drivers/nvidia-drivers-346.35[uvm] )
+ )"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test"
+
+S=${WORKDIR}/cuda-samples
+
+QA_EXECSTACK=(
+ opt/cuda/sdk/0_Simple/cdpSimplePrint/cdpSimplePrint
+ opt/cuda/sdk/0_Simple/cdpSimpleQuicksort/cdpSimpleQuicksort
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimplePrint
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimpleQuicksort
+ )
+
+src_unpack() {
+ unpacker
+ unpacker run_files/cuda-samples*run
+}
+
+pkg_setup() {
+ if use cuda || use opencl; then
+ cuda_pkg_setup
+ fi
+
+ if use x86; then
+ ewarn "Starting with version 6.5 NVIDIA dropped more and more"
+ ewarn "the support for 32bit linux."
+ ewarn "Be aware that bugfixes and new features may not be available."
+ ewarn "https://dev.gentoo.org/~jlec/distfiles/CUDA_Toolkit_Release_Notes.pdf"
+ fi
+}
+
+src_prepare() {
+ export RAWLDFLAGS="$(raw-ldflags)"
+# epatch "${FILESDIR}"/${P}-asneeded.patch
+
+ sed \
+ -e 's:-O2::g' \
+ -e 's:-O3::g' \
+ -e "/LINK/s:gcc:$(tc-getCC) ${LDFLAGS}:g" \
+ -e "/LINK/s:g++:$(tc-getCXX) ${LDFLAGS}:g" \
+ -e "/CC/s:gcc:$(tc-getCC):g" \
+ -e "/GCC/s:g++:$(tc-getCXX):g" \
+ -e "/NVCC /s|\(:=\).*|:= ${EPREFIX}/opt/cuda/bin/nvcc|g" \
+ -e "/ CFLAGS/s|\(:=\)|\1 ${CFLAGS}|g" \
+ -e "/ CXXFLAGS/s|\(:=\)|\1 ${CXXFLAGS}|g" \
+ -e "/NVCCFLAGS/s|\(:=\)|\1 ${NVCCFLAGS} |g" \
+ -e 's:-Wimplicit::g' \
+ -e "s|../../common/lib/linux/\$(OS_ARCH)/libGLEW.a|$(pkg-config --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/libGLEW.a|$(pkg-config --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/\$(OS_ARCH)/libGLEW.a|$(pkg-config --libs glew)|g" \
+ -i $(find . -type f -name "Makefile") || die
+
+# -e "/ALL_LDFLAGS/s|:=|:= ${RAWLDFLAGS} |g" \
+ find common/inc/GL -delete || die
+ find . -type f -name "*\.a" -delete || die
+
+ eapply_user
+}
+
+src_compile() {
+ use examples || return
+ local myopts verbose="verbose=1"
+ use debug && myopts+=" dbg=1"
+ export FAKEROOTKEY=1 # Workaround sandbox issue in #462602
+ emake \
+ cuda-install="${EPREFIX}/opt/cuda" \
+ CUDA_PATH="${EPREFIX}/opt/cuda/" \
+ MPI_GCC=10 \
+ ${myopts} ${verbose}
+}
+
+src_test() {
+ local _dir _subdir
+
+ addwrite /dev/nvidiactl
+ addwrite /dev/nvidia0
+
+ for _dir in {0..9}*; do
+ pushd ${_dir} > /dev/null
+ for _subdir in *; do
+ emake -C ${_subdir} run
+ done
+ popd > /dev/null
+ done
+}
+
+src_install() {
+ local i j f t crap=""
+
+ if use doc; then
+ ebegin "Installing docs ..."
+ treecopy $(find -type f \( -name readme.txt -o -name "*.pdf" \)) "${ED}"/usr/share/doc/${PF}/
+ docompress -x $(find "${ED}"/usr/share/doc/${PF}/ -type f -name readme.txt | sed -e "s:${ED}::")
+ eend
+ fi
+
+ crap+=" *.txt Samples.htm*"
+
+ ebegin "Cleaning before installation..."
+ for i in ${crap}; do
+ if [[ -e ${i} ]]; then
+ find ${i} -delete || die
+ fi
+ done
+ find -type f \( -name "*.o" -o -name "*.pdf" -o -name "readme.txt" \) -delete || die
+ eend
+
+ ebegin "Moving files..."
+ for f in $(find .); do
+ local t="$(dirname ${f})"
+ if [[ ${t/obj\/} != ${t} || ${t##*.} == a ]]; then
+ continue
+ fi
+ if [[ ! -d ${f} ]]; then
+ if [[ -x ${f} ]]; then
+ exeinto /opt/cuda/sdk/${t}
+ doexe ${f}
+ else
+ insinto /opt/cuda/sdk/${t}
+ doins ${f}
+ fi
+ fi
+ done
+ eend
+}
diff --git a/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-7.5.18.ebuild b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-7.5.18.ebuild
new file mode 100644
index 000000000000..f3d256ec6cd5
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-7.5.18.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit cuda eutils flag-o-matic portability toolchain-funcs unpacker versionator
+
+MYD=$(get_version_component_range 1-2)
+
+DESCRIPTION="NVIDIA CUDA Software Development Kit"
+HOMEPAGE="https://developer.nvidia.com/cuda-downloads"
+SRC_URI="http://developer.download.nvidia.com/compute/cuda/${MYD}/Prod/local_installers/cuda_${PV}_linux.run"
+
+LICENSE="CUDPP"
+SLOT="0"
+KEYWORDS="~amd64 ~amd64-linux"
+IUSE="debug +doc +examples opencl +cuda"
+
+RDEPEND="
+ ~dev-util/nvidia-cuda-toolkit-${PV}
+ media-libs/freeglut
+ examples? (
+ media-libs/freeimage
+ media-libs/glew:0=
+ virtual/mpi
+ >=x11-drivers/nvidia-drivers-352.39[uvm]
+ )"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test"
+
+S=${WORKDIR}/samples
+
+QA_EXECSTACK=(
+ opt/cuda/sdk/0_Simple/cdpSimplePrint/cdpSimplePrint
+ opt/cuda/sdk/0_Simple/cdpSimpleQuicksort/cdpSimpleQuicksort
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimplePrint
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimpleQuicksort
+ )
+
+src_unpack() {
+ unpacker
+ unpacker run_files/cuda-samples*run
+}
+
+pkg_setup() {
+ if use cuda || use opencl; then
+ cuda_pkg_setup
+ fi
+}
+
+src_prepare() {
+ export RAWLDFLAGS="$(raw-ldflags)"
+# epatch "${FILESDIR}"/${P}-asneeded.patch
+
+ sed \
+ -e 's:-O2::g' \
+ -e 's:-O3::g' \
+ -e "/LINK/s:gcc:$(tc-getCC) ${LDFLAGS}:g" \
+ -e "/LINK/s:g++:$(tc-getCXX) ${LDFLAGS}:g" \
+ -e "/CC/s:gcc:$(tc-getCC):g" \
+ -e "/GCC/s:g++:$(tc-getCXX):g" \
+ -e "/NVCC /s|\(:=\).*|:= ${EPREFIX}/opt/cuda/bin/nvcc|g" \
+ -e "/ CFLAGS/s|\(:=\)|\1 ${CFLAGS}|g" \
+ -e "/ CXXFLAGS/s|\(:=\)|\1 ${CXXFLAGS}|g" \
+ -e "/NVCCFLAGS/s|\(:=\)|\1 ${NVCCFLAGS} |g" \
+ -e 's:-Wimplicit::g' \
+ -e "s|../../common/lib/linux/\$(OS_ARCH)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/\$(OS_ARCH)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -i $(find . -type f -name "Makefile") || die
+
+# -e "/ALL_LDFLAGS/s|:=|:= ${RAWLDFLAGS} |g" \
+ find common/inc/GL -delete || die
+ find . -type f -name "*\.a" -delete || die
+}
+
+src_compile() {
+ use examples || return
+ local myopts verbose="verbose=1"
+ use debug && myopts+=" dbg=1"
+ export FAKEROOTKEY=1 # Workaround sandbox issue in #462602
+ emake \
+ cuda-install="${EPREFIX}/opt/cuda" \
+ CUDA_PATH="${EPREFIX}/opt/cuda/" \
+ MPI_GCC=10 \
+ ${myopts} ${verbose}
+}
+
+src_test() {
+ local _dir _subdir
+
+ addwrite /dev/nvidiactl
+ addwrite /dev/nvidia0
+
+ for _dir in {0..9}*; do
+ pushd ${_dir} > /dev/null
+ for _subdir in *; do
+ emake -C ${_subdir} run
+ done
+ popd > /dev/null
+ done
+}
+
+src_install() {
+ local i j f t crap=""
+
+ if use doc; then
+ ebegin "Installing docs ..."
+ treecopy $(find -type f \( -name readme.txt -o -name "*.pdf" \)) "${ED}"/usr/share/doc/${PF}/
+ docompress -x $(find "${ED}"/usr/share/doc/${PF}/ -type f -name readme.txt | sed -e "s:${ED}::")
+ eend
+ fi
+
+ crap+=" *.txt Samples.htm*"
+
+ ebegin "Cleaning before installation..."
+ for i in ${crap}; do
+ if [[ -e ${i} ]]; then
+ find ${i} -delete || die
+ fi
+ done
+ find -type f \( -name "*.o" -o -name "*.pdf" -o -name "readme.txt" \) -delete || die
+ eend
+
+ ebegin "Moving files..."
+ for f in $(find .); do
+ local t="$(dirname ${f})"
+ if [[ ${t/obj\/} != ${t} || ${t##*.} == a ]]; then
+ continue
+ fi
+ if [[ ! -d ${f} ]]; then
+ if [[ -x ${f} ]]; then
+ exeinto /opt/cuda/sdk/${t}
+ doexe ${f}
+ else
+ insinto /opt/cuda/sdk/${t}
+ doins ${f}
+ fi
+ fi
+ done
+ eend
+}
diff --git a/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.44-r1.ebuild b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.44-r1.ebuild
new file mode 100644
index 000000000000..4015cff5dca8
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.44-r1.ebuild
@@ -0,0 +1,143 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cuda eutils flag-o-matic portability toolchain-funcs unpacker versionator
+
+MYD=$(get_version_component_range 1-2)
+
+DESCRIPTION="NVIDIA CUDA Software Development Kit"
+HOMEPAGE="https://developer.nvidia.com/cuda-zone"
+SRC_URI="https://developer.nvidia.com/compute/cuda/${MYD}/prod/local_installers/cuda_${PV}_linux-run -> cuda_${PV}_linux.run"
+
+LICENSE="CUDPP"
+SLOT="0"
+KEYWORDS="~amd64 ~amd64-linux"
+IUSE="+cuda debug +doc +examples opencl mpi"
+
+RDEPEND="
+ ~dev-util/nvidia-cuda-toolkit-${PV}
+ media-libs/freeglut
+ examples? (
+ media-libs/freeimage
+ media-libs/glew:0=
+ >=x11-drivers/nvidia-drivers-367.44[uvm]
+ mpi? ( virtual/mpi )
+ )"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test"
+
+S=${WORKDIR}/samples
+
+QA_EXECSTACK=(
+ opt/cuda/sdk/0_Simple/cdpSimplePrint/cdpSimplePrint
+ opt/cuda/sdk/0_Simple/cdpSimpleQuicksort/cdpSimpleQuicksort
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimplePrint
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimpleQuicksort
+ )
+
+src_unpack() {
+ # We first need to unpack the cuda_${PV}_linux.run file
+ # which includes the cuda-samples*run file.
+ unpacker
+ unpacker run_files/cuda-samples*run
+}
+
+pkg_setup() {
+ if use cuda || use opencl; then
+ cuda_pkg_setup
+ fi
+}
+
+src_prepare() {
+ export RAWLDFLAGS="$(raw-ldflags)"
+# epatch "${FILESDIR}"/${P}-asneeded.patch
+
+ local file
+ while IFS="" read -d $'\0' -r file; do
+ sed \
+ -e 's:-O[23]::g' \
+ -e "/LINK/s:gcc:$(tc-getCC) ${LDFLAGS}:g" \
+ -e "/LINK/s:g++:$(tc-getCXX) ${LDFLAGS}:g" \
+ -e "/CC/s:gcc:$(tc-getCC):g" \
+ -e "/GCC/s:g++:$(tc-getCXX):g" \
+ -e "/NVCC /s|\(:=\).*|:= ${EPREFIX}/opt/cuda/bin/nvcc|g" \
+ -e "/ CFLAGS/s|\(:=\)|\1 ${CFLAGS}|g" \
+ -e "/ CXXFLAGS/s|\(:=\)|\1 ${CXXFLAGS}|g" \
+ -e "/NVCCFLAGS/s|\(:=\)|\1 ${NVCCFLAGS} |g" \
+ -e 's:-Wimplicit::g' \
+ -e "s|../../common/lib/linux/\$(OS_ARCH)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/\$(OS_ARCH)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -i "${file}" || die
+ # -e "/ALL_LDFLAGS/s|:=|:= ${RAWLDFLAGS} |g" \
+ done < <(find . -type f -name 'Makefile' -print0)
+
+ rm -rf common/inc/GL || die
+ find . -type f -name '*.a' -delete || die
+
+ eapply_user
+}
+
+src_compile() {
+ use examples || return
+ local myopts=("verbose=1")
+ use debug && myopts+=("dbg=1")
+ export FAKEROOTKEY=1 # Workaround sandbox issue in #462602
+ emake \
+ cuda-install="${EPREFIX}/opt/cuda" \
+ CUDA_PATH="${EPREFIX}/opt/cuda/" \
+ MPI_GCC=10 \
+ "${myopts[@]}"
+}
+
+src_test() {
+ addwrite /dev/nvidiactl
+ addwrite /dev/nvidia0
+
+ local i
+ for i in {0..9}*/*; do
+ emake -C "${i}" run
+ done
+}
+
+src_install() {
+ local f t crap=( *.txt Samples.htm* )
+
+ if use doc; then
+ ebegin "Installing docs ..."
+ while IFS="" read -d $'\0' -r f; do
+ treecopy "${f}" "${ED%/}"/usr/share/doc/${PF}/
+ done < <(find -type f \( -name 'readme.txt' -o -name '*.pdf' \) -print0)
+
+ while IFS="" read -d $'\0' -r f; do
+ docompress -x "${f#${ED%/}}"
+ done < <(find "${ED%/}"/usr/share/doc/${PF}/ -type f -name 'readme.txt' -print0)
+ eend
+ fi
+
+ ebegin "Cleaning before installation..."
+ for f in "${crap[@]}"; do
+ rm -f "${f}" || die
+ done
+ find -type f \( -name '*.o' -o -name '*.pdf' -o -name 'readme.txt' \) -delete || die
+ eend
+
+ ebegin "Moving files..."
+ while IFS="" read -d $'\0' -r f; do
+ t="$(dirname ${f})"
+ if [[ ${t/obj\/} != ${t} || ${t##*.} == a ]]; then
+ continue
+ fi
+ if [[ -x ${f} ]]; then
+ exeinto /opt/cuda/sdk/"${t}"
+ doexe "${f}"
+ else
+ insinto /opt/cuda/sdk/"${t}"
+ doins "${f}"
+ fi
+ done < <(find . -type f -print0)
+ eend
+}
diff --git a/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.61.ebuild b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.61.ebuild
new file mode 100644
index 000000000000..0f301935641d
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-8.0.61.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cuda eutils flag-o-matic portability toolchain-funcs unpacker versionator
+
+MYD=$(get_version_component_range 1-2)
+DRIVER_PV="375.26"
+
+DESCRIPTION="NVIDIA CUDA Software Development Kit"
+HOMEPAGE="https://developer.nvidia.com/cuda-zone"
+SRC_URI="https://developer.nvidia.com/compute/cuda/${MYD}/Prod2/local_installers/cuda_${PV}_${DRIVER_PV}_linux-run -> cuda_${PV}_${DRIVER_PV}_linux.run"
+
+LICENSE="CUDPP"
+SLOT="0"
+KEYWORDS="~amd64 ~amd64-linux"
+IUSE="+cuda debug +doc +examples opencl mpi"
+
+RDEPEND="
+ ~dev-util/nvidia-cuda-toolkit-${PV}
+ media-libs/freeglut
+ examples? (
+ media-libs/freeimage
+ media-libs/glew:0=
+ >=x11-drivers/nvidia-drivers-375.26[uvm]
+ mpi? ( virtual/mpi )
+ )"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test"
+
+S=${WORKDIR}/samples
+
+QA_EXECSTACK=(
+ opt/cuda/sdk/0_Simple/cdpSimplePrint/cdpSimplePrint
+ opt/cuda/sdk/0_Simple/cdpSimpleQuicksort/cdpSimpleQuicksort
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimplePrint
+ opt/cuda/sdk/bin/x86_64/linux/release/cdpSimpleQuicksort
+ )
+
+src_unpack() {
+ # We first need to unpack the cuda_${PV}_linux.run file
+ # which includes the cuda-samples*run file.
+ unpacker
+ unpacker run_files/cuda-samples*run
+}
+
+pkg_setup() {
+ if use cuda || use opencl; then
+ cuda_pkg_setup
+ fi
+}
+
+src_prepare() {
+ export RAWLDFLAGS="$(raw-ldflags)"
+# epatch "${FILESDIR}"/${P}-asneeded.patch
+
+ local file
+ while IFS="" read -d $'\0' -r file; do
+ sed \
+ -e 's:-O[23]::g' \
+ -e "/LINK/s:gcc:$(tc-getCC) ${LDFLAGS}:g" \
+ -e "/LINK/s:g++:$(tc-getCXX) ${LDFLAGS}:g" \
+ -e "/CC/s:gcc:$(tc-getCC):g" \
+ -e "/GCC/s:g++:$(tc-getCXX):g" \
+ -e "/NVCC /s|\(:=\).*|:= ${EPREFIX}/opt/cuda/bin/nvcc|g" \
+ -e "/ CFLAGS/s|\(:=\)|\1 ${CFLAGS}|g" \
+ -e "/ CXXFLAGS/s|\(:=\)|\1 ${CXXFLAGS}|g" \
+ -e "/NVCCFLAGS/s|\(:=\)|\1 ${NVCCFLAGS} |g" \
+ -e 's:-Wimplicit::g' \
+ -e "s|../../common/lib/linux/\$(OS_ARCH)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -e "s|../../common/lib/\$(OSLOWER)/\$(OS_ARCH)/libGLEW.a|$($(tc-getPKG_CONFIG) --libs glew)|g" \
+ -i "${file}" || die
+ # -e "/ALL_LDFLAGS/s|:=|:= ${RAWLDFLAGS} |g" \
+ done < <(find . -type f -name 'Makefile' -print0)
+
+ rm -rf common/inc/GL || die
+ find . -type f -name '*.a' -delete || die
+
+ eapply_user
+}
+
+src_compile() {
+ use examples || return
+ local myopts=("verbose=1")
+ use debug && myopts+=("dbg=1")
+ export FAKEROOTKEY=1 # Workaround sandbox issue in #462602
+ emake \
+ cuda-install="${EPREFIX}/opt/cuda" \
+ CUDA_PATH="${EPREFIX}/opt/cuda/" \
+ MPI_GCC=10 \
+ "${myopts[@]}"
+}
+
+src_test() {
+ addwrite /dev/nvidiactl
+ addwrite /dev/nvidia0
+
+ local i
+ for i in {0..9}*/*; do
+ emake -C "${i}" run
+ done
+}
+
+src_install() {
+ local f t crap=( *.txt Samples.htm* )
+
+ if use doc; then
+ ebegin "Installing docs ..."
+ while IFS="" read -d $'\0' -r f; do
+ treecopy "${f}" "${ED%/}"/usr/share/doc/${PF}/
+ done < <(find -type f \( -name 'readme.txt' -o -name '*.pdf' \) -print0)
+
+ while IFS="" read -d $'\0' -r f; do
+ docompress -x "${f#${ED%/}}"
+ done < <(find "${ED%/}"/usr/share/doc/${PF}/ -type f -name 'readme.txt' -print0)
+ eend
+ fi
+
+ ebegin "Cleaning before installation..."
+ for f in "${crap[@]}"; do
+ rm -f "${f}" || die
+ done
+ find -type f \( -name '*.o' -o -name '*.pdf' -o -name 'readme.txt' \) -delete || die
+ eend
+
+ ebegin "Moving files..."
+ while IFS="" read -d $'\0' -r f; do
+ t="$(dirname ${f})"
+ if [[ ${t/obj\/} != ${t} || ${t##*.} == a ]]; then
+ continue
+ fi
+ if [[ -x ${f} ]]; then
+ exeinto /opt/cuda/sdk/"${t}"
+ doexe "${f}"
+ else
+ insinto /opt/cuda/sdk/"${t}"
+ doins "${f}"
+ fi
+ done < <(find . -type f -print0)
+ eend
+}