X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=CMakeLists.txt;h=df0de11346ce86edd9a071a1289c28216161d4ff;hb=576840fd5646d4b041c9fc1aefdeb08e257df960;hp=8dcfa5c6a570b4596b7252132a12a735a035dc19;hpb=b61cbcd7e2cb3b8ac08f44985ac6376f92dec6dc;p=tools%2Fmedcoupling.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 8dcfa5c6a..df0de1134 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -17,14 +17,8 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -# TODO: write those in the new format, and load them via FIND_PACKAGE(): -#INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindPARMETIS.cmake) -#INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindMETIS.cmake) -#INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindSCOTCH.cmake) -#INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindSPLITTER.cmake) -#INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindRENUMBER.cmake) #IF(WIN32) -# INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindXDR.cmake) +# INCLUDE(${PROJECT_SOURCE_DIR}/adm_local/cmake_files/FindXDR.cmake) #ENDIF(WIN32) CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8 FATAL_ERROR) @@ -51,14 +45,20 @@ SET(VERSION_DEV "0") # # User options # ============ +INCLUDE(CMakeDependentOption) OPTION(SALOME_MED_STANDALONE "Build MED without CORBA bindings. When OFF, exchange to PARAVIS is disabled." OFF) OPTION(SALOME_MED_MICROMED "Build MED without MED file dependancy." OFF) OPTION(SALOME_MED_ENABLE_PYTHON "Build PYTHON bindings." ON) +OPTION(SALOME_MED_ENABLE_PARTITIONER "Build MEDPartitioner." ON) +OPTION(SALOME_MED_ENABLE_RENUMBER "Build Renumber." ON) OPTION(SALOME_USE_MPI "To build ParaMEDMEM." OFF) OPTION(SALOME_BUILD_GUI "Build GUI of MED." ON) OPTION(SALOME_BUILD_TESTS "Build MED tests." ON) OPTION(SALOME_BUILD_DOC "Build MED doc." ON) - +CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_METIS "Enable metis graph librarie in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;NOT SALOME_USE_MPI" OFF) +CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_SCOTCH "Enable scotch graph librarie in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;NOT SALOME_USE_MPI" OFF) +CMAKE_DEPENDENT_OPTION(SALOME_MED_PARTITIONER_PARMETIS "Enable parmetis graph librarie in MEDPartitioner." ON "SALOME_MED_ENABLE_PARTITIONER;SALOME_USE_MPI" OFF) +# # # Set list of prerequisites # ========================= @@ -79,9 +79,20 @@ ELSE(NOT SALOME_MED_STANDALONE) INCLUDE(SalomeMacros) ENDIF(NOT SALOME_MED_STANDALONE) +LIST(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/adm_local/cmake_files") + IF(NOT SALOME_MED_MICROMED) FIND_PACKAGE(SalomeHDF5 REQUIRED) - FIND_PACKAGE(SalomeMedfile REQUIRED) + FIND_PACKAGE(SalomeMEDFile REQUIRED) + IF(SALOME_MED_ENABLE_PARTITIONER) + FIND_PACKAGE(SalomeLibXml2 REQUIRED) + IF(SALOME_MED_PARTITIONER_METIS) + FIND_PACKAGE(SalomeMetis REQUIRED) + ENDIF(SALOME_MED_PARTITIONER_METIS) + IF(SALOME_MED_PARTITIONER_SCOTCH) + FIND_PACKAGE(SalomeScotch REQUIRED) + ENDIF(SALOME_MED_PARTITIONER_SCOTCH) + ENDIF(SALOME_MED_ENABLE_PARTITIONER) ENDIF(NOT SALOME_MED_MICROMED) IF(SALOME_BUILD_GUI) @@ -107,8 +118,15 @@ ENDIF(SALOME_BUILD_TESTS) IF(SALOME_USE_MPI) FIND_PACKAGE(SalomeMPI REQUIRED) + IF(SALOME_MED_PARTITIONER_PARMETIS) + FIND_PACKAGE(SalomeParMetis REQUIRED) + ENDIF(SALOME_MED_PARTITIONER_PARMETIS) ENDIF(SALOME_USE_MPI) +IF(SALOME_MED_ENABLE_RENUMBER) + FIND_PACKAGE(SalomeBoost) +ENDIF(SALOME_MED_ENABLE_RENUMBER) + IF(SALOME_BUILD_DOC) FIND_PACKAGE(SalomeDoxygen REQUIRED) FIND_PACKAGE(SalomeGraphviz) # Remains optional even here. @@ -120,11 +138,6 @@ IF(SALOME_MED_ENABLE_PYTHON) FIND_PACKAGE(SalomeSWIG REQUIRED) ENDIF(SALOME_MED_ENABLE_PYTHON) -IF(NOT SALOME_MED_MICROMED) - FIND_PACKAGE(SalomeMedfile REQUIRED) -ENDIF(NOT SALOME_MED_MICROMED) - - # Directories # # Directories have to be given after prerequisites (to be able to use @@ -177,6 +190,9 @@ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/MED_version.h DESTINATION ${SALOME_INS # Sources # ======== +IF(WIN32) + ADD_DEFINITIONS("-D_USE_MATH_DEFINES") +ENDIF(WIN32) ADD_SUBDIRECTORY(src) ADD_SUBDIRECTORY(bin) @@ -203,7 +219,7 @@ INCLUDE(CMakePackageConfigHelpers) # List of targets in this project we want to make visible to the rest of the world. # They all have to be INSTALL'd with the option "EXPORT ${PROJECT_NAME}TargetGroup" SET(_${PROJECT_NAME}_exposed_targets - interpkernel medcoupling) + interpkernel medcoupling medcouplingremapper) IF(NOT SALOME_MED_MICROMED) LIST(APPEND _${PROJECT_NAME}_exposed_targets @@ -271,17 +287,3 @@ INSTALL(FILES # Install the export set for use with the install-tree INSTALL(EXPORT ${PROJECT_NAME}TargetGroup DESTINATION "${SALOME_INSTALL_CMAKE}" FILE ${PROJECT_NAME}Targets.cmake) - -### - -MACRO(INSTALL_AND_COMPILE_PYTHON_FILE PYFILE2COMPINST PYFILELOC) - INSTALL(CODE "SET(PYTHON_FILE ${f})") - FOREACH(input ${PYFILE2COMPINST}) - GET_FILENAME_COMPONENT(inputname ${input} NAME) - INSTALL(FILES ${input} DESTINATION ${CMAKE_INSTALL_PREFIX}/${PYFILELOC}) - INSTALL(CODE "MESSAGE(STATUS \"py compiling ${CMAKE_INSTALL_PREFIX}/${PYFILELOC}/${inputname}\")") - INSTALL(CODE "SET(CMD \"import py_compile ; py_compile.compile('${CMAKE_INSTALL_PREFIX}/${PYFILELOC}/${inputname}')\")") - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c \"\${CMD}\")") - INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -O -c \"\${CMD}\")") - ENDFOREACH(input ${PYFILE2COMPINST}) -ENDMACRO(INSTALL_AND_COMPILE_PYTHON_FILE PYFILE2COMPINST PYFILELOC)