-# Copyright (C) 2012-2013 CEA/DEN, EDF R&D
+# Copyright (C) 2012-2024 CEA, EDF
#
# 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
#
# Author : Anthony Geay (CEA/DEN)
-IF(SALOME_BUILD_TESTS)
+IF(MEDCOUPLING_BUILD_TESTS)
ADD_SUBDIRECTORY(Test)
-ENDIF(SALOME_BUILD_TESTS)
+ENDIF(MEDCOUPLING_BUILD_TESTS)
+
+### KILLER WARNINGS TO HELP INT64 MANAGEMENT
+#ADD_DEFINITIONS(-Wextra -Wsynth -Wno-unused-parameter -pedantic -Wall -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Wctor-dtor-privacy -Wnon-virtual-dtor -Woverloaded-virtual -Wreturn-type -Wno-endif-labels -Wsign-compare -Wmissing-format-attribute -Wno-multichar -Wno-deprecated-declarations -Wpacked -Wredundant-decls -Wlong-long -Wdisabled-optimization -Wunknown-pragmas -Wundef -Wreorder)
+
+IF (NOT DEFINED MSVC)
+ ADD_DEFINITIONS(-Wsign-compare -Wconversion)
+ENDIF()
INCLUDE_DIRECTORIES(
${CMAKE_CURRENT_BINARY_DIR}/../..
+ ${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL
${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/Bases
${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/Geometric2D
${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/ExprEval
${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/GaussPoints
+ ${CMAKE_CURRENT_SOURCE_DIR}/../INTERP_KERNEL/LinearAlgebra
)
SET(medcoupling_SOURCES
MEDCouplingField.cxx
+ MEDCouplingFieldFloat.cxx
MEDCouplingFieldDouble.cxx
+ MEDCouplingFieldInt32.cxx
+ MEDCouplingFieldInt64.cxx
MEDCouplingUMesh.cxx
+ MEDCouplingUMesh_internal.cxx
+ MEDCouplingUMesh_intersection.cxx
MEDCoupling1GTUMesh.cxx
MEDCouplingMemArray.cxx
+ MEDCouplingMemArrayFloat.cxx
MEDCouplingMemArrayChar.cxx
+ MEDCouplingMap.cxx
+ MEDCouplingTraits.cxx
MEDCouplingTimeLabel.cxx
MEDCouplingCMesh.cxx
+ MEDCouplingIMesh.cxx
MEDCouplingCurveLinearMesh.cxx
MEDCouplingStructuredMesh.cxx
MEDCouplingTimeDiscretization.cxx
MEDCouplingFieldDiscretization.cxx
+ MEDCouplingFieldDiscretizationOnNodesFE.cxx
MEDCouplingRefCountObject.cxx
MEDCouplingPointSet.cxx
MEDCouplingFieldTemplate.cxx
- MEDCouplingExtrudedMesh.cxx
+ MEDCouplingMappedExtrudedMesh.cxx
MEDCouplingMesh.cxx
MEDCouplingGaussLocalization.cxx
MEDCouplingNatureOfField.cxx
MEDCouplingMultiFields.cxx
MEDCouplingDefinitionTime.cxx
MEDCouplingFieldOverTime.cxx
- )
+ MEDCouplingCartesianAMRMesh.cxx
+ MEDCouplingAMRAttribute.cxx
+ MEDCouplingMatrix.cxx
+ MEDCouplingPartDefinition.cxx
+ MEDCouplingSkyLineArray.cxx
+ MEDCouplingVoronoi.cxx
+)
SET(medcouplingremapper_SOURCES
MEDCouplingRemapper.cxx
)
-ADD_LIBRARY(medcoupling SHARED ${medcoupling_SOURCES})
-TARGET_LINK_LIBRARIES(medcoupling interpkernel)
-INSTALL(TARGETS medcoupling EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+ADD_LIBRARY(medcouplingcpp ${medcoupling_SOURCES})
+SET_TARGET_PROPERTIES(medcouplingcpp PROPERTIES OUTPUT_NAME "medcoupling")
+TARGET_LINK_LIBRARIES(medcouplingcpp interpkernel)
+INSTALL(TARGETS medcouplingcpp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${MEDCOUPLING_INSTALL_LIBS})
-ADD_LIBRARY(medcouplingremapper SHARED ${medcouplingremapper_SOURCES})
-TARGET_LINK_LIBRARIES(medcouplingremapper medcoupling)
-INSTALL(TARGETS medcouplingremapper EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+ADD_LIBRARY(medcouplingremapper ${medcouplingremapper_SOURCES})
+TARGET_LINK_LIBRARIES(medcouplingremapper medcouplingcpp)
+INSTALL(TARGETS medcouplingremapper EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${MEDCOUPLING_INSTALL_LIBS})
FILE(GLOB medcoupling_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
FILE(GLOB medcoupling_HEADERS_TXX "${CMAKE_CURRENT_SOURCE_DIR}/*.txx")
-INSTALL(FILES ${medcoupling_HEADERS_HXX} ${medcoupling_HEADERS_TXX} MEDCouplingNatureOfFieldEnum DESTINATION ${SALOME_INSTALL_HEADERS})
+INSTALL(FILES ${medcoupling_HEADERS_HXX} ${medcoupling_HEADERS_TXX} MEDCouplingNatureOfFieldEnum DESTINATION ${MEDCOUPLING_INSTALL_HEADERS})
# To allow usage as SWIG dependencies:
SET(medcoupling_HEADERS_HXX PARENT_SCOPE)