Salome HOME
Merge from V6_main (04/10/2012)
[modules/gui.git] / src / SUITApp / CMakeLists.txt
1 # Copyright (C) 2012  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/UseQT4EXT.cmake)
21
22 INCLUDE_DIRECTORIES(
23   ${QT_INCLUDE_DIRS}
24   ${PTHREAD_INCLUDE_DIRS}
25   ${PYTHON_INCLUDE_DIRS}
26   ${CMAKE_CURRENT_SOURCE_DIR}
27   ${CMAKE_BINARY_DIR}
28   ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
29   ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
30   ${CMAKE_CURRENT_SOURCE_DIR}/../Style
31 )
32
33 SET(COMMON_FLAGS "${QT_DEFINITIONS} ${PYTHON_DEFINITIONS} ${PLATFORM_DEFINITIONS}")
34
35 SET(COMMON_LIBS
36   qtx 
37   suit 
38   SalomeStyle
39   ${QT_MT_LIBS}
40 )
41
42 SET(GUI_HEADERS SUITApp_Application.h)
43 QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
44
45 SET(SUITApp_SOURCES
46   SUITApp.cxx
47   SUITApp_Application.cxx
48 )
49 SET(COMMON_HEADERS_HXX)
50 IF(ENABLE_PYCONSOLE)
51   SET(COMMON_HEADERS_HXX
52     ${COMMON_HEADERS_HXX}
53     SUITApp_init_python.hxx
54   )
55   SET(SUITApp_SOURCES
56     ${SUITApp_SOURCES}
57     SUITApp_init_python.cxx
58   )
59   SET(COMMON_LIBS
60     ${COMMON_LIBS}
61     ${PYTHON_LIBS}
62    )
63 ENDIF(ENABLE_PYCONSOLE)
64
65 IF(ENABLE_TESTRECORDER)
66   SET(COMMON_FLAGS
67     ${COMMON_FLAGS}
68     -DENABLE_TESTRECORDER
69     ${TESTRECORDER_DEFINITIONS}
70   )
71     SET(COMMON_LIBS
72     ${COMMON_LIBS}
73     ${TESTRECORDER_LIBS}
74   )
75 ENDIF(ENABLE_TESTRECORDER)
76
77 SET(GUITS_SOURCES
78   resources/SUITApp_msg_en.ts
79   resources/SUITApp_msg_fr.ts
80 )
81
82 ADD_LIBRARY(SUITApp SHARED ${SUITApp_SOURCES} ${GUI_HEADERS_MOC})
83 SET_TARGET_PROPERTIES(SUITApp PROPERTIES COMPILE_FLAGS "${COMMON_FLAGS}")
84 TARGET_LINK_LIBRARIES(SUITApp ${COMMON_LIBS})
85 INSTALL(TARGETS SUITApp DESTINATION ${GUI_salomelib_LIBS})
86
87 ADD_EXECUTABLE(TestSUITApp SUITApp.cxx)
88 SET_TARGET_PROPERTIES(TestSUITApp PROPERTIES COMPILE_FLAGS "${COMMON_FLAGS}" OUTPUT_NAME "SUITApp")
89 TARGET_LINK_LIBRARIES(TestSUITApp SUITApp ${COMMON_LIBS})
90 INSTALL(TARGETS TestSUITApp DESTINATION ${GUI_salomebin_BINS})
91
92 FILE(GLOB COMMON_HEADERS_H "${CMAKE_CURRENT_SOURCE_DIR}/*.h")
93 SET(COMMON_HEADERS ${COMMON_HEADERS_H} ${COMMON_HEADERS_HXX})
94 INSTALL(FILES ${COMMON_HEADERS} DESTINATION ${GUI_salomeinclude_HEADERS})
95 QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${GUI_salomeres_DATA}")