aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastien Fabbro <sfabbro@uvic.ca>2012-07-04 11:37:16 -0700
committerSebastien Fabbro <sfabbro@uvic.ca>2012-07-04 11:37:16 -0700
commit70900e1408c00a20c3eeebf012d7b1e29335dccc (patch)
treebdccc240d182f5317bfef23b9e1cdaca02becba7 /dev-util/nvidia-cuda-toolkit
parenta blind attempt to get from a pull-push confusion (diff)
downloadsci-70900e1408c00a20c3eeebf012d7b1e29335dccc.tar.gz
sci-70900e1408c00a20c3eeebf012d7b1e29335dccc.tar.bz2
sci-70900e1408c00a20c3eeebf012d7b1e29335dccc.zip
dev-util/nvidia: rewrote ebuild
Diffstat (limited to 'dev-util/nvidia-cuda-toolkit')
-rw-r--r--dev-util/nvidia-cuda-toolkit/ChangeLog8
-rw-r--r--dev-util/nvidia-cuda-toolkit/metadata.xml13
-rw-r--r--dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.9.ebuild73
-rw-r--r--dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.ebuild117
4 files changed, 87 insertions, 124 deletions
diff --git a/dev-util/nvidia-cuda-toolkit/ChangeLog b/dev-util/nvidia-cuda-toolkit/ChangeLog
index 1ffb9cf65..0a7f12522 100644
--- a/dev-util/nvidia-cuda-toolkit/ChangeLog
+++ b/dev-util/nvidia-cuda-toolkit/ChangeLog
@@ -2,6 +2,14 @@
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/dev-util/nvidia-cuda-toolkit/ChangeLog,v 1.50 2012/02/21 22:44:39 spock Exp $
+*nvidia-cuda-toolkit-4.2.9 (04 Jul 2012)
+
+ 04 Jul 2012; Sébastien Fabbro <bicatali@gentoo.org>
+ -nvidia-cuda-toolkit-4.2.ebuild, +nvidia-cuda-toolkit-4.2.9.ebuild,
+ metadata.xml:
+ Rewrote ebuild. Use system JRE, try to complies with upstream installation,
+ simplified maintenance, add a warning for too new gcc versions
+
04 Jul 2012; Justin Lecher <jlec@gentoo.org> nvidia-cuda-toolkit-4.2.ebuild,
metadata.xml:
This package is prebuilt so we are using QA_PREBUILT for everything
diff --git a/dev-util/nvidia-cuda-toolkit/metadata.xml b/dev-util/nvidia-cuda-toolkit/metadata.xml
index 7bd2e14a5..7631a2c33 100644
--- a/dev-util/nvidia-cuda-toolkit/metadata.xml
+++ b/dev-util/nvidia-cuda-toolkit/metadata.xml
@@ -1,16 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <herd>sci</herd>
- <longdescription lang="en">
+<herd>sci</herd>
+<longdescription lang="en">
The NVIDIA® CUDA® Toolkit provides a development environment for C
and C++ developers building GPU-accelerated applications. The CUDA
Toolkit includes a compiler for NVIDIA GPUs, math libraries, and
tools for debugging and optimizing the performance of applications.
</longdescription>
- <use>
- <flag name="profiler">Installs the NVIDIA CUDA visual profiler</flag>
- <flag name="debugger">Installs the NVIDIA CUDA debugger</flag>
- <flag name="opencl">Installs OpenCL utilities</flag>
- </use>
+<use>
+ <flag name="profiler">Installs the NVIDIA CUDA visual profiler</flag>
+ <flag name="debugger">Installs the NVIDIA CUDA debugger</flag>
+</use>
</pkgmetadata>
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.9.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.9.ebuild
new file mode 100644
index 000000000..56b991032
--- /dev/null
+++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.9.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=4
+
+inherit eutils unpacker versionator toolchain-funcs
+
+DESCRIPTION="NVIDIA CUDA Toolkit"
+HOMEPAGE="http://developer.nvidia.com/cuda"
+
+MYD=$(get_version_component_range 1)_$(get_version_component_range 2)
+DISTRO=ubuntu11.04
+
+CURI="http://developer.download.nvidia.com/compute/cuda/${MYD}/rel/toolkit"
+SRC_URI="
+ amd64? ( ${CURI}/cudatoolkit_${PV}_linux_64_${DISTRO}.run )
+ x86? ( ${CURI}/cudatoolkit_${PV}_linux_32_${DISTRO}.run )"
+
+LICENSE="NVIDIA"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="debugger doc profiler"
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ !<=x11-drivers/nvidia-drivers-270.41
+ debugger? ( sys-libs/libtermcap-compat )
+ profiler? ( >=virtual/jre-1.6 )"
+
+S="${WORKDIR}"
+
+QA_PREBUILT="
+ opt/cuda/*"
+
+src_install() {
+ local cudadir=/opt/cuda
+ local prefix="${EPREFIX}"${cudadir}
+ rm install-linux.pl
+ # use system jre
+ rm -r libnvvp/jre
+ use doc || rm -r doc
+ use debugger || rm -r bin/cuda-gdb extras/Debugger
+ if use profiler; then
+ # hack found in install-linux.pl
+ cat > bin/nvvp <<-EOF
+ #!${EPREFIX}bin/sh
+ LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}:${prefix}/lib:${prefix}/lib64 UBUNTU_MENUPROXY=0 LIBOVERLAY_SCROLLBAR=0 ${prefix}/libnvvp/nvvp
+ EOF
+ chmod a+x bin/nvvp
+ else
+ rm -r extras/CUPTI libnvvp
+ fi
+
+ dodir ${cudadir}
+ mv * "${ED}"${cudadir}
+
+ cat > "${T}"/99cuda <<- EOF
+ PATH=${prefix}/bin:${prefix}/libnvvp
+ ROOTPATH=${prefix}/bin
+ LDPATH=${prefix}/lib$(use amd64 && echo "64:${prefix}/lib")
+ MANPATH=${prefix}/man
+ EOF
+ doenvd "${T}"/99cuda
+}
+
+pkg_postinst() {
+ if [[ $(tc-getCC) == *gcc* ]] && version_is_at_least 4.7 "$(gcc-version)"
+ then
+ ewarn "gcc >= 4.7 will not work with CUDA"
+ ewarn "Make sure you set an earlier version of gcc with gcc-config"
+ fi
+}
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.ebuild
deleted file mode 100644
index e9406c456..000000000
--- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-4.2.ebuild
+++ /dev/null
@@ -1,117 +0,0 @@
-# Copyright 1999-2012 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-EAPI=4
-
-inherit eutils multilib unpacker versionator
-
-DESCRIPTION="NVIDIA CUDA Toolkit"
-HOMEPAGE="http://developer.nvidia.com/cuda"
-
-CUDA_V=${PV//_/-}
-DIR_V=${CUDA_V//./_}
-DIR_V=${DIR_V//beta/Beta}
-
-BASE_URI="http://developer.download.nvidia.com/compute/cuda/${DIR_V}/rel/toolkit"
-SRC_URI="
- amd64? ( ${BASE_URI}/cudatoolkit_${CUDA_V}.9_linux_64_ubuntu11.04.run )
- x86? ( ${BASE_URI}/cudatoolkit_${CUDA_V}.9_linux_32_ubuntu11.04.run )"
-
-LICENSE="NVIDIA"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="debugger doc profiler"
-
-DEPEND=""
-RDEPEND="${DEPEND}
- >=sys-devel/binutils-2.20
- >=sys-devel/gcc-4.5
- debugger? ( >=sys-libs/libtermcap-compat-2.0.8-r2 )
- !<=x11-drivers/nvidia-drivers-270.41"
-
-S="${WORKDIR}"
-
-QA_PREBUILT="
- opt/cuda/*"
-
-src_install() {
- local cudadir=/opt/cuda
-
- into ${cudadir}
- dobin bin/* nvvm/*
- # use explicit lib64 because of amd64-linux prefix which uses lib
- use amd64 && dolib lib64/*
- use x86 && dolib lib/*
-
- if ! use debugger; then
- rm -f "${ED}"/${cudadir}/bin/cuda-gdb
- else
- insinto ${cudadir}/extras
- doins -r extras/Debugger
- fi
-
- if use profiler; then
- # TODO: Use system JRE for the profiler?
- insinto ${cudadir}
- doins -r libnvvp
- fperms a+x \
- ${cudadir}/libnvvp/nvvp \
- ${cudadir}/libnvvp/jre/bin/* \
- ${cudadir}/libnvvp/*.so
-
- cat > "${T}"/nvv <<- EOF
- #!/bin/sh
- LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}:${EPREFIX}${cudadir}/lib:${EPREFIX}${cudadir}/lib64 "${EPREFIX}"${cudadir}/libnvvp/nvvp
- EOF
- dobin "${T}"/nvv
- insinto ${cudadir}/extras
- doins -r extras/CUPTI
- fi
-
- chmod a-x "${ED}"/${cudadir}/bin/{nvcc.profile,ci_include.h}
-
- # TODO: Manuals are missing from this release. Remove the following
- # commented-out lines if they are not restored in the next releases.
- # doman does not respect cudadirTREE
- #insinto ${cudadir}/man/man1
- #doins man/man1/*
- #insinto ${cudadir}/man/man3
- #doins man/man3/*
- #prepman ${cudadir}
-
- insinto ${cudadir}/include
- doins -r include/*
-
- insinto ${cudadir}/src
- doins src/*
-
- if use doc; then
- insinto ${cudadir}/doc
- doins -r doc/*
- fi
-
- cat > "${T}"/99cuda <<- EOF
- PATH=${EPREFIX}${cudadir}/bin:${EPREFIX}${cudadir}/libnvvp
- ROOTPATH=${EPREFIX}${cudadir}/bin
- LDPATH=${EPREFIX}${cudadir}/$(get_libdir)
- MANPATH=${EPREFIX}${cudadir}/man
- EOF
- doenvd "${T}"/99cuda
-
- export CONF_LIBDIR_OVERRIDE="lib"
- # HACK: temporary workaround until CONF_LIBDIR_OVERRIDE is respected.
- export LIBDIR_amd64="lib"
-
- into ${cudadir}/open64
- dobin open64/bin/*
- libopts -m0755
- dolib open64/lib/*
-}
-
-pkg_postinst() {
- elog "If you want to natively run the code generated by this version of the"
- elog "CUDA toolkit, you will need >=x11-drivers/nvidia-drivers-260.19.21."
- elog ""
- elog "Run 'env-update && . ${EROOT}etc/profile' before using the CUDA toolkit. "
-}