Salome HOME
Task #3005 : To be able to create a group on a whole result
[modules/shaper.git] / src / CollectionPlugin / CMakeLists.txt
1 # Copyright (C) 2014-2019  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 email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE(Common)
21 INCLUDE(UnitTest)
22 INCLUDE(UseQtExt)
23
24 # additional include directories
25 INCLUDE_DIRECTORIES(${QT_INCLUDES})
26
27 # additional preprocessor / compiler flags
28 ADD_DEFINITIONS(${QT_DEFINITIONS})
29
30 SET(PROJECT_HEADERS
31     CollectionPlugin.h
32     CollectionPlugin_Plugin.h
33     CollectionPlugin_Group.h
34     CollectionPlugin_GroupAddition.h
35     CollectionPlugin_GroupIntersection.h
36     CollectionPlugin_GroupOperation.h
37     CollectionPlugin_GroupSubstraction.h
38     CollectionPlugin_Field.h
39     CollectionPlugin_WidgetCreator.h
40     CollectionPlugin_WidgetField.h
41     CollectionPlugin_Validators.h
42 )
43
44 SET(PROJECT_MOC_HEADERS
45     CollectionPlugin_WidgetField.h
46 )
47
48 SET(PROJECT_SOURCES
49     CollectionPlugin_Plugin.cpp
50     CollectionPlugin_Group.cpp
51     CollectionPlugin_GroupAddition.cpp
52     CollectionPlugin_GroupIntersection.cpp
53     CollectionPlugin_GroupOperation.cpp
54     CollectionPlugin_GroupSubstraction.cpp
55     CollectionPlugin_Field.cpp
56     CollectionPlugin_WidgetCreator.cpp
57     CollectionPlugin_WidgetField.cpp
58     CollectionPlugin_Validators.cpp
59 )
60
61 SET(XML_RESOURCES
62   plugin-Collection.xml
63   group_widget.xml
64   group_addition_widget.xml
65   group_intersection_widget.xml
66   group_substraction_widget.xml
67 )
68
69 SET(TEXT_RESOURCES
70     CollectionPlugin_msg_en.ts
71 )
72
73 # sources / moc wrappings
74 QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_MOC_HEADERS})
75
76 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
77
78 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
79 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
80
81
82 INCLUDE_DIRECTORIES(
83   ../ModelAPI
84   ../GeomAPI
85   ../GeomAlgoAPI
86   ../GeomValidators
87   ../Events
88   ../ModuleBase
89   ../Config
90   ${OpenCASCADE_INCLUDE_DIR}
91 )
92
93 SET(PROJECT_LIBRARIES
94     Events
95     ModelAPI
96     GeomAPI
97     GeomAlgoAPI
98     GeomValidators
99     ModuleBase
100 )
101
102 ADD_DEFINITIONS(-DCOLLECTIONPLUGIN_EXPORTS ${OpenCASCADE_DEFINITIONS})
103 ADD_LIBRARY(CollectionPlugin MODULE
104             ${PROJECT_SOURCES}
105             ${PROJECT_HEADERS}
106             ${XML_RESOURCES}
107             ${TEXT_RESOURCES}
108             ${PROJECT_AUTOMOC})
109 TARGET_LINK_LIBRARIES(CollectionPlugin ${PROJECT_LIBRARIES})
110
111 INSTALL(TARGETS CollectionPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
112 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
113 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Collection)
114 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
115
116 ADD_UNIT_TESTS(
117                TestGroup.py
118                TestGroup2.py
119                TestField.py
120                TestGroup1799.py
121                TestGroupMove01.py
122                TestGroupMove02.py
123                TestGroupMove03.py
124                TestGroupMove04.py
125                TestGroupMove05.py
126                TestGroupMove06.py
127                TestGroupMove07.py
128                TestGroupMove08.py
129                TestGroupMove09.py
130                TestGroupMove10.py
131                TestGroupMove11.py
132                TestGroupMove12.py
133                TestGroupMove13.py
134                TestGroupMove14.py
135                TestGroupMove15.py
136                TestGroupMove16.py
137                TestGroupMove17.py
138                TestGroupMove18.py
139                TestGroupMove19.py
140                TestGroupMove20.py
141                TestGroupMove21.py
142                TestGroupMove22.py
143                TestGroupMove23.py
144                TestGroupMove24.py
145                TestGroupMove25.py
146                TestGroupShareTopology.py
147                TestGroupAddition.py
148                TestGroupAddition_Error.py
149                TestGroupIntersection.py
150                TestGroupIntersection_Error.py
151                TestGroupSubstraction.py
152                TestGroupSubstraction2.py
153                TestGroupSubstraction_Error1.py
154                TestGroupSubstraction_Error2.py
155                Test2977.py
156                TestGroupWholeResult1.py
157                TestGroupWholeResult2.py
158 )