Salome HOME
Porting to Paraview 3.98.1
[modules/paravis.git] / CMakeLists.txt
index 4da369f1f1e699c8a3a5187fb4403548fe31e06e..3bf52a63fc785925cf90995ac874d936ee2799d9 100644 (file)
-
-            CMAKE_MINIMUM_REQUIRED(VERSION 2.4.7 FATAL_ERROR)
-            IF(COMMAND cmake_policy)
-            cmake_policy(SET CMP0003 NEW)
-            ENDIF(COMMAND cmake_policy)
-            
-
-                SET(WITH_BOOST $ENV{BOOSTDIR})
-                SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR})
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindPLATFORM.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindPYTHON.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindOMNIORB.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindPTHREADS.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindHDF5.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindBOOST.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindLIBXML2.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindSWIG.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindCPPUNIT.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindDOXYGEN.cmake)
-                INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/FindKERNEL.cmake)
-                
-
-                    INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindPARAVIEW.cmake)
-                    IF(EXISTS ${PARAVIEW_VTK_DIR}/VTKConfig.cmake)
-                    SET(VTK_DIR ${PARAVIEW_VTK_DIR})
-                    ENDIF(EXISTS ${PARAVIEW_VTK_DIR}/VTKConfig.cmake)
-                    SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR})
-                    INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindCAS.cmake)
-                    INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindQT4.cmake)
-                    INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindOPENGL.cmake)
-                    INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindVTK.cmake)
-                    INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindQWT.cmake)
-                    INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindSIPPYQT.cmake)
-                    INCLUDE(${GUI_ROOT_DIR}/adm_local/cmake_files/FindGUI.cmake)
-                    
-
-                        SET(BUILD_PLUGINS 1)
-                        SET(MED_ROOT_DIR $ENV{MED_ROOT_DIR})
-                        SET(VISU_ROOT_DIR $ENV{VISU_ROOT_DIR})
-                        INCLUDE(${MED_ROOT_DIR}/adm_local/cmake_files/FindMED.cmake)
-                        IF(EXISTS ${VISU_ROOT_DIR}/adm_local/cmake_files/FindVISU.cmake)
-                        INCLUDE(${VISU_ROOT_DIR}/adm_local/cmake_files/FindVISU.cmake)
-                        SET(WITH_VISU 1)
-                        ENDIF(EXISTS ${VISU_ROOT_DIR}/adm_local/cmake_files/FindVISU.cmake)
-                        EXECUTE_PROCESS(COMMAND pvpython ${CMAKE_SOURCE_DIR}/getwrapclasses.py ${PARAVIEW_INCLUDE_DIRS})
-                        
-
-            SET(DOXYGEN_IS_OK 0)
-            
-
-                IF(WINDOWS)
-                SET(CPPUNIT_IS_OK 0)
-                ENDIF(WINDOWS)
-                
-
-        SET(VERSION_INFO 0.0.0)
-        SET(SOVERSION_INFO 0)
-        SET(SUBDIRS)
-        SET(AM_CPPFLAGS)
-        SET(AM_CXXFLAGS)
-        SET(LDADD)
-        
-
-                SET(AM_CPPFLAGS ${AM_CPPFLAGS} -DHAVE_SALOME_CONFIG -I${KERNEL_ROOT_DIR}/include/salome -include SALOMEconfig.h)
-                SET(AM_CXXFLAGS ${AM_CXXFLAGS} -DHAVE_SALOME_CONFIG -I${KERNEL_ROOT_DIR}/include/salome -include SALOMEconfig.h)
-                
-#  Copyright (C) 2005  CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D
+# Copyright (C) 2010-2012  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.
+# 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.
 #
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  Lesser General Public License for more details.
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
 #
-#  You should have received a copy of the GNU Lesser General Public
-#  License along with this library; if not, write to the Free Software
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 #
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
-# -* Makefile *-
-#
-# Author :
-# Modified by : Alexander BORODIN (OCN) - autotools usage
-#
 
