aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Ammerlaan <andrewammerlaan@gentoo.org>2021-12-13 11:22:55 +0100
committerAndrew Ammerlaan <andrewammerlaan@gentoo.org>2021-12-13 11:22:55 +0100
commit5a8da4ecba9465ea3632578bb4a9c821f81d404b (patch)
tree3a515c1b918fa6b05f7f0ef31f18dd61eba6faf0 /sci-mathematics
parentsci-biology/ugene: version bump (diff)
downloadsci-5a8da4ecba9465ea3632578bb4a9c821f81d404b.tar.gz
sci-5a8da4ecba9465ea3632578bb4a9c821f81d404b.tar.bz2
sci-5a8da4ecba9465ea3632578bb4a9c821f81d404b.zip
sci-mathematics/freefem++: add version 4.10
Closes: https://github.com/gentoo/sci/issues/1127 Package-Manager: Portage-3.0.29, Repoman-3.0.3 Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/freefem++/Manifest1
-rw-r--r--sci-mathematics/freefem++/freefem++-4.10.ebuild99
2 files changed, 100 insertions, 0 deletions
diff --git a/sci-mathematics/freefem++/Manifest b/sci-mathematics/freefem++/Manifest
index dd9c40a52..da96d35bc 100644
--- a/sci-mathematics/freefem++/Manifest
+++ b/sci-mathematics/freefem++/Manifest
@@ -1 +1,2 @@
+DIST freefem++-4.10.tar.gz 12607380 BLAKE2B 2adcbcb48555c218bdec087b52b955fef7d2b8c0b17045be64d8acf9cde0910dd9c1a1856c046582e3d3e3024848db284cf8262f2e7c9a2e46024768f0dbad7a SHA512 768e8657884e92cd32f08ea82b3f384ed1522d1a693c6de95281fe1bf49e61d084d7d4d5c6c31f70a05ed95ba7cc0af75979242225466d06c2173176e862995e
DIST freefem++-4.7.1.tar.gz 12522562 BLAKE2B a94cc91406486cf4acbd9d544ecdb3f9744d8e4172d84ee6c5bbad4aa8db04bd958e574f98537ec652deb2b1d74adb8d125138f6092030363cdf74c86c6f8a07 SHA512 e42b29f9aa4edf1e4a170425a304996d291b0c3127d75267d421d0f2ff757cdc64fb9b177e38f4e183edc6f256430c39880fea307698417721605b72f6d3c2d0
diff --git a/sci-mathematics/freefem++/freefem++-4.10.ebuild b/sci-mathematics/freefem++/freefem++-4.10.ebuild
new file mode 100644
index 000000000..b1a4c4838
--- /dev/null
+++ b/sci-mathematics/freefem++/freefem++-4.10.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic toolchain-funcs
+
+DESCRIPTION="Solve PDEs using FEM on 2d and 3d domains"
+HOMEPAGE="https://freefem.org/"
+SRC_URI="https://github.com/FreeFem/FreeFem-sources/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/FreeFem-sources-${PV}"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="examples mpi opengl X"
+
+RDEPEND="
+ sci-libs/fftw:3.0
+ virtual/cblas
+ virtual/lapack
+ sci-libs/umfpack
+ sci-libs/arpack
+ sci-libs/hdf5[cxx,mpi?]
+ mpi? ( virtual/mpi )
+ opengl? (
+ media-libs/freeglut
+ virtual/opengl
+ )
+ X? (
+ media-fonts/font-misc-misc
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXpm
+ x11-libs/libXxf86vm
+ )"
+
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myconf
+
+ if use mpi; then
+ myconf="${myconf} --with-mpi=/usr/bin/mpi"
+ else
+ myconf="--without-mpi"
+ fi
+
+ econf \
+ --disable-download \
+ --disable-optim \
+ --enable-generic \
+ --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \
+ --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)" \
+ $(use_enable opengl) \
+ ${myconf}
+}
+
+src_test() {
+ if use mpi; then
+ # This may depend on the used MPI implementation. It is needed
+ # with mpich2, but should not be needed with lam-mpi or mpich
+ # (if the system is configured correctly).
+ ewarn "Please check that your MPI root ring is on before running"
+ ewarn "the test phase. Failing to start it before that phase may"
+ ewarn "result in a failing emerge."
+ epause
+ fi
+ emake -j1 check
+}
+
+src_install() {
+ default
+
+ if use examples; then
+ einfo "Installing examples..."
+
+ # Remove compiled examples:
+ emake clean
+
+ einfo "Some of the installed examples assumes that the user has write"
+ einfo "permissions in the working directory and other will look for"
+ einfo "data files in the working directory. For this reason in order to"
+ einfo "run the examples it's better to temporary copy them somewhere"
+ einfo "in the user folder. For example to run the tutorial examples"
+ einfo "it's better to copy the entire examples++-tutorial folder into"
+ einfo "the user directory."
+
+ rm -f examples*/Makefile* || die
+ doins -r examples*
+ fi
+}