Salome HOME
Copyright update 2022
[modules/paravis.git] / src / Plugins / TableReader / CMakeLists.txt
index 4a87a2471eea702327cb39889163670f2ab3f519..3e2fece28e39720a06217a581a814989f36b5b06 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2010-2014  CEA/DEN, EDF R&D
+# Copyright (C) 2010-2022  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
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 
-# TableReader plugin consists of two parts:
-# 1. Table reader - reads tables in Post-Pro specific format
-# 2. "Table To 3D" filter - creates 3D representation of a table
+cmake_minimum_required(VERSION 3.8)
+project(TableReaderPlugin)
+find_package(ParaView REQUIRED)
 
-cmake_minimum_required(VERSION 2.4)
-if(COMMAND cmake_policy)
-        cmake_policy(SET CMP0003 NEW)
-endif(COMMAND cmake_policy)
+include(GNUInstallDirs)
+set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}")
+set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}")
+set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}")
 
-project(TableReader)
+set("_paraview_plugin_default_${CMAKE_PROJECT_NAME}" ON)
+paraview_plugin_scan(
+  ENABLE_BY_DEFAULT YES
+  PLUGIN_FILES      "${CMAKE_CURRENT_SOURCE_DIR}/plugin/paraview.plugin"
+  PROVIDES_PLUGINS  plugins
+  REQUIRES_MODULES  required_modules)
 
-# Find ParaView
-FIND_PACKAGE(ParaView REQUIRED)
-if(NOT ParaView_FOUND)
-    MESSAGE(FATAL_ERROR "Please locate ParaView." )
-ENDIF(NOT ParaView_FOUND)
-INCLUDE(${PARAVIEW_USE_FILE})
+foreach(module IN LISTS required_modules)
+  if(NOT TARGET "${module}")
+    message("Missing required module: ${module}")
+    return()
+  endif()
+endforeach()
 
-# Standard CMake option for building libraries shared or static by default.
-OPTION(BUILD_SHARED_LIBS
-       "Build with shared libraries."
-       ${VTK_BUILD_SHARED_LIBS})
-
-# Add subdirectories
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/Reader ${CMAKE_CURRENT_SOURCE_DIR}/TableTo3DFilter)
-ADD_SUBDIRECTORY(Reader)
-ADD_SUBDIRECTORY(TableTo3DFilter)
-ADD_SUBDIRECTORY(ParaViewPlugin)
\ No newline at end of file
+set(BUILD_SHARED_LIBS ON)
+paraview_plugin_build(
+  RUNTIME_DESTINATION "${CMAKE_INSTALL_BINDIR}"
+  LIBRARY_DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+  LIBRARY_SUBDIRECTORY "${PARAVIEW_PLUGIN_SUBDIR}"
+  PLUGINS ${plugins}
+  AUTOLOAD ${plugins})