-# include $(top_srcdir)/adm_local/unix/make_common_starter.am
-
-SET(ACLOCAL_AMFLAGS
-    -I
-    adm_local/unix/config_files
-    -I
-    ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files
-    -I
-    ${GUI_ROOT_DIR}/adm_local/unix/config_files
-)
+PROJECT(PARAVIS)
+
+IF(WINDOWS)
+  STRING( REPLACE "INCREMENTAL:YES" "INCREMENTAL:NO" replacementFlags ${CMAKE_SHARED_LINKER_FLAGS_DEBUG} )
+  SET( CMAKE_SHARED_LINKER_FLAGS_DEBUG "${replacementFlags}" )
+ENDIF(WINDOWS)
+
+CMAKE_MINIMUM_REQUIRED(VERSION 2.8.7 FATAL_ERROR)
+IF(COMMAND cmake_policy)
+  cmake_policy(SET CMP0003 NEW)
+ENDIF(COMMAND cmake_policy)            
+
+SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR} CACHE PATH "KERNEL_ROOT_DIR")
+SET(MODULE PARAVIS)
+INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindPLATFORM.cmake)
+INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/deprecated/FindPYTHON.cmake)
+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/deprecated/FindKERNEL.cmake)
+
+INCLUDE(${CMAKE_SOURCE_DIR}/adm_local/cmake_files/FindPARAVIEW.cmake)
+IF(EXISTS ${PARAVIEW_VTK_DIR}/VTKConfig.cmake)
+  SET(VTK_DIR ${PARAVIEW_VTK_DIR})
+ENDIF(EXISTS ${PARAVIEW_VTK_DIR}/VTKConfig.cmake)
+
+SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR} CACHE PATH "GUI_ROOT_DIR")
+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/deprecated/FindVTK.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)
+
+SET(VERSION_MAJOR       7)
+SET(VERSION_MINOR       0)
+SET(VERSION_MAINTENANCE 0)
+SET(VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_MAINTENANCE}")
+SET(XVERSION 0x0${VERSION_MAJOR}0${VERSION_MINOR}0${VERSION_MAINTENANCE})
+SET(VERSION_DEV 1)
+
+SET(BUILD_PLUGINS 1)
+
+SET(VISU_ROOT_DIR $ENV{VISU_ROOT_DIR} CACHE PATH "VISU_ROOT_DIR")
+IF(EXISTS ${VISU_ROOT_DIR}/adm_local/cmake_files/FindVISU.cmake)
+  INCLUDE(${VISU_ROOT_DIR}/adm_local/cmake_files/FindVISU.cmake)
+  SET(WITH_VISU 1)
+ENDIF(EXISTS ${VISU_ROOT_DIR}/adm_local/cmake_files/FindVISU.cmake)
+
+SET(MED_ROOT_DIR $ENV{MED_ROOT_DIR} CACHE PATH "MED_ROOT_DIR")
+INCLUDE(${MED_ROOT_DIR}/adm_local/cmake_files/FindMED.cmake)
+
+LIST(GET PARAVIEW_INCLUDE_DIRS 0 PARAVIEW_INCLUDE_DIR0)
+EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/getwrapclasses.py ${PARAVIEW_INCLUDE_DIR0})
 
 SET(SUBDIRS
-    idl
-    adm_local
-    resources
-    src
-    doc
-    bin
-)
+  idl
+  adm_local
+  resources
+  src
+  doc
+  bin
+  )
 
 SET(DISTCLEANFILES
-    a.out
-    aclocal.m4
-    configure
-    wrapfiles.txt
-)
-
-SET(salomeinclude_DATA
-    PARAVIS_version.h
-)
-
-SET(EXTRA_DIST
-    ${EXTRA_DIST}
-    build_configure
-    clean_configure
-)
-
-# include  $(top_srcdir)/wrapfiles.am
+  wrapfiles.txt
+  )
+
 INCLUDE(wrapfiles.cmake)
 
-# dist-hook:
-#      rm -rf `find $(distdir) -name CVS`
-
-# dev_docs:
-#      (cd doc && $(MAKE) $(AM_MAKEFLAGS) dev_docs)
-
-# docs: dev_docs
-
-
-                SET(input ${CMAKE_CURRENT_SOURCE_DIR}/PARAVIS_version.h.in)
-                
-
-                SET(output ${CMAKE_CURRENT_BINARY_DIR}/PARAVIS_version.h)
-                
-
-                MESSAGE(STATUS "Creation of ${output}")
-                CONFIGURE_FILE(${input} ${output})
-                
-
-            FOREACH(dir ${SUBDIRS})
-            IF(NOT dir STREQUAL .)
-            ADD_SUBDIRECTORY(${dir})
-            ENDIF(NOT dir STREQUAL .)
-            ENDFOREACH(dir ${SUBDIRS})
-            
-FOREACH(f ${salomeinclude_DATA})
-
-        SET(DEST include/salome)
-        
-
-        STRING(COMPARE EQUAL ${f} SALOMEconfig.h.in test_SALOMEconfig.h.in)
-        IF(test_SALOMEconfig.h.in)
-        INSTALL(FILES SALOMEconfig.ref.in DESTINATION ${DEST} RENAME SALOMEconfig.h.in)
-        ELSE(test_SALOMEconfig.h.in)
-        SET(dummy dummy-NOTFOUND)
-        MARK_AS_ADVANCED(dummy)
-        # FILE(REMOVE ${CMAKE_INSTALL_PREFIX}/${DEST}/${f})
-        FIND_FILE(dummy ${f} PATHS ${CMAKE_CURRENT_SOURCE_DIR} NO_DEFAULT_PATH)
-        IF(dummy)
-        
-
-            GET_FILENAME_COMPONENT(ext ${f} EXT)
-            IF(ext STREQUAL .py)
-            IF(DEST STREQUAL bin/salome)
-            SET(PERMS)
-            SET(PERMS ${PERMS} OWNER_READ OWNER_WRITE OWNER_EXECUTE)
-            SET(PERMS ${PERMS} GROUP_READ GROUP_EXECUTE)
-            SET(PERMS ${PERMS} WORLD_READ WORLD_EXECUTE)
-            INSTALL(FILES ${f} DESTINATION ${DEST} PERMISSIONS ${PERMS})
-            ELSE(DEST STREQUAL bin/salome)
-            INSTALL(FILES ${f} DESTINATION ${DEST})
-            ENDIF(DEST STREQUAL bin/salome)
-            ELSE(ext STREQUAL .py)
-            INSTALL(FILES ${f} DESTINATION ${DEST})
-            ENDIF(ext STREQUAL .py)
-            
-
-        ELSE(dummy)
-        GET_FILENAME_COMPONENT(ext ${f} EXT)
-        IF(ext STREQUAL .qm)
-        STRING(REGEX REPLACE .qm .ts input ${f})
-        
-
-            SET(input ${CMAKE_CURRENT_SOURCE_DIR}/resources/${input})
-            
-
-        SET(output ${CMAKE_CURRENT_BINARY_DIR}/${f})
-        # ADD_CUSTOM_COMMAND(
-        # OUTPUT ${output}
-        # COMMAND ${QT_LRELEASE_EXECUTABLE} ${input} -qm ${output}
-        # MAIN_DEPENDENCY ${input}
-        # )
-        EXECUTE_PROCESS(COMMAND ${QT_LRELEASE_EXECUTABLE} ${input} -qm ${output})
-        ENDIF(ext STREQUAL .qm)
-        INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${f} DESTINATION ${DEST})
-        ENDIF(dummy)
-        ENDIF(test_SALOMEconfig.h.in)
-        
-
-        GET_FILENAME_COMPONENT(ext ${f} EXT)
-        IF(ext STREQUAL .py)
-        INSTALL(CODE "SET(PYTHON_FILE ${f})")
-        INSTALL(CODE "SET(CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})")
-        INSTALL(CODE "SET(DEST ${DEST})")
-        INSTALL(CODE "SET(PYTHON_EXECUTABLE ${PYTHON_EXECUTABLE})")
-        
-
-            STRING(REPLACE "\\" "/" KERNEL_ROOT_DIR ${KERNEL_ROOT_DIR})
-            INSTALL(SCRIPT ${KERNEL_ROOT_DIR}/salome_adm/cmake_files/install_and_compile_python_file.cmake)
-            
-
-        ENDIF(ext STREQUAL .py)
-        
-ENDFOREACH(f ${salomeinclude_DATA})
+SET(input ${CMAKE_CURRENT_SOURCE_DIR}/PARAVIS_version.h.in)
+SET(output ${CMAKE_CURRENT_BINARY_DIR}/PARAVIS_version.h)
+
+MESSAGE(STATUS "Creation of ${output}")
+CONFIGURE_FILE(${input} ${output})
+
+FOREACH(dir ${SUBDIRS})
+  ADD_SUBDIRECTORY(${dir})
+ENDFOREACH(dir ${SUBDIRS})
+
+# Reset CMAKE_CONFIGURATION_TYPES to the good value defined by CMAKE_BUILD_TYPE
+IF(CMAKE_BUILD_TYPE)
+  IF(WINDOWS)
+    MARK_AS_ADVANCED(CLEAR CMAKE_CONFIGURATION_TYPES)
+    SET(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE} CACHE STRING "compilation types" FORCE)
+  ENDIF(WINDOWS)
+ENDIF(CMAKE_BUILD_TYPE)
+
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/PARAVIS_version.h DESTINATION include/salome)
+
+# Configure Testing
+SET(PARAVIS_TEST_OUTPUT_DIR /tmp/pic CACHE PATH "Directory for saving test pictures.")
+OPTION(BUILD_TESTING "Build ParaVis Testing" ON)
+IF(BUILD_TESTING)
+   SET(PARAVIS_TEST_DIR ${ParaVis_BINARY_DIR}/Test/Temporary)
+   MAKE_DIRECTORY(${PARAVIS_TEST_DIR})
+   ENABLE_TESTING()
+   INCLUDE (CTest)
+   ADD_SUBDIRECTORY(test)
+ENDIF(BUILD_TESTING)