Gentoo Archives: gentoo-commits

From: Justin Lecher <jlec@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-util/nvidia-cuda-sdk/
Date: Tue, 03 Jan 2017 07:39:12
Message-Id: 1483429147.372e3a22e25baf13fa46bda1afd755fcbbaca550.jlec@gentoo
1 commit: 372e3a22e25baf13fa46bda1afd755fcbbaca550
2 Author: Justin Lecher <jlec <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jan 3 07:36:33 2017 +0000
4 Commit: Justin Lecher <jlec <AT> gentoo <DOT> org>
5 CommitDate: Tue Jan 3 07:39:07 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=372e3a22
7
8 dev-util/nvidia-cuda-sdk: Version Bump
9
10 Package-Manager: Portage-2.3.3, Repoman-2.3.1
11 Signed-off-by: Justin Lecher <jlec <AT> gentoo.org>
12
13 dev-util/nvidia-cuda-sdk/Manifest | 2 +
14 .../nvidia-cuda-sdk/nvidia-cuda-sdk-6.5.19.ebuild | 155 +++++++++++++++++++++
15 2 files changed, 157 insertions(+)
16
17 diff --git a/dev-util/nvidia-cuda-sdk/Manifest b/dev-util/nvidia-cuda-sdk/Manifest
18 index ed2b862..73fcfaa 100644
19 --- a/dev-util/nvidia-cuda-sdk/Manifest
20 +++ b/dev-util/nvidia-cuda-sdk/Manifest
21 @@ -1,4 +1,6 @@
22 DIST cuda_6.5.14_linux_32.run 76788277 SHA256 63fa1fe5d013e9944d6c1a3a71768fa4dcb35d6a157c1b06765bb56198c205c5 SHA512 89649ee0f4543b37037b7c8f5ed0b8bd502512afb4d93e3158b3df4786123be05a5288986b5abbfe15c14eb010777d2527b715225bea96a354a898c34e4a2fcc WHIRLPOOL c1094dd84883ef08d91c6eec3634a285496418db1e76b70f449f833dcb01069a620af504b6df7fe2752559688ed1f60f4adda8c97d849d648cba1be0f8196954
23 DIST cuda_6.5.14_linux_64.run 972320904 SHA256 f3e527f34f317314fe8fcd8c85f10560729069298c0f73105ba89225db69da48 SHA512 fecca731b86955f5bc7b09d88b02951e3ee5d4b1f1cf5f92658227a029b87cd35d6ac22956a5fa0afe62dcdc57191f1d12bb08c9f7cc05128727cd8455947b1e WHIRLPOOL 0b890771dcca352168fed1b1df9b29504b03f8c29da59cec29914c541283998edf65f5ca6a41362143a2d5d7359822b036894f563c56b39583b1ac4c64e35180
24 +DIST cuda_6.5.19_linux_32.run 81882112 SHA256 9f767f38b84f52c097bec81669f99e4a6c4c9c09b5da1bc09fe49e0f804bc7a6 SHA512 1ce9bd6b472b7e4f1fb181eb340dfcb757714d59a89aaa02146cfe1a97c8ccb7eb7699b4ec823276f277eb4d82d95050eaba17e7ed5fd2e47b9b5d78531c5d4e WHIRLPOOL ac94b4e7f29811b4240623fb69b3c54214e7f0c60a286d899944dbab9da7fd3c122760199a3357667e33879bd48fbf352d5d39029acca6021e7caf21785557ed
25 +DIST cuda_6.5.19_linux_64.run 982446238 SHA256 5279bc159b72b7445d8aae5f289d24bb4042c35422ef32da68049d8f666d3ff5 SHA512 06854f020a5f72cf4bd714859e6966248ac2f589284113674e869fdaa1254cae27d4101940758ecda5df4724ad3e448a1f6d0c053b6cbc28107750872b6a5797 WHIRLPOOL 6ae8e53719e12997de60ec3688167f3fe33b1145d01217182e39ac386c25b358c8ba6cee45ad6c80e33ef66fd9a511338dce4589f10a31635b8437b6e528fd7a
26 DIST cuda_7.5.18_linux.run 1195424633 SHA256 08411d536741075131a1858a68615b8b73c51988e616e83b835e4632eea75eec SHA512 97459dfd124060200f1c43f763e5bce0bea53e35ed4bef72bee6c8ba1c04ecffb8695af11755443513316f91fdb5cb4d35662f7b87bca7e3de85d562d4e49363 WHIRLPOOL 59d186f5e9176db25e5991e8088417ac778953c3ed2f0dcef034968f7ea695c5d4cfea81759ac0f7f1290c3842d9d0339b5b74d2d90ec8b333135aa1b986ca10
27 DIST cuda_8.0.44_linux.run 1457082926 SHA256 64dc4ab867261a0d690735c46d7cc9fc60d989da0d69dc04d1714e409cacbdf0 SHA512 1bf9d8e6b853c2a971b8d908a043adc5b11ec7033faed04a773c42680882753f98bc33b46f6b301c24c0f780f74bc237dce5766fc857f1a905e6c1f200728d86 WHIRLPOOL e90fa2088cd70aef2794c1ce2db126d6186bc3c44d14c1cf7cb4a66f889cbb4799485d1d71ab045e2dfaed9bfabcea224ca04b7f97e9bce061ac9fbd31c62fdd
28
29 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
30 new file mode 100644
31 index 00000000..38be6ad
32 --- /dev/null
33 +++ b/dev-util/nvidia-cuda-sdk/nvidia-cuda-sdk-6.5.19.ebuild
34 @@ -0,0 +1,155 @@
35 +# Copyright 1999-2017 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +# $Id$
38 +
39 +EAPI=6
40 +
41 +inherit cuda eutils flag-o-matic portability toolchain-funcs unpacker versionator
42 +
43 +MYD=$(get_version_component_range 1)_$(get_version_component_range 2)
44 +
45 +DESCRIPTION="NVIDIA CUDA Software Development Kit"
46 +HOMEPAGE="http://developer.nvidia.com/cuda"
47 +CURI="http://developer.download.nvidia.com/compute/cuda/${MYD}/rel/installers"
48 +SRC_URI="
49 + amd64? ( ${CURI}/cuda_${PV}_linux_64.run )
50 + x86? ( ${CURI}/cuda_${PV}_linux_32.run )"
51 +
52 +LICENSE="CUDPP"
53 +SLOT="0"
54 +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
55 +IUSE="debug +doc +examples opencl +cuda"
56 +
57 +RDEPEND="
58 + ~dev-util/nvidia-cuda-toolkit-${PV}
59 + media-libs/freeglut
60 + examples? (
61 + media-libs/freeimage
62 + media-libs/glew
63 + virtual/mpi
64 + >=x11-drivers/nvidia-drivers-340.32[uvm]
65 + x86? ( <x11-drivers/nvidia-drivers-346.35[uvm] )
66 + )"
67 +DEPEND="${RDEPEND}"
68 +
69 +RESTRICT="test"
70 +
71 +S=${WORKDIR}/cuda-samples
72 +
73 +QA_EXECSTACK=(
74 + opt/cuda/sdk/0_Simple/cdpSimplePrint/cdpSimplePrint
75 + opt/cuda/sdk/0_Simple/cdpSimpleQuicksort/cdpSimpleQuicksort
76 + opt/cuda/sdk/bin/x86_64/linux/release/cdpSimplePrint
77 + opt/cuda/sdk/bin/x86_64/linux/release/cdpSimpleQuicksort
78 + )
79 +
80 +src_unpack() {
81 + unpacker
82 + unpacker run_files/cuda-samples*run
83 +}
84 +
85 +pkg_setup() {
86 + if use cuda || use opencl; then
87 + cuda_pkg_setup
88 + fi
89 +
90 + if use x86; then
91 + ewarn "Starting with version 6.5 NVIDIA dropped more and more"
92 + ewarn "the support for 32bit linux."
93 + ewarn "Be aware that bugfixes and new features may not be available."
94 + ewarn "https://dev.gentoo.org/~jlec/distfiles/CUDA_Toolkit_Release_Notes.pdf"
95 + fi
96 +}
97 +
98 +src_prepare() {
99 + export RAWLDFLAGS="$(raw-ldflags)"
100 +# epatch "${FILESDIR}"/${P}-asneeded.patch
101 +
102 + sed \
103 + -e 's:-O2::g' \
104 + -e 's:-O3::g' \
105 + -e "/LINK/s:gcc:$(tc-getCC) ${LDFLAGS}:g" \
106 + -e "/LINK/s:g++:$(tc-getCXX) ${LDFLAGS}:g" \
107 + -e "/CC/s:gcc:$(tc-getCC):g" \
108 + -e "/GCC/s:g++:$(tc-getCXX):g" \
109 + -e "/NVCC /s|\(:=\).*|:= ${EPREFIX}/opt/cuda/bin/nvcc|g" \
110 + -e "/ CFLAGS/s|\(:=\)|\1 ${CFLAGS}|g" \
111 + -e "/ CXXFLAGS/s|\(:=\)|\1 ${CXXFLAGS}|g" \
112 + -e "/NVCCFLAGS/s|\(:=\)|\1 ${NVCCFLAGS} |g" \
113 + -e 's:-Wimplicit::g' \
114 + -e "s|../../common/lib/linux/\$(OS_ARCH)/libGLEW.a|$(pkg-config --libs glew)|g" \
115 + -e "s|../../common/lib/\$(OSLOWER)/libGLEW.a|$(pkg-config --libs glew)|g" \
116 + -e "s|../../common/lib/\$(OSLOWER)/\$(OS_ARCH)/libGLEW.a|$(pkg-config --libs glew)|g" \
117 + -i $(find . -type f -name "Makefile") || die
118 +
119 +# -e "/ALL_LDFLAGS/s|:=|:= ${RAWLDFLAGS} |g" \
120 + find common/inc/GL -delete || die
121 + find . -type f -name "*\.a" -delete || die
122 +}
123 +
124 +src_compile() {
125 + use examples || return
126 + local myopts verbose="verbose=1"
127 + use debug && myopts+=" dbg=1"
128 + export FAKEROOTKEY=1 # Workaround sandbox issue in #462602
129 + emake \
130 + cuda-install="${EPREFIX}/opt/cuda" \
131 + CUDA_PATH="${EPREFIX}/opt/cuda/" \
132 + MPI_GCC=10 \
133 + ${myopts} ${verbose}
134 +}
135 +
136 +src_test() {
137 + local _dir _subdir
138 +
139 + addwrite /dev/nvidiactl
140 + addwrite /dev/nvidia0
141 +
142 + for _dir in {0..9}*; do
143 + pushd ${_dir} > /dev/null
144 + for _subdir in *; do
145 + emake -C ${_subdir} run
146 + done
147 + popd > /dev/null
148 + done
149 +}
150 +
151 +src_install() {
152 + local i j f t crap=""
153 +
154 + if use doc; then
155 + ebegin "Installing docs ..."
156 + treecopy $(find -type f \( -name readme.txt -o -name "*.pdf" \)) "${ED}"/usr/share/doc/${PF}/
157 + docompress -x $(find "${ED}"/usr/share/doc/${PF}/ -type f -name readme.txt | sed -e "s:${ED}::")
158 + eend
159 + fi
160 +
161 + crap+=" *.txt Samples.htm*"
162 +
163 + ebegin "Cleaning before installation..."
164 + for i in ${crap}; do
165 + if [[ -e ${i} ]]; then
166 + find ${i} -delete || die
167 + fi
168 + done
169 + find -type f \( -name "*.o" -o -name "*.pdf" -o -name "readme.txt" \) -delete || die
170 + eend
171 +
172 + ebegin "Moving files..."
173 + for f in $(find .); do
174 + local t="$(dirname ${f})"
175 + if [[ ${t/obj\/} != ${t} || ${t##*.} == a ]]; then
176 + continue
177 + fi
178 + if [[ ! -d ${f} ]]; then
179 + if [[ -x ${f} ]]; then
180 + exeinto /opt/cuda/sdk/${t}
181 + doexe ${f}
182 + else
183 + insinto /opt/cuda/sdk/${t}
184 + doins ${f}
185 + fi
186 + fi
187 + done
188 + eend
189 +}