X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=CMakeLists.txt;h=d9b903c1295f62c6eec3daca58f1b5c60bfe1bf8;hb=bf775cfc7109efa61e4c41678a4d880cd346f9f2;hp=225d3a5ba11380018631b811417fd23c3f52c402;hpb=f6d873300acf94e9b50bf07b72932ba4c1a62823;p=modules%2Fgui.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 225d3a5ba..d9b903c12 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -58,8 +58,8 @@ 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_DOC "Generate SALOME GUI documentation" ${SALOME_BUILD_DOC}) -OPTION(SALOME_BUILD_TESTS "Build SALOME tests" ${SALOME_BUILD_TESTS}) +OPTION(SALOME_BUILD_DOC "Generate SALOME GUI documentation" ON) +OPTION(SALOME_BUILD_TESTS "Build SALOME tests" ON) # Advanced options: OPTION(SALOME_USE_VTKVIEWER "Enable VTK visualization (Mandatory in classic configurations)" ON) @@ -120,7 +120,7 @@ FIND_PACKAGE(SalomeSIP REQUIRED) # should come after Python and before PyQt4 # Build with GUI observers feature ADD_DEFINITIONS(-DWITH_SALOMEDS_OBSERVER) -#OCCT +# OCCT FIND_PACKAGE(SalomeCAS REQUIRED) # Qt4 @@ -189,6 +189,13 @@ MARK_AS_ADVANCED(SALOME_INSTALL_PYTHON SALOME_INSTALL_PYTHON_SHARED) MARK_AS_ADVANCED(SALOME_GUI_INSTALL_PARAVIEW_LIBS SALOME_GUI_INSTALL_RES_DATA SALOME_GUI_INSTALL_RES_SCRIPTS SALOME_GUI_INSTALL_PLUGINS) MARK_AS_ADVANCED(SALOME_INSTALL_AMCONFIG_LOCAL SALOME_INSTALL_DOC) +# Accumulate environment variables for GUI module +SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH ${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 ${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_LIBS} + ${CMAKE_INSTALL_PREFIX}/${SALOME_GUI_INSTALL_PARAVIEW_LIBS}) + # Sources # ======== IF(NOT SALOME_LIGHT_ONLY) @@ -217,14 +224,71 @@ 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 - caf CAM CASCatch DDS Event GLViewer LightApp LogWindow ObjBrowser - OCCViewer OpenGLUtils Plot2d PyConsole PyInterp QDS qtx QxScene SalomeApp - SalomeIDLGUI SalomeObject SalomePrs SalomePyQtGUILight SalomePyQtGUI - SalomePyQt SalomePy SalomeSession SalomeStyle SOCC SPlot2d std SUITApp suit - SVTK ToolsGUI ViewerTools VTKViewer vtkTools vtkEDFOverloads SalomeGuiHelpers - SalomeTreeData + caf CAM CASCatch DDS Event LightApp LogWindow ObjBrowser OpenGLUtils + QDS qtx SalomeIDLGUI SalomePrs SalomeStyle std SUITApp suit ViewerTools + vtkTools vtkEDFOverloads ) +# SALOME object specific targets: +IF(SALOME_USE_SALOMEOBJECT) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + SalomeObject) +ENDIF(SALOME_USE_SALOMEOBJECT) + +# GL specific targets: +IF(SALOME_USE_GLVIEWER) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + GLViewer) +ENDIF(SALOME_USE_GLVIEWER) + +# VTK specific targets: +IF(SALOME_USE_VTKVIEWER) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + VTKViewer) + IF(SALOME_USE_SALOMEOBJECT) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + SVTK) + ENDIF(SALOME_USE_SALOMEOBJECT) +ENDIF(SALOME_USE_VTKVIEWER) + +# OCC specific targets: +IF(SALOME_USE_OCCVIEWER) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + OCCViewer) + IF(SALOME_USE_SALOMEOBJECT) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + SOCC) + ENDIF(SALOME_USE_SALOMEOBJECT) +ENDIF(SALOME_USE_OCCVIEWER) + +# Plot2d specific targets: +IF(SALOME_USE_PLOT2DVIEWER) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + Plot2d) + IF(SALOME_USE_SALOMEOBJECT) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + SPlot2d) + ENDIF(SALOME_USE_SALOMEOBJECT) +ENDIF(SALOME_USE_PLOT2DVIEWER) + +# Qx specific targets: +IF(SALOME_USE_QXGRAPHVIEWER) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + QxScene) +ENDIF(SALOME_USE_QXGRAPHVIEWER) + +# Python-based packages specific targets: +IF(SALOME_USE_PYCONSOLE) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + PyInterp PyConsole SalomePy SalomePyQtGUI SalomePyQtGUILight SalomePyQt) +ENDIF(SALOME_USE_PYCONSOLE) + +# CORBA specific targets: +IF(NOT SALOME_LIGHT_ONLY) + LIST(APPEND _${PROJECT_NAME}_exposed_targets + SalomeSession SalomeApp SalomeGuiHelpers SalomeTreeData ToolsGUI) +ENDIF(NOT SALOME_LIGHT_ONLY) + # Add all targets to the build-tree export set EXPORT(TARGETS ${_${PROJECT_NAME}_exposed_targets} FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake) @@ -233,6 +297,7 @@ EXPORT(TARGETS ${_${PROJECT_NAME}_exposed_targets} # - in the build tree: # Ensure the variables are always defined for the configure: +SET(KERNEL_ROOT_DIR "${KERNEL_ROOT_DIR}") SET(SIP_ROOT_DIR "${SIP_ROOT_DIR}") SET(QT4_ROOT_DIR "${QT4_ROOT_DIR}") SET(PYQT4_ROOT_DIR "${PYQT4_ROOT_DIR}") @@ -242,6 +307,11 @@ SET(VTK_ROOT_DIR "${VTK_ROOT_DIR}") SET(QWT_ROOT_DIR "${QWT_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(CAS OpenGL PyQt4 Qt4 Qwt SIP VTK) +message("_PREREQ_LIST ${_PREREQ_LIST}") + CONFIGURE_PACKAGE_CONFIG_FILE(${PROJECT_NAME}Config.cmake.in ${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake INSTALL_DESTINATION "${SALOME_INSTALL_CMAKE_LOCAL}"