diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 21:03:06 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 21:03:06 +0100 |
commit | 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch) | |
tree | 7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-python/pycuda | |
parent | 30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff) |
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-python/pycuda')
-rw-r--r-- | dev-python/pycuda/Manifest | 12 | ||||
-rw-r--r-- | dev-python/pycuda/metadata.xml | 11 | ||||
-rw-r--r-- | dev-python/pycuda/pycuda-2012.1.ebuild | 87 | ||||
-rw-r--r-- | dev-python/pycuda/pycuda-2013.1.1.ebuild | 87 | ||||
-rw-r--r-- | dev-python/pycuda/pycuda-2014.1.ebuild | 87 | ||||
-rw-r--r-- | dev-python/pycuda/pycuda-2016.1.2.ebuild | 84 | ||||
-rw-r--r-- | dev-python/pycuda/pycuda-2017.1.ebuild | 82 | ||||
-rw-r--r-- | dev-python/pycuda/pycuda-9999.ebuild | 88 |
8 files changed, 538 insertions, 0 deletions
diff --git a/dev-python/pycuda/Manifest b/dev-python/pycuda/Manifest new file mode 100644 index 000000000000..349c83b87930 --- /dev/null +++ b/dev-python/pycuda/Manifest @@ -0,0 +1,12 @@ +DIST pycuda-2012.1.tar.gz 1473695 BLAKE2B c50dbc4b7b506f6bdee071d74b1c1617775da3a6904378ed5cdee3d56ea12803bcf5fedf4c8187520217b58e9a2ccb76fd559fa9365f3a44e6e88b6a1d6ea9b9 SHA512 bb8889fa46de3d4ae57fb47883232953eba0e12a53431fffdefb12af3134540aec2671f0f2fbbe1d836dab354d407e078e773e84f8ee9a5345400a4a59da7937 +DIST pycuda-2013.1.1.tar.gz 1586425 BLAKE2B 2d566de0bf5ee5d231f8f7089bd2921f6790653d9e0f142a951f545d84814963031506577c46fd466dc7d58bca451dc8b03134f5ab40e04d0ed5f74334d4235f SHA512 7a7e95fcd4f76d10234558021064cc299e6d93ab9a428c9560e5a8a73b13304ba9ccc3c103674a25effdc01a14aac21981a62de881a9c990ad16d7689b75e502 +DIST pycuda-2014.1.tar.gz 1588986 BLAKE2B 70baa81e8d1b77bcab73eeccf4d38dbe7cea1a8dcd73da4363eaecb87b68eb72b5c96733637eb5082ae81bff2aa264427c1415b9660df5cd95693d1eedc6250a SHA512 57e333941c472feea6974e583f9d27f7f5083011bd8a7cc0bc31d27032885a130f1f57a16b0730696c607b9dca32ad84b96c984cd82351800ec854acdfa8fe9f +DIST pycuda-2016.1.2.tar.gz 1603373 BLAKE2B 35a5972cd4280cace9375314635131b4e8f0f397f0a3f799fd537c13fc2190ee183ab3b2248487f0c79a15a06031776b9c3bbff9ce2545090590d004ff97f0a4 SHA512 7a1a9d6723651bdc6f584de884c46bbaa17970e622b4d800c7f36ff57817807a51c7e4aa0a40872e46fc1243087af6dda07489bb60b6a33f52740a4d7a9e69a7 +DIST pycuda-2017.1.tar.gz 1608187 BLAKE2B 483bfd8e2da6d1c2dee9f1b5512e3f8120b29aa87d5fab49d7b1b738e9949aba14f87b102c5ff04cd2f2061c6c64c5036fdea71129e35505cce00ce76b6943aa SHA512 ce3de28de613352bec4efb86ffaa055f92ccd0c758b903aecc60af5b84f0f0643d04a869d6a23ce329c3d33670cfb266ad69c784ba917a190a11bdfea1fe6690 +EBUILD pycuda-2012.1.ebuild 2368 BLAKE2B 6f46d40b6cd9c3b8e4c95eaf4e512c0afa9e7a74af66d928b25ebf4fe4ce20d3cc47c8726729da32e887bfc0cc4825123399600c7bfc3a2375fb83a71255f947 SHA512 2ac7e75e34cb6d4f9b15195afe499676af6dbb04aea63f88d8d62f3cab250247ec252a24bcb59d5b10fa04c700d97f0f19b7edc3aef28ab7d33355a321d93f59 +EBUILD pycuda-2013.1.1.ebuild 2366 BLAKE2B b199685e82e06c7e8bc90b45a365ac7947f80ad686c88f960d17c71b9a98885ccdc5c1e40c17d335fc0974d077134e44431d71e1fdec67257bfc53d6c62e4e5c SHA512 c8d49d6cc2e988a15ba5868f38c244e636c2ec21a0f0e3249067780602b3c4bf9a006ec41b1f516739ff4e0ea1c02cf2a598b4ee5189ec86ab7957bedb9b77f6 +EBUILD pycuda-2014.1.ebuild 2403 BLAKE2B 80bd52ac38b25ec40cadbb2977b7b08ced07fd35cf89fedc6dc3738d6dc5f299babd518e15e517a06ba77241ec0a10500b62dbf93d256264f2e94551bf4052a3 SHA512 4f51e33de8ec2d16acf85f2642f37963962046bd5b155f989c6fa614294f1c97a04861c925ff331524e98da953c8bc1c9d459d3dd51a05d52bbd37c8ff313731 +EBUILD pycuda-2016.1.2.ebuild 2317 BLAKE2B 9aa5f89746570bb4b23fb37486cfe885210e872f6e27ad5dcf5f8dc729244b8bbe8638e0561769c31cb3335e08f23f31ee1be695df09255af87f4576141b52f8 SHA512 e6fc762525a864ddef50bafcc9f8d82d066c51a53d14743bfbcf421031871c1bb87fbd959fc4d5bb888f740a82e4c8b3f2ee87547416f2d8a9e4ae8e204a3e81 +EBUILD pycuda-2017.1.ebuild 2328 BLAKE2B 04b2ff89246ccaef86143db74f337b6fbcb77e51d6ec7b54aa6f7976186b4100010561460027f2ff7625b701421a2b17566d6b532877597019fc640f068156f7 SHA512 4a66b1fcd0546b46b5b92a6b4b68f089a5420e3abe12ac52a67df4768e0ee76515cc6f696f2f1de0934d578065181d24c0ff016fac77e01bbfcc0677078963c2 +EBUILD pycuda-9999.ebuild 2392 BLAKE2B b0fe54752d25c71d38c286c7933d3d0be2865de65cd00d1dafdc1a8a105f3d77cb853a3cd9e4fbf22ead6270a0d401b0cfef0937ae3377ca70d08ce0cdf8ee88 SHA512 23445c9ac98a6a37e1a5f2c24dd80a2c80d50ba37e56aab7b157bb392efcef08efaa563545c9cdecd885f52ec38e4031a8ff782028e2e86cbf1382aa574ab19f +MISC metadata.xml 332 BLAKE2B f880a8d2cdbe4271dc2f1e91c32419420b22e00c0d358832614aa970e95d979b10661953b35dda0b30a23d36b995364464ebd3bb1a862a34f33e7a84fa9b8e84 SHA512 2a2ba5f70d55593801948a9143fce5ddb2922da30fc7c1ea3ec21ccbb391a09fc34be961e9dbccb53d6575aa347878d105526d85bb7cc3f2f561f1793f0eee5c diff --git a/dev-python/pycuda/metadata.xml b/dev-python/pycuda/metadata.xml new file mode 100644 index 000000000000..392ea93829c7 --- /dev/null +++ b/dev-python/pycuda/metadata.xml @@ -0,0 +1,11 @@ +<?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> + <upstream> + <remote-id type="pypi">pycuda</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-python/pycuda/pycuda-2012.1.ebuild b/dev-python/pycuda/pycuda-2012.1.ebuild new file mode 100644 index 000000000000..a2b3ca5a8819 --- /dev/null +++ b/dev-python/pycuda/pycuda-2012.1.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) + +inherit cuda distutils-r1 multilib + +DESCRIPTION="Python wrapper for NVIDIA CUDA" +HOMEPAGE="https://mathema.tician.de/software/pycuda/ https://pypi.org/project/pycuda/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples opengl test" + +RDEPEND=" + dev-libs/boost[python,${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pytools-2011.2[${PYTHON_USEDEP}] + dev-util/nvidia-cuda-toolkit + x11-drivers/nvidia-drivers + opengl? ( virtual/opengl )" +DEPEND="${RDEPEND} + test? ( + dev-python/mako[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] )" + +# We need write acccess /dev/nvidia0 and /dev/nvidiactl and the portage +# user is (usually) not in the video group +RESTRICT="userpriv" + +python_prepare_all() { + cuda_sanitize + sed \ + -e "s:'--preprocess':\'--preprocess\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:\"--cubin\":\'--cubin\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:/usr/include/pycuda:${S}/src/cuda:g" \ + -i pycuda/compiler.py || die + + touch siteconf.py || die + + distutils-r1_python_prepare_all +} + +python_configure() { + local myopts=() + use opengl && myopts+=( --cuda-enable-gl ) + + mkdir "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + [[ -e ./siteconf.py ]] && rm -f ./siteconf.py + "${EPYTHON}" "${S}"/configure.py \ + --boost-inc-dir="${EPREFIX}/usr/include" \ + --boost-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --boost-python-libname=boost_python-$(echo ${EPYTHON} | sed 's/python//')-mt \ + --boost-thread-libname=boost_thread-mt \ + --cuda-root="${EPREFIX}/opt/cuda" \ + --cudadrv-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --cudart-lib-dir="${EPREFIX}/opt/cuda/$(get_libdir)" \ + --cuda-inc-dir="${EPREFIX}/opt/cuda/include" \ + --no-use-shipped-boost \ + "${myopts[@]}" +} + +src_test() { + # we need write access to this to run the tests + addwrite /dev/nvidia0 + addwrite /dev/nvidiactl + python_test() { + py.test --debug -v -v -v || die "Tests fail with ${EPYTHON}" + } + distutils-r1_src_test +} + +python_install_all() { + distutils-r1_python_install_all + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/dev-python/pycuda/pycuda-2013.1.1.ebuild b/dev-python/pycuda/pycuda-2013.1.1.ebuild new file mode 100644 index 000000000000..64034046183c --- /dev/null +++ b/dev-python/pycuda/pycuda-2013.1.1.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +PYTHON_COMPAT=( python2_7 ) + +inherit cuda distutils-r1 multilib + +DESCRIPTION="Python wrapper for NVIDIA CUDA" +HOMEPAGE="https://mathema.tician.de/software/pycuda/ https://pypi.org/project/pycuda/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples opengl test" + +RDEPEND=" + dev-libs/boost[python,${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pytools-2013[${PYTHON_USEDEP}] + dev-util/nvidia-cuda-toolkit + x11-drivers/nvidia-drivers + opengl? ( virtual/opengl )" +DEPEND="${RDEPEND} + test? ( + dev-python/mako[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] )" + +# We need write acccess /dev/nvidia0 and /dev/nvidiactl and the portage +# user is (usually) not in the video group +RESTRICT="userpriv" + +python_prepare_all() { + cuda_sanitize + sed \ + -e "s:'--preprocess':\'--preprocess\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:\"--cubin\":\'--cubin\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:/usr/include/pycuda:${S}/src/cuda:g" \ + -i pycuda/compiler.py || die + + touch siteconf.py || die + + distutils-r1_python_prepare_all +} + +python_configure() { + local myopts=() + use opengl && myopts+=( --cuda-enable-gl ) + + mkdir "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + [[ -e ./siteconf.py ]] && rm -f ./siteconf.py + "${EPYTHON}" "${S}"/configure.py \ + --boost-inc-dir="${EPREFIX}/usr/include" \ + --boost-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --boost-python-libname=boost_python-$(echo ${EPYTHON} | sed 's/python//')-mt \ + --boost-thread-libname=boost_thread-mt \ + --cuda-root="${EPREFIX}/opt/cuda" \ + --cudadrv-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --cudart-lib-dir="${EPREFIX}/opt/cuda/$(get_libdir)" \ + --cuda-inc-dir="${EPREFIX}/opt/cuda/include" \ + --no-use-shipped-boost \ + "${myopts[@]}" +} + +src_test() { + # we need write access to this to run the tests + addwrite /dev/nvidia0 + addwrite /dev/nvidiactl + python_test() { + py.test --debug -v -v -v || die "Tests fail with ${EPYTHON}" + } + distutils-r1_src_test +} + +python_install_all() { + distutils-r1_python_install_all + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/dev-python/pycuda/pycuda-2014.1.ebuild b/dev-python/pycuda/pycuda-2014.1.ebuild new file mode 100644 index 000000000000..e7553c70a176 --- /dev/null +++ b/dev-python/pycuda/pycuda-2014.1.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +PYTHON_COMPAT=( python2_7 python3_4 ) + +inherit cuda distutils-r1 multilib + +DESCRIPTION="Python wrapper for NVIDIA CUDA" +HOMEPAGE="https://mathema.tician.de/software/pycuda/ https://pypi.org/project/pycuda/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples opengl test" + +RDEPEND=" + dev-libs/boost[python,${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pytools-2013[${PYTHON_USEDEP}] + dev-util/nvidia-cuda-toolkit + x11-drivers/nvidia-drivers + opengl? ( virtual/opengl )" +DEPEND="${RDEPEND} + test? ( + dev-python/mako[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] )" + +# We need write acccess /dev/nvidia0 and /dev/nvidiactl and the portage +# user is (usually) not in the video group +RESTRICT="userpriv" + +python_prepare_all() { + cuda_sanitize + sed \ + -e "s:'--preprocess':\'--preprocess\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:\"--cubin\":\'--cubin\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:/usr/include/pycuda:${S}/src/cuda:g" \ + -i pycuda/compiler.py || die + + touch siteconf.py || die + + distutils-r1_python_prepare_all +} + +python_configure() { + local myopts=() + use opengl && myopts+=( --cuda-enable-gl ) + + [[ -d "${BUILD_DIR}" ]] || mkdir "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + [[ -e ./siteconf.py ]] && rm -f ./siteconf.py + "${EPYTHON}" "${S}"/configure.py \ + --boost-inc-dir="${EPREFIX}/usr/include" \ + --boost-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --boost-python-libname=boost_python-$(echo ${EPYTHON} | sed 's/python//')-mt \ + --boost-thread-libname=boost_thread-mt \ + --cuda-root="${EPREFIX}/opt/cuda" \ + --cudadrv-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --cudart-lib-dir="${EPREFIX}/opt/cuda/$(get_libdir)" \ + --cuda-inc-dir="${EPREFIX}/opt/cuda/include" \ + --no-use-shipped-boost \ + "${myopts[@]}" +} + +src_test() { + # we need write access to this to run the tests + addwrite /dev/nvidia0 + addwrite /dev/nvidiactl + python_test() { + py.test --debug -v -v -v || die "Tests fail with ${EPYTHON}" + } + distutils-r1_src_test +} + +python_install_all() { + distutils-r1_python_install_all + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/dev-python/pycuda/pycuda-2016.1.2.ebuild b/dev-python/pycuda/pycuda-2016.1.2.ebuild new file mode 100644 index 000000000000..07cc2b626f8e --- /dev/null +++ b/dev-python/pycuda/pycuda-2016.1.2.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_{4,5} ) + +inherit cuda distutils-r1 + +DESCRIPTION="Python wrapper for NVIDIA CUDA" +HOMEPAGE="https://mathema.tician.de/software/pycuda/ https://pypi.org/project/pycuda/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" +IUSE="examples opengl test" + +RDEPEND=" + dev-libs/boost:=[python,${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pytools-2013[${PYTHON_USEDEP}] + dev-util/nvidia-cuda-toolkit + x11-drivers/nvidia-drivers + opengl? ( virtual/opengl )" +DEPEND="${RDEPEND} + test? ( + dev-python/mako[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] )" + +# We need write acccess /dev/nvidia0 and /dev/nvidiactl and the portage +# user is (usually) not in the video group +RESTRICT="userpriv" + +python_prepare_all() { + cuda_sanitize + sed \ + -e "s:'--preprocess':\'--preprocess\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:\"--cubin\":\'--cubin\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:/usr/include/pycuda:${S}/src/cuda:g" \ + -i pycuda/compiler.py || die + + touch siteconf.py || die + + distutils-r1_python_prepare_all +} + +python_configure() { + mkdir -p "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + rm -f ./siteconf.py || die + "${EPYTHON}" "${S}"/configure.py \ + --boost-inc-dir="${EPREFIX}/usr/include" \ + --boost-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --boost-python-libname=boost_python-$(echo ${EPYTHON} | sed 's/python//')-mt \ + --boost-thread-libname=boost_thread-mt \ + --cuda-root="${EPREFIX}/opt/cuda" \ + --cudadrv-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --cudart-lib-dir="${EPREFIX}/opt/cuda/$(get_libdir)" \ + --cuda-inc-dir="${EPREFIX}/opt/cuda/include" \ + --no-use-shipped-boost \ + $(usex opengl --cuda-enable-gl "") || die +} + +src_test() { + # we need write access to this to run the tests + addwrite /dev/nvidia0 + addwrite /dev/nvidiactl + python_test() { + py.test --debug -v -v -v || die "Tests fail with ${EPYTHON}" + } + distutils-r1_src_test +} + +python_install_all() { + distutils-r1_python_install_all + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/dev-python/pycuda/pycuda-2017.1.ebuild b/dev-python/pycuda/pycuda-2017.1.ebuild new file mode 100644 index 000000000000..5ff90c3a1405 --- /dev/null +++ b/dev-python/pycuda/pycuda-2017.1.ebuild @@ -0,0 +1,82 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_{4,5,6} ) + +inherit cuda distutils-r1 + +DESCRIPTION="Python wrapper for NVIDIA CUDA" +HOMEPAGE="https://mathema.tician.de/software/pycuda/ https://pypi.org/project/pycuda/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64" +IUSE="examples opengl test" + +RDEPEND=" + dev-libs/boost:=[python,${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pytools-2013[${PYTHON_USEDEP}] + dev-util/nvidia-cuda-toolkit + x11-drivers/nvidia-drivers + opengl? ( virtual/opengl )" +DEPEND="${RDEPEND} + test? ( + dev-python/mako[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] )" + +# We need write acccess /dev/nvidia0 and /dev/nvidiactl and the portage +# user is (usually) not in the video group +RESTRICT="userpriv" + +python_prepare_all() { + cuda_sanitize + sed -e "s:'--preprocess':\'--preprocess\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:\"--cubin\":\'--cubin\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:/usr/include/pycuda:${S}/src/cuda:g" \ + -i pycuda/compiler.py || die + + touch siteconf.py || die + distutils-r1_python_prepare_all +} + +python_configure() { + mkdir -p "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + rm -f ./siteconf.py || die + "${EPYTHON}" "${S}"/configure.py \ + --boost-inc-dir="${EPREFIX}/usr/include" \ + --boost-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --boost-python-libname=boost_python-$(echo ${EPYTHON} | sed 's/python//')-mt \ + --boost-thread-libname=boost_thread-mt \ + --cuda-root="${EPREFIX}/opt/cuda" \ + --cudadrv-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --cudart-lib-dir="${EPREFIX}/opt/cuda/$(get_libdir)" \ + --cuda-inc-dir="${EPREFIX}/opt/cuda/include" \ + --no-use-shipped-boost \ + $(usex opengl --cuda-enable-gl "") || die +} + +src_test() { + # we need write access to this to run the tests + addwrite /dev/nvidia0 + addwrite /dev/nvidiactl + python_test() { + py.test --debug -v -v -v || die "Tests fail with ${EPYTHON}" + } + distutils-r1_src_test +} + +python_install_all() { + distutils-r1_python_install_all + if use examples; then + dodoc -r examples + docompress -x /usr/share/doc/${PF}/examples + + fi +} diff --git a/dev-python/pycuda/pycuda-9999.ebuild b/dev-python/pycuda/pycuda-9999.ebuild new file mode 100644 index 000000000000..31df60658541 --- /dev/null +++ b/dev-python/pycuda/pycuda-9999.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +PYTHON_COMPAT=( python2_7 python3_{4,5,6} ) + +inherit cuda distutils-r1 git-r3 multilib + +DESCRIPTION="Python wrapper for NVIDIA CUDA" +HOMEPAGE="https://mathema.tician.de/software/pycuda/ https://pypi.org/project/pycuda/" +SRC_URI="" +EGIT_REPO_URI="https://git.tiker.net/trees/pycuda.git" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="" +IUSE="examples opengl test" + +RDEPEND=" + dev-libs/boost[python,${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + >=dev-python/pytools-2013[${PYTHON_USEDEP}] + dev-util/nvidia-cuda-toolkit + x11-drivers/nvidia-drivers + opengl? ( virtual/opengl )" +DEPEND="${RDEPEND} + test? ( + dev-python/mako[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] )" + +# We need write acccess /dev/nvidia0 and /dev/nvidiactl and the portage +# user is (usually) not in the video group +RESTRICT="userpriv" + +python_prepare_all() { + cuda_sanitize + sed \ + -e "s:'--preprocess':\'--preprocess\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:\"--cubin\":\'--cubin\', \'--compiler-bindir=$(cuda_gccdir)\':g" \ + -e "s:/usr/include/pycuda:${S}/src/cuda:g" \ + -i pycuda/compiler.py || die + + touch siteconf.py || die + + distutils-r1_python_prepare_all +} + +python_configure() { + local myopts=() + use opengl && myopts+=( --cuda-enable-gl ) + + mkdir "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + [[ -e ./siteconf.py ]] && rm -f ./siteconf.py + "${EPYTHON}" "${S}"/configure.py \ + --boost-inc-dir="${EPREFIX}/usr/include" \ + --boost-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --boost-python-libname=boost_python-$(echo ${EPYTHON} | sed 's/python//')-mt \ + --boost-thread-libname=boost_thread-mt \ + --cuda-root="${EPREFIX}/opt/cuda" \ + --cudadrv-lib-dir="${EPREFIX}/usr/$(get_libdir)" \ + --cudart-lib-dir="${EPREFIX}/opt/cuda/$(get_libdir)" \ + --cuda-inc-dir="${EPREFIX}/opt/cuda/include" \ + --no-use-shipped-boost \ + "${myopts[@]}" +} + +src_test() { + # we need write access to this to run the tests + addwrite /dev/nvidia0 + addwrite /dev/nvidiactl + python_test() { + py.test --debug -v -v -v || die "Tests fail with ${EPYTHON}" + } + distutils-r1_src_test +} + +python_install_all() { + distutils-r1_python_install_all + + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} |