Salome HOME
Indentation and white spaces ...
[tools/medcoupling.git] / src / MEDLoader / CMakeLists.txt
index 5da47beaba6205c6498cf76ec61f3bc73227ad8c..c5150e7d33d21a5846c328a5591c8652f4eccbd6 100644 (file)
@@ -1,9 +1,9 @@
-# Copyright (C) 2007-2012  CEA/DEN, EDF R&D
+# Copyright (C) 2012-2019  CEA/DEN, EDF R&D
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
 # License as published by the Free Software Foundation; either
-# version 2.1 of the License.
+# version 2.1 of the License, or (at your option) any later version.
 #
 # This library is distributed in the hope that it will be useful,
 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 #
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
+# Author : Anthony Geay (CEA/DEN)
 
-ADD_SUBDIRECTORY(Swig)
-ADD_SUBDIRECTORY(Test)
+ADD_DEFINITIONS(${HDF5_DEFINITIONS} ${MEDFILE_DEFINITIONS} ${XDR_DEFINITIONS})
+
+IF(MEDCOUPLING_ENABLE_PYTHON)
+  ADD_SUBDIRECTORY(Swig)
+ENDIF(MEDCOUPLING_ENABLE_PYTHON)
+
+IF(MEDCOUPLING_BUILD_TESTS)
+  ADD_SUBDIRECTORY(Test)
+ENDIF(MEDCOUPLING_BUILD_TESTS)
+
+SET(MEDLOADER_XDR_INCLUDE_DIRS)
+SET(MEDLOADER_XDR_LIBRARIES)
+
+IF(WIN32)
+  IF(MEDCOUPLING_MEDLOADER_USE_XDR)
+    ADD_DEFINITIONS(-DNOMINMAX)
+    SET(MEDLOADER_XDR_INCLUDE_DIRS ${XDR_INCLUDE_DIRS})
+    SET(MEDLOADER_XDR_LIBRARIES ${XDR_LIBRARIES})
+  ENDIF(MEDCOUPLING_MEDLOADER_USE_XDR)
+ELSE(WIN32)
+  SET(MEDLOADER_XDR_INCLUDE_DIRS ${XDR_INCLUDE_DIRS})
+  SET(MEDLOADER_XDR_LIBRARIES ${XDR_LIBRARIES})
+ENDIF(WIN32)
 
 INCLUDE_DIRECTORIES(
-  ${MED3_INCLUDE_DIRS}
+  ${MEDFILE_INCLUDE_DIRS}
   ${HDF5_INCLUDE_DIRS}
+  ${MEDLOADER_XDR_INCLUDE_DIRS}
   ${CMAKE_CURRENT_SOURCE_DIR}/../MEDCoupling
   ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL
   ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/Bases
@@ -34,22 +57,40 @@ INCLUDE_DIRECTORIES(
 SET(medloader_SOURCES
   MEDLoader.cxx
   MEDLoaderBase.cxx
+  MEDLoaderTraits.cxx
   MEDFileUtilities.cxx
   MEDFileMesh.cxx
   MEDFileMeshElt.cxx
   MEDFileBasis.cxx
   MEDFileMeshLL.cxx
   MEDFileField.cxx
+  MEDFileFieldInternal.cxx
+  MEDFileFieldGlobs.cxx
+  MEDFileField1TS.cxx
+  MEDFileFieldMultiTS.cxx
+  MEDFileJoint.cxx
+  MEDFileEquivalence.cxx
+  MEDFileParameter.cxx
   MEDFileData.cxx
+  MEDFileFieldOverView.cxx
+  MEDFileMeshReadSelector.cxx
+  MEDFileMeshSupport.cxx
+  MEDFileStructureElement.cxx
+  MEDFileEntities.cxx
+  MEDFileBlowStrEltUp.cxx
   SauvMedConvertor.cxx
   SauvReader.cxx
   SauvWriter.cxx
   )
 
-ADD_LIBRARY(medloader SHARED ${medloader_SOURCES})
-SET_TARGET_PROPERTIES(medloader PROPERTIES COMPILE_FLAGS "${HDF5_DEFINITIONS} ${MED3_DEFINITIONS}")
-TARGET_LINK_LIBRARIES(medloader medcoupling ${MED3_LIBS_C_ONLY} ${HDF5_LIBS})
-INSTALL(TARGETS medloader DESTINATION ${MED_salomelib_LIBS})
+ADD_LIBRARY(medloader ${medloader_SOURCES})
+SET_TARGET_PROPERTIES(medloader PROPERTIES COMPILE_FLAGS "")
+TARGET_LINK_LIBRARIES(medloader medcouplingcpp ${MEDFILE_C_LIBRARIES} ${HDF5_LIBRARIES} ${MEDLOADER_XDR_LIBRARIES})
+INSTALL(TARGETS medloader EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${MEDCOUPLING_INSTALL_LIBS})
 
 FILE(GLOB medloader_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
-INSTALL(FILES ${medloader_HEADERS_HXX} DESTINATION ${MED_salomeinclude_HEADERS})
+FILE(GLOB medloader_HEADERS_TXX "${CMAKE_CURRENT_SOURCE_DIR}/*.txx")
+INSTALL(FILES ${medloader_HEADERS_HXX} ${medloader_HEADERS_TXX} DESTINATION ${MEDCOUPLING_INSTALL_HEADERS})
+
+# To allow usage as SWIG dependencies:
+SET(medloader_HEADERS_HXX PARENT_SCOPE)