Salome HOME
Windows porting
[tools/medcoupling.git] / src / INTERP_KERNEL / CMakeLists.txt
1 # Copyright (C) 2012-2013  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.
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 # Author : Anthony Geay (CEA/DEN)
20
21 SET(interpkernel_SOURCES
22   TransformedTriangle.cxx
23   TransformedTriangleIntersect.cxx
24   TransformedTriangleMath.cxx
25   BoundingBox.cxx
26   TranslationRotationMatrix.cxx
27   TetraAffineTransform.cxx
28   CellModel.cxx
29   UnitTetraIntersectionBary.cxx
30   InterpolationOptions.cxx
31   DirectedBoundingBox.cxx
32   Interpolation2DCurve.cxx
33   Interpolation3DSurf.cxx
34   Interpolation3D.cxx
35   Interpolation3D2D.cxx
36   MeshElement.cxx
37   InterpKernelMeshQuality.cxx
38   InterpKernelCellSimplify.cxx
39   InterpKernelMatrixTools.cxx
40   VolSurfUser.cxx
41   SplitterTetra.cxx
42   Bases/InterpKernelException.cxx
43   Geometric2D/InterpKernelGeo2DAbstractEdge.cxx
44   Geometric2D/InterpKernelGeo2DBounds.cxx
45   Geometric2D/InterpKernelGeo2DPrecision.cxx
46   Geometric2D/InterpKernelGeo2DComposedEdge.cxx
47   Geometric2D/InterpKernelGeo2DEdgeArcCircle.cxx
48   Geometric2D/InterpKernelGeo2DEdge.cxx
49   Geometric2D/InterpKernelGeo2DEdgeInfLin.cxx
50   Geometric2D/InterpKernelGeo2DEdgeLin.cxx
51   Geometric2D/InterpKernelGeo2DElementaryEdge.cxx
52   Geometric2D/InterpKernelGeo2DNode.cxx
53   Geometric2D/InterpKernelGeo2DQuadraticPolygon.cxx
54   ExprEval/InterpKernelExprParser.cxx
55   ExprEval/InterpKernelFunction.cxx
56   ExprEval/InterpKernelUnit.cxx
57   ExprEval/InterpKernelValue.cxx
58   ExprEval/InterpKernelAsmX86.cxx
59   GaussPoints/InterpKernelGaussCoords.cxx
60   )
61
62 INCLUDE_DIRECTORIES(
63   ${CMAKE_CURRENT_SOURCE_DIR}
64   ${CMAKE_CURRENT_SOURCE_DIR}/Bases
65   ${CMAKE_CURRENT_SOURCE_DIR}/Geometric2D
66   ${CMAKE_CURRENT_SOURCE_DIR}/ExprEval
67   ${CMAKE_CURRENT_SOURCE_DIR}/GaussPoints
68   )
69
70 SET(PLATFORM_MMAP)
71 IF(NOT WIN32)
72   SET(PLATFORM_MMAP "-D_POSIX_MAPPED_FILES")
73 ENDIF(NOT WIN32)
74
75 ADD_LIBRARY(interpkernel SHARED ${interpkernel_SOURCES})
76 SET_TARGET_PROPERTIES(interpkernel PROPERTIES COMPILE_FLAGS "${PLATFORM_DEFINITIONS} ${PLATFORM_MMAP}")
77 TARGET_LINK_LIBRARIES(interpkernel ${PLATFORM_LIBS})
78 INSTALL(TARGETS interpkernel EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
79
80 FILE(GLOB_RECURSE interpkernel_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
81 FILE(GLOB_RECURSE interpkernel_HEADERS_TXX "${CMAKE_CURRENT_SOURCE_DIR}/*.txx")
82 INSTALL(FILES ${interpkernel_HEADERS_HXX} ${interpkernel_HEADERS_TXX} DESTINATION ${SALOME_INSTALL_HEADERS})
83
84 # Will be used for SWIG dependencies:
85 SET (interpkernel_HEADERS_HXX PARENT_SCOPE)
86 SET (interpkernel_HEADERS_TXX PARENT_SCOPE)