X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSHAPERGUI%2FCMakeLists.txt;h=2360f5844cbe26f3a5433bba857653654273183d;hb=2632fd4da93042ee9d7787467aed233f4d272fff;hp=c8616d38333bed33ec680e166e2e4bb1daccb4fd;hpb=a9bdd72e4748283ea455fef89e11eb0eae3b7b48;p=modules%2Fshaper.git diff --git a/src/SHAPERGUI/CMakeLists.txt b/src/SHAPERGUI/CMakeLists.txt index c8616d383..2360f5844 100644 --- a/src/SHAPERGUI/CMakeLists.txt +++ b/src/SHAPERGUI/CMakeLists.txt @@ -1,72 +1,135 @@ -## Copyright (C) 2014-20xx CEA/DEN, EDF R&D +# Copyright (C) 2014-2019 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +INCLUDE(UseQtExt) -SET(CMAKE_AUTOMOC ON) +# additional include directories +INCLUDE_DIRECTORIES(${QT_INCLUDES}) + +# additional preprocessor / compiler flags +ADD_DEFINITIONS(${QT_DEFINITIONS}) + +SET(UPDATE_TRANSLATION OFF) SET(PROJECT_HEADERS - SHAPER_SHAPERGUI.h - SHAPERGUI.h - SHAPERGUI_DataModel.h - SHAPERGUI_OCCSelector.h - SHAPERGUI_SalomeViewer.h - SHAPERGUI_NestedButton.h + SHAPER_SHAPERGUI.h + SHAPERGUI.h + SHAPERGUI_DataModel.h + SHAPERGUI_OCCSelector.h + SHAPERGUI_SalomeViewer.h + SHAPERGUI_NestedButton.h + SHAPERGUI_ToolbarsMgr.h ) -SET(PROJECT_AUTOMOC - ${CMAKE_CURRENT_BINARY_DIR}/SHAPERGUI_automoc.cpp +SET(PROJECT_MOC_HEADERS + SHAPERGUI.h + SHAPERGUI_DataModel.h + SHAPERGUI_NestedButton.h + SHAPERGUI_SalomeViewer.h + SHAPERGUI_ToolbarsMgr.h ) +# sources / moc wrappings +QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_MOC_HEADERS}) + SET(PROJECT_SOURCES - SHAPERGUI.cpp - SHAPERGUI_DataModel.cpp - SHAPERGUI_OCCSelector.cpp - SHAPERGUI_SalomeViewer.cpp - SHAPERGUI_NestedButton.cpp + SHAPERGUI.cpp + SHAPERGUI_DataModel.cpp + SHAPERGUI_OCCSelector.cpp + SHAPERGUI_SalomeViewer.cpp + SHAPERGUI_NestedButton.cpp + SHAPERGUI_ToolbarsMgr.cpp ) SET(PROJECT_RESOURCES - resources/LightApp.xml - resources/SalomeApp.xml - resources/newgeom.png + ${CMAKE_CURRENT_BINARY_DIR}/LightApp.xml + resources/SalomeApp.xml + resources/shaper.png +) + +SET(TEXT_RESOURCES +# SHAPERGUI_msg_fr.ts ) +IF (${UPDATE_TRANSLATION}) + SET(PROJECT_FILES ${PROJECT_SOURCES} ${PROJECT_HEADERS} ) + QT5_CREATE_TRANSLATION(QM_RESOURCES + ${PROJECT_FILES} + ${TEXT_RESOURCES} + OPTIONS -extensions cpp -no-recursive + ) +ELSE(${UPDATE_TRANSLATION}) + QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES}) +ENDIF(${UPDATE_TRANSLATION}) + + SET(PROJECT_LIBRARIES Events Config - XGUI - ModuleBase - ${QT_LIBRARIES} - ${suit} - ${std} - ${LightApp} - ${CAM} - ${OCCViewer} - ${qtx} - ${CAS_SHAPE} + XGUI + ModuleBase + ${QT_LIBRARIES} + ${suit} + ${std} + ${LightApp} + ${CAM} + ${OCCViewer} + ${qtx} + ${SalomeObject} ) -ADD_DEFINITIONS( -DSHAPERGUI_EXPORTS ${CAS_DEFINITIONS} ) +ADD_DEFINITIONS( -DSHAPERGUI_EXPORTS ${OpenCASCADE_DEFINITIONS} ) INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI - ${PROJECT_SOURCE_DIR}/src/Events - ${PROJECT_SOURCE_DIR}/src/ModuleBase + ${PROJECT_SOURCE_DIR}/src/Events + ${PROJECT_SOURCE_DIR}/src/ModuleBase ${PROJECT_SOURCE_DIR}/src/ModelAPI ${PROJECT_SOURCE_DIR}/src/GeomAPI ${PROJECT_SOURCE_DIR}/src/Config - ${SALOME_GUI_INCLUDE} - ${SALOME_KERNEL_INCLUDE} - ${CAS_INCLUDE_DIRS} + ${PROJECT_SOURCE_DIR}/src/ExchangePlugin + ${SALOME_GUI_INCLUDE} + ${SALOME_KERNEL_INCLUDE} + ${OpenCASCADE_INCLUDE_DIR} ) -ADD_LIBRARY(SHAPERGUI SHARED - ${PROJECT_SOURCES} - ${PROJECT_HEADERS} +IF(${HAVE_SALOME}) + INCLUDE_DIRECTORIES(${SALOME_KERNEL_INCLUDE}) +ENDIF(${HAVE_SALOME}) + +ADD_LIBRARY(SHAPER SHARED + ${PROJECT_SOURCES} + ${PROJECT_HEADERS} + ${PROJECT_AUTOMOC} + ${QM_RESOURCES} ) -ADD_DEPENDENCIES(SHAPERGUI XGUI) +ADD_DEPENDENCIES(SHAPER XGUI) # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore -TARGET_LINK_LIBRARIES(SHAPERGUI ${PROJECT_LIBRARIES}) +TARGET_LINK_LIBRARIES(SHAPER ${PROJECT_LIBRARIES}) + +# configuration +CONFIGURE_FILE( + "${CMAKE_CURRENT_SOURCE_DIR}/resources/LightApp.xml.in" + "${CMAKE_CURRENT_BINARY_DIR}/LightApp.xml" + ) -INSTALL(TARGETS SHAPERGUI DESTINATION bin) -INSTALL(FILES ${PROJECT_RESOURCES} DESTINATION share/salome/resources/shaper ) +INSTALL(TARGETS SHAPER DESTINATION ${SHAPER_INSTALL_BIN}) +INSTALL(FILES ${PROJECT_RESOURCES} DESTINATION ${SHAPER_INSTALL_RESOURCES}) +INSTALL(FILES ${QM_RESOURCES} DESTINATION ${SHAPER_INSTALL_QM_RESOURCES})