]> SALOME platform Git repositories - modules/shaper.git/blob - src/SHAPERGUI/CMakeLists.txt
Salome HOME
204f6c1f9eb4e23ffe6e859061a8a90fc21fa9e7
[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 # sources / moc wrappings
21 QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_HEADERS})
22
23 SET(PROJECT_SOURCES
24         SHAPERGUI.cpp
25         SHAPERGUI_DataModel.cpp
26         SHAPERGUI_OCCSelector.cpp
27         SHAPERGUI_SalomeViewer.cpp
28         SHAPERGUI_NestedButton.cpp
29 )
30
31 SET(PROJECT_RESOURCES
32         ${CMAKE_CURRENT_BINARY_DIR}/LightApp.xml
33         ${CMAKE_CURRENT_BINARY_DIR}/SalomeApp.xml
34         resources/shaper.png
35 )
36
37 SET(PROJECT_LIBRARIES
38     Events
39     Config
40     XGUI
41     ModuleBase
42     ${QT_LIBRARIES}
43     ${suit}
44     ${std}
45     ${LightApp}
46     ${CAM}
47     ${OCCViewer}
48     ${qtx}
49     ${CAS_SHAPE}
50 )
51
52 ADD_DEFINITIONS( -DSHAPERGUI_EXPORTS ${CAS_DEFINITIONS} )
53
54 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI
55                     ${PROJECT_SOURCE_DIR}/src/Events
56                     ${PROJECT_SOURCE_DIR}/src/ModuleBase
57                     ${PROJECT_SOURCE_DIR}/src/ModelAPI
58                     ${PROJECT_SOURCE_DIR}/src/GeomAPI
59                     ${PROJECT_SOURCE_DIR}/src/Config
60                     ${PROJECT_SOURCE_DIR}/src/ExchangePlugin
61                     ${SALOME_GUI_INCLUDE}
62                     ${SALOME_KERNEL_INCLUDE}
63                     ${CAS_INCLUDE_DIRS}
64 )
65
66 ADD_LIBRARY(SHAPER SHARED
67         ${PROJECT_SOURCES}
68         ${PROJECT_HEADERS}
69         ${PROJECT_AUTOMOC}
70 )
71
72 ADD_DEPENDENCIES(SHAPER XGUI)
73
74 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
75 TARGET_LINK_LIBRARIES(SHAPER ${PROJECT_LIBRARIES})
76
77 # configuration
78 CONFIGURE_FILE(
79   "${CMAKE_CURRENT_SOURCE_DIR}/resources/LightApp.xml.in"
80   "${CMAKE_CURRENT_BINARY_DIR}/LightApp.xml"
81   )
82 CONFIGURE_FILE(
83   "${CMAKE_CURRENT_SOURCE_DIR}/resources/SalomeApp.xml.in"
84   "${CMAKE_CURRENT_BINARY_DIR}/SalomeApp.xml"
85   )
86
87 INSTALL(TARGETS SHAPER DESTINATION ${SHAPER_INSTALL_BIN})
88 INSTALL(FILES ${PROJECT_RESOURCES} DESTINATION ${SHAPER_INSTALL_RESOURCES})