From: Matthias Maier Date: Tue, 9 Jun 2020 03:45:56 +0000 (-0500) Subject: CMake: Avoid another symbol clash with adol-c X-Git-Tag: v9.3.0-rc1~1472^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F10484%2Fhead;p=dealii.git CMake: Avoid another symbol clash with adol-c --- diff --git a/cmake/configure/configure_adolc.cmake b/cmake/configure/configure_adolc.cmake index aa22c46214..6ad62473f8 100644 --- a/cmake/configure/configure_adolc.cmake +++ b/cmake/configure/configure_adolc.cmake @@ -68,6 +68,29 @@ MACRO(FEATURE_ADOLC_FIND_EXTERNAL var) SET(${var} FALSE) ENDIF() + # + # We have to avoid another symbol clash with the netcdf library that + # might get transitively pulled in by Trilinos (the libnetcdf.so shared + # object exports the global symbol 'function' but so does adolc + # itself). + # + IF("${Trilinos_TPL_LIBRARIES}" MATCHES "netcdf") + MESSAGE(STATUS + "Could not find a sufficient ADOL-C installation: " + "Possible symbol clash between the ADOL-C library and netcdf " + "(pulled in as optional external dependency of Trilinos) detected" + ) + SET(ADOLC_ADDITIONAL_ERROR_STRING + ${ADOLC_ADDITIONAL_ERROR_STRING} + "Could not find a sufficient ADOL-C installation:\n" + "Possible symbol clash between the ADOL-C library and netcdf " + "(pulled in as optional external dependency of Trilinos). " + "If you want to use ADOL-C, please configure deal.II to use a " + "Trilinos library with disabled netcdf bindings.\n\n" + ) + SET(${var} FALSE) + ENDIF() + # # Check whether we have a recent enough ADOL-C library that can return # values from constant objects.