From 3dc30cb0d56b62f1e170b6251ba0dba8b985362c Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Tue, 8 Dec 2009 04:28:19 +0000 Subject: [PATCH] Conditionalize the workaround for the Trilinos crash on not being on Mac OS X. git-svn-id: https://svn.dealii.org/trunk@20210 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/base/source/utilities.cc | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/deal.II/base/source/utilities.cc b/deal.II/base/source/utilities.cc index 6dd3470dd5..e543ee3838 100644 --- a/deal.II/base/source/utilities.cc +++ b/deal.II/base/source/utilities.cc @@ -582,7 +582,7 @@ namespace Utilities { #ifdef DEAL_II_COMPILER_SUPPORTS_MPI -# ifdef DEAL_II_USE_TRILINOS +# if defined(DEAL_II_USE_TRILINOS) && !defined(__APPLE__) // make memory pool release all // vectors that are no longer // used at this point. this is @@ -592,6 +592,17 @@ namespace Utilities // the program would run after // MPI_Finalize is called, // leading to errors + // + // TODO: On Mac OS X, shared libs can + // only depend on other libs listed + // later on the command line. This + // means that libbase can't depend on + // liblac, and we can't destroy the + // memory pool here as long as we have + // separate libraries. Consequently, + // the #ifdef above. Deal will then + // just continue to seg fault upon + // completion of main() GrowingVectorMemory ::release_unused_memory (); GrowingVectorMemory -- 2.39.5