From 4be454f9031bee0d85d272a4bc7c3d79d07db4bc Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <cgeuzaine@ulg.ac.be> Date: Thu, 17 Mar 2011 06:52:14 +0000 Subject: [PATCH] trying to fix missing petsc libs, second try --- CMakeLists.txt | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 051cf63324..be7d7466fc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -44,7 +44,7 @@ option(ENABLE_NETGEN "Enable Netgen mesh generator" ON) option(ENABLE_OCC "Enable Open CASCADE geometrical models" ON) option(ENABLE_OSMESA "Use OSMesa for offscreen rendering" OFF) option(ENABLE_PARSER "Build the GEO file parser" ON) -option(ENABLE_PETSC "Enable PETSc linear algebra solvers" OFF) +option(ENABLE_PETSC "Enable PETSc linear algebra solvers" ON) option(ENABLE_PLUGINS "Build the post-processing plugins" ON) option(ENABLE_POST "Build the post-processing module" ON) option(ENABLE_QT "Build QT GUI" OFF) @@ -621,26 +621,31 @@ if(ENABLE_PETSC) ${PETSC_VARIABLES}) string(REPLACE "PACKAGES_INCLUDES = " "" PETSC_PACKAGES_INCLUDES ${PETSC_PACKAGES_INCLUDES}) - if (PETSC_PACKAGES_INCLUDES) + if(PETSC_PACKAGES_INCLUDES) string(REPLACE "-I" "" PETSC_PACKAGES_INCLUDES ${PETSC_PACKAGES_INCLUDES}) string(REPLACE " " ";" PETSC_PACKAGES_INCLUDES ${PETSC_PACKAGES_INCLUDES}) foreach(VAR ${PETSC_PACKAGES_INCLUDES}) list(APPEND EXTERNAL_INCLUDES ${VAR}) endforeach(VAR) - endif (PETSC_PACKAGES_INCLUDES) + endif(PETSC_PACKAGES_INCLUDES) # find libraries (<= 3.0) set(PETSC_LIBS_REQUIRED petscksp petscdm petscmat petscvec petsc) find_all_libraries(PETSC_LIBS PETSC_LIBS_REQUIRED ${ENV_PETSC_DIR}/${ENV_PETSC_ARCH}/lib "") - # petsc 3.1 create only one library (libpetsc) - if (NOT PETSC_LIBS) - find_library (PETSC_LIBS petsc PATHS ${ENV_PETSC_DIR}/${ENV_PETSC_ARCH}/lib) + # petsc 3.1 creates only one library (libpetsc) + if(NOT PETSC_LIBS) + find_library(PETSC_LIBS petsc PATHS ${ENV_PETSC_DIR}/${ENV_PETSC_ARCH}/lib) endif(NOT PETSC_LIBS) - string(REGEX MATCH "PACKAGES_LIBS = [^\n\r]*" PETSC_PACKAGES_LIBS - ${PETSC_VARIABLES}) - string(REPLACE "PACKAGES_LIBS = " "" PETSC_PACKAGES_LIBS - ${PETSC_PACKAGES_LIBS}) - list(APPEND EXTERNAL_LIBRARIES ${PETSC_LIBS} "${PETSC_PACKAGES_LIBS}") + list(APPEND EXTERNAL_LIBRARIES ${PETSC_LIBS}) + # find additional libraries to link with + string(REGEX MATCH "PACKAGES_LIBS = [^\n\r]*" PLIBS ${PETSC_VARIABLES}) + string(REPLACE "PACKAGES_LIBS = " "" PLIBS ${PLIBS}) + string(STRIP ${PLIBS} PLIBS) + list(APPEND EXTERNAL_LIBRARIES "${PLIBS}") + string(REGEX MATCH "PCC_LINKER_LIBS = [^\n\r]*" LLIBS ${PETSC_VARIABLES}) + string(REPLACE "PCC_LINKER_LIBS = " "" LLIBS ${LLIBS}) + string(STRIP ${LLIBS} LLIBS) + list(APPEND EXTERNAL_LIBRARIES "${LLIBS}") endif(EXISTS ${ENV_PETSC_DIR}/${ENV_PETSC_ARCH}/conf/petscvariables) endif(ENABLE_PETSC) -- GitLab