]> SALOME platform Git repositories - modules/shaper.git/blob - src/SketchPlugin/CMakeLists.txt
Salome HOME
Add SketchPlugin document template.
[modules/shaper.git] / src / SketchPlugin / 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     SketchPlugin.h
26     SketchPlugin_Arc.h
27     SketchPlugin_Circle.h
28     SketchPlugin_Constraint.h
29     SketchPlugin_ConstraintAngle.h
30     SketchPlugin_ConstraintBase.h
31     SketchPlugin_ConstraintCoincidence.h
32     SketchPlugin_ConstraintCollinear.h
33     SketchPlugin_ConstraintDistance.h
34     SketchPlugin_ConstraintDistanceAlongDir.h
35     SketchPlugin_ConstraintDistanceHorizontal.h
36     SketchPlugin_ConstraintDistanceVertical.h
37     SketchPlugin_ConstraintEqual.h
38     SketchPlugin_Fillet.h
39     SketchPlugin_ConstraintHorizontal.h
40     SketchPlugin_ConstraintLength.h
41     SketchPlugin_ConstraintMiddle.h
42     SketchPlugin_ConstraintMirror.h
43     SketchPlugin_ConstraintParallel.h
44     SketchPlugin_ConstraintPerpendicular.h
45     SketchPlugin_ConstraintRadius.h
46     SketchPlugin_ConstraintRigid.h
47     SketchPlugin_ConstraintTangent.h
48     SketchPlugin_ConstraintVertical.h
49     SketchPlugin_Ellipse.h
50     SketchPlugin_ExternalValidator.h
51     SketchPlugin_Feature.h
52     SketchPlugin_IntersectionPoint.h
53     SketchPlugin_Line.h
54     SketchPlugin_MacroArc.h
55     SketchPlugin_MacroArcReentrantMessage.h
56     SketchPlugin_MacroCircle.h
57     SketchPlugin_MacroEllipse.h
58     SketchPlugin_MultiRotation.h
59     SketchPlugin_MultiTranslation.h
60     SketchPlugin_Plugin.h
61     SketchPlugin_Point.h
62     SketchPlugin_Projection.h
63     SketchPlugin_Sketch.h
64     SketchPlugin_SketchEntity.h
65     SketchPlugin_Split.h
66     SketchPlugin_Tools.h
67     SketchPlugin_Trim.h
68     SketchPlugin_Validators.h
69 )
70
71 SET(PROJECT_SOURCES
72     SketchPlugin_Arc.cpp
73     SketchPlugin_Circle.cpp
74     SketchPlugin_Constraint.cpp
75     SketchPlugin_ConstraintAngle.cpp
76     SketchPlugin_ConstraintBase.cpp
77     SketchPlugin_ConstraintCoincidence.cpp
78     SketchPlugin_ConstraintCollinear.cpp
79     SketchPlugin_ConstraintDistance.cpp
80     SketchPlugin_ConstraintDistanceAlongDir.cpp
81     SketchPlugin_ConstraintDistanceHorizontal.cpp
82     SketchPlugin_ConstraintDistanceVertical.cpp
83     SketchPlugin_ConstraintEqual.cpp
84     SketchPlugin_Fillet.cpp
85     SketchPlugin_ConstraintHorizontal.cpp
86     SketchPlugin_ConstraintLength.cpp
87     SketchPlugin_ConstraintMiddle.cpp
88     SketchPlugin_ConstraintMirror.cpp
89     SketchPlugin_ConstraintParallel.cpp
90     SketchPlugin_ConstraintPerpendicular.cpp
91     SketchPlugin_ConstraintRadius.cpp
92     SketchPlugin_ConstraintRigid.cpp
93     SketchPlugin_ConstraintTangent.cpp
94     SketchPlugin_ConstraintVertical.cpp
95     SketchPlugin_Ellipse.cpp
96     SketchPlugin_ExternalValidator.cpp
97     SketchPlugin_Feature.cpp
98     SketchPlugin_IntersectionPoint.cpp
99     SketchPlugin_Line.cpp
100     SketchPlugin_MacroArc.cpp
101     SketchPlugin_MacroCircle.cpp
102     SketchPlugin_MacroEllipse.cpp
103     SketchPlugin_MultiRotation.cpp
104     SketchPlugin_MultiTranslation.cpp
105     SketchPlugin_Plugin.cpp
106     SketchPlugin_Point.cpp
107     SketchPlugin_Projection.cpp
108     SketchPlugin_Sketch.cpp
109     SketchPlugin_SketchEntity.cpp
110     SketchPlugin_Split.cpp
111     SketchPlugin_Tools.cpp
112     SketchPlugin_Trim.cpp
113     SketchPlugin_Validators.cpp
114 )
115
116 SET(PROJECT_LIBRARIES
117     Config
118     GeomAPI
119     GeomAlgoAPI
120     ModelAPI
121     ModelGeomAlgo
122     SketcherPrs
123     GeomDataAPI
124 )
125
126 SET(XML_RESOURCES
127   plugin-Sketch.xml
128 )
129
130 SET(TEXT_RESOURCES
131         SketchPlugin_msg_en.ts
132 )
133
134 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
135
136 ADD_DEFINITIONS(-DSKETCHPLUGIN_EXPORTS)
137 ADD_LIBRARY(SketchPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
138 TARGET_LINK_LIBRARIES(SketchPlugin ${PROJECT_LIBRARIES})
139
140 INCLUDE_DIRECTORIES(
141   ../Config
142   ../Events
143   ../ModelAPI
144   ../ModelGeomAlgo
145   ../GeomAPI
146   ../GeomAlgoAPI
147   ../GeomDataAPI
148   ../SketcherPrs
149 )
150
151 INSTALL(TARGETS SketchPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
152 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
153 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Sketch)
154 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
155
156 ADD_UNIT_TESTS(TestSketchPointLine.py
157                TestCreateArcByCenterStartEnd.py
158                TestCreateArcByThreePoints.py
159                TestCreateArcByTangentEdge.py
160                TestCreateArcChangeType.py
161                TestCreateCircleByCenterAndPassed.py
162                TestCreateCircleByThreePoints.py
163                TestCreateCircleChangeType.py
164                TestConstraintCoincidence.py
165                TestConstraintCollinear.py
166                TestConstraintLength.py
167                TestConstraintDistance.py
168                TestConstraintDistanceHorizontal.py
169                TestConstraintDistanceVertical.py
170                TestConstraintDistanceBehavior.py
171                TestConstraintParallel.py
172                TestConstraintPerpendicular.py
173                TestConstraintRadius.py
174                TestConstraintFixed.py
175                TestConstraintHorizontal.py
176                TestConstraintHorizontalValidator.py
177                TestConstraintVertical.py
178                TestConstraintEqual.py
179                TestConstraintTangent.py
180                TestConstraintAngle.py
181                TestConstraintMiddlePoint.py
182                TestEdgesOrder.py
183                TestMirror.py
184                TestMultiTranslation.py
185                TestMultiRotation.py
186                TestMultiRotationWithParameter.py
187                TestMultiRotation01.py
188                TestMultiRotation02.py
189                TestMultiRotation03.py
190                TestMultiRotation04.py
191                TestMultiRotation05.py
192                TestFillet.py
193                TestFilletInteracting.py
194                TestRectangle.py
195                TestProjection.py
196                TestProjectionIntoResult.py
197                TestSplit.py
198                TestHighload.py
199                TestSnowflake.py
200                TestArcBehavior.py
201                TestRemoveSketch.py
202                Test1061.py
203                Test1673.py
204                Test1924.py
205                Test1966.py
206                Test1967.py
207                Test2062.py
208                Test2095.py
209                Test2115.py
210                TestTrimArc01.py
211                TestTrimArc02.py
212                TestTrimArc03.py
213                TestTrimArc04.py
214                TestTrimArc05.py
215                TestTrimArc06.py
216                TestTrimArc07.py
217                TestTrimCircle01.py
218                TestTrimCircle02.py
219                TestTrimCircle03.py
220                TestTrimCircle04.py
221                TestTrimCircle05.py
222                TestTrimCircleAndArc01.py
223                TestTrimLine01.py
224                TestTrimLine02.py
225                Test2229.py
226                Test2239.py
227                TestDistanceDump.py
228                TestDistanceSignedVsUnsigned01.py
229                TestDistanceSignedVsUnsigned02.py
230                TestDistanceSignedVsUnsigned03.py
231                TestDistanceSignedVsUnsigned04.py
232                TestDistanceSignedVsUnsigned05.py
233                TestSignedDistancePointPoint.py
234                TestSignedDistancePointLine.py
235                TestIntersectionWithLine.py
236                TestIntersectionWithCircle.py
237                TestIntersectionWithSpline.py
238                TestIntersectionChangeEdge.py
239                Test2273.py
240                Test2280.py
241                Test2287.py
242                Test2341.py
243                Test2390.py
244                Test2393.py
245                Test2425.py
246                Test2440.py
247                Test2157.py
248                Test2157_2.py
249                Test2481.py
250 )
251
252 if(${SKETCHER_CHANGE_RADIUS_WHEN_MOVE})
253   ADD_UNIT_TESTS(
254                TestMovePoint.py
255                TestMoveLine.py
256                TestMoveCircle.py
257                TestMoveArc.py
258                TestMovementComplex.py
259   )
260 endif()
261
262 # Copy data-files to corresponding directory
263 file(GLOB DATA_FILES "${CMAKE_CURRENT_SOURCE_DIR}/Test/Data/*")
264 foreach(data_file ${DATA_FILES})
265   get_filename_component(data_file_name "${data_file}" NAME)
266   configure_file(
267     ${data_file}
268     ${CMAKE_CURRENT_BINARY_DIR}/Data/${data_file_name}
269     COPYONLY)
270 endforeach()