aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/dealii/ChangeLog7
-rw-r--r--sci-libs/dealii/Manifest2
l---------sci-libs/dealii/dealii-8.0.0.ebuild1
-rw-r--r--sci-libs/dealii/dealii-8.1.0-r1.ebuild (renamed from sci-libs/dealii/dealii-8.1.0.ebuild)6
-rw-r--r--sci-libs/dealii/files/dealii-8.1.0-p4est1.0-support.patch271
5 files changed, 283 insertions, 4 deletions
diff --git a/sci-libs/dealii/ChangeLog b/sci-libs/dealii/ChangeLog
index edd11d137..9253cf714 100644
--- a/sci-libs/dealii/ChangeLog
+++ b/sci-libs/dealii/ChangeLog
@@ -2,6 +2,13 @@
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
+*dealii-8.1.0-r1 (14 Oct 2014)
+
+ 14 Oct 2014; Matthias Maier <tamiko@gentoo.org> +dealii-8.1.0-r1.ebuild,
+ +files/dealii-8.1.0-p4est1.0-support.patch, -dealii-8.0.0.ebuild,
+ -dealii-8.1.0.ebuild:
+ fix p4est dependency; drop old
+
24 Jul 2014; Matthias Maier <tamiko@gentoo.org> dealii-9999.ebuild,
metadata.xml:
Update repository to github, fix readme file change, add forgotten use-flag to
diff --git a/sci-libs/dealii/Manifest b/sci-libs/dealii/Manifest
index ac6e676a7..7e8d9e844 100644
--- a/sci-libs/dealii/Manifest
+++ b/sci-libs/dealii/Manifest
@@ -1,4 +1,2 @@
-DIST deal.II-8.0.0.tar.gz 15212414 SHA256 2bf7443cb16b5fc39fe6d70b07071d731de9ac415a90658ec4d2197d40513738 SHA512 fb6c79cc7ab18dbb579a2a5dd8144c71f37b36170a9653f805b753fd69ebb66f98c866d7811c5daf24a99cb107ab1f59a7edb18ed9d9597cba566cd04753b3d7 WHIRLPOOL ac63e12431613a59275b39284da1bc6a5cbc52a36c7de2a86845202cbdbccd0d296165f57a3cecba85f2e1ccb4741292ed5770cb2afd0d1c0c4c2f42787a5345
DIST deal.II-8.1.0.tar.gz 13353502 SHA256 d666bbda2a17b41b80221d7029468246f2658051b8c00d9c5907cd6434c4df99 SHA512 9d6e913e7a8c54f386839d031f2931a74e8ac6e7db8693c201a11ec6ca34962626a42a57b727297c9f3d8b9efebddb4f2397c27bbee4212e726ce2714f1c3f70 WHIRLPOOL 8cd7aeb47c28bc473bb24d1632f6074de893b20d995d6077c80b88834693b8f9ad1aee181b7abda55a5567efa6c6d169da4c6061cd939b63351330f7e4b767c5
-DIST deal.offlinedoc-8.0.0.tar.gz 90684547 SHA256 7af02e32f691dba950d78f39c227bc22863c5d882cb83665eb639f4aadea9009 SHA512 47b959d976908c5a49d957fcf8a48e53db047e0aa6d8cf2b299f5e91d82c384b48fe326399f5e78146d80ad6ca39b1a305334086730b61d9c5c6975e91641529 WHIRLPOOL 16fa92f65e45a771c1ecafe7bc29b707f38930da9c7b8b423ed933b63ecc5c58f16d25c600c19636c59e9f6b1f8b42e69f485e912ff788de5de67d35cd76ac5c
DIST deal.offlinedoc-8.1.0.tar.gz 96129401 SHA256 cf40f7f231f47329069bc3046c144d7337efa7277d91af7b45eb5931de379b51 SHA512 0e5ac59727912dbd8cf228f93d8ab071b8f42c9a5c4393ffd44b9e7f4718a7cb50e93ebf19745f3ad6a37fc6f28c5a8906e3493488bc20a9492711b488119080 WHIRLPOOL 7e9c7a08cc81916664f4e093b6e31b2c519e7313badb5526277fb959386b3162fa57d6f1cf3dd8c0744aad46eb8ed54f308656a06e8efd97dd85ef8ea489b343
diff --git a/sci-libs/dealii/dealii-8.0.0.ebuild b/sci-libs/dealii/dealii-8.0.0.ebuild
deleted file mode 120000
index 2fbea89d7..000000000
--- a/sci-libs/dealii/dealii-8.0.0.ebuild
+++ /dev/null
@@ -1 +0,0 @@
-dealii-8.1.0.ebuild \ No newline at end of file
diff --git a/sci-libs/dealii/dealii-8.1.0.ebuild b/sci-libs/dealii/dealii-8.1.0-r1.ebuild
index 64511110e..548ea8397 100644
--- a/sci-libs/dealii/dealii-8.1.0.ebuild
+++ b/sci-libs/dealii/dealii-8.1.0-r1.ebuild
@@ -39,7 +39,7 @@ RDEPEND="
mpi? ( virtual/mpi )
mumps? ( sci-libs/mumps[mpi] )
netcdf? ( || ( <sci-libs/netcdf-4.2[cxx] sci-libs/netcdf-cxx ) )
- p4est? ( <sci-libs/p4est-0.3.5[mpi] )
+ p4est? ( sci-libs/p4est[mpi] )
parameter_gui? ( dev-qt/qtgui )
petsc? ( sci-mathematics/petsc[mpi=] )
sparse? ( sci-libs/umfpack )
@@ -54,6 +54,10 @@ DEPEND="
doc? ( app-doc/doxygen[dot] dev-lang/perl )
"
+src_prepare() {
+ epatch "${FILESDIR}"/dealii-8.1.0-p4est1.0-support.patch
+}
+
src_configure() {
if use debug; then
diff --git a/sci-libs/dealii/files/dealii-8.1.0-p4est1.0-support.patch b/sci-libs/dealii/files/dealii-8.1.0-p4est1.0-support.patch
new file mode 100644
index 000000000..3ef8d99e0
--- /dev/null
+++ b/sci-libs/dealii/files/dealii-8.1.0-p4est1.0-support.patch
@@ -0,0 +1,271 @@
+Upstream commits:
+ 4b6a6a9aae750941723890c44f0cb3326e5ba87b
+ 67d70862aa2b2c2e925a2b1262c9934ea0f9a873
+ dc0308a408360bfa5e21a58d10c2c2a7dca3a8ad
+
+diff --git a/source/distributed/tria.cc b/source/distributed/tria.cc
+index 5687fae..a6e5e85 100644
+--- a/source/distributed/tria.cc
++++ b/source/distributed/tria.cc
+@@ -155,10 +155,17 @@ namespace internal
+ types<2>::balance_type btype,
+ p4est_init_t init_fn);
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ static
++ p4est_gloidx_t (&partition) (types<2>::forest *p4est,
++ int partition_for_coarsening,
++ p4est_weight_t weight_fn);
++#else
+ static
+ void (&partition) (types<2>::forest *p4est,
+ int partition_for_coarsening,
+ p4est_weight_t weight_fn);
++#endif
+
+ static
+ void (&save) (const char *filename,
+@@ -173,16 +180,28 @@ namespace internal
+ void *user_pointer,
+ types<2>::connectivity **p4est);
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ static
++ int (&connectivity_save) (const char *filename,
++ types<2>::connectivity *connectivity);
++#else
+ static
+ void (&connectivity_save) (const char *filename,
+ types<2>::connectivity *connectivity);
++#endif
+
+ static
+ int (&connectivity_is_valid) (types<2>::connectivity *connectivity);
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ static
++ types<2>::connectivity *(&connectivity_load) (const char *filename,
++ long unsigned *length);
++#else
+ static
+ types<2>::connectivity *(&connectivity_load) (const char *filename,
+ long *length);
++#endif
+
+ static
+ unsigned int (&checksum) (types<2>::forest *p4est);
+@@ -301,10 +320,17 @@ namespace internal
+ p4est_init_t init_fn)
+ = p4est_balance;
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ p4est_gloidx_t (&functions<2>::partition) (types<2>::forest *p4est,
++ int partition_for_coarsening,
++ p4est_weight_t weight_fn)
++ = p4est_partition_ext;
++#else
+ void (&functions<2>::partition) (types<2>::forest *p4est,
+ int partition_for_coarsening,
+ p4est_weight_t weight_fn)
+ = p4est_partition_ext;
++#endif
+
+ void (&functions<2>::save) (const char *filename,
+ types<2>::forest *p4est,
+@@ -320,18 +346,31 @@ namespace internal
+ types<2>::connectivity **p4est)
+ = p4est_load;
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ int (&functions<2>::connectivity_save) (const char *filename,
++ types<2>::connectivity *connectivity)
++ = p4est_connectivity_save;
++#else
+ void (&functions<2>::connectivity_save) (const char *filename,
+ types<2>::connectivity *connectivity)
+ = p4est_connectivity_save;
++#endif
+
+ int (&functions<2>::connectivity_is_valid) (types<2>::connectivity
+ *connectivity)
+ = p4est_connectivity_is_valid;
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ types<2>::connectivity *
++ (&functions<2>::connectivity_load) (const char *filename,
++ long unsigned *length)
++ = p4est_connectivity_load;
++#else
+ types<2>::connectivity *
+ (&functions<2>::connectivity_load) (const char *filename,
+ long *length)
+ = p4est_connectivity_load;
++#endif
+
+ unsigned int (&functions<2>::checksum) (types<2>::forest *p4est)
+ = p4est_checksum;
+@@ -451,10 +490,17 @@ namespace internal
+ types<3>::balance_type btype,
+ p8est_init_t init_fn);
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ static
++ p4est_gloidx_t (&partition) (types<3>::forest *p8est,
++ int partition_for_coarsening,
++ p8est_weight_t weight_fn);
++#else
+ static
+ void (&partition) (types<3>::forest *p8est,
+ int partition_for_coarsening,
+ p8est_weight_t weight_fn);
++#endif
+
+ static
+ void (&save) (const char *filename,
+@@ -469,16 +515,28 @@ namespace internal
+ void *user_pointer,
+ types<3>::connectivity **p4est);
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ static
++ int (&connectivity_save) (const char *filename,
++ types<3>::connectivity *connectivity);
++#else
+ static
+ void (&connectivity_save) (const char *filename,
+ types<3>::connectivity *connectivity);
++#endif
+
+ static
+ int (&connectivity_is_valid) (types<3>::connectivity *connectivity);
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ static
++ types<3>::connectivity *(&connectivity_load) (const char *filename,
++ long unsigned *length);
++#else
+ static
+ types<3>::connectivity *(&connectivity_load) (const char *filename,
+ long *length);
++#endif
+
+ static
+ unsigned int (&checksum) (types<3>::forest *p8est);
+@@ -600,10 +658,17 @@ namespace internal
+ p8est_init_t init_fn)
+ = p8est_balance;
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ p4est_gloidx_t (&functions<3>::partition) (types<3>::forest *p8est,
++ int partition_for_coarsening,
++ p8est_weight_t weight_fn)
++ = p8est_partition_ext;
++#else
+ void (&functions<3>::partition) (types<3>::forest *p8est,
+ int partition_for_coarsening,
+ p8est_weight_t weight_fn)
+ = p8est_partition_ext;
++#endif
+
+ void (&functions<3>::save) (const char *filename,
+ types<3>::forest *p4est,
+@@ -619,18 +684,31 @@ namespace internal
+ types<3>::connectivity **p4est)
+ = p8est_load;
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ int (&functions<3>::connectivity_save) (const char *filename,
++ types<3>::connectivity *connectivity)
++ = p8est_connectivity_save;
++#else
+ void (&functions<3>::connectivity_save) (const char *filename,
+ types<3>::connectivity *connectivity)
+ = p8est_connectivity_save;
++#endif
+
+ int (&functions<3>::connectivity_is_valid) (types<3>::connectivity
+ *connectivity)
+ = p8est_connectivity_is_valid;
+
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ types<3>::connectivity *
++ (&functions<3>::connectivity_load) (const char *filename,
++ long unsigned *length)
++ = p8est_connectivity_load;
++#else
+ types<3>::connectivity *
+ (&functions<3>::connectivity_load) (const char *filename,
+ long *length)
+ = p8est_connectivity_load;
++#endif
+
+ unsigned int (&functions<3>::checksum) (types<3>::forest *p8est)
+ = p8est_checksum;
+diff --git a/cmake/modules/FindP4EST.cmake b/cmake/modules/FindP4EST.cmake
+index f2bf417..44846c7 100644
+--- a/cmake/modules/FindP4EST.cmake
++++ b/cmake/modules/FindP4EST.cmake
+@@ -179,17 +179,28 @@
+ STRING(REGEX REPLACE
+ "^[0-9]+\\.[0-9]+\\.([0-9]+).*$" "\\1"
+ P4EST_VERSION_SUBMINOR "${P4EST_VERSION}")
+-
+- # Now for the patch number such as in 0.3.4.1. If there
+- # is no patch number, then the REGEX REPLACE will fail,
+- # setting P4EST_VERSION_PATCH to P4EST_VERSION. If that
+- # is the case, then set the patch number to zero
+ STRING(REGEX REPLACE
+- "^[0-9]+\\.[0-9]+\\.[0-9]+\\.([0-9]+)?.*$" "\\1"
++ "^[0-9]+\\.[0-9]+\\.[0-9]+\\.([0-9]+).*$" "\\1"
+ P4EST_VERSION_PATCH "${P4EST_VERSION}")
+- IF(${P4EST_VERSION_PATCH} STREQUAL "${P4EST_VERSION}")
++
++ #
++ # We cannot rely on the fact that SUBMINOR or PATCH are defined.
++ # Nevertheless, we need a full version number for our preprocessor macros
++ # to work. If the p4est version number is only of the form x.y instead of
++ # a.b.c.d, then the last two REGEX_REPLACE calls above will have failed
++ # because the regular expression didn't match the version string,
++ # and P4EST_VERSION_SUBMINOR and P4EST_VERSION_PATCH will either be
++ # empty or be the full version string. In those cases, set those numbers
++ # to 0 if necessary.
++ #
++ IF("${P4EST_VERSION_SUBMINOR}" MATCHES "^(|${P4EST_VERSION})$")
++ SET(P4EST_VERSION_SUBMINOR "0")
++ ENDIF()
++
++ IF("${P4EST_VERSION_PATCH}" MATCHES "^(|${P4EST_VERSION})$")
+ SET(P4EST_VERSION_PATCH "0")
+ ENDIF()
++
+
+
+ MARK_AS_ADVANCED(P4EST_DIR)
+diff --git a/include/deal.II/distributed/tria.h b/include/deal.II/distributed/tria.h
+index ea3e88b..8daa70d 100644
+--- a/include/deal.II/distributed/tria.h
++++ b/include/deal.II/distributed/tria.h
+@@ -88,7 +88,11 @@ namespace internal
+ typedef p4est_quadrant_t quadrant;
+ typedef p4est_topidx_t topidx;
+ typedef p4est_locidx_t locidx;
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ typedef p4est_connect_type_t balance_type;
++#else
+ typedef p4est_balance_type_t balance_type;
++#endif
+ typedef p4est_ghost_t ghost;
+ };
+
+@@ -101,7 +105,11 @@ namespace internal
+ typedef p8est_quadrant_t quadrant;
+ typedef p4est_topidx_t topidx;
+ typedef p4est_locidx_t locidx;
++#if DEAL_II_P4EST_VERSION_GTE(0,3,4,3)
++ typedef p8est_connect_type_t balance_type;
++#else
+ typedef p8est_balance_type_t balance_type;
++#endif
+ typedef p8est_ghost_t ghost;
+ };
+