X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=CMakeLists.txt;h=2f1abc23c14fc72e66a460d397453d535e8a150d;hb=cd3ffac3fabc68b4d1dee2ad199302f04b20d2c8;hp=f77f11b506e9d23ededdc00b1960d30163c4b45d;hpb=e33e8e2029a4e91779b9c1d5f480979fa7b51d0b;p=modules%2Fsmesh.git diff --git a/CMakeLists.txt b/CMakeLists.txt index f77f11b50..2f1abc23c 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,7 +28,7 @@ CMAKE_POLICY(SET CMP0003 NEW) STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC) SET(${PROJECT_NAME_UC}_MAJOR_VERSION 7) -SET(${PROJECT_NAME_UC}_MINOR_VERSION 2) +SET(${PROJECT_NAME_UC}_MINOR_VERSION 3) SET(${PROJECT_NAME_UC}_PATCH_VERSION 0) SET(${PROJECT_NAME_UC}_VERSION ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION}) @@ -58,15 +58,14 @@ SET(BUILD_SHARED_LIBS TRUE) LIST(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/adm_local/cmake_files") # User options -# (some options have already been defined in KERNEL) # ============ -#OPTION(SALOME_BUILD_TESTS "Build SALOME tests" ${SALOME_BUILD_TESTS}) For use in the future -OPTION(SALOME_BUILD_DOC "Generate SALOME SMESH documentation" ${SALOME_BUILD_DOC}) +OPTION(SALOME_BUILD_TESTS "Build SALOME tests" ON) +OPTION(SALOME_BUILD_DOC "Generate SALOME SMESH documentation" ON) # Advanced options: OPTION(SALOME_BUILD_GUI "Enable GUI" ON) -OPTION(SALOME_SMESH_USE_CGNS "Enable shape recognition from picture" OFF) -OPTION(SALOME_SMESH_USE_TBB "Enable shape recognition from picture" OFF) +OPTION(SALOME_SMESH_USE_CGNS "Enable import/export to CGNS format" OFF) +OPTION(SALOME_SMESH_USE_TBB "Enable parallel computation" OFF) #On Linux use Fortran to compile MEFISTO2D IF(NOT WIN32) @@ -75,10 +74,8 @@ IF(NOT WIN32) ADD_DEFINITIONS(-DENABLE_MEFISTO) ENDIF(NOT WIN32) - MARK_AS_ADVANCED(SALOME_BUILD_GUI SALOME_SMESH_USE_CGNS SALOME_SMESH_USE_TBB) - # Prerequisites # ============= # Find "big" prerequisites first - they reference themselves many others @@ -110,7 +107,11 @@ FIND_PACKAGE(SalomeHDF5 REQUIRED COMPONENTS C) IF(SALOME_USE_MPI) FIND_PACKAGE(SalomeMPI) # needed for doc generation by Sphinx ENDIF() - +IF(SALOME_BUILD_TESTS) + ENABLE_TESTING() + FIND_PACKAGE(SalomeCppUnit) + SALOME_LOG_OPTIONAL_PACKAGE(CppUnit SALOME_BUILD_TESTS) +ENDIF() IF(SALOME_BUILD_DOC) FIND_PACKAGE(SalomeDoxygen) FIND_PACKAGE(SalomeSphinx) @@ -124,7 +125,7 @@ IF(SALOME_BUILD_GUI) IF(EXISTS ${GUI_ROOT_DIR}) LIST(APPEND CMAKE_MODULE_PATH "${GUI_ROOT_DIR}/adm_local/cmake_files") FIND_PACKAGE(SalomeGUI) - + ## ## Prerequisites From GUI: ## @@ -148,6 +149,13 @@ SET(GEOM_ROOT_DIR $ENV{GEOM_ROOT_DIR} CACHE PATH "Path to the Salome GEOM") IF(EXISTS ${GEOM_ROOT_DIR}) LIST(APPEND CMAKE_MODULE_PATH "${GEOM_ROOT_DIR}/adm_local/cmake_files") FIND_PACKAGE(SalomeGEOM REQUIRED) + ADD_DEFINITIONS(${GEOM_DEFINITIONS}) + INCLUDE_DIRECTORIES(${GEOM_INCLUDE_DIRS}) + IF(SALOME_BUILD_GUI) + IF(NOT SALOME_GEOM_BUILD_GUI) + MESSAGE(FATAL_ERROR "We absolutely need a Salome GEOM with GUI, please set SALOME_BUILD_GUI=ON in GEOM module") + ENDIF(NOT SALOME_GEOM_BUILD_GUI) + ENDIF(SALOME_BUILD_GUI) ELSE(EXISTS ${GEOM_ROOT_DIR}) MESSAGE(FATAL_ERROR "We absolutely need a Salome GEOM, please define GEOM_ROOT_DIR") ENDIF(EXISTS ${GEOM_ROOT_DIR}) @@ -164,11 +172,13 @@ FIND_PACKAGE(SalomeCAS REQUIRED) IF(SALOME_SMESH_USE_CGNS) FIND_PACKAGE(SalomeCGNS) SALOME_LOG_OPTIONAL_PACKAGE(CGNS SALOME_SMESH_USE_CGNS) + ADD_DEFINITIONS(-DWITH_CGNS) ENDIF(SALOME_SMESH_USE_CGNS) IF(SALOME_SMESH_USE_TBB) FIND_PACKAGE(SalomeTBB) SALOME_LOG_OPTIONAL_PACKAGE(TBB SALOME_SMESH_USE_TBB) + ADD_DEFINITIONS(-DWITH_TBB) ENDIF(SALOME_SMESH_USE_TBB) FIND_PACKAGE(SalomeMEDFile REQUIRED) @@ -235,6 +245,12 @@ MARK_AS_ADVANCED(SALOME_INSTALL_PYTHON SALOME_INSTALL_PYTHON_SHARED) MARK_AS_ADVANCED(SALOME_INSTALL_AMCONFIG_LOCAL SALOME_INSTALL_DOC) MARK_AS_ADVANCED(SALOME_SMESH_INSTALL_RES_DATA SALOME_SMESH_INSTALL_PLUGINS) +# Accumulate environment variables for SMESH module +SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH NOCHECK ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_BINS} + ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_PYTHON} + ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_PYTHON_SHARED}) +SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH NOCHECK ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS}) + # Sources # ======== @@ -298,6 +314,10 @@ SET(CGNS_ROOT_DIR "${CGNS_ROOT_DIR}") SET(TBB_ROOT_DIR "${TBB_ROOT_DIR}") SET(CONF_INCLUDE_DIRS "${PROJECT_SOURCE_DIR}/include" "${PROJECT_BINARY_DIR}/include") + +# Build variables that will be expanded when configuring SalomeConfig.cmake: +SALOME_CONFIGURE_PREPARE(CGNS TBB MEDFile) + CONFIGURE_PACKAGE_CONFIG_FILE(${PROJECT_NAME}Config.cmake.in ${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake INSTALL_DESTINATION "${SALOME_INSTALL_CMAKE_LOCAL}"