Salome HOME
Merge branch 'BR_EDF_2018_Lot1'
[modules/shaper.git] / src / FeaturesPlugin / CMakeLists.txt
1 ## Copyright (C) 2014-2017  CEA/DEN, EDF R&D
2 ##
3 ## This library is free software; you can redistribute it and/or
4 ## modify it under the terms of the GNU Lesser General Public
5 ## License as published by the Free Software Foundation; either
6 ## version 2.1 of the License, or (at your option) any later version.
7 ##
8 ## This library is distributed in the hope that it will be useful,
9 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 ## Lesser General Public License for more details.
12 ##
13 ## You should have received a copy of the GNU Lesser General Public
14 ## License along with this library; if not, write to the Free Software
15 ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 ##
17 ## See http:##www.salome-platform.org/ or
18 ## email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
19 ##
20
21 INCLUDE(Common)
22 INCLUDE(UnitTest)
23
24 SET(PROJECT_HEADERS
25     FeaturesPlugin.h
26     FeaturesPlugin_Plugin.h
27     FeaturesPlugin_Extrusion.h
28     FeaturesPlugin_Recover.h
29     FeaturesPlugin_Revolution.h
30     FeaturesPlugin_Rotation.h
31     FeaturesPlugin_Translation.h
32     FeaturesPlugin_Boolean.h
33     FeaturesPlugin_BooleanCut.h
34     FeaturesPlugin_BooleanFuse.h
35     FeaturesPlugin_BooleanCommon.h
36     FeaturesPlugin_BooleanSmash.h
37     FeaturesPlugin_BooleanFill.h
38     FeaturesPlugin_Intersection.h
39     FeaturesPlugin_Partition.h
40     FeaturesPlugin_Pipe.h
41     FeaturesPlugin_Placement.h
42     FeaturesPlugin_CompositeBoolean.h
43     FeaturesPlugin_CompositeSketch.h
44     FeaturesPlugin_ExtrusionBoolean.h
45     FeaturesPlugin_ExtrusionCut.h
46     FeaturesPlugin_ExtrusionFuse.h
47     FeaturesPlugin_RevolutionBoolean.h
48     FeaturesPlugin_RevolutionCut.h
49     FeaturesPlugin_RevolutionFuse.h
50     FeaturesPlugin_Union.h
51     FeaturesPlugin_ValidatorTransform.h
52     FeaturesPlugin_Validators.h
53     FeaturesPlugin_RemoveSubShapes.h
54     FeaturesPlugin_Tools.h
55     FeaturesPlugin_Symmetry.h
56     FeaturesPlugin_Scale.h
57     FeaturesPlugin_MultiTranslation.h
58     FeaturesPlugin_MultiRotation.h
59     FeaturesPlugin_Fillet.h
60     FeaturesPlugin_Measurement.h
61 )
62
63 SET(PROJECT_SOURCES
64     FeaturesPlugin_Plugin.cpp
65     FeaturesPlugin_Extrusion.cpp
66     FeaturesPlugin_Recover.cpp
67     FeaturesPlugin_Revolution.cpp
68     FeaturesPlugin_Rotation.cpp
69     FeaturesPlugin_Translation.cpp
70     FeaturesPlugin_Boolean.cpp
71     FeaturesPlugin_Intersection.cpp
72     FeaturesPlugin_Partition.cpp
73     FeaturesPlugin_Pipe.cpp
74     FeaturesPlugin_Placement.cpp
75     FeaturesPlugin_CompositeBoolean.cpp
76     FeaturesPlugin_CompositeSketch.cpp
77     FeaturesPlugin_ExtrusionBoolean.cpp
78     FeaturesPlugin_ExtrusionCut.cpp
79     FeaturesPlugin_ExtrusionFuse.cpp
80     FeaturesPlugin_RevolutionBoolean.cpp
81     FeaturesPlugin_RevolutionCut.cpp
82     FeaturesPlugin_RevolutionFuse.cpp
83     FeaturesPlugin_Union.cpp
84     FeaturesPlugin_ValidatorTransform.cpp
85     FeaturesPlugin_Validators.cpp
86     FeaturesPlugin_RemoveSubShapes.cpp
87     FeaturesPlugin_Tools.cpp
88     FeaturesPlugin_Symmetry.cpp
89     FeaturesPlugin_Scale.cpp
90     FeaturesPlugin_MultiTranslation.cpp
91     FeaturesPlugin_MultiRotation.cpp
92     FeaturesPlugin_Fillet.cpp
93     FeaturesPlugin_Measurement.cpp
94 )
95
96 SET(XML_RESOURCES
97   plugin-Features.xml
98   extrusion_widget.xml
99   extrusioncut_widget.xml
100   extrusionfuse_widget.xml
101   revolution_widget.xml
102   revolutioncut_widget.xml
103   revolutionfuse_widget.xml
104   rotation_widget.xml
105   translation_widget.xml
106   boolean_widget.xml
107   recover_widget.xml
108   partition_widget.xml
109   placement_widget.xml
110   intersection_widget.xml
111   pipe_widget.xml
112   remove_subshapes_widget.xml
113   union_widget.xml
114   symmetry_widget.xml
115   scale_widget.xml
116   multitranslation_widget.xml
117   multirotation_widget.xml
118   fillet_widget.xml
119   measurement_widget.xml
120 )
121
122 SET(TEXT_RESOURCES
123     FeaturesPlugin_msg_en.ts
124     FeaturesPlugin_msg_ru.ts
125 )
126
127 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
128
129
130 INCLUDE_DIRECTORIES(
131   ../ModelAPI
132   ../GeomAPI
133   ../GeomAlgoAPI
134   ../GeomValidators
135   ../Events
136 )
137
138 SET(PROJECT_LIBRARIES
139     Events
140     ModelAPI
141     GeomAPI
142     GeomAlgoAPI
143     GeomValidators
144 )
145
146 ADD_DEFINITIONS(-DFEATURESPLUGIN_EXPORTS)
147 ADD_LIBRARY(FeaturesPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
148 TARGET_LINK_LIBRARIES(FeaturesPlugin ${PROJECT_LIBRARIES})
149
150 INSTALL(TARGETS FeaturesPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
151 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
152 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Features)
153 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
154
155 ADD_UNIT_TESTS(TestExtrusion.py
156                TestExtrusionCut.py
157                TestExtrusionFuse.py
158                TestRevolution.py
159                TestRevolutionCut.py
160                TestRevolutionFuse.py
161                TestCompositeFeaturesOnCompSolids.py
162                TestPartition.py
163                TestPlacement.py
164                TestTranslation.py
165                TestRotation.py
166                TestBoolean.py
167                TestBooleanCompSolids.py
168                TestBooleanSmash.py
169                TestBooleanFill.py
170                TestBooleanFillWithPlane.py
171                TestMultiBoolean.py
172                TestSerialBoolean.py
173                TestIntersection.py
174                TestUnion.py
175                TestUnionFaces.py
176                TestRemoveSubShapes.py
177                TestRemoveSubShapes2.py
178                TestPipe.py
179                TestRecover.py
180                TestRecover1798.py
181                TestFillEdgeVertex.py
182                TestFillEdgeEdge.py
183                TestFillEdgeEdgeIntersected.py
184                TestFillEdgeWire.py
185                TestFillEdgeFace.py
186                TestFillEdgeShell.py
187                TestFillEdgeSolid.py
188                TestFillEdgeSolidIntersected.py
189                TestFillWireVertex.py
190                TestFillWireEdge.py
191                TestFillWireWire.py
192                TestFillWireFace.py
193                TestFillWireShell.py
194                TestFillWireSolid.py
195                TestFillFaceVertex.py
196                TestFillFaceEdge.py
197                TestFillFaceEdgeInside.py
198                TestFillFaceEdgePerpendicular.py
199                TestFillFaceWire.py
200                TestFillFaceFace.py
201                TestFillFaceShell.py
202                TestFillFaceSolid.py
203                TestFillCompFaceSolid.py
204                TestFillShellVertex.py
205                TestFillShellEdge.py
206                TestFillShellConstrPlane.py
207                TestFillShellWire.py
208                TestFillShellFace.py
209                TestFillShellShell.py
210                TestFillShellSolid.py
211                TestFillSolid2ConstructionPlanes.py
212                TestFillSolidEdge.py
213                TestFillSolidFace.py
214                TestFillSolidCompFace.py
215                TestFillSolidShell.py
216                TestFillSolidCompShell.py
217                TestPartition2Faces.py
218                TestPartition2Solids.py
219                TestPartition2Wires.py
220                TestPartitionBox4Planes.py
221                TestPartitionEdgeSolid.py
222                TestPartitionFace2Solid.py
223 #               TestPartitionFaceSolid.py
224                TestPartitionFaceWire.py
225                TestPartitionInclinedFaceSolid.py
226                TestPartitionWireFaceSolid.py
227                TestUnion4CurvedFaces.py
228                TestUnion4Faces.py
229                TestUnionOfUnion.py
230                TestMeasurementLength.py
231                TestMeasurementDistance.py
232                TestMeasurementRadius.py
233                TestMeasurementAngle.py
234                Test1922.py
235                Test1942.py
236                Test1915.py
237                Test2023.py
238                Test2046.py
239                Test2038.py
240                Test2172.py
241                Test2194.py
242                Test2197_1.py
243                Test2197_2.py
244                Test2197_3.py
245                Test2197_4.py
246                Test2215.py
247                Test2222.py
248                Test2233.py
249                Test2231.py
250                Test2240.py
251                Test2246.py
252                Test2248.py
253                Test2251.py
254                Test2255.py
255                Test2289.py
256                Test2304.py
257                Test2304_2.py
258                Test2375.py
259                Test2377.py
260                Test2394.py
261                Test2395.py
262                Test2419_1.py
263                Test2419_2.py
264                Test2419_3.py
265                Test2465.py
266                Test2495.py
267                Test2514.py
268                Test2520.py
269 )