aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlessandro Barbieri <lssndrbarbieri@gmail.com>2022-05-24 17:41:33 +0200
committerAlessandro Barbieri <lssndrbarbieri@gmail.com>2022-05-24 19:36:38 +0200
commit6337e4b115ee49b2cb4a6990030444a02b66f1a7 (patch)
tree0bd667c1cf8d496240205ee8bd145c4be429b35e /sci-libs
parentsci-libs/libROM: new package, add 1.0.0 (diff)
downloadguru-6337e4b115ee49b2cb4a6990030444a02b66f1a7.tar.gz
guru-6337e4b115ee49b2cb4a6990030444a02b66f1a7.tar.bz2
guru-6337e4b115ee49b2cb4a6990030444a02b66f1a7.zip
sci-libs/ButterflyPACK: new package, add 2.1.0
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/ButterflyPACK/ButterflyPACK-2.1.0.ebuild44
-rw-r--r--sci-libs/ButterflyPACK/Manifest1
-rw-r--r--sci-libs/ButterflyPACK/metadata.xml19
3 files changed, 64 insertions, 0 deletions
diff --git a/sci-libs/ButterflyPACK/ButterflyPACK-2.1.0.ebuild b/sci-libs/ButterflyPACK/ButterflyPACK-2.1.0.ebuild
new file mode 100644
index 000000000..437e8815f
--- /dev/null
+++ b/sci-libs/ButterflyPACK/ButterflyPACK-2.1.0.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake fortran-2
+
+DESCRIPTION="Mathematical software for solving large-scale dense linear systems"
+HOMEPAGE="https://github.com/liuyangzhuan/ButterflyPACK"
+SRC_URI="https://github.com/liuyangzhuan/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64"
+LICENSE="BSD"
+SLOT="0"
+IUSE="arpack magma"
+
+RDEPEND="
+ sci-libs/scalapack
+ virtual/blas
+ virtual/lapack
+ virtual/mpi
+
+ arpack? ( sci-libs/arpack )
+ magma? ( sci-libs/magma )
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( README.md CHANGELOG )
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+
+ -DTPL_ARPACK_LIBRARIES=$(usex arpack)
+ -DTPL_MAGMA_LIBRARIES=$(usex magma)
+ )
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ insinto "/usr/share/octave/site/m/${PN}"
+ doins -r MATLAB/*
+}
diff --git a/sci-libs/ButterflyPACK/Manifest b/sci-libs/ButterflyPACK/Manifest
new file mode 100644
index 000000000..4a536fc2c
--- /dev/null
+++ b/sci-libs/ButterflyPACK/Manifest
@@ -0,0 +1 @@
+DIST ButterflyPACK-2.1.0.tar.gz 378160677 BLAKE2B 0846f57c45717a4dd2bdd4eb04f7e0ca7f2ac8bd9873307c4cd9342d3696f885ede2b65a5a6c3aed55fcc70cfb50bbe9d45957b14c4f8208ffc11a8a4ac6134d SHA512 4f06e60d98f8dd88f40c49b824e6435af5674955326016eab2a62feda31735de15e30ae86f7badb5f31e53be8882aa6535ba52345680a65215608ab75775c2bf
diff --git a/sci-libs/ButterflyPACK/metadata.xml b/sci-libs/ButterflyPACK/metadata.xml
new file mode 100644
index 000000000..a4e7faa75
--- /dev/null
+++ b/sci-libs/ButterflyPACK/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lssndrbarbieri@gmail.com</email>
+ <name>Alessandro Barbieri</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/liuyangzhuan/ButterflyPACK/issues</bugs-to>
+ <remote-id type="github">liuyangzhuan/ButterflyPACK</remote-id>
+ </upstream>
+ <longdescription lang="en">ButterflyPACK is a mathematical software for rapidly solving large-scale dense linear systems that exhibit off-diagonal rank-deficiency. These systems arise frequently from boundary element methods, or factorization phases in finite-difference/finite-element methods. ButterflyPACK relies on low-rank or butterfly formats under Hierarchical matrix, HODLR or other hierarchically nested frameworks to compress, factor and solve the linear system in quasi-linear time. The computationally most intensive phase, factorization, is accelerated via randomized linear algebras. The butterfly format, originally inspired by the butterfly data flow in fast Fourier Transform, is a linear algebra tool well-suited for compressing matrices arising from high-frequency wave equations or highly oscillatory integral operators. ButterflyPACK also provides preconditioned TFQMR iterative solvers.
+ButterflyPACK is written in Fortran 2003, it also has C++ interfaces. ButterflyPACK supports hybrid MPI/OpenMP programming models. In addition, ButterflyPACK can be readily invoked from the software STRUMPACK for solving dense and sparse linear systems.
+ </longdescription>
+ <use>
+ <flag name="arpack">Use arpack as dependency</flag>
+ <flag name="magma">Use magma as dependency</flag>
+ </use>
+</pkgmetadata>