summaryrefslogtreecommitdiff
path: root/sci-libs/gerris
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sci-libs/gerris
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-libs/gerris')
-rw-r--r--sci-libs/gerris/Manifest10
-rw-r--r--sci-libs/gerris/files/gerris-20130531-hypre-no-mpi.patch22
-rw-r--r--sci-libs/gerris/files/gerris-20130531-lis-matrix-csr.patch11
-rw-r--r--sci-libs/gerris/files/gerris-20130531-use-blas-lapack-system.patch33
-rw-r--r--sci-libs/gerris/files/gerris-20131206-DEFAULT_SOURCE-replacement.patch16
-rw-r--r--sci-libs/gerris/files/gerris-20131206-lis-api-change.patch18
-rw-r--r--sci-libs/gerris/gerris-20131206-r1.ebuild70
-rw-r--r--sci-libs/gerris/metadata.xml15
8 files changed, 195 insertions, 0 deletions
diff --git a/sci-libs/gerris/Manifest b/sci-libs/gerris/Manifest
new file mode 100644
index 000000000000..782a0e9f9e9a
--- /dev/null
+++ b/sci-libs/gerris/Manifest
@@ -0,0 +1,10 @@
+AUX gerris-20130531-hypre-no-mpi.patch 644 SHA256 4d7fab9f49325ded81589242dafe95008fb2fff350bd77870e4118f8de3e7d9c SHA512 01dd5e4c159b81ee47e653173361b41b5ab5ddc05f0595cfad862d40f1d6f041c4de4860b76a1ab691c296cec7c2b4258d7ea269c8c58d37a1c8f6d17f4b0ac5 WHIRLPOOL 0e6d26f2336ad1e606226c196b0bee7157a413a128647eae06a990edad6177f74830ecafe861754692ec9457d9aad65ce91f22af3d797ae43dd13e9c97ea8637
+AUX gerris-20130531-lis-matrix-csr.patch 265 SHA256 8a9e90bff38b0933b5a9f56d7dbb5cad9ec3f7332cd00093949747b995f3ef5e SHA512 1b64fb1847e213829471c0baac812cbc9e1599c202e299a84114db598970fec911cbf6abf2cf158acca1dd472d0d3df0164956b5e41f1411a2be5e19b83d168c WHIRLPOOL 40a1f511926cce03248d6965f38c1a6de7dbfcb02da71342a42f982fe9fad4a003e08f421a43f45f654596a46e9fcbc3b39660eb7770c952a61233e7bd70aa82
+AUX gerris-20130531-use-blas-lapack-system.patch 1466 SHA256 0759033b4c3790879c0a4c161047a490d087ae71cb7cbbce205f04f10cee0d65 SHA512 4ff7f35c1d8698cc6ce2ed31708e0d05fd1cd6c8829d2ab7cc589fb5e4e1ea080df27587a7bf59ec7303c0dcfaa159da625a330a5eb5d1901ecfa45a762d41e4 WHIRLPOOL b68d2f15c1934617b31c9e5571e2e22b34f67429e74b70ae5fc7b3409bb47888f20479c6e9959ae8a7b2ebbcfc2b59b77d78c11ac22db440c89538ef9f3336c7
+AUX gerris-20131206-DEFAULT_SOURCE-replacement.patch 728 SHA256 feb7eb02a40cca753dc096418e2fb9e58edbfb009029ccbdf3e4628e449e3f27 SHA512 b1ca792b4b9ffe88964f58e12a3caff23ec3ba31f8f43136acf9adc106c57d10f75f32d2ec7a6769cdd130324e9de9a1621fc4c90be834eef330690f765159c7 WHIRLPOOL 31d8e57c033f44120bc3592914c9b677de3f4d6046e67d581f5281c049af855fa400a15fec47ba4c8cd8d38c9c91ce04ac867828e4bc65d8cf6bc23a6cf0ad49
+AUX gerris-20131206-lis-api-change.patch 526 SHA256 228d63b8432cb60084c8ba98dd85f1b785924858b99fb72d8da55f9e170ac387 SHA512 bba5cc317e66cbd48e80e2a1ce6cbd1f3688f77e3433c846294c56ba39591a840c2577eaffeed05553f651dc749ceaf751c2451624b71812ea2238014f456b25 WHIRLPOOL 153b70e986af94a071888e8fd51adf11c85594e29f5ed28383baed50ff7c94618f64346c71ae604244d4f50dacd37a3c9d96ebf459a9548ab2cc1e19b2588df1
+DIST gerris-snapshot-131206.tar.gz 2841686 SHA256 d5346a362b104ccc858c4b79938727d56c4654b103c268e54cf3aa56d0b55b39 SHA512 b3855d51eea04c496d2e5f662c148560d9ab8d5dfa97e4f7d1c22c70405b9b801b46f30aa0d159b1bd6a8182f171a1649b5f510f0e13feeb55f29cafe57b45dd WHIRLPOOL 81027d9c4c9bf44b542e1161e3238711f321b5db581b0538d5c7addc4dd5229c90f787216d05a689e287ba511546b4e7cc2fb9664bcfb9098e421722a5d8e0fd
+EBUILD gerris-20131206-r1.ebuild 1557 SHA256 b66f7a884a396c5a965b9939c98ce02675729a1cdf4dd5c2768a6bc316a1973b SHA512 9a5a6d041fb41618c13d53fef7b8ad9af3c1753b52d6fd6e0466e9c20c1533dec2d9563d680966adfb01068c533cfebdf1fd18f3befe5361fd1280634b666e09 WHIRLPOOL f953bef13d3dc74c2d235aca16c4850eecf75fd6fcde84cc87768d0cbc0b45ae1933eb1d3d34e8d0db5cac2f1de03ee5d3c86dc99428c63df104b3e9352e70bf
+MISC ChangeLog 4230 SHA256 cebad52470a219558efad5341201afd85c9c973340a259fd914fcb4d2ea0fb3d SHA512 029e1a2668bde1a782771d6ea6fafb58fba5e5e6517f337d870758131fbcfdc62531276dc46e849ace501bab184100ba2036fe3055e456f759735f2fc668cf29 WHIRLPOOL a20990d43d120b468e30694e882012f78c2213599806701526eca1e752e422990ecabf7d104723a62af67edee077a99ea7607f12e7a8c6426825a956680af425
+MISC ChangeLog-2015 4293 SHA256 d475e72326324d99d18c1a3407aca918a35e588d6f08622ebd625ddcce7111af SHA512 c47b6eb5c7b27dee3093f600eca7e39a7a234317b6fa1bbb434617ef7fe75acc3f1e7b9a48e76777f99bd6d6c939406081e66ca545f9e268356993c5acbf90fb WHIRLPOOL db2613d68c873e3f3ff26160470405cd91258b2eadf968dcde2a80f9d23e6d28a597e6675d79480756b0baf4ae128e5e1d31ef96904863981b958a8352a31e48
+MISC metadata.xml 510 SHA256 3a00e5b25bd5203e7919c5ccd7a2234b9dafe9c9385578ac8512ddab1b81be7d SHA512 876a9ba57d32d3bcb0071d8644a6d050ef67df1a94b90064bd7f7e45ddf44c3efa220c1c9738279892f2c8327da26043c29f8478cfb5599e3e3eda43d99719e8 WHIRLPOOL c68e847f3791efb370eb8dc7636eb53e09caedcb80a1f9630ee7b65c4f05ea52280b5ffae3875dc2b5d905a1ab45664b3fec2171c3db1ff8b18fbbff72fb38af
diff --git a/sci-libs/gerris/files/gerris-20130531-hypre-no-mpi.patch b/sci-libs/gerris/files/gerris-20130531-hypre-no-mpi.patch
new file mode 100644
index 000000000000..a52c78bf77c8
--- /dev/null
+++ b/sci-libs/gerris/files/gerris-20130531-hypre-no-mpi.patch
@@ -0,0 +1,22 @@
+patch to allow gerris to use hypre without mpi
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -336,7 +336,7 @@
+
+ # Build hypre module if HYPRE is installed
+ hypre=no
+-if test "x$use_mpicc" = "xyes" ; then # HYPRE needs MPI
++# hypre does not need mpi
+ AC_CHECK_LIB(HYPRE, HYPRE_IJMatrixCreate, hypre="yes", hypre="no", [-lm])
+ if test x$hypre = xyes; then
+ AC_CHECK_HEADERS(HYPRE.h, hypre="yes", hypre="no")
+@@ -344,7 +344,7 @@
+ if test x$hypre = xno; then
+ AC_MSG_WARN([HYPRE not found. hypre Module won't be available.])
+ fi
+-fi
++
+ AM_CONDITIONAL(BUILD_HYPRE, test x$hypre = xyes)
+
+ # Build lis module if lis is installed
diff --git a/sci-libs/gerris/files/gerris-20130531-lis-matrix-csr.patch b/sci-libs/gerris/files/gerris-20130531-lis-matrix-csr.patch
new file mode 100644
index 000000000000..d4c7bfae15bb
--- /dev/null
+++ b/sci-libs/gerris/files/gerris-20130531-lis-matrix-csr.patch
@@ -0,0 +1,11 @@
+--- a/modules/lis.c
++++ b/modules/lis.c
+@@ -45,7 +45,7 @@
+ g_array_index (stencil->coeff, double, j),
+ A);
+ }
+- lis_matrix_set_type (A, LIS_MATRIX_CRS);
++ lis_matrix_set_type (A, LIS_MATRIX_CSR);
+ lis_matrix_assemble (A);
+
+ LIS_VECTOR b, x;
diff --git a/sci-libs/gerris/files/gerris-20130531-use-blas-lapack-system.patch b/sci-libs/gerris/files/gerris-20130531-use-blas-lapack-system.patch
new file mode 100644
index 000000000000..1c25a8f516b6
--- /dev/null
+++ b/sci-libs/gerris/files/gerris-20130531-use-blas-lapack-system.patch
@@ -0,0 +1,33 @@
+--- a/modules/Makefile.am
++++ b/modules/Makefile.am
+@@ -105,7 +105,7 @@
+ libstokes2D_la_LIBADD = $(GFS2D_LIBS)
+
+ libwavewatch2D_la_SOURCES = wavewatch.c
+-libwavewatch2D_la_LIBADD = $(GFS2D_LIBS) -Lwavewatch -lwavewatch -L/usr/lib/gcc/i486-linux-gnu/4.2 -lgfortran
++libwavewatch2D_la_LIBADD = $(GFS2D_LIBS) -Lwavewatch -lwavewatch
+ libwavewatch2D_la_CFLAGS = $(AM_CFLAGS) -DFTT_2D=1 \
+ -DW3SRCE=`nm wavewatch/libwavewatch.a | grep w3srce | awk '{ if ($$2 == "T") print $$3; }'` \
+ -DGFSW3INIT=`nm wavewatch/libwavewatch.a | grep gfsw3_init | awk '{ if ($$2 == "T") print $$3; }'`
+@@ -164,17 +164,17 @@
+
+ liblis3D_la_SOURCES = lis.c
+ liblis3D_la_CFLAGS = $(AM_CFLAGS)
+-liblis3D_la_LIBADD = $(GFS3D_LIBS) -llis -lgfortran -lm
++liblis3D_la_LIBADD = $(GFS3D_LIBS) -llis -lm
+ liblis2D_la_SOURCES = lis.c
+ liblis2D_la_CFLAGS = $(AM_CFLAGS) -DFTT_2D=1
+-liblis2D_la_LIBADD = $(GFS2D_LIBS) -llis -lgfortran -lm
++liblis2D_la_LIBADD = $(GFS2D_LIBS) -llis -lm
+
+ libagmg3D_la_SOURCES = agmg.c dagmg.f90
+ libagmg3D_la_CFLAGS = $(AM_CFLAGS)
+-libagmg3D_la_LIBADD = $(GFS3D_LIBS) -llapack -lblas -lgfortran -lm
++libagmg3D_la_LIBADD = $(GFS3D_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) -lm
+ libagmg2D_la_SOURCES = agmg.c dagmg.f90
+ libagmg2D_la_CFLAGS = $(AM_CFLAGS) -DFTT_2D=1
+-libagmg2D_la_LIBADD = $(GFS2D_LIBS) -llapack -lblas -lgfortran -lm
++libagmg2D_la_LIBADD = $(GFS2D_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) -lm
+
+ libokada3D_la_SOURCES = okada.c
+ libokada3D_la_CFLAGS = $(AM_CFLAGS)
diff --git a/sci-libs/gerris/files/gerris-20131206-DEFAULT_SOURCE-replacement.patch b/sci-libs/gerris/files/gerris-20131206-DEFAULT_SOURCE-replacement.patch
new file mode 100644
index 000000000000..d20df635512c
--- /dev/null
+++ b/sci-libs/gerris/files/gerris-20131206-DEFAULT_SOURCE-replacement.patch
@@ -0,0 +1,16 @@
+Silence warnings due to _BSD_SOURCE being deprecated by glib:
+* /usr/include/features.h:148:3: warning: #warning "_BSD_SOURCE and
+* _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Wcpp]
+* # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -108,7 +108,7 @@
+ AC_PROG_CC
+
+ # -D_GNU_SOURCE is only necessary for old (< 2.10) glibc implementations of open_memstream()
+-CFLAGS="$CFLAGS -D_XOPEN_SOURCE=700 -D_BSD_SOURCE -D_GNU_SOURCE"
++CFLAGS="$CFLAGS -D_XOPEN_SOURCE=700 -D_DEFAULT_SOURCE -D_GNU_SOURCE"
+ if test x$GCC = xyes ; then
+ CFLAGS="$CFLAGS -Wall -Werror-implicit-function-declaration -Wmissing-prototypes -Wmissing-declarations -pipe -std=c99"
+ fi
diff --git a/sci-libs/gerris/files/gerris-20131206-lis-api-change.patch b/sci-libs/gerris/files/gerris-20131206-lis-api-change.patch
new file mode 100644
index 000000000000..28892ddadedf
--- /dev/null
+++ b/sci-libs/gerris/files/gerris-20131206-lis-api-change.patch
@@ -0,0 +1,18 @@
+sci-libs/lis changed some of its function prototypes by renaming
+lis_solver_get_iters to lis_solver_get_iter in version 1.4.43 from 17 July 2014
+
+See also:
+http://www.ssisc.org/lis/ChangeLog.txt
+https://bugs.gentoo.org/show_bug.cgi?id=593282
+
+--- a/modules/lis.c
++++ b/modules/lis.c
+@@ -67,7 +67,7 @@
+
+ lis_solve (A, b, x, solver);
+ int iter;
+- lis_solver_get_iters (solver, &iter);
++ lis_solver_get_iter (solver, &iter);
+ par->niter = iter;
+
+ lis_vector_get_values (x, 0, lp->lhs->len, (double *) lp->lhs->data);
diff --git a/sci-libs/gerris/gerris-20131206-r1.ebuild b/sci-libs/gerris/gerris-20131206-r1.ebuild
new file mode 100644
index 000000000000..d17000bbe95f
--- /dev/null
+++ b/sci-libs/gerris/gerris-20131206-r1.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic toolchain-funcs
+
+MY_P=${P/-20/-snapshot-}
+
+DESCRIPTION="Gerris Flow Solver"
+HOMEPAGE="http://gfs.sourceforge.net/"
+SRC_URI="http://gerris.dalembert.upmc.fr/gerris/tarballs/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples mpi static-libs"
+
+# all these deps could be optional
+# but the configure.in would have to be modified
+# heavily for the automagic
+RDEPEND="
+ dev-libs/glib:2
+ dev-games/ode
+ sci-libs/netcdf:=
+ sci-libs/gsl:=
+ sci-libs/gts
+ sci-libs/hypre[mpi?]
+ sci-libs/lis[mpi?]
+ sci-libs/proj
+ sci-libs/fftw:3.0=
+ virtual/lapack
+ mpi? ( virtual/mpi )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}/${MY_P}"
+
+# buggy tests, need extra packages and require gerris to be installed
+RESTRICT=test
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-20130531-hypre-no-mpi.patch
+ "${FILESDIR}"/${PN}-20130531-lis-matrix-csr.patch
+ "${FILESDIR}"/${PN}-20130531-use-blas-lapack-system.patch
+ "${FILESDIR}"/${PN}-20131206-lis-api-change.patch
+ "${FILESDIR}"/${PN}-20131206-DEFAULT_SOURCE-replacement.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ append-cppflags "-I${EPREFIX}/usr/include/hypre"
+ econf \
+ --enable-shared \
+ $(use_enable static-libs static) \
+ $(use_enable mpi) \
+ LAPACK_LIBS="$($(tc-getPKG_CONFIG) --libs lapack)"
+}
+
+src_install() {
+ default
+ use examples && dodoc -r doc/examples
+
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/sci-libs/gerris/metadata.xml b/sci-libs/gerris/metadata.xml
new file mode 100644
index 000000000000..cbf216a39022
--- /dev/null
+++ b/sci-libs/gerris/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ Gerris Flow Solver is a software program for the solution of the partial
+ differential equations describing fluid flow.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">gfs</remote-id>
+ </upstream>
+</pkgmetadata>