]> SALOME platform Git repositories - modules/shaper.git/blob - src/SHAPERGUI/CMakeLists.txt
Salome HOME
Warnings correction for moc files generation
[modules/shaper.git] / src / SHAPERGUI / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 INCLUDE(UseQtExt)
4
5 # additional include directories
6 INCLUDE_DIRECTORIES(${QT_INCLUDES})
7
8 # additional preprocessor / compiler flags
9 ADD_DEFINITIONS(${QT_DEFINITIONS})
10
11 SET(PROJECT_HEADERS
12     SHAPER_SHAPERGUI.h
13     SHAPERGUI.h
14     SHAPERGUI_DataModel.h
15     SHAPERGUI_OCCSelector.h
16     SHAPERGUI_SalomeViewer.h
17     SHAPERGUI_NestedButton.h
18 )
19
20 SET(PROJECT_MOC_HEADERS
21     SHAPERGUI.h
22     SHAPERGUI_DataModel.h
23     SHAPERGUI_NestedButton.h
24     SHAPERGUI_SalomeViewer.h
25 )
26
27 # sources / moc wrappings
28 QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_MOC_HEADERS})
29
30 SET(PROJECT_SOURCES
31     SHAPERGUI.cpp
32     SHAPERGUI_DataModel.cpp
33     SHAPERGUI_OCCSelector.cpp
34     SHAPERGUI_SalomeViewer.cpp
35     SHAPERGUI_NestedButton.cpp
36 )
37
38 SET(PROJECT_RESOURCES
39     ${CMAKE_CURRENT_BINARY_DIR}/LightApp.xml
40     ${CMAKE_CURRENT_BINARY_DIR}/SalomeApp.xml
41     resources/shaper.png
42 )
43
44 SET(PROJECT_LIBRARIES
45     Events
46     Config
47     XGUI
48     ModuleBase
49     ${QT_LIBRARIES}
50     ${suit}
51     ${std}
52     ${LightApp}
53     ${CAM}
54     ${OCCViewer}
55     ${qtx}
56     ${CAS_SHAPE}
57 )
58
59 ADD_DEFINITIONS( -DSHAPERGUI_EXPORTS ${CAS_DEFINITIONS} )
60
61 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI
62                     ${PROJECT_SOURCE_DIR}/src/Events
63                     ${PROJECT_SOURCE_DIR}/src/ModuleBase
64                     ${PROJECT_SOURCE_DIR}/src/ModelAPI
65                     ${PROJECT_SOURCE_DIR}/src/GeomAPI
66                     ${PROJECT_SOURCE_DIR}/src/Config
67                     ${PROJECT_SOURCE_DIR}/src/ExchangePlugin
68                     ${SALOME_GUI_INCLUDE}
69                     ${SALOME_KERNEL_INCLUDE}
70                     ${CAS_INCLUDE_DIRS}
71 )
72
73 IF(${HAVE_SALOME})
74   INCLUDE_DIRECTORIES(${SALOME_KERNEL_INCLUDE})
75 ENDIF(${HAVE_SALOME})
76
77 ADD_LIBRARY(SHAPER SHARED
78     ${PROJECT_SOURCES}
79     ${PROJECT_HEADERS}
80     ${PROJECT_AUTOMOC}
81 )
82
83 ADD_DEPENDENCIES(SHAPER XGUI)
84
85 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
86 TARGET_LINK_LIBRARIES(SHAPER ${PROJECT_LIBRARIES})
87
88 # configuration
89 CONFIGURE_FILE(
90   "${CMAKE_CURRENT_SOURCE_DIR}/resources/LightApp.xml.in"
91   "${CMAKE_CURRENT_BINARY_DIR}/LightApp.xml"
92   )
93 CONFIGURE_FILE(
94   "${CMAKE_CURRENT_SOURCE_DIR}/resources/SalomeApp.xml.in"
95   "${CMAKE_CURRENT_BINARY_DIR}/SalomeApp.xml"
96   )
97
98 INSTALL(TARGETS SHAPER DESTINATION ${SHAPER_INSTALL_BIN})
99 INSTALL(FILES ${PROJECT_RESOURCES} DESTINATION ${SHAPER_INSTALL_RESOURCES})