X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=CMakeLists.txt;h=3030b4f0d5d9b0b449bafbbfec67186e555802bd;hb=e4c340979cdd6a7896d466fa74f86b2488c61735;hp=93b73452e6c4fb508329f71c6de8283ba1aef0f7;hpb=3b3c449e8e6eb0b28900b473ca443b03f4eec69a;p=tools%2Fmedcoupling.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 93b73452e..3030b4f0d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2007-2012 CEA/DEN, EDF R&D +# Copyright (C) 2012-2013 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 @@ -17,79 +17,125 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -CMAKE_MINIMUM_REQUIRED(VERSION 2.4.7 FATAL_ERROR) +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8 FATAL_ERROR) IF(COMMAND cmake_policy) cmake_policy(SET CMP0003 NEW) ENDIF(COMMAND cmake_policy) ENABLE_TESTING() -SET(VERSION "7.0.0") -SET(VERSION_DEV "1") +SET(VERSION "7.2.0") +SET(VERSION_DEV "0") SET(WITH_MEDMEMGUI "0") #Defining all options first option(SALOME_USE_MPI "Use MPI containers" OFF) + SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR}) IF(KERNEL_ROOT_DIR) FILE(TO_CMAKE_PATH $ENV{KERNEL_ROOT_DIR} KERNEL_ROOT_DIR) SET(MED_ENABLE_KERNEL ON) + # directories for packages detection SET(SALOME_MACROS_DIR ${KERNEL_ROOT_DIR}/salome_adm/cmake_files) + LIST(APPEND CMAKE_MODULE_PATH "${SALOME_MACROS_DIR}") + + INCLUDE(SalomeMacros) + INCLUDE(SalomeSetupPlatform) + + FIND_PACKAGE(SalomeKERNEL) + + # Try first to find medfile version using the new CMake first + FIND_PACKAGE(SalomeMedfile QUIET) + IF(medfile_FOUND) + MESSAGE(STATUS "Found Medfile in config mode (new CMake version of medfile)") + # Backward compat: + SET(MED_ENABLE_MED3 ON) + SET(MED3_INCLUDE_DIRS "${MEDFILE_INCLUDE_DIRS}") + SET(MED3_LIBS_C_ONLY "${MEDFILE_C_LIBRARIES}") + ELSE() + # if not found, revert to the old logic: + FIND_PACKAGE(MEDFILE REQUIRED) + SET(MED_ENABLE_MED3 ON) + ENDIF() + + FIND_PACKAGE(SalomePThread) + FIND_PACKAGE(SalomePython) + SET(PYTHON_LIBS ${PYTHON_LIBRARIES}) + + FIND_PACKAGE(SalomeOmniORB) + FIND_PACKAGE(SalomeOmniORBPy) + SET(OMNIORB_LIBS ${OMNIORB_LIBRARIES}) + + IF(SALOME_USE_MPI) + FIND_PACKAGE(SalomeMPI) + SET(MPI_IS_OK 1) + ENDIF() + + FIND_PACKAGE(SalomeHDF5) + FIND_PACKAGE(SalomeBoost) + + FIND_PACKAGE(SalomeLibXml2) + # Backward compat: + SET(LIBXML_INCLUDE_DIRS "${LIBXML2_INCLUDE_DIR}") + SET(LIBXML_LIBS "${LIBXML2_LIBRARIES}") + + FIND_PACKAGE(SalomeSWIG) + SET(SWIG_STATUS TRUE) + + FIND_PACKAGE(SalomeCppUnit) + SET(CPPUNIT_IS_OK ON) + SET(CPPUNIT_LIBS "${CPPUNIT_LIBRARIES}") + + FIND_PACKAGE(SalomeDoxygen) + FIND_PACKAGE(SalomeSphinx) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindPLATFORM.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindPYTHON.cmake) - if(SALOME_USE_MPI) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindMPI.cmake) - endif(SALOME_USE_MPI) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindOMNIORB.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindPTHREADS.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindHDF5.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindBOOST.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindLIBXML2.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindSWIG.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindCPPUNIT.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindDOXYGEN.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindSPHINX.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindSalomeLIBBATCH.cmake) - INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindKERNEL.cmake) + SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR}) - FILE(TO_CMAKE_PATH $ENV{GUI_ROOT_DIR} GUI_ROOT_DIR) + FILE(TO_CMAKE_PATH "$ENV{GUI_ROOT_DIR}" GUI_ROOT_DIR) IF(GUI_ROOT_DIR) - SET(MED_ENABLE_GUI ON) - INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/deprecated/FindCAS.cmake) - INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/deprecated/FindQT4.cmake) - INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/deprecated/FindOPENGL.cmake) - INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindSalomeVTK.cmake) - INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/deprecated/FindQWT.cmake) - INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/deprecated/FindSIPPYQT.cmake) - INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/deprecated/FindGUI.cmake) + LIST(APPEND CMAKE_MODULE_PATH "${GUI_ROOT_DIR}/adm_local/cmake_files") + SET(MED_ENABLE_GUI ON) + + FIND_PACKAGE(SalomeGUI) + + FIND_PACKAGE(SalomeCAS) + FIND_PACKAGE(SalomeOpenGL) + FIND_PACKAGE(SalomeQt4) + + FIND_PACKAGE(SalomeQwt) + FIND_PACKAGE(SalomePyQt4) ENDIF(GUI_ROOT_DIR) ELSE(KERNEL_ROOT_DIR) SET(SALOME_MACROS_DIR ${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files) + LIST(APPEND CMAKE_MODULE_PATH "${SALOME_MACROS_DIR}") - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindPLATFORM.cmake) + # TODO: the macros below should be loaded with a FIND_PACKAGE(), and should be sync'd with + # what has been done in KERNEL + GUI: + + INCLUDE(FindPLATFORM) if(SALOME_USE_MPI) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindMPI.cmake) + INCLUDE(FindMPI) endif(SALOME_USE_MPI) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindBOOST.cmake) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindCPPUNIT.cmake) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindHDF5.cmake) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindPYTHON.cmake) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindLIBXML2.cmake) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindPTHREADS.cmake) - INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindSWIG.cmake) - + INCLUDE(FindMEDFILE) + INCLUDE(FindBOOST) + INCLUDE(FindCPPUNIT) + INCLUDE(FindHDF5) + INCLUDE(FindPYTHON) + INCLUDE(FindLIBXML2) + INCLUDE(FindPTHREADS) + INCLUDE(FindSWIG) + #INCLUDE(${CMAKE_SOURCE_DIR}/adm_local_without_kernel/cmake_files/FindMEDFILE.cmake) ENDIF(KERNEL_ROOT_DIR) +# TODO: write those in the new format, and load them via FIND_PACKAGE(): INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindPARMETIS.cmake) INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindMETIS.cmake) INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindSCOTCH.cmake) INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindSPLITTER.cmake) INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindRENUMBER.cmake) -INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindMEDFILE.cmake) IF(WIN32) INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindXDR.cmake) ENDIF(WIN32) @@ -97,39 +143,27 @@ ENDIF(WIN32) EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "import sys; t=sys.argv[-1].split(\".\") ; t[:]=(int(elt) for elt in t) ; sys.stdout.write(\"0x%02x%02x%02x\"%tuple(t))" ${VERSION} OUTPUT_VARIABLE XVERSION) +# TODO: adjust to the global SALOME install dirs exposed from KERNEL: SET(MED_salomebin_BINS bin/salome) - SET(MED_salomelib_LIBS lib/salome) - SET(MED_salomeidl_IDLS idl/salome) SET(KERNEL_salomeidl_IDLS ${MED_salomeidl_IDLS}) - SET(MED_salomeinclude_HEADERS include/salome) - SET(MED_salomeres_DATA share/salome/resources/med) - SET(MED_salomeres_SCRIPTS share/salome/resources/med) - SET(MED_salomescript_SCRIPTS bin/salome) - SET(MED_salomescript_DATA bin/salome) - SET(MED_salomescript_PYTHON bin/salome) -SET(KERNEL_salomescript_PYTHON ${MED_salomescript_PYTHON}) - SET(MED_appliskel_SCRIPTS bin/salome/appliskel) - SET(MED_appliskel_PYTHON bin/salome/appliskel) - SET(MED_pythondir lib/python${PYTHON_VERSION}/site-packages) - SET(MED_salomepythondir ${MED_pythondir}/salome) -SET(KERNEL_salomepythondir ${MED_salomepythondir}) - SET(MED_sharedpkgpython_PYTHON ${MED_salomepythondir}/shared_modules) - SET(MED_admlocalcmake adm_local/cmake_files) +SET(KERNEL_salomescript_PYTHON ${MED_salomescript_PYTHON}) +SET(KERNEL_salomepythondir ${MED_salomepythondir}) + IF(MED_ENABLE_KERNEL) ADD_SUBDIRECTORY(idl) ELSE(MED_ENABLE_KERNEL)