commit:     5a8da4ecba9465ea3632578bb4a9c821f81d404b
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 13 10:22:55 2021 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Mon Dec 13 10:22:55 2021 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=5a8da4ec

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 <AT> gentoo.org>

 sci-mathematics/freefem++/freefem++-4.10.ebuild | 99 +++++++++++++++++++++++++
 1 file changed, 99 insertions(+)

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
+}

Reply via email to