X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSUITApp%2FCMakeLists.txt;h=404da384d7deac5e9d2f10e7f38456fed52bd1df;hb=75e47574c7b9e08f69d35391de2a126684e275fb;hp=a42319f6815f1684921ba2032d4e765b3711d221;hpb=8b9900140f7696371500751caf743f1b51c896bd;p=modules%2Fgui.git diff --git a/src/SUITApp/CMakeLists.txt b/src/SUITApp/CMakeLists.txt index a42319f68..404da384d 100755 --- a/src/SUITApp/CMakeLists.txt +++ b/src/SUITApp/CMakeLists.txt @@ -1,9 +1,9 @@ -# Copyright (C) 2012-2013 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2012-2016 CEA/DEN, EDF R&D, OPEN CASCADE # # 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. +# 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 @@ -17,76 +17,92 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -INCLUDE(UseQt4Ext) +INCLUDE(UseQtExt) +# --- options --- + +# additional include directories INCLUDE_DIRECTORIES( ${QT_INCLUDES} - ${PTHREAD_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS} - ${CMAKE_CURRENT_SOURCE_DIR} + ${PTHREAD_INCLUDE_DIR} ${PROJECT_BINARY_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx - ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT - ${CMAKE_CURRENT_SOURCE_DIR}/../Style + ${PROJECT_SOURCE_DIR}/src/Qtx + ${PROJECT_SOURCE_DIR}/src/SUIT + ${PROJECT_SOURCE_DIR}/src/Style ) +# additional preprocessor / compiler flags +ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS}) +IF(ENABLE_TESTRECORDER) + ADD_DEFINITIONS("-DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}") +ENDIF() +# libraries to link to +SET(_link_LIBRARIES ${PLATFORM_LIBS} ${QT_LIBRARIES} qtx suit SalomeStyle) +IF(SALOME_USE_PYCONSOLE) + LIST(APPEND _link_LIBRARIES ${PYTHON_LIBRARIES}) +ENDIF() +IF(ENABLE_TESTRECORDER) + LIST(APPEND _link_LIBRARIES ${TESTRECORDER_LIBS}) +ENDIF() -SET(COMMON_LIBS - qtx - suit - SalomeStyle - ${QT_LIBRARIES} -) +# --- headers --- -SET(GUI_HEADERS SUITApp_Application.h) -QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS}) +# header files / to be processed by moc +SET(_moc_HEADERS + SUITApp_Application.h +) -SET(SUITApp_SOURCES - SUITApp.cxx - SUITApp_Application.cxx +# header files / internal +# no processing currently: TODO: check for MSVS project +SET(_internal_HEADERS + SUITApp_init_python.hxx ) -SET(COMMON_HEADERS_HXX) + +# header files / no moc processing IF(SALOME_USE_PYCONSOLE) - SET(COMMON_HEADERS_HXX - ${COMMON_HEADERS_HXX} - SUITApp_init_python.hxx - ) - SET(SUITApp_SOURCES - ${SUITApp_SOURCES} - SUITApp_init_python.cxx - ) - SET(COMMON_LIBS - ${COMMON_LIBS} - ${PYTHON_LIBRARIES} - ) -ENDIF(SALOME_USE_PYCONSOLE) + SET(_other_HEADERS SUITApp_init_python.hxx) +ENDIF() -IF(ENABLE_TESTRECORDER) - ADD_DEFINITIONS("-DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}") - SET(COMMON_LIBS - ${COMMON_LIBS} - ${TESTRECORDER_LIBS} - ) -ENDIF(ENABLE_TESTRECORDER) +# header files / to install +SET(SUITApp_HEADERS ${_moc_HEADERS} ${_other_HEADERS}) + +# --- resources --- -SET(GUITS_SOURCES +# resource files / to be processed by lrelease +SET(_ts_RESOURCES resources/SUITApp_msg_en.ts resources/SUITApp_msg_fr.ts + resources/SUITApp_msg_ja.ts ) -ADD_DEFINITIONS(${QT_DEFINITIONS} ${PYTHON_DEFINITIONS}) +# --- sources --- + +# sources / moc wrappings +QT_WRAP_MOC(_moc_SOURCES ${_moc_HEADERS}) + +# sources / static +SET(_other_SOURCES + SUITApp_Application.cxx +) +IF(SALOME_USE_PYCONSOLE) + LIST(APPEND _other_SOURCES SUITApp_init_python.cxx) +ENDIF() + +# sources / to compile +SET(SUITApp_SOURCES ${_other_SOURCES} ${_moc_SOURCES}) + +# --- rules --- -ADD_LIBRARY(SUITApp ${SUITApp_SOURCES} ${GUI_HEADERS_MOC}) -TARGET_LINK_LIBRARIES(SUITApp ${COMMON_LIBS}) +ADD_LIBRARY(SUITApp ${SUITApp_SOURCES}) +TARGET_LINK_LIBRARIES(SUITApp ${_link_LIBRARIES}) INSTALL(TARGETS SUITApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS}) ADD_EXECUTABLE(TestSUITApp SUITApp.cxx) SET_TARGET_PROPERTIES(TestSUITApp PROPERTIES OUTPUT_NAME "SUITApp") -TARGET_LINK_LIBRARIES(TestSUITApp SUITApp ${COMMON_LIBS}) +TARGET_LINK_LIBRARIES(TestSUITApp ${_link_LIBRARIES} SUITApp) INSTALL(TARGETS TestSUITApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_BINS}) -FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h") -SET(COMMON_HEADERS ${COMMON_HEADERS_H} ${COMMON_HEADERS_HXX}) -INSTALL(FILES ${COMMON_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS}) -QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}") +INSTALL(FILES ${SUITApp_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS}) +QT_INSTALL_TS_RESOURCES("${_ts_RESOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")