1 |
commit: 381a10c047f0c412cf53b187da7517c6aa415306 |
2 |
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
3 |
AuthorDate: Fri Jun 24 23:43:44 2022 +0000 |
4 |
Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
5 |
CommitDate: Sun Jun 26 02:29:45 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=381a10c0 |
7 |
|
8 |
sci-libs/STRUMPACK: various fixes |
9 |
|
10 |
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com> |
11 |
|
12 |
...PACK-6.3.1.ebuild => STRUMPACK-6.3.1-r1.ebuild} | 38 +++++++++++++++++----- |
13 |
sci-libs/STRUMPACK/metadata.xml | 2 +- |
14 |
2 files changed, 30 insertions(+), 10 deletions(-) |
15 |
|
16 |
diff --git a/sci-libs/STRUMPACK/STRUMPACK-6.3.1.ebuild b/sci-libs/STRUMPACK/STRUMPACK-6.3.1-r1.ebuild |
17 |
similarity index 58% |
18 |
rename from sci-libs/STRUMPACK/STRUMPACK-6.3.1.ebuild |
19 |
rename to sci-libs/STRUMPACK/STRUMPACK-6.3.1-r1.ebuild |
20 |
index 4039698f3..742f7fc41 100644 |
21 |
--- a/sci-libs/STRUMPACK/STRUMPACK-6.3.1.ebuild |
22 |
+++ b/sci-libs/STRUMPACK/STRUMPACK-6.3.1-r1.ebuild |
23 |
@@ -3,7 +3,7 @@ |
24 |
|
25 |
EAPI=8 |
26 |
|
27 |
-inherit cmake fortran-2 |
28 |
+inherit cmake flag-o-matic fortran-2 |
29 |
|
30 |
DESCRIPTION="Structured Matrix Package (LBNL)" |
31 |
HOMEPAGE="https://github.com/pghysels/STRUMPACK" |
32 |
@@ -12,19 +12,24 @@ SRC_URI="https://github.com/pghysels/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${ |
33 |
KEYWORDS="~amd64" |
34 |
LICENSE="BSD" |
35 |
SLOT="0" |
36 |
-IUSE="+butterflypack combblas count-flops +hip message-counters metis +mpi +openmp +scotch papi task-timers +zfp" # +cuda +slate +ptscotch +magma matlab |
37 |
+IUSE="+butterflypack combblas count-flops +hip message-counter metis +mpi +openmp +scotch papi task-timers +zfp" # +cuda +slate +ptscotch +magma matlab |
38 |
|
39 |
RDEPEND=" |
40 |
- butterflypack? ( sci-libs/ButterflyPACK ) |
41 |
+ butterflypack? ( sci-libs/ButterflyPACK ) |
42 |
+ combblas? ( sci-libs/CombBLAS ) |
43 |
hip? ( |
44 |
- sci-libs/hipBLAS |
45 |
- sci-libs/rocBLAS |
46 |
- sci-libs/rocSOLVER |
47 |
+ dev-util/hip:= |
48 |
+ sci-libs/hipBLAS:= |
49 |
+ sci-libs/rocBLAS:= |
50 |
+ sci-libs/rocSOLVER:= |
51 |
) |
52 |
metis? ( sci-libs/parmetis ) |
53 |
- mpi? ( virtual/mpi ) |
54 |
+ mpi? ( |
55 |
+ sci-libs/scalapack |
56 |
+ virtual/mpi |
57 |
+ ) |
58 |
papi? ( dev-libs/papi ) |
59 |
- scotch? ( sci-libs/scotch ) |
60 |
+ scotch? ( sci-libs/scotch:= ) |
61 |
zfp? ( dev-libs/zfp ) |
62 |
|
63 |
sci-libs/metis |
64 |
@@ -45,14 +50,24 @@ REQUIRED_USE=" |
65 |
# magma? ( cuda ) |
66 |
DOCS=( README.md CHANGELOG SUPPORT ) |
67 |
|
68 |
+src_prepare() { |
69 |
+ sed \ |
70 |
+ -e "s|LIBRARY DESTINATION lib|LIBRARY DESTINATION $(get_libdir)|g" \ |
71 |
+ -e "s|lib/cmake|$(get_libdir)/cmake|g" \ |
72 |
+ -i CMakeLists.txt \ |
73 |
+ || die |
74 |
+ cmake_src_prepare |
75 |
+} |
76 |
+ |
77 |
src_configure() { |
78 |
+ use combblas && append-cppflags '-I/usr/include/CombBLAS' |
79 |
local mycmakeargs=( |
80 |
-DTPL_ENABLE_MAGMA=NO |
81 |
-DTPL_ENABLE_PTSCOTCH=NO |
82 |
-DTPL_ENABLE_SLATE=NO |
83 |
|
84 |
-DSTRUMPACK_COUNT_FLOPS=$(usex count-flops) |
85 |
- -DSTRUMPACK_MESSAGE_COUNTERS=$(usex message-counters) |
86 |
+ -DSTRUMPACK_MESSAGE_COUNTER=$(usex message-counter) |
87 |
-DSTRUMPACK_TASK_TIMERS=$(usex task-timers) |
88 |
-DSTRUMPACK_USE_HIP=$(usex hip) |
89 |
-DSTRUMPACK_USE_MPI=$(usex mpi) |
90 |
@@ -64,5 +79,10 @@ src_configure() { |
91 |
-DTPL_ENABLE_SCOTCH=$(usex scotch) |
92 |
-DTPL_ENABLE_ZFP=$(usex zfp) |
93 |
) |
94 |
+ if use hip; then |
95 |
+ addpredict /dev/kfd |
96 |
+ mycmakeargs+=( "-DHIP_ROOT_DIR=${EPREFIX}/usr" ) |
97 |
+ fi |
98 |
+ use scotch && mycmakeargs+=( "-DSCOTCH_INCLUDE_DIR=${EPREFIX}/usr/include/scotch" ) |
99 |
cmake_src_configure |
100 |
} |
101 |
|
102 |
diff --git a/sci-libs/STRUMPACK/metadata.xml b/sci-libs/STRUMPACK/metadata.xml |
103 |
index 48656f88c..6db77609c 100644 |
104 |
--- a/sci-libs/STRUMPACK/metadata.xml |
105 |
+++ b/sci-libs/STRUMPACK/metadata.xml |
106 |
@@ -19,7 +19,7 @@ The HODLR and Butterfly functionality in STRUMPACK is implemented through interf |
107 |
<flag name="combblas">Use CombBLAS for weighted matching</flag> |
108 |
<flag name="count-flops">Build with flop counters</flag> |
109 |
<flag name="hip">Use HIP for AMD or NVIDIA GPU acceleration</flag> |
110 |
- <flag name="message-counters">Build with counter for MPI messages</flag> |
111 |
+ <flag name="message-counter">Build with counter for MPI messages</flag> |
112 |
<flag name="metis">Build with support for ParMetis</flag> |
113 |
<flag name="papi">Build with support for PAPI monitoring</flag> |
114 |
<flag name="scotch">Build with support for Scotch</flag> |