]> SALOME platform Git repositories - tools/medcoupling.git/blob - src/MEDLoader/CMakeLists.txt
Salome HOME
feat: new crackAlong method
[tools/medcoupling.git] / src / MEDLoader / CMakeLists.txt
1 # Copyright (C) 2012-2024  CEA, EDF
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 # Author : Anthony Geay (CEA/DEN)
20
21 ADD_DEFINITIONS(${HDF5_DEFINITIONS} ${MEDFILE_DEFINITIONS} ${XDR_DEFINITIONS})
22
23 IF (NOT DEFINED MSVC)
24   ADD_DEFINITIONS(-Wsign-compare -Wconversion)
25 ENDIF()
26
27 IF(MEDCOUPLING_ENABLE_PYTHON)
28   ADD_SUBDIRECTORY(Swig)
29 ENDIF(MEDCOUPLING_ENABLE_PYTHON)
30
31 IF(MEDCOUPLING_BUILD_TESTS)
32   ADD_SUBDIRECTORY(Test)
33 ENDIF(MEDCOUPLING_BUILD_TESTS)
34
35 SET(MEDLOADER_XDR_INCLUDE_DIRS)
36 SET(MEDLOADER_XDR_LIBRARIES)
37
38 IF(WIN32)
39   IF(MEDCOUPLING_MEDLOADER_USE_XDR)
40     ADD_DEFINITIONS(-DNOMINMAX)
41     SET(MEDLOADER_XDR_INCLUDE_DIRS ${XDR_INCLUDE_DIRS})
42     SET(MEDLOADER_XDR_LIBRARIES ${XDR_LIBRARIES})
43   ENDIF(MEDCOUPLING_MEDLOADER_USE_XDR)
44 ELSE(WIN32)
45   SET(MEDLOADER_XDR_INCLUDE_DIRS ${XDR_INCLUDE_DIRS})
46   SET(MEDLOADER_XDR_LIBRARIES ${XDR_LIBRARIES})
47 ENDIF(WIN32)
48
49 INCLUDE_DIRECTORIES(
50   ${MEDFILE_INCLUDE_DIRS}
51   ${HDF5_INCLUDE_DIRS}
52   ${MEDLOADER_XDR_INCLUDE_DIRS}
53   ${CMAKE_CURRENT_SOURCE_DIR}/../MEDCoupling
54   ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL
55   ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/Bases
56   ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/Geometric2D
57   ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/ExprEval
58   ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/GaussPoints
59   )
60
61 SET(medloader_SOURCES
62   CrackAlgo.cxx
63   MEDLoader.cxx
64   MEDLoaderBase.cxx
65   MEDLoaderTraits.cxx
66   MEDFileUtilities.cxx
67   MEDFileMesh.cxx
68   MEDFileMeshElt.cxx
69   MEDFileBasis.cxx
70   MEDFileMeshLL.cxx
71   MEDFileField.cxx
72   MEDFileFieldInternal.cxx
73   MEDFileFieldGlobs.cxx
74   MEDFileField1TS.cxx
75   MEDFileFieldMultiTS.cxx
76   MEDFileJoint.cxx
77   MEDFileEquivalence.cxx
78   MEDFileParameter.cxx
79   MEDFileData.cxx
80   MEDFileFieldOverView.cxx
81   MEDFileMeshReadSelector.cxx
82   MEDFileMeshSupport.cxx
83   MEDFileStructureElement.cxx
84   MEDFileEntities.cxx
85   MEDFileBlowStrEltUp.cxx
86   SauvMedConvertor.cxx
87   SauvReader.cxx
88   SauvWriter.cxx
89   MEDMESHConverterUtilities.cxx
90   MeshFormatReader.cxx
91   MeshFormatWriter.cxx
92   libmesh5.cxx
93   )
94
95 ADD_LIBRARY(medloader ${medloader_SOURCES})
96 SET_TARGET_PROPERTIES(medloader PROPERTIES COMPILE_FLAGS "")
97 TARGET_LINK_LIBRARIES(medloader medcouplingcpp ${MEDFILE_C_LIBRARIES} ${HDF5_LIBRARIES} ${MEDLOADER_XDR_LIBRARIES})
98 INSTALL(TARGETS medloader EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${MEDCOUPLING_INSTALL_LIBS})
99
100 FILE(GLOB medloader_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
101 FILE(GLOB medloader_HEADERS_TXX "${CMAKE_CURRENT_SOURCE_DIR}/*.txx")
102 INSTALL(FILES ${medloader_HEADERS_HXX} ${medloader_HEADERS_TXX} DESTINATION ${MEDCOUPLING_INSTALL_HEADERS})
103
104 # To allow usage as SWIG dependencies:
105 SET(medloader_HEADERS_HXX PARENT_SCOPE)