From 19d827a98980e9f219d2f2c90194f7fc5d787c9a Mon Sep 17 00:00:00 2001
From: Jonathan Lambrechts <jonathan.lambrechts@uclouvain.be>
Date: Fri, 8 Oct 2010 09:02:37 +0000
Subject: [PATCH] adapt CMakelist to petsc 3.1 on mac

---
 CMakeLists.txt | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6c6c4703b2..f1a4723605 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -610,15 +610,21 @@ if(ENABLE_PETSC)
            ${PETSC_VARIABLES})
     string(REPLACE "PACKAGES_INCLUDES = " "" PETSC_PACKAGES_INCLUDES
            ${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})
+    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)
+      endforeach(VAR)
+    endif (PETSC_PACKAGES_INCLUDES)
     # find libraries
     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_SLEPC_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
-- 
GitLab