diff options
author | Alessandro Barbieri <lssndrbarbieri@gmail.com> | 2022-06-11 01:46:47 +0200 |
---|---|---|
committer | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2022-06-12 11:40:48 +0200 |
commit | 403642ebe23dcfe31f47ed63b4672be3521a1308 (patch) | |
tree | 7a5cd07bfb24a5dbde12bc593f18399b65c6a2a8 | |
parent | app-arch/libdeflate: add version 1.11 (diff) | |
download | sci-403642ebe23dcfe31f47ed63b4672be3521a1308.tar.gz sci-403642ebe23dcfe31f47ed63b4672be3521a1308.tar.bz2 sci-403642ebe23dcfe31f47ed63b4672be3521a1308.zip |
sci-libs/arpack: new package, add 3.8.0_p20220604
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
Closes: https://github.com/gentoo/sci/pull/1147
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
-rw-r--r-- | sci-libs/arpack/Manifest | 3 | ||||
-rw-r--r-- | sci-libs/arpack/arpack-3.8.0_p20220604.ebuild | 102 | ||||
-rw-r--r-- | sci-libs/arpack/metadata.xml | 26 |
3 files changed, 131 insertions, 0 deletions
diff --git a/sci-libs/arpack/Manifest b/sci-libs/arpack/Manifest new file mode 100644 index 000000000..730cdcfdd --- /dev/null +++ b/sci-libs/arpack/Manifest @@ -0,0 +1,3 @@ +DIST arpack-3.8.0_p20220604.gh.tar.gz 1012341 BLAKE2B 30f71c334f3ce8b24bce309cdfa5869fa4781baa1935dbd7772936f1f135e4d6a3b576f9fece8ba9ff48f053bac1d1328c4f5f5545cacaa568e1ea5695013e2f SHA512 f31c7bd45a82a8a64e1d041ca18eac9c50dac0ebecf845ad5e57c70d1c12ab36ab0630db224897bfe6181c0fff9152f1dea7b3a6a2eb53bfda2f2a590ca8a37b +DIST arpack-tutorial.ps.gz 105599 BLAKE2B 99570e6a0cc1c020b9c271e8ce1cc224f69ff5333cc818c10b063dc8ffbaf66a9f5c6ede99541b4212286d422146b1c4e332eba7e1635c99efa0e4c2620f0630 SHA512 a7b8fefd1a572ed477ae208d49094c1c65c9368990d12de9b3528e33fed546c947659f74e54a810d04154b4a1b0f9a94bcba4db0cf59d379e20786a261066aa4 +DIST arpack-ug.ps.gz 248543 BLAKE2B ac010aef470060636fa00360636ba093f0d24d219fa927c79fb1726b798160eda74fa8b4be6c7dff94f5759efcf30afa99ad310e7959115e028738beb8aa125d SHA512 3349117fb10b07207ffbab2ffa31b406d026855ea4c16e8649b14c7d70bc94e11b5730672e34acd654817799136d4bd76569ac50ec78d787df5582d18ed61328 diff --git a/sci-libs/arpack/arpack-3.8.0_p20220604.ebuild b/sci-libs/arpack/arpack-3.8.0_p20220604.ebuild new file mode 100644 index 000000000..b7a989641 --- /dev/null +++ b/sci-libs/arpack/arpack-3.8.0_p20220604.ebuild @@ -0,0 +1,102 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +COMMIT="5eafea4328f1631eab28b1a20e757d1f0e21f8a6" +PYTHON_COMPAT=( python3_{8..10} ) + +inherit cmake flag-o-matic fortran-2 python-single-r1 + +DESCRIPTION="Arnoldi package library to solve large scale eigenvalue problems" +HOMEPAGE=" + https://www.caam.rice.edu/software/ARPACK/ + https://github.com/opencollab/arpack-ng +" +SRC_URI=" + https://github.com/opencollab/${PN}-ng/archive/${COMMIT}.tar.gz -> ${PF}.gh.tar.gz + doc? ( + http://www.caam.rice.edu/software/ARPACK/SRC/ug.ps.gz -> ${PN}-ug.ps.gz + http://www.caam.rice.edu/software/ARPACK/DOCS/tutorial.ps.gz -> ${PN}-tutorial.ps.gz + ) +" +S="${WORKDIR}/${PN}-ng-${COMMIT}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="doc examples icb icbexmm int64 mpi python" + +RDEPEND=" + virtual/blas + virtual/lapack + + icbexmm? ( dev-cpp/eigen ) + mpi? ( virtual/mpi[fortran] ) + icb? ( virtual/mpi[cxx] ) + python? ( + ${PYTHON_DEPS} + $(python_gen_cond_dep 'dev-libs/boost:=[numpy,python,${PYTHON_USEDEP}]') + ) +" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +REQUIRED_USE=" + icb? ( mpi ) + python? ( + ${PYTHON_REQUIRED_USE} + icbexmm + ) +" + +src_configure() { + append-fflags '-fallow-argument-mismatch' + + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DEXAMPLES=$(usex examples) + -DICB=$(usex icb) + -DICBEXMM=$(usex icbexmm) + -DINTERFACE64=$(usex int64) + -DMPI=$(usex mpi) + -DPYTHON3=$(usex python) + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + + dodoc DOCUMENTS/*.doc + newdoc DOCUMENTS/README README.doc + use doc && dodoc "${WORKDIR}"/*.ps + if use examples; then + for i in BAND COMPLEX NONSYM SIMPLE SVD SYM ; do + exeinto "/usr/libexec/${PN}/examples/${i}" + doexe "${BUILD_DIR}/EXAMPLES/${i}"/* + done + + if use mpi; then + exeinto "/usr/libexec/${PN}/examples/MPI" + doexe "${BUILD_DIR}"/PARPACK/EXAMPLES/MPI/* + fi + + if use python; then + docinto examples/pyarpack + dodoc "${BUILD_DIR}"/*.py + fi + docompress -x "/usr/share/doc/${PF}/examples" + fi + if use icbexmm; then + exeinto "/usr/libexec/${PN}/examples/MATRIX_MARKET" + doexe "${BUILD_DIR}/EXAMPLES/MATRIX_MARKET/arpackmm" + rm "${BUILD_DIR}/EXAMPLES/MATRIX_MARKET/arpackmm" || die + docinto examples + dodoc -r "${BUILD_DIR}/EXAMPLES/MATRIX_MARKET" + fi + if use python; then + python_domodule "${ED}/usr/$(get_libdir)/pyarpack" + rm -r "${ED}/usr/$(get_libdir)/pyarpack" || die + fi +} diff --git a/sci-libs/arpack/metadata.xml b/sci-libs/arpack/metadata.xml new file mode 100644 index 000000000..9cd539912 --- /dev/null +++ b/sci-libs/arpack/metadata.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>sci@gentoo.org</email> + <name>Gentoo Science Project</name> + </maintainer> + <longdescription lang="en"> + The ARnoldi PACKage is a library of routines capable of solving large scale symmetric, + nonsymmetric, and generalized eigenproblems. The software is designed to compute a few + eigenvalues with user specified features such as those of largest real + part or largest magnitude. Storage requirements are on the order of + n*k locations. No auxiliary storage is required. A set of Schur basis + vectors for the desired k-dimensional eigen-space is computed which is + numerically orthogonal to working precision. Numerically accurate + eigenvectors are available on request. + </longdescription> + <upstream> + <remote-id type="github">opencollab/arpack-ng</remote-id> + </upstream> + <use> + <flag name="icb">Enable support for *[ae]upd_c with ISO_C_BINDING</flag> + <flag name="icbexmm">Enable support for matrix market example based on ICB</flag> + <flag name="int64">Use the 64-bit integer interface (ILP64)</flag> + </use> +</pkgmetadata> |