diff options
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/dealii/ChangeLog | 7 | ||||
-rw-r--r-- | sci-libs/dealii/Manifest | 2 | ||||
l--------- | sci-libs/dealii/dealii-8.0.0.ebuild | 1 | ||||
-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.patch | 271 |
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; + }; + |