Salome HOME
228e7e13d8debf4a7ae51b084a524675b82d64ba
[modules/shaper.git] / src / FeaturesPlugin / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
2
3 INCLUDE(Common)
4 INCLUDE(UnitTest)
5
6 SET(PROJECT_HEADERS
7     FeaturesPlugin.h
8     FeaturesPlugin_Plugin.h
9     FeaturesPlugin_Extrusion.h
10     FeaturesPlugin_Revolution.h
11     FeaturesPlugin_Rotation.h
12     FeaturesPlugin_Translation.h
13     FeaturesPlugin_Boolean.h
14     FeaturesPlugin_Group.h
15     FeaturesPlugin_Intersection.h
16     FeaturesPlugin_Partition.h
17     FeaturesPlugin_Pipe.h
18     FeaturesPlugin_Placement.h
19     FeaturesPlugin_CompositeBoolean.h
20     FeaturesPlugin_CompositeSketch.h
21     FeaturesPlugin_ExtrusionBoolean.h
22     FeaturesPlugin_ExtrusionCut.h
23     FeaturesPlugin_ExtrusionFuse.h
24     FeaturesPlugin_RevolutionBoolean.h
25     FeaturesPlugin_RevolutionCut.h
26     FeaturesPlugin_RevolutionFuse.h
27     FeaturesPlugin_ValidatorTransform.h
28     FeaturesPlugin_Validators.h
29     FeaturesPlugin_Wire.h
30 )
31
32 SET(PROJECT_SOURCES
33     FeaturesPlugin_Plugin.cpp
34     FeaturesPlugin_Extrusion.cpp
35     FeaturesPlugin_Revolution.cpp
36     FeaturesPlugin_Rotation.cpp
37     FeaturesPlugin_Translation.cpp
38     FeaturesPlugin_Boolean.cpp
39     FeaturesPlugin_Group.cpp
40     FeaturesPlugin_Intersection.cpp
41     FeaturesPlugin_Partition.cpp
42     FeaturesPlugin_Pipe.cpp
43     FeaturesPlugin_Placement.cpp
44     FeaturesPlugin_CompositeBoolean.cpp
45     FeaturesPlugin_CompositeSketch.cpp
46     FeaturesPlugin_ExtrusionBoolean.cpp
47     FeaturesPlugin_ExtrusionCut.cpp
48     FeaturesPlugin_ExtrusionFuse.cpp
49     FeaturesPlugin_RevolutionBoolean.cpp
50     FeaturesPlugin_RevolutionCut.cpp
51     FeaturesPlugin_RevolutionFuse.cpp
52     FeaturesPlugin_ValidatorTransform.cpp
53     FeaturesPlugin_Validators.cpp
54     FeaturesPlugin_Wire.cpp
55 )
56
57 SET(XML_RESOURCES
58   plugin-Features.xml
59   extrusion_widget.xml
60   extrusioncut_widget.xml
61   extrusionfuse_widget.xml
62   revolution_widget.xml
63   revolutioncut_widget.xml
64   revolutionfuse_widget.xml
65   rotation_widget.xml
66   translation_widget.xml
67   boolean_widget.xml
68   group_widget.xml
69   partition_widget.xml
70   placement_widget.xml
71   intersection_widget.xml
72   pipe_widget.xml
73   wire_widget.xml
74 )
75
76 INCLUDE_DIRECTORIES(
77   ../ModelAPI
78   ../GeomAPI
79   ../GeomAlgoAPI
80   ../GeomValidators
81   ../Events
82 )
83
84 SET(PROJECT_LIBRARIES
85     Events
86     ModelAPI
87     GeomAPI
88     GeomAlgoAPI
89     GeomValidators
90 )
91
92 SET(ICON_RESOURCES
93   icons/angle.png
94   icons/angle_down.png
95   icons/angle_up.png
96   icons/angle_up_down.png
97   icons/angle_up_down_32x32.png
98   icons/axis.png
99   icons/bool_common.png
100   icons/bool_cut.png
101   icons/bool_fuse.png
102   icons/bool_smash.png
103   icons/common.png
104   icons/cut.png
105   icons/cut_shape.png
106   icons/cut_tool.png
107   icons/dimension_down.png
108   icons/dimension_down_32x32.png
109   icons/dimension_up.png
110   icons/dimension_up_32x32.png
111   icons/dimension_up_down.png
112   icons/dimension_up_down_32x32.png
113   icons/dimension_v.png
114   icons/dimension_v_32x32.png
115   icons/dimension_vert_32x32.png
116   icons/extrusion.png
117   icons/extrusion_cut.png
118   icons/extrusion_fuse.png
119   icons/extrusionsketch.png
120   icons/feature_wire.png
121   icons/fusion.png
122   icons/intersection.png
123   icons/movement.png
124   icons/partition.png
125   icons/pipe.png
126   icons/pipe_binormal_32x32.png
127   icons/pipe_locations_32x32.png
128   icons/pipe_simple_32x32.png
129   icons/placement.png
130   icons/placement_from.png
131   icons/placement_to.png
132   icons/plane.png
133   icons/plane_inverted.png
134   icons/plane_inverted_32x32.png
135   icons/revol.png
136   icons/revol_cut.png
137   icons/revol_fuse.png
138   icons/revolsketch.png
139   icons/rotation.png
140   icons/shape_group.png
141   icons/sketch.png
142 )
143
144 ADD_DEFINITIONS(-DFEATURESPLUGIN_EXPORTS)
145 ADD_LIBRARY(FeaturesPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES})
146 TARGET_LINK_LIBRARIES(FeaturesPlugin ${PROJECT_LIBRARIES})
147
148 INSTALL(TARGETS FeaturesPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
149 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
150 INSTALL(FILES ${ICON_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Features)
151
152 ADD_UNIT_TESTS(TestExtrusion.py
153                TestExtrusionCut.py
154                TestExtrusionFuse.py
155                TestRevolution.py
156                TestRevolutionCut.py
157                TestRevolutionFuse.py
158                TestCompositeFeaturesOnCompSolids.py
159                TestPartition.py
160                TestPlacement.py
161                TestTranslation.py
162                TestRotation.py
163                TestBoolean.py
164                TestBooleanCompSolids.py
165                TestBooleanSmash.py
166                TestMultiBoolean.py
167                TestSerialBoolean.py
168                TestGroup.py
169                TestIntersection.py)