From 981e6693a8689bc7402c334a114378372f13ddc7 Mon Sep 17 00:00:00 2001 From: Wenqing Wang <wenqing.wang@ufz.de> Date: Mon, 25 Nov 2013 13:10:08 +0100 Subject: [PATCH] Update cmake configuration files for PETSc according to the code review --- CMakeLists.txt | 24 +---------------- MathLib/CMakeLists.txt | 2 +- Tests/CMakeLists.txt | 0 scripts/cmake/ExternalProjectBoost.cmake | 4 +-- scripts/cmake/Find.cmake | 20 ++++++++++++-- scripts/cmake/SubmoduleCheck.sh | 0 scripts/cmake/findPETSC/FindPETSc.cmake | 0 .../FindPackageHandleStandardArgs.cmake | 0 .../findPETSC/FindPackageMultipass.cmake | 0 scripts/cmake/findPETSC/LICENSE | 26 +++++++++++++++++++ scripts/cmake/findPETSC/README.txt | 0 .../findPETSC/ResolveCompilerPaths.cmake | 0 scripts/init.sh | 0 scripts/setup/setup.sh | 0 scripts/setup/setup_libraries.sh | 0 scripts/setup/setup_prerequisites.sh | 0 scripts/test/gcovr | 0 17 files changed, 48 insertions(+), 28 deletions(-) mode change 100755 => 100644 CMakeLists.txt mode change 100755 => 100644 MathLib/CMakeLists.txt mode change 100755 => 100644 Tests/CMakeLists.txt mode change 100755 => 100644 scripts/cmake/ExternalProjectBoost.cmake mode change 100755 => 100644 scripts/cmake/Find.cmake mode change 100755 => 100644 scripts/cmake/SubmoduleCheck.sh mode change 100755 => 100644 scripts/cmake/findPETSC/FindPETSc.cmake mode change 100755 => 100644 scripts/cmake/findPETSC/FindPackageHandleStandardArgs.cmake mode change 100755 => 100644 scripts/cmake/findPETSC/FindPackageMultipass.cmake create mode 100644 scripts/cmake/findPETSC/LICENSE mode change 100755 => 100644 scripts/cmake/findPETSC/README.txt mode change 100755 => 100644 scripts/cmake/findPETSC/ResolveCompilerPaths.cmake mode change 100755 => 100644 scripts/init.sh mode change 100755 => 100644 scripts/setup/setup.sh mode change 100755 => 100644 scripts/setup/setup_libraries.sh mode change 100755 => 100644 scripts/setup/setup_prerequisites.sh mode change 100755 => 100644 scripts/test/gcovr diff --git a/CMakeLists.txt b/CMakeLists.txt old mode 100755 new mode 100644 index 69124cff7e8..a4d5afb5000 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,8 +23,7 @@ SET (OGS_DATE "2012-08-20") ########################### ### Preliminary Options ### ########################### -OPTION(EXTERNAL_BOOST_DOWNLOAD "Should download boost?" OFF) - +OPTION(OGS_NO_BOOST_DOWNLOAD "Always use the system installed Boost?" OFF) ### CMake includes ### INCLUDE(scripts/cmake/CheckTypeSizes.cmake) @@ -120,27 +119,6 @@ IF(OGS_USE_LIS) ADD_DEFINITIONS(-DUSE_LIS) ENDIF() -IF(OGS_USE_PETSC) - MESSAGE (STATUS "Configuring for PETSc" ) - - SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/scripts/cmake/findPETSC) - FIND_PACKAGE(PETSc REQUIRED) - - include_directories( - ${PETSC_INCLUDES} - ) - - FIND_PACKAGE(MPI) - IF(MPI_FOUND) - SET(CMAKE_C_COMPILER ${MPI_COMPILER}) - SET(CMAKE_CXX_COMPILER ${MPI_COMPILER}) - ELSE(MPI_FOUND) - MESSAGE (FATAL_ERROR "Aborting: MPI implementation is not found!") - ENDIF(MPI_FOUND) - - ADD_DEFINITIONS(-DUSE_PETSC) -ENDIF() - IF(OGS_USE_EIGEN) diff --git a/MathLib/CMakeLists.txt b/MathLib/CMakeLists.txt old mode 100755 new mode 100644 index bc6255a62f2..4e01547a2ef --- a/MathLib/CMakeLists.txt +++ b/MathLib/CMakeLists.txt @@ -55,7 +55,7 @@ IF (LIS_FOUND) ENDIF() IF (OGS_USE_PETSC) - INCLUDE_DIRECTORIES ( LinAlg/PETS ) + INCLUDE_DIRECTORIES ( LinAlg/PETSc ) GET_SOURCE_FILES(SOURCES_LINALG_PETSC LinAlg/PETSc) SET ( SOURCES ${SOURCES} ${SOURCES_LINALG_PETSC}) diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt old mode 100755 new mode 100644 diff --git a/scripts/cmake/ExternalProjectBoost.cmake b/scripts/cmake/ExternalProjectBoost.cmake old mode 100755 new mode 100644 index aa105882310..f560dab99eb --- a/scripts/cmake/ExternalProjectBoost.cmake +++ b/scripts/cmake/ExternalProjectBoost.cmake @@ -101,7 +101,7 @@ IF(WIN32) ENDIF() ENDIF() -if(EXTERNAL_BOOST_DOWNLOAD) +if(NOT OGS_NO_BOOST_DOWNLOAD) # Set archive sources SET(BOOST_ARCHIVE_EXT "tar.bz2") SET(BOOST_ARCHIVE_MD5 3a855e0f919107e0ca4de4d84ad3f750) @@ -132,4 +132,4 @@ IF(NOT Boost_INCLUDE_DIRS) ENDIF() LINK_DIRECTORIES( ${source_dir}/stage/lib/ ) -endif(EXTERNAL_BOOST_DOWNLOAD) +endif(NOT OGS_NO_BOOST_DOWNLOAD) diff --git a/scripts/cmake/Find.cmake b/scripts/cmake/Find.cmake old mode 100755 new mode 100644 index 0cfd843cfdd..aabb132522d --- a/scripts/cmake/Find.cmake +++ b/scripts/cmake/Find.cmake @@ -32,9 +32,9 @@ FIND_PACKAGE(GitHub) FIND_PROGRAM(GIT_TOOL_PATH git HINTS ${GITHUB_BIN_DIR} DOC "The git command line interface") IF(NOT GIT_TOOL_PATH) IF(WIN32) - MESSAGE(STATUS "Git not found! Please install GitHub for Windows or Git!") + MESSAGE(FATAL_ERROR "Git not found! Please install GitHub for Windows or Git!") ELSE() - MESSAGE(STATUS "Git not found but is required!") + MESSAGE(FATAL_ERROR "Git not found but is required!") ENDIF() ENDIF() @@ -165,3 +165,19 @@ ENDIF() # Shapelib_FOUND IF(OGS_USE_LIS) FIND_PACKAGE( LIS REQUIRED ) ENDIF() + + +IF(OGS_USE_PETSC) + MESSAGE (STATUS "Configuring for PETSc" ) + + SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/scripts/cmake/findPETSC) + FIND_PACKAGE(PETSc REQUIRED) + + include_directories( + ${PETSC_INCLUDES} + ) + + FIND_PACKAGE(MPI REQUIRED) + + ADD_DEFINITIONS(-DOGS_USE_PETSC) +ENDIF() diff --git a/scripts/cmake/SubmoduleCheck.sh b/scripts/cmake/SubmoduleCheck.sh old mode 100755 new mode 100644 diff --git a/scripts/cmake/findPETSC/FindPETSc.cmake b/scripts/cmake/findPETSC/FindPETSc.cmake old mode 100755 new mode 100644 diff --git a/scripts/cmake/findPETSC/FindPackageHandleStandardArgs.cmake b/scripts/cmake/findPETSC/FindPackageHandleStandardArgs.cmake old mode 100755 new mode 100644 diff --git a/scripts/cmake/findPETSC/FindPackageMultipass.cmake b/scripts/cmake/findPETSC/FindPackageMultipass.cmake old mode 100755 new mode 100644 diff --git a/scripts/cmake/findPETSC/LICENSE b/scripts/cmake/findPETSC/LICENSE new file mode 100644 index 00000000000..ecc4fdc1803 --- /dev/null +++ b/scripts/cmake/findPETSC/LICENSE @@ -0,0 +1,26 @@ +Copyright + Jed Brown, Argonne National Laboratory + + +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/scripts/cmake/findPETSC/README.txt b/scripts/cmake/findPETSC/README.txt old mode 100755 new mode 100644 diff --git a/scripts/cmake/findPETSC/ResolveCompilerPaths.cmake b/scripts/cmake/findPETSC/ResolveCompilerPaths.cmake old mode 100755 new mode 100644 diff --git a/scripts/init.sh b/scripts/init.sh old mode 100755 new mode 100644 diff --git a/scripts/setup/setup.sh b/scripts/setup/setup.sh old mode 100755 new mode 100644 diff --git a/scripts/setup/setup_libraries.sh b/scripts/setup/setup_libraries.sh old mode 100755 new mode 100644 diff --git a/scripts/setup/setup_prerequisites.sh b/scripts/setup/setup_prerequisites.sh old mode 100755 new mode 100644 diff --git a/scripts/test/gcovr b/scripts/test/gcovr old mode 100755 new mode 100644 -- GitLab