Salome HOME
eabe491f0f3c372c554bac781c6920f27175ea65
[modules/shaper.git] / src / PartSet / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 INCLUDE(Common)
4
5 SET(CMAKE_AUTOMOC ON)
6
7 SET(PROJECT_HEADERS
8         PartSet.h
9         PartSet_Constants.h
10         PartSet_CustomPrs.h
11         PartSet_ExternalObjectsMgr.h
12         PartSet_Module.h
13         PartSet_OperationPrs.h
14         PartSet_Tools.h
15         PartSet_WidgetSketchLabel.h
16         PartSet_Validators.h
17         PartSet_WidgetPoint2d.h
18         PartSet_WidgetPoint2dAngle.h
19         PartSet_WidgetEditor.h
20         PartSet_WidgetMultiSelector.h
21         PartSet_WidgetPoint2dDistance.h
22         PartSet_WidgetShapeSelector.h
23         PartSet_WidgetFileSelector.h
24         PartSet_Filters.h
25         PartSet_LockApplyMgr.h
26         PartSet_FilterInfinite.h
27         PartSet_SketcherMgr.h
28         PartSet_MenuMgr.h
29         PartSet_DocumentDataModel.h
30         PartSet_PartDataModel.h
31         PartSet_DataTreeModel.h
32         PartSet_WidgetSketchCreator.h
33         PartSet_TopDataModel.h
34 )
35
36 SET(PROJECT_SOURCES
37         PartSet_CustomPrs.cpp
38         PartSet_ExternalObjectsMgr.cpp
39         PartSet_Module.cpp
40         PartSet_OperationPrs.cpp
41         PartSet_Tools.cpp
42         PartSet_WidgetSketchLabel.cpp
43         PartSet_Validators.cpp
44         PartSet_WidgetEditor.cpp
45         PartSet_WidgetMultiSelector.cpp
46         PartSet_WidgetPoint2d.cpp
47         PartSet_WidgetPoint2dAngle.cpp
48         PartSet_WidgetPoint2dDistance.cpp
49         PartSet_WidgetShapeSelector.cpp
50         PartSet_WidgetFileSelector.cpp
51         PartSet_Filters.cpp
52         PartSet_LockApplyMgr.cpp
53         PartSet_FilterInfinite.cpp
54         PartSet_SketcherMgr.cpp
55         PartSet_MenuMgr.cpp
56         PartSet_DocumentDataModel.cpp
57         PartSet_PartDataModel.cpp
58         PartSet_DataTreeModel.cpp
59         PartSet_WidgetSketchCreator.cpp
60         PartSet_TopDataModel.cpp
61 )
62
63 SET(PROJECT_RESOURCES 
64     PartSet_icons.qrc
65 )
66
67 #SET(TEXT_RESOURCES
68 #       PartSet_msg_fr.ts
69 #)
70
71 SET(PROJECT_LIBRARIES
72     ModuleBase
73     Config
74     GeomAPI
75     GeomValidators
76     GeomDataAPI
77         SketcherPrs
78     ${QT_LIBRARIES}
79     ${CAS_KERNEL}
80     ${CAS_SHAPE}
81 )
82
83 SET(PROJECT_AUTOMOC 
84     ${CMAKE_CURRENT_BINARY_DIR}/PartSet_automoc.cpp
85 )
86
87 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
88 #QT4_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
89 #QT4_CREATE_TRANSLATION(QM_RESOURCES 
90 #                                          ${PROJECT_SOURCES}
91 #                                          ${TEXT_RESOURCES}
92 #                                          OPTIONS -extensions cpp -no-recursive
93 #                                          )
94
95 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
96 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
97 #SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
98 SOURCE_GROUP ("Resource Files" FILES ${PROJECT_RESOURCES})
99
100 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/XGUI 
101                     ${CMAKE_SOURCE_DIR}/src/Config
102                     ${CMAKE_SOURCE_DIR}/src/Events
103                     ${CMAKE_SOURCE_DIR}/src/ModuleBase
104                     ${CMAKE_SOURCE_DIR}/src/ModelAPI
105                     ${CMAKE_SOURCE_DIR}/src/GeomDataAPI
106                     ${CMAKE_SOURCE_DIR}/src/GeomAlgoAPI
107                     ${CMAKE_SOURCE_DIR}/src/SketchPlugin
108                     ${CMAKE_SOURCE_DIR}/src/SketcherPrs
109                     ${CMAKE_SOURCE_DIR}/src/FeaturesPlugin
110                     ${CMAKE_SOURCE_DIR}/src/PartSetPlugin
111                     ${CMAKE_SOURCE_DIR}/src/GeomAPI
112                     ${CMAKE_SOURCE_DIR}/src/GeomValidators
113                     ${CMAKE_SOURCE_DIR}/src/AppElements
114                     ${CAS_INCLUDE_DIRS}
115                                         ${SUIT_INCLUDE}
116 )
117
118 ADD_DEFINITIONS(-DPARTSET_EXPORTS ${CAS_DEFINITIONS})
119 ADD_LIBRARY(PartSet SHARED 
120         ${PROJECT_SOURCES} 
121         ${PROJECT_HEADERS} 
122         ${PROJECT_COMPILED_RESOURCES} 
123 #       ${TEXT_RESOURCES} 
124 #       ${QM_RESOURCES}
125 )
126
127 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
128 TARGET_LINK_LIBRARIES(PartSet ${PROJECT_LIBRARIES} XGUI ModelAPI GeomAlgoAPI)
129
130 ADD_DEPENDENCIES(PartSet ModuleBase)
131
132 INSTALL(TARGETS PartSet DESTINATION bin)
133 #INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)