From 5e152347bad8058217ebe6527bfe12a1d6556b88 Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Mon, 6 Feb 2006 15:34:56 +0000 Subject: [PATCH] Define PETSC_SKIP_UNDERSCORE_CHKERR when using PETSc. git-svn-id: https://svn.dealii.org/trunk@12234 0785d39b-7218-0410-832d-ea1e28bc413d --- deal.II/aclocal.m4 | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/deal.II/aclocal.m4 b/deal.II/aclocal.m4 index 8f866d6ff3..1abb91dbd8 100644 --- a/deal.II/aclocal.m4 +++ b/deal.II/aclocal.m4 @@ -4704,12 +4704,23 @@ AC_DEFUN(DEAL_II_CONFIGURE_PETSC, dnl AC_DEFINE(DEAL_II_USE_PETSC, 1, [Defined if a PETSc installation was found and is going to be used]) + dnl Set an additional variable (not via AC_DEFINE, since we don't want dnl to have it in config.h) which we can use in doc/doxygen/options.dox.in. dnl If we have PETSc, then the value of this variable expands to dnl defining the string "DEAL_II_USE_PETSC" for the preprocessor. If dnl we don't have no PETSc, then it does not define this string. DEAL_II_DEFINE_DEAL_II_USE_PETSC=DEAL_II_USE_PETSC + + dnl Also work around a stupidity in PETSc that makes sure it interferes in + dnl a completely obnoxious way with boost. + AC_DEFINE(PETSC_SKIP_UNDERSCORE_CHKERR, 1, + [Make sure PETSc doesn't re-define the underscore through the + preprocessor, since this interferes with boost. PETSc redefines + the underscore to be "__gterr =", but then forgets to undef this + thing. Boost simply wants to concatenate the underscore with another + string to form a class name, which then of course isn't valid + any more. See mails in early Feb 2006.]) fi -- 2.39.5