summaryrefslogtreecommitdiff
blob: 9eb89fce5aaae61fa8627b4a991b87b5440db392 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit cmake cuda

DESCRIPTION="An auto-parallelizing library to speed up computer simulations"
HOMEPAGE="http://www.libgeodecomp.org"
SRC_URI="http://www.libgeodecomp.org/archive/${P}.tar.bz2"

SLOT="0"
LICENSE="Boost-1.0"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="cuda doc hpx mpi opencl opencv silo"

BDEPEND="
	doc? (
		app-doc/doxygen
		app-text/texlive
		media-gfx/graphviz
		)"
RDEPEND=">=dev-libs/boost-1.48"
DEPEND="${RDEPEND}
	hpx? ( sys-cluster/hpx )
	<=dev-libs/libflatarray-0.2.0
	mpi? ( virtual/mpi )
	cuda? ( dev-util/nvidia-cuda-toolkit )
	opencl? ( virtual/opencl )
	opencv? ( media-libs/opencv )
	silo? ( sci-libs/silo )"

S="${WORKDIR}/${P}"
PATCHES=(
	"${FILESDIR}/${P}-scotch.patch"
	"${FILESDIR}/${P}-libdir.patch"
	"${FILESDIR}/${P}-lfa.patch"
)

src_prepare() {
	cmake_src_prepare
	use cuda && cuda_src_prepare
}

src_configure() {
	local mycmakeargs=(
		-DWITH_MPI=$(usex mpi)
		-DWITH_CUDA=$(usex cuda)
		-DWITH_OPENCL=$(usex opencl)
		-DWITH_OPENCV=$(usex opencv)
		-DWITH_SILO=$(usex silo)
		-DWITH_SCOTCH=false
		-DWITH_HPX=$(usex hpx)
		-DWITH_VISIT=false
		-DWITH_TYPEMAPS=false
	)
	cmake_src_configure
}

src_compile() {
	cmake_src_compile
	use doc && cmake_build doc
}

src_install() {
	DOCS=( README )
	use doc && HTML_DOCS=( doc/html/* )
	cmake_src_install
}

src_test() {
	cmake_build check
}