Salome HOME
[EDF] (2023-T3) Creation of a non planar face from a list of edges and points
[modules/geom.git] / src / GEOMImpl / CMakeLists.txt
1 # Copyright (C) 2012-2024  CEA, EDF, OPEN CASCADE
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 # --- options ---
21
22 # additional include directories
23 INCLUDE_DIRECTORIES(
24   ${OpenCASCADE_INCLUDE_DIR}
25   ${PTHREAD_INCLUDE_DIR}
26   ${KERNEL_INCLUDE_DIRS}
27   ${PYTHON_INCLUDE_DIRS}
28   ${EIGEN3_INCLUDE_DIR}
29   ${PROJECT_SOURCE_DIR}/src/ShHealOper
30   ${PROJECT_SOURCE_DIR}/src/GEOM 
31   ${PROJECT_SOURCE_DIR}/src/BlockFix
32   ${PROJECT_SOURCE_DIR}/src/GEOMAlgo 
33   ${PROJECT_SOURCE_DIR}/src/GEOMUtils
34   ${PROJECT_SOURCE_DIR}/src/SKETCHER
35   ${PROJECT_SOURCE_DIR}/src/ARCHIMEDE
36   ${PROJECT_SOURCE_DIR}/src/XAO
37   ${PROJECT_SOURCE_DIR}/src/ShHealOper
38   ${CMAKE_CURRENT_SOURCE_DIR}
39   )
40
41 # additional preprocessor / compiler flags
42 ADD_DEFINITIONS(
43   ${OpenCASCADE_DEFINITIONS}
44   ${PYTHON_DEFINITIONS}
45   )
46
47 # libraries to link to
48 SET(_link_LIBRARIES
49   ${OpenCASCADE_ModelingAlgorithms_LIBRARIES}
50   ${PYTHON_LIBRARIES}
51   ShHealOper GEOMbasic BlockFix GEOMAlgo GEOMUtils GEOMSketcher GEOMArchimede XAO
52   ${KERNEL_SALOMELocalTrace}
53   )
54
55 # --- headers ---
56
57 SET(GEOMImpl_HEADERS
58   GEOMImpl_Gen.hxx
59   GEOMImpl_IBasicOperations.hxx
60   GEOMImpl_ITransformOperations.hxx
61   GEOMImpl_IHealingOperations.hxx
62   GEOMImpl_I3DPrimOperations.hxx
63   GEOMImpl_IShapesOperations.hxx
64   GEOMImpl_IBlocksOperations.hxx
65   GEOMImpl_IBooleanOperations.hxx
66   GEOMImpl_ICurvesOperations.hxx
67   GEOMImpl_ILocalOperations.hxx
68   GEOMImpl_IInsertOperations.hxx
69   GEOMImpl_IECallBack.hxx
70   GEOMImpl_IMeasureOperations.hxx
71   GEOMImpl_IGroupOperations.hxx
72   GEOMImpl_IFieldOperations.hxx
73   GEOMImpl_IBaseIEOperations.hxx
74   GEOMImpl_ITestOperations.hxx
75   GEOMImpl_IGlue.hxx
76   GEOMImpl_PointDriver.hxx
77   GEOMImpl_IPoint.hxx
78   GEOMImpl_IPolyline.hxx
79   GEOMImpl_IPolyline2D.hxx
80   GEOMImpl_ICircle.hxx
81   GEOMImpl_ISpline.hxx
82   GEOMImpl_IEllipse.hxx
83   GEOMImpl_IExtract.hxx
84   GEOMImpl_IFillet.hxx
85   GEOMImpl_IFillet1d.hxx
86   GEOMImpl_IFillet2d.hxx
87   GEOMImpl_IChamfer.hxx
88   GEOMImpl_ICopy.hxx
89   GEOMImpl_IArchimede.hxx
90   GEOMImpl_IArc.hxx
91   GEOMImpl_ISketcher.hxx
92   GEOMImpl_I3DSketcher.hxx
93   GEOMImpl_IVector.hxx
94   GEOMImpl_IDisk.hxx
95   GEOMImpl_IFace.hxx
96   GEOMImpl_ILine.hxx
97   GEOMImpl_IPatchFace.hxx
98   GEOMImpl_IPlane.hxx
99   GEOMImpl_IProximity.hxx
100   GEOMImpl_IMarker.hxx
101   GEOMImpl_ITranslate.hxx
102   GEOMImpl_IMirror.hxx
103   GEOMImpl_IProjection.hxx
104   GEOMImpl_IProjOnCyl.hxx
105   GEOMImpl_IOffset.hxx
106   GEOMImpl_IScale.hxx
107   GEOMImpl_IRotate.hxx
108   GEOMImpl_IPosition.hxx
109   GEOMImpl_IHealing.hxx
110   GEOMImpl_IImportExport.hxx
111   GEOMImpl_IBox.hxx
112   GEOMImpl_IBlocks.hxx
113   GEOMImpl_IBlockTrsf.hxx
114   GEOMImpl_IBoolean.hxx
115   GEOMImpl_ICylinder.hxx
116   GEOMImpl_ICone.hxx
117   GEOMImpl_ISphere.hxx
118   GEOMImpl_ITorus.hxx
119   GEOMImpl_ITransferData.hxx
120   GEOMImpl_IPrism.hxx
121   GEOMImpl_IPipe.hxx
122   GEOMImpl_IPipePath.hxx
123   GEOMImpl_IRevolution.hxx
124   GEOMImpl_IMeasure.hxx
125   GEOMImpl_IConformity.hxx
126   GEOMImpl_IShapes.hxx
127   GEOMImpl_IShapeExtend.hxx
128   GEOMImpl_IFilling.hxx
129   GEOMImpl_IThruSections.hxx
130   GEOMImpl_IPartition.hxx
131   GEOMImpl_IPipeDiffSect.hxx
132   GEOMImpl_IPipeShellSect.hxx
133   GEOMImpl_IPipeBiNormal.hxx
134   GEOMImpl_ICurveParametric.hxx
135   GEOMImpl_IIsoline.hxx
136   GEOMImpl_VectorDriver.hxx
137   GEOMImpl_LineDriver.hxx
138   GEOMImpl_DiskDriver.hxx
139   GEOMImpl_FaceDriver.hxx
140   GEOMImpl_PlaneDriver.hxx
141   GEOMImpl_MarkerDriver.hxx
142   GEOMImpl_TranslateDriver.hxx
143   GEOMImpl_MirrorDriver.hxx
144   GEOMImpl_ProjectionDriver.hxx
145   GEOMImpl_OffsetDriver.hxx
146   GEOMImpl_ScaleDriver.hxx
147   GEOMImpl_PositionDriver.hxx
148   GEOMImpl_BoxDriver.hxx
149   GEOMImpl_ConeDriver.hxx
150   GEOMImpl_CylinderDriver.hxx
151   GEOMImpl_SphereDriver.hxx
152   GEOMImpl_TorusDriver.hxx
153   GEOMImpl_PrismDriver.hxx
154   GEOMImpl_PipeDriver.hxx
155   GEOMImpl_PipePathDriver.hxx
156   GEOMImpl_ThruSectionsDriver.hxx
157   GEOMImpl_RevolutionDriver.hxx
158   GEOMImpl_ShapeDriver.hxx
159   GEOMImpl_BlockDriver.hxx
160   GEOMImpl_Block6Explorer.hxx
161   GEOMImpl_MeasureDriver.hxx
162   GEOMImpl_ConformityDriver.hxx
163   GEOMImpl_PolylineDriver.hxx
164   GEOMImpl_PolylineDumper.hxx
165   GEOMImpl_CircleDriver.hxx
166   GEOMImpl_EllipseDriver.hxx
167   GEOMImpl_ArcDriver.hxx
168   GEOMImpl_SplineDriver.hxx
169   GEOMImpl_SketcherDriver.hxx
170   GEOMImpl_3DSketcherDriver.hxx
171   GEOMImpl_FilletDriver.hxx
172   GEOMImpl_Fillet1d.hxx
173   GEOMImpl_Fillet1dDriver.hxx
174   GEOMImpl_Fillet2dDriver.hxx
175   GEOMImpl_ChamferDriver.hxx
176   GEOMImpl_BooleanDriver.hxx
177   GEOMImpl_PartitionDriver.hxx
178   GEOMImpl_CopyDriver.hxx
179   GEOMImpl_ExportDriver.hxx
180   GEOMImpl_ImportDriver.hxx
181   GEOMImpl_RotateDriver.hxx
182   GEOMImpl_ArchimedeDriver.hxx
183   GEOMImpl_HealingDriver.hxx
184   GEOMImpl_FillingDriver.hxx
185   GEOMImpl_GlueDriver.hxx
186   GEOMImpl_PatchFaceDriver.hxx
187   GEOMImpl_ShapeProximityDriver.hxx
188   GEOMImpl_Types.hxx
189   GEOM_GEOMImpl.hxx
190   GEOMImpl_ICanonicalRecognition.hxx
191   GEOMImpl_WrappingDriver.hxx
192   GEOMImpl_IWrap.hxx
193   )
194 # --- sources ---
195
196 SET(GEOMImpl_SOURCES
197   GEOMImpl_IBasicOperations.cxx
198   GEOMImpl_ITransformOperations.cxx
199   GEOMImpl_IHealingOperations.cxx
200   GEOMImpl_I3DPrimOperations.cxx
201   GEOMImpl_IShapesOperations.cxx
202   GEOMImpl_IBlocksOperations.cxx
203   GEOMImpl_IBooleanOperations.cxx
204   GEOMImpl_ICurvesOperations.cxx
205   GEOMImpl_ILocalOperations.cxx
206   GEOMImpl_IInsertOperations.cxx
207   GEOMImpl_IECallBack.cxx
208   GEOMImpl_IMeasureOperations.cxx
209   GEOMImpl_IGroupOperations.cxx
210   GEOMImpl_IFieldOperations.cxx
211   GEOMImpl_IBaseIEOperations.cxx
212   GEOMImpl_ITestOperations.cxx
213   GEOMImpl_IPolyline2D.cxx
214   GEOMImpl_ITransferData.cxx
215   GEOMImpl_IConformity.cxx
216   GEOMImpl_Gen.cxx
217   GEOMImpl_PointDriver.cxx
218   GEOMImpl_VectorDriver.cxx
219   GEOMImpl_LineDriver.cxx
220   GEOMImpl_PlaneDriver.cxx
221   GEOMImpl_MarkerDriver.cxx
222   GEOMImpl_TranslateDriver.cxx
223   GEOMImpl_MirrorDriver.cxx
224   GEOMImpl_ProjectionDriver.cxx
225   GEOMImpl_OffsetDriver.cxx
226   GEOMImpl_ScaleDriver.cxx
227   GEOMImpl_PositionDriver.cxx
228   GEOMImpl_BoxDriver.cxx
229   GEOMImpl_FaceDriver.cxx
230   GEOMImpl_DiskDriver.cxx
231   GEOMImpl_ConeDriver.cxx
232   GEOMImpl_CylinderDriver.cxx
233   GEOMImpl_SphereDriver.cxx
234   GEOMImpl_TorusDriver.cxx
235   GEOMImpl_PrismDriver.cxx
236   GEOMImpl_PipeDriver.cxx
237   GEOMImpl_PipePathDriver.cxx
238   GEOMImpl_ThruSectionsDriver.cxx
239   GEOMImpl_RevolutionDriver.cxx
240   GEOMImpl_ShapeDriver.cxx
241   GEOMImpl_BlockDriver.cxx
242   GEOMImpl_Block6Explorer.cxx
243   GEOMImpl_MeasureDriver.cxx
244   GEOMImpl_ConformityDriver.cxx
245   GEOMImpl_PolylineDriver.cxx
246   GEOMImpl_PolylineDumper.cxx
247   GEOMImpl_CircleDriver.cxx
248   GEOMImpl_EllipseDriver.cxx
249   GEOMImpl_ArcDriver.cxx
250   GEOMImpl_SplineDriver.cxx
251   GEOMImpl_SketcherDriver.cxx
252   GEOMImpl_3DSketcherDriver.cxx
253   GEOMImpl_FilletDriver.cxx
254   GEOMImpl_Fillet1d.cxx
255   GEOMImpl_Fillet1dDriver.cxx
256   GEOMImpl_Fillet2dDriver.cxx
257   GEOMImpl_ChamferDriver.cxx
258   GEOMImpl_BooleanDriver.cxx
259   GEOMImpl_PartitionDriver.cxx
260   GEOMImpl_CopyDriver.cxx
261   GEOMImpl_ExportDriver.cxx
262   GEOMImpl_ImportDriver.cxx
263   GEOMImpl_RotateDriver.cxx
264   GEOMImpl_ArchimedeDriver.cxx
265   GEOMImpl_HealingDriver.cxx
266   GEOMImpl_FillingDriver.cxx
267   GEOMImpl_GlueDriver.cxx
268   GEOMImpl_PatchFaceDriver.cxx
269   GEOMImpl_ShapeProximityDriver.cxx
270   GEOMImpl_FieldDriver.cxx
271   GEOMImpl_ICanonicalRecognition.cxx
272   GEOMImpl_WrappingDriver.cxx
273   )
274
275 # --- rules ---
276
277 ADD_LIBRARY(GEOMImpl ${GEOMImpl_SOURCES})
278 TARGET_LINK_LIBRARIES(GEOMImpl ${_link_LIBRARIES})
279 INSTALL(TARGETS GEOMImpl EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
280
281 INSTALL(FILES ${GEOMImpl_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})