-# Copyright (C) 2010-2012 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
# 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
#
-PROJECT(ElevationSurface)
-cmake_minimum_required(VERSION 2.6)
+cmake_minimum_required(VERSION 3.8)
+project(ElevationSurface)
+find_package(ParaView REQUIRED)
-cmake_policy(SET CMP0003 NEW)
+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}")
-FIND_PACKAGE(ParaView REQUIRED)
-INCLUDE(${PARAVIEW_USE_FILE})
+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)
-SET(SRCS
- vtkElevationSurfaceFilter.cxx
- )
-
-ADD_PARAVIEW_PLUGIN(ElevationSurface "1.0"
- SERVER_MANAGER_XML ElevationSurface.xml
- GUI_RESOURCE_FILES ElevationSurfaceClient.xml
- SERVER_MANAGER_SOURCES ${SRCS})
-
-install(TARGETS ${PROJECT_NAME}
- RUNTIME DESTINATION lib/paraview
- LIBRARY DESTINATION lib/paraview
- ARCHIVE DESTINATION lib/paraview
- )
+foreach(module IN LISTS required_modules)
+ if(NOT TARGET "${module}")
+ message("Missing required module: ${module}")
+ return()
+ endif()
+endforeach()
+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})