Salome HOME
cf821fd9e051dc28768f43fdee83e6298cfbacc9
[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_Recover.h
11     FeaturesPlugin_Revolution.h
12     FeaturesPlugin_Rotation.h
13     FeaturesPlugin_Translation.h
14     FeaturesPlugin_Boolean.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_Union.h
28     FeaturesPlugin_ValidatorTransform.h
29     FeaturesPlugin_Validators.h
30     FeaturesPlugin_RemoveSubShapes.h
31     FeaturesPlugin_Tools.h
32     FeaturesPlugin_Symmetry.h
33     FeaturesPlugin_Scale.h
34 )
35
36 SET(PROJECT_SOURCES
37     FeaturesPlugin_Plugin.cpp
38     FeaturesPlugin_Extrusion.cpp
39     FeaturesPlugin_Recover.cpp
40     FeaturesPlugin_Revolution.cpp
41     FeaturesPlugin_Rotation.cpp
42     FeaturesPlugin_Translation.cpp
43     FeaturesPlugin_Boolean.cpp
44     FeaturesPlugin_Intersection.cpp
45     FeaturesPlugin_Partition.cpp
46     FeaturesPlugin_Pipe.cpp
47     FeaturesPlugin_Placement.cpp
48     FeaturesPlugin_CompositeBoolean.cpp
49     FeaturesPlugin_CompositeSketch.cpp
50     FeaturesPlugin_ExtrusionBoolean.cpp
51     FeaturesPlugin_ExtrusionCut.cpp
52     FeaturesPlugin_ExtrusionFuse.cpp
53     FeaturesPlugin_RevolutionBoolean.cpp
54     FeaturesPlugin_RevolutionCut.cpp
55     FeaturesPlugin_RevolutionFuse.cpp
56     FeaturesPlugin_Union.cpp
57     FeaturesPlugin_ValidatorTransform.cpp
58     FeaturesPlugin_Validators.cpp
59     FeaturesPlugin_RemoveSubShapes.cpp
60     FeaturesPlugin_Tools.cpp
61     FeaturesPlugin_Symmetry.cpp
62     FeaturesPlugin_Scale.cpp
63 )
64
65 SET(XML_RESOURCES
66   plugin-Features.xml
67   extrusion_widget.xml
68   extrusioncut_widget.xml
69   extrusionfuse_widget.xml
70   revolution_widget.xml
71   revolutioncut_widget.xml
72   revolutionfuse_widget.xml
73   rotation_widget.xml
74   translation_widget.xml
75   boolean_widget.xml
76   recover_widget.xml
77   partition_widget.xml
78   placement_widget.xml
79   intersection_widget.xml
80   pipe_widget.xml
81   remove_subshapes_widget.xml
82   union_widget.xml
83   symmetry_widget.xml
84   scale_widget.xml
85 )
86
87 SET(TEXT_RESOURCES
88     FeaturesPlugin_msg_en.ts
89     FeaturesPlugin_msg_ru.ts
90 )
91
92 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
93
94
95 INCLUDE_DIRECTORIES(
96   ../ModelAPI
97   ../GeomAPI
98   ../GeomAlgoAPI
99   ../GeomValidators
100   ../Events
101 )
102
103 SET(PROJECT_LIBRARIES
104     Events
105     ModelAPI
106     GeomAPI
107     GeomAlgoAPI
108     GeomValidators
109 )
110
111 ADD_DEFINITIONS(-DFEATURESPLUGIN_EXPORTS)
112 ADD_LIBRARY(FeaturesPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
113 TARGET_LINK_LIBRARIES(FeaturesPlugin ${PROJECT_LIBRARIES})
114
115 INSTALL(TARGETS FeaturesPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
116 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
117 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Features)
118 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
119
120 ADD_UNIT_TESTS(TestExtrusion.py
121                TestExtrusionCut.py
122                TestExtrusionFuse.py
123                TestRevolution.py
124                TestRevolutionCut.py
125                TestRevolutionFuse.py
126                TestCompositeFeaturesOnCompSolids.py
127                TestPartition.py
128                TestPlacement.py
129                TestTranslation.py
130                TestRotation.py
131                TestBoolean.py
132                TestBooleanCompSolids.py
133                TestBooleanSmash.py
134                TestBooleanFill.py
135                TestMultiBoolean.py
136                TestSerialBoolean.py
137                TestIntersection.py
138                TestUnion.py
139                TestRemoveSubShapes.py
140                TestPipe.py
141                TestRecover.py
142                TestRecover1798.py
143                Test1922.py
144                Test1942.py
145                Test1915.py
146 )