Salome HOME
Merge branch 'Dev_2.1.0' of salome:modules/shaper into Dev_2.1.0
[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_WidgetEditor.h
19         PartSet_WidgetMultiSelector.h
20         PartSet_WidgetPoint2dDistance.h
21         PartSet_WidgetPoint2DFlyout.h
22         PartSet_WidgetShapeSelector.h
23         PartSet_WidgetFileSelector.h
24         PartSet_Filters.h
25         PartSet_FilterInfinite.h
26         PartSet_SketcherMgr.h
27         PartSet_SketcherReetntrantMgr.h
28         PartSet_MenuMgr.h
29         PartSet_WidgetSketchCreator.h
30         PartSet_IconFactory.h
31         PartSet_WidgetChoice.h
32 )
33
34 SET(PROJECT_SOURCES
35         PartSet_CustomPrs.cpp
36         PartSet_ExternalObjectsMgr.cpp
37         PartSet_Module.cpp
38         PartSet_OperationPrs.cpp
39         PartSet_Tools.cpp
40         PartSet_WidgetSketchLabel.cpp
41         PartSet_Validators.cpp
42         PartSet_WidgetEditor.cpp
43         PartSet_WidgetMultiSelector.cpp
44         PartSet_WidgetPoint2d.cpp
45         PartSet_WidgetPoint2dDistance.cpp
46         PartSet_WidgetPoint2DFlyout.cpp
47         PartSet_WidgetShapeSelector.cpp
48         PartSet_WidgetFileSelector.cpp
49         PartSet_Filters.cpp
50         PartSet_FilterInfinite.cpp
51         PartSet_SketcherMgr.cpp
52         PartSet_SketcherReetntrantMgr.cpp
53         PartSet_MenuMgr.cpp
54         PartSet_WidgetSketchCreator.cpp
55         PartSet_IconFactory.cpp
56 )
57
58 SET(PROJECT_RESOURCES 
59     PartSet_icons.qrc
60 )
61
62 #SET(TEXT_RESOURCES
63 #       PartSet_msg_fr.ts
64 #)
65
66 SET(PROJECT_LIBRARIES
67     ModuleBase
68     Config
69     GeomAPI
70     GeomDataAPI
71         SketcherPrs
72     ${QT_LIBRARIES}
73     ${CAS_KERNEL}
74     ${CAS_SHAPE}
75 )
76
77 SET(PROJECT_AUTOMOC 
78     ${CMAKE_CURRENT_BINARY_DIR}/PartSet_automoc.cpp
79 )
80
81 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
82 #QT4_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
83 #QT4_CREATE_TRANSLATION(QM_RESOURCES 
84 #                                          ${PROJECT_SOURCES}
85 #                                          ${TEXT_RESOURCES}
86 #                                          OPTIONS -extensions cpp -no-recursive
87 #                                          )
88
89 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
90 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
91 #SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
92 SOURCE_GROUP ("Resource Files" FILES ${PROJECT_RESOURCES})
93
94 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/XGUI 
95                     ${CMAKE_SOURCE_DIR}/src/Config
96                     ${CMAKE_SOURCE_DIR}/src/Events
97                     ${CMAKE_SOURCE_DIR}/src/ModuleBase
98                     ${CMAKE_SOURCE_DIR}/src/ModelAPI
99                     ${CMAKE_SOURCE_DIR}/src/GeomDataAPI
100                     ${CMAKE_SOURCE_DIR}/src/GeomAlgoAPI
101                     ${CMAKE_SOURCE_DIR}/src/SketchPlugin
102                     ${CMAKE_SOURCE_DIR}/src/ExchangePlugin
103                     ${CMAKE_SOURCE_DIR}/src/SketcherPrs
104                     ${CMAKE_SOURCE_DIR}/src/FeaturesPlugin
105                     ${CMAKE_SOURCE_DIR}/src/PartSetPlugin
106                     ${CMAKE_SOURCE_DIR}/src/GeomAPI
107                     ${CMAKE_SOURCE_DIR}/src/AppElements
108                     ${CAS_INCLUDE_DIRS}
109                     ${SUIT_INCLUDE}
110 )
111
112 ADD_DEFINITIONS(-DPARTSET_EXPORTS ${CAS_DEFINITIONS})
113 ADD_LIBRARY(PartSet SHARED 
114         ${PROJECT_SOURCES} 
115         ${PROJECT_HEADERS} 
116         ${PROJECT_COMPILED_RESOURCES} 
117 #       ${TEXT_RESOURCES} 
118 #       ${QM_RESOURCES}
119 )
120
121 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
122 TARGET_LINK_LIBRARIES(PartSet ${PROJECT_LIBRARIES} XGUI ModelAPI GeomAlgoAPI)
123
124 ADD_DEPENDENCIES(PartSet ModuleBase)
125
126 INSTALL(TARGETS PartSet DESTINATION bin)
127 #INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)