commit:     8341f9088a14e1d65b20a59c6386ba2e46675f22
Author:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
AuthorDate: Fri Sep 25 02:28:12 2020 +0000
Commit:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
CommitDate: Fri Sep 25 02:28:22 2020 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=8341f908

sci-libs/arrayfire: version bump to 3.7.2

Package-Manager: Portage-3.0.8, Repoman-3.0.1
Signed-off-by: Aisha Tammy <gentoo <AT> aisha.cc>

 sci-libs/arrayfire/arrayfire-3.7.2.ebuild | 98 +++++++++++++++++++++++++++++++
 sci-libs/arrayfire/metadata.xml           | 40 +++++--------
 2 files changed, 112 insertions(+), 26 deletions(-)

diff --git a/sci-libs/arrayfire/arrayfire-3.7.2.ebuild 
b/sci-libs/arrayfire/arrayfire-3.7.2.ebuild
new file mode 100644
index 000000000..2cc60ed29
--- /dev/null
+++ b/sci-libs/arrayfire/arrayfire-3.7.2.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake multilib
+CMAKE_BUILD_TYPE=Release
+
+DESCRIPTION="general purpose GPU library"
+HOMEPAGE="https://www.arrayfire.com/";
+SRC_URI="https://github.com/arrayfire/arrayfire/releases/download/v${PV}/${PN}-full-${PV}.tar.bz2
 -> ${P}.tar.bz2"
+S="${WORKDIR}"/${PN}-full-${PV}
+BUILD_DIR="${S}/build"
+
+KEYWORDS="~amd64"
+
+LICENSE="BSD nonfree? ( OpenSIFT )"
+SLOT="0"
+IUSE="examples +cache cuda doc mkl nonfree opencl test +trace"
+RESTRICT="bindist mirror !test? ( test )"
+
+RDEPEND="
+       media-libs/freeimage
+       media-libs/glbinding
+       >=media-libs/glfw-3.1
+       ~sci-visualization/forge-1.0.5
+       virtual/blas
+       virtual/cblas
+       virtual/lapacke
+       sci-libs/fftw:3.0
+       cuda? (
+               >=dev-util/nvidia-cuda-toolkit-9.0.0
+               dev-libs/boost
+       )
+       opencl? (
+               >=dev-libs/boost-1.70.0
+               >=sci-libs/clblas-2.4
+               >=sci-libs/clfft-2.6.1
+               virtual/opencl
+       )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       doc? ( app-doc/doxygen )
+       virtual/pkgconfig
+"
+
+# We need write acccess /dev/nvidiactl, /dev/nvidia0 and /dev/nvidia-uvm and 
the portage
+# user is (usually) not in the video group
+RESTRICT="userpriv"
+
+src_unpack() {
+       default
+
+       if ! use nonfree; then
+               find "${WORKDIR}" -name "*_nonfree*" -delete || die
+       fi
+}
+
+src_configure() {
+       if use cuda; then
+               addwrite /dev/nvidiactl
+               addwrite /dev/nvidia0
+               addwrite /dev/nvidia-uvm
+       fi
+
+       # forge headers are needed, so submodule
+       # has to stay, hence a ~ on forge dependency
+       local mycmakeargs=(
+               -DAF_BUILD_CPU=ON
+               -DAF_BUILD_CUDA="$(usex cuda)"
+               -DAF_BUILD_OPENCL="$(usex opencl)"
+               -DAF_BUILD_UNIFIED=ON
+               -DAF_BUILD_DOCS="$(usex doc)"
+               -DAF_BUILD_EXAMPLES="$(usex examples)"
+               -DAF_WITH_CUDNN="$(usex cuda)"
+               -DAF_BUILD_FORGE=OFF
+               -DAF_WITH_NONFREE="$(usex nonfree)"
+               -DAF_WITH_LOGGING=ON
+               -DAF_WITH_STACKTRACE="$(usex trace)"
+               -DAF_CACHE_KERNELS_TO_DISK="$(usex cache)"
+               -DAF_WITH_STATIC_MKL="$(usex mkl)"
+               -DAF_INSTALL_STANDALONE=OFF
+               -DAF_WITH_STATIC_FREEIMAGE=OFF
+               -DAF_INSTALL_CMAKE_DIR=/usr/$(get_libdir)/cmake/ArrayFire
+       )
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+
+       dodoc -r "${ED}"/usr/LICENSES
+       rm -r "${ED}"/usr/LICENSES || die
+
+       dodir /usr/bin
+       dobin "${BUILD_DIR}"/bin2cpp
+}

diff --git a/sci-libs/arrayfire/metadata.xml b/sci-libs/arrayfire/metadata.xml
index 9048a1aeb..a45aaf1e4 100644
--- a/sci-libs/arrayfire/metadata.xml
+++ b/sci-libs/arrayfire/metadata.xml
@@ -2,39 +2,27 @@
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
        <maintainer type="person">
-               <email>[email protected]</email>
-               <name>Marius Brehler</name>
+               <email>[email protected]</email>
+               <name>Aisha Tammy</name>
        </maintainer>
        <maintainer type="project">
                <email>[email protected]</email>
                <name>Gentoo Science Project</name>
        </maintainer>
        <longdescription>
-ArrayFire is a high performance software library for parallel
-computing with an easy-to-use API. Its array based function set
-makes parallel programming simple. ArrayFire's multiple backends
-(CUDA, OpenCL and native CPU) make it platform independent and
-highly portable.
-</longdescription>
+               ArrayFire is a high performance software library for parallel
+               computing with an easy-to-use API. Its array based function set
+               makes parallel programming simple. ArrayFire's multiple backends
+               (CUDA, OpenCL and native CPU) make it platform independent and
+               highly portable.
+       </longdescription>
        <use>
-               <flag name="cpu">
-Build CPU backend.
-</flag>
-               <flag name="cuda">
-Build CUDA backend.
-</flag>
-               <flag name="opencl">
-Build OpenCL backend.
-</flag>
-               <flag name="nonfree">
-Build ArrayFire nonfree algorithms.
-</flag>
-               <flag name="graphics">
-Build with Forge graphics.
-</flag>
-               <flag name="unified">
-Build Backend-Independent API.
-</flag>
+               <flag name="cache">cache kernals to disk.</flag>
+               <flag name="cuda">Build CUDA backend.</flag>
+               <flag name="mkl">Build against static MKL.</flag>
+               <flag name="nonfree">build.</flag>
+               <flag name="opencl">build OpenCL backend.</flag>
+               <flag name="trace">enable additional traces during 
logging.</flag>
        </use>
        <upstream>
                <remote-id type="github">google/googletest</remote-id>

Reply via email to