commit:     2050b9842b14a927258dbe4aeff81d579d0985d3
Author:     Marius Brehler <marbre <AT> linux <DOT> sungazer <DOT> de>
AuthorDate: Wed Jan 14 11:38:05 2015 +0000
Commit:     Christoph Junghans <ottxor <AT> gentoo <DOT> org>
CommitDate: Wed Jan 14 11:38:05 2015 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=2050b984

dev-util/nvidia-cuda-sdk: Add 7.0 release candidate

---
 dev-util/nvidia-cuda-sdk/ChangeLog                 |   8 ++
 dev-util/nvidia-cuda-sdk/metadata.xml              |  17 +++
 .../nvidia-cuda-sdk/nvidia-cuda-sdk-7.0.18.ebuild  | 151 +++++++++++++++++++++
 3 files changed, 176 insertions(+)

diff --git a/dev-util/nvidia-cuda-sdk/ChangeLog 
b/dev-util/nvidia-cuda-sdk/ChangeLog
new file mode 100644
index 0000000..37753b1
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/ChangeLog
@@ -0,0 +1,8 @@
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*nvidia-cuda-sdk-7.0.18 (14 Jan 2015)
+
+  14 Jan 2015; Marius Brehler <mar...@linux.sungazer.de> +metadata.xml,
+  +nvidia-cuda-sdk-7.0.18.ebuild:
+  Add version 7.0.18 (release candidate)

diff --git a/dev-util/nvidia-cuda-sdk/metadata.xml 
b/dev-util/nvidia-cuda-sdk/metadata.xml
new file mode 100644
index 0000000..288e495
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+  <herd>sci</herd>
+  <maintainer>
+    <email>j...@gentoo.org</email>
+    <name>Justin Lecher</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-7.0.18.ebuild 
b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-7.0.18.ebuild
new file mode 100644
index 0000000..c3c13b3
--- /dev/null
+++ b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-7.0.18.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: 
/var/cvsroot/gentoo-x86/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-6.5.14.ebuild,v
 1.8 2014/12/26 18:08:45 jlec Exp $
+
+EAPI=5
+
+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="https://developer.nvidia.com/rdp/cuda-70-rc-downloads";
+SRC_URI="cuda_${PV}_rc_linux.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
+               virtual/mpi
+               >=x11-drivers/nvidia-drivers-346.22[uvm]
+               )"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test fetch"
+
+pkg_nofetch() {
+       einfo "Please download"
+       einfo "  - cuda_${P}_rc_linux.run"
+       einfo "from ${CURI} and place it in ${DISTDIR}"
+}
+
+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
+}
+
+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
+}
+
+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
+}

Reply via email to