1 #======================================================================== 3 # Options that affect the ParaView build, in general. 4 # These should begin with `PARAVIEW_BUILD_`. 5 #======================================================================== 8 option(PARAVIEW_BUILD_SHARED_LIBS
"Build ParaView with shared libraries" "${shared_default}")
11 option(PARAVIEW_BUILD_LEGACY_REMOVE
"Remove all legacy code completely" "${legacy_remove_default}")
12 mark_as_advanced(PARAVIEW_BUILD_LEGACY_REMOVE)
15 option(PARAVIEW_BUILD_LEGACY_SILENT
"Silence all legacy code messages" "${legacy_silent_default}")
16 mark_as_advanced(PARAVIEW_BUILD_LEGACY_SILENT)
18 # Kits bundle multiple modules together into a single library, this 19 # is used to dramatically reduce the number of generated libraries. 21 cmake_dependent_option(PARAVIEW_BUILD_WITH_KITS
"Build ParaView using kits instead of modules." OFF
22 # Static builds don
't make sense with kits. Ignore the flag if shared 23 # libraries aren't being built.
24 "PARAVIEW_BUILD_SHARED_LIBS" OFF)
25 mark_as_advanced(PARAVIEW_BUILD_WITH_KITS)
28 option(PARAVIEW_BUILD_WITH_EXTERNAL
"Use external copies of third party libraries by default" OFF)
29 mark_as_advanced(PARAVIEW_BUILD_WITH_EXTERNAL)
31 option(PARAVIEW_BUILD_ALL_MODULES
"Build all modules by default" OFF)
32 mark_as_advanced(PARAVIEW_BUILD_ALL_MODULES)
33 set(_vtk_module_reason_WANT_BY_DEFAULT
34 "via `PARAVIEW_BUILD_ALL_MODULES`")
37 option(PARAVIEW_ENABLE_EXAMPLES
"Enable ParaView examples" "${examples_default}")
38 set(PARAVIEW_BUILD_TESTING
"OFF" 39 CACHE STRING
"Enable testing")
40 set_property(CACHE PARAVIEW_BUILD_TESTING
42 STRINGS
"ON;OFF;WANT;DEFAULT")
44 cmake_dependent_option(PARAVIEW_BUILD_VTK_TESTING
"Enable VTK testing" OFF
45 "PARAVIEW_BUILD_TESTING" OFF)
46 option(PARAVIEW_BUILD_DEVELOPER_DOCUMENTATION
"Generate ParaView C++/Python docs" "${doc_default}")
48 option(PARAVIEW_PLUGIN_DISABLE_XML_DOCUMENTATION
"Forcefully disable XML documentation generation" OFF)
49 mark_as_advanced(PARAVIEW_PLUGIN_DISABLE_XML_DOCUMENTATION)
51 set(PARAVIEW_BUILD_EDITION
"CANONICAL" 52 CACHE STRING
"Enable ParaView components essential for requested capabilities.")
53 set_property(CACHE PARAVIEW_BUILD_EDITION
55 STRINGS
"CORE;RENDERING;CATALYST;CATALYST_RENDERING;CANONICAL")
57 set(PARAVIEW_BUILD_CANONICAL OFF)
58 set(PARAVIEW_ENABLE_RENDERING OFF)
59 set(PARAVIEW_ENABLE_NONESSENTIAL OFF)
60 if (PARAVIEW_BUILD_EDITION STREQUAL
"CORE")
62 elseif (PARAVIEW_BUILD_EDITION STREQUAL
"RENDERING")
63 set(PARAVIEW_ENABLE_RENDERING ON)
64 elseif (PARAVIEW_BUILD_EDITION STREQUAL
"CATALYST")
65 set(PARAVIEW_BUILD_CANONICAL ON)
66 elseif (PARAVIEW_BUILD_EDITION STREQUAL
"CATALYST_RENDERING")
67 set(PARAVIEW_ENABLE_RENDERING ON)
68 set(PARAVIEW_BUILD_CANONICAL ON)
69 elseif (PARAVIEW_BUILD_EDITION STREQUAL
"CANONICAL")
70 set(PARAVIEW_ENABLE_RENDERING ON)
71 set(PARAVIEW_BUILD_CANONICAL ON)
72 set(PARAVIEW_ENABLE_NONESSENTIAL ON)
75 # We want to warn users if PARAVIEW_BUILD_EDITION is changed after first configure since the default 76 # state of various other settings may not be what user expects. 77 if (DEFINED _paraview_build_edition_cached AND
78 NOT _paraview_build_edition_cached STREQUAL PARAVIEW_BUILD_EDITION)
80 "Changing `PARAVIEW_BUILD_EDITION` after first configure will not setup " 81 "defaults for others settings correctly e.g. plugins enabled. It is " 82 "recommended that you start with a clean build directory and pass the " 83 "option to CMake using " 84 "'-DPARAVIEW_BUILD_EDITION:STRING=${PARAVIEW_BUILD_EDITION}'.")
86 set(_paraview_build_edition_cached "${PARAVIEW_BUILD_EDITION}
" CACHE INTERNAL "") 88 set(VTK_GROUP_ENABLE_PARAVIEW_CORE "YES
" CACHE INTERNAL "") 89 if (PARAVIEW_BUILD_CANONICAL) 90 set(VTK_GROUP_ENABLE_PARAVIEW_CANONICAL "YES
" CACHE INTERNAL "") 92 set(VTK_GROUP_ENABLE_PARAVIEW_CANONICAL "NO
" CACHE INTERNAL "") 95 #======================================================================== 97 # Options that affect the build capabilities. 98 # These should begin with `PARAVIEW_USE_`. 99 #======================================================================== 101 option(PARAVIEW_USE_MPI "Enable MPI support
for parallel computing
" OFF) 102 option(PARAVIEW_SERIAL_TESTS_USE_MPIEXEC 103 "Used
on HPC to run serial tests
on compute nodes
" OFF) 104 mark_as_advanced(PARAVIEW_SERIAL_TESTS_USE_MPIEXEC) 105 option(PARAVIEW_USE_CUDA "Support CUDA compilation
" OFF) 107 vtk_deprecated_setting(default_use_viskores PARAVIEW_USE_VISKORES PARAVIEW_USE_VTKM "${PARAVIEW_ENABLE_NONESSENTIAL}
") 108 option(PARAVIEW_USE_VISKORES "Enable Viskores accelerated algorithms
" "${default_use_viskores}
") 110 if (UNIX AND NOT APPLE) 111 option(PARAVIEW_USE_MEMKIND "Build support
for extended memory
" OFF) 114 option(PARAVIEW_ENABLE_OPENVDB "Enable the OpenVDB Writer
" OFF) 116 option(PARAVIEW_GENERATE_SPDX "Generate SPDX file
for each module.
" OFF) 117 mark_as_advanced(PARAVIEW_GENERATE_SPDX) 119 # Add option to disable Fortran 121 include(CheckFortran) 122 check_fortran_support() 123 if (CMAKE_Fortran_COMPILER) 124 set(_has_fortran TRUE) 126 set(_has_fortran FALSE) 128 cmake_dependent_option(PARAVIEW_USE_FORTRAN "Enable Fortran support
" ON 130 mark_as_advanced(PARAVIEW_USE_FORTRAN) 134 vtk_deprecated_setting(python_default PARAVIEW_USE_PYTHON PARAVIEW_ENABLE_PYTHON OFF) 135 option(PARAVIEW_USE_PYTHON "Enable/Disable Python scripting support
" "${python_default}
") 137 option(PARAVIEW_USE_SERIALIZATION "Enable/Disable Serialization support
" OFF) 139 # Currently, we're making `PARAVIEW_USE_QT` available only when doing CANONICAL 140 # builds with RENDERING. This is technically not necessary so we can support that 141 # use-case if needed in future but will require some work to make sure the Qt components 142 # work correctly with missing proxies. 143 vtk_deprecated_setting(qt_gui_default PARAVIEW_USE_QT PARAVIEW_BUILD_QT_GUI "ON
") 144 cmake_dependent_option(PARAVIEW_USE_QT 145 "Enable Qt-support needed
for graphical UI
" "${qt_gui_default}
" 146 "PARAVIEW_BUILD_CANONICAL;PARAVIEW_ENABLE_RENDERING;PARAVIEW_ENABLE_NONESSENTIAL
" OFF) 148 # Add an option to enable using Qt WebEngine for widgets, as needed. 149 # Default is OFF. We don't want to depend on WebEngine unless absolutely needed. 150 cmake_dependent_option(PARAVIEW_USE_QTWEBENGINE 151 "Use Qt WebEngine components as needed.
" OFF 152 "PARAVIEW_USE_QT
" OFF) 153 mark_as_advanced(PARAVIEW_USE_QTWEBENGINE) 155 # Add an option to enable using Qt Help, as needed. 156 # Default is ON to enable integrated help/documentation. 157 cmake_dependent_option(PARAVIEW_USE_QTHELP 158 "Use Qt Help infrastructure as needed.
" ON 159 "PARAVIEW_USE_QT
" OFF) 160 mark_as_advanced(PARAVIEW_USE_QTHELP) 162 if (PARAVIEW_USE_QTHELP AND NOT PARAVIEW_USE_QTWEBENGINE) 163 message(STATUS "Using
'QtHelp' without
'QtWebEngine' will ignore embedded javascript and *.js files
for documentation") 166 if (PARAVIEW_ENABLE_RAYTRACING AND VTK_ENABLE_OSPRAY) 167 set(paraview_use_materialeditor ON) 169 set(paraview_use_materialeditor OFF) 172 #======================================================================== 174 # Options that toggle features. These should begin with `PARAVIEW_ENABLE_`. 175 #======================================================================== 177 vtk_deprecated_setting(raytracing_default PARAVIEW_ENABLE_RAYTRACING PARAVIEW_USE_RAYTRACING "OFF
") 178 option(PARAVIEW_ENABLE_RAYTRACING "Build ParaView with OSPray, ANARI and/or OptiX ray-tracing support
" "${raytracing_default}
") 180 cmake_dependent_option(PARAVIEW_ENABLE_ANARI 181 "Enable Anari Support
" OFF 182 "PARAVIEW_ENABLE_RAYTRACING
" ON) 184 set(paraview_web_default ON) 185 if (PARAVIEW_USE_PYTHON AND WIN32) 186 include(ParaViewFindPythonModules) 187 find_python_module(win32api have_pywin32) 188 set(paraview_web_default "${have_pywin32}
") 191 if (NOT PARAVIEW_BUILD_EDITION STREQUAL "CANONICAL
") 192 set(paraview_web_default OFF) 194 cmake_dependent_option(PARAVIEW_ENABLE_WEB "Enable/Disable web support
" "${paraview_web_default}
" 195 "PARAVIEW_USE_PYTHON
" OFF) 197 # NvPipe requires an NVIDIA GPU. 198 option(PARAVIEW_ENABLE_NVPIPE "Build ParaView with NvPipe remoting. Requires CUDA and an NVIDIA GPU
" OFF) 200 option(PARAVIEW_ENABLE_ALEMBIC "Enable Alembic support.
" OFF) 202 option(PARAVIEW_ENABLE_GDAL "Enable GDAL support.
" OFF) 204 option(PARAVIEW_ENABLE_LAS "Enable LAS support.
" OFF) 206 option(PARAVIEW_ENABLE_OPENTURNS "Enable OpenTURNS support.
" OFF) 208 option(PARAVIEW_ENABLE_PDAL "Enable PDAL support.
" OFF) 210 option(PARAVIEW_ENABLE_MOTIONFX "Enable MotionFX support.
" OFF) 212 option(PARAVIEW_ENABLE_MOMENTINVARIANTS "Enable MomentInvariants filters
" OFF) 214 option(PARAVIEW_ENABLE_LOOKINGGLASS "Enable LookingGlass displays
" OFF) 216 option(PARAVIEW_ENABLE_VISITBRIDGE "Enable VisIt readers.
" OFF) 218 option(PARAVIEW_ENABLE_CATALYST "Enable ParaViewCatalyst implementation
" OFF) 220 # default to ON for CANONICAL builds, else OFF. 221 set(xdmf2_default OFF) 222 if (PARAVIEW_BUILD_CANONICAL AND PARAVIEW_ENABLE_NONESSENTIAL) 223 set(xdmf2_default ON) 225 option(PARAVIEW_ENABLE_XDMF2 "Enable Xdmf2 support.
" "${xdmf2_default}
") 227 option(PARAVIEW_ENABLE_XDMF3 "Enable Xdmf3 support.
" OFF) 229 option(PARAVIEW_ENABLE_ADIOS2 "Enable
ADIOS 2.x support.
" OFF) 231 option(PARAVIEW_ENABLE_FIDES "Enable Fides support.
" OFF) 233 option(PARAVIEW_ENABLE_FFMPEG "Enable FFMPEG Support.
" OFF) 235 option(PARAVIEW_ENABLE_OCCT "Enable OCCT Support.
" OFF) 237 option(PARAVIEW_ENABLE_IFC "Enable IFC Support.
" OFF) 239 option(PARAVIEW_BUILD_TRANSLATIONS "Generate
translation files
" OFF) 240 if (PARAVIEW_BUILD_TRANSLATIONS) 241 set(PARAVIEW_TRANSLATIONS_DIRECTORY "${CMAKE_BINARY_DIR}/Translations
" CACHE STRING 245 # If building on Unix with MPI enabled, we will present another option to 246 # enable building of CosmoTools VTK extensions. This option is by default 247 # OFF and set to OFF if ParaView is not built with MPI. 248 cmake_dependent_option(PARAVIEW_ENABLE_COSMOTOOLS 249 "Build ParaView with CosmoTools VTK Extensions
" OFF 250 "UNIX;PARAVIEW_USE_MPI
" OFF) 252 # PARAVIEW_ENABLE_CGNS_* option is only shown when PARAVIEW_ENABLE_NONESSENTIAL is 253 # OFF and then it defaults to OFF. If PARAVIEW_ENABLE_NONESSENTIAL is ON, then 254 # PARAVIEW_ENABLE_CGNS_* is set to ON as well and presented to the user at all. 255 cmake_dependent_option(PARAVIEW_ENABLE_CGNS_READER 256 "Enable CGNS Reader Support
" OFF 257 "NOT PARAVIEW_ENABLE_NONESSENTIAL
" ON) 258 cmake_dependent_option(PARAVIEW_ENABLE_CGNS_WRITER 259 "Enable CGNS Reader Support
" OFF 260 "NOT PARAVIEW_ENABLE_NONESSENTIAL
" ON) 262 #======================================================================== 263 # MISCELLANEOUS OPTIONS: 264 # Options that are hard to classify. Keep this list minimal. 265 # These should be advanced by default. 266 #======================================================================== 267 option(PARAVIEW_INSTALL_DEVELOPMENT_FILES "Install development files to the install tree
" ON) 268 mark_as_advanced(PARAVIEW_INSTALL_DEVELOPMENT_FILES) 270 option(PARAVIEW_RELOCATABLE_INSTALL "Do not embed hard-coded paths into the install
" ON) 271 mark_as_advanced(PARAVIEW_RELOCATABLE_INSTALL) 274 cmake_dependent_option(PARAVIEW_INITIALIZE_MPI_ON_CLIENT 275 "Initialize MPI
on client-processes by
default. Can be overridden
using command line arguments
" ON 276 "PARAVIEW_USE_MPI
" OFF) 277 mark_as_advanced(PARAVIEW_INITIALIZE_MPI_ON_CLIENT) 279 set(PARAVIEW_LOGGING_TIME_PRECISION "3
" 280 CACHE STRING "Precision of loguru scope timers. 3=ms, 6=us, 9=ns
") 281 mark_as_advanced(PARAVIEW_LOGGING_TIME_PRECISION) 282 set(known_logging_precisions 3 6 9) 283 set_property(CACHE PARAVIEW_LOGGING_TIME_PRECISION 285 STRINGS ${known_logging_precisions}) 286 if (NOT PARAVIEW_LOGGING_TIME_PRECISION IN_LIST known_logging_precisions) 287 string(REPLACE ";
" ",
" known_logging_precisions_list "${known_logging_precisions}
") 289 "`PARAVIEW_LOGGING_TIME_PRECISION` must be one of
" 290 "${known_logging_precisions_list}; given
'${PARAVIEW_LOGGING_TIME_PRECISION}'") 293 #======================================================================== 294 # OBSOLETE OPTIONS: mark obsolete settings 295 #======================================================================== 296 vtk_obsolete_setting(PARAVIEW_ENABLE_LOGGING) 297 vtk_obsolete_setting(PARAVIEW_ENABLE_QT_SUPPORT) 298 vtk_obsolete_setting(PARAVIEW_ENABLE_COMMANDLINE_TOOLS) 299 vtk_obsolete_setting(PARAVIEW_FREEZE_PYTHON) 300 vtk_obsolete_setting(PARAVIEW_USE_MPI_SSEND) 301 vtk_obsolete_setting(PARAVIEW_USE_ICE_T) 303 #======================================================================================== 304 # Build up list of required and rejected modules 305 #======================================================================================== 306 set(paraview_requested_modules) 307 set(paraview_rejected_modules) 310 Conditionally require/reject optional modules 312 Use this macro to conditionally require (or reject) modules. 315 paraview_require_module( 317 [CONDITION <condition>] 321 The arguments are as follows: 323 * `MODULES`: (Required) The list of modules. 324 * `CONDITION`: (Defaults to `TRUE`) The condition under which the modules 325 specified are added to the requested list. 326 * `EXCLUSIVE`: When sepcified, if `CONDITION` is false, the module will be 327 added to the rejected modules list. 329 macro (paraview_require_module) 330 cmake_parse_arguments(pem 336 if (pem_UNPARSED_ARGUMENTS) 339 "${pem_UNPARSED_ARGUMENTS}
") 342 if (NOT DEFINED pem_CONDITION) 343 set(pem_CONDITION TRUE) 346 if (${pem_CONDITION}) 347 # message("${pem_CONDITION} == TRUE
") 348 list(APPEND paraview_requested_modules ${pem_MODULES}) 349 foreach (_pem_module IN LISTS _pem_MODULES) 350 set("_vtk_module_reason_${_pem_module}
" 351 "via `${pem_CONDITION}`
") 353 elseif (pem_EXCLUSIVE) 354 # message("${pem_CONDITION} == FALSE
") 355 list(APPEND paraview_rejected_modules ${pem_MODULES}) 356 foreach (_pem_module IN LISTS _pem_MODULES) 357 set("_vtk_module_reason_${_pem_module}
" 358 "via `${pem_CONDITION}`
") 365 unset(pem_UNPARSED_ARGUMENTS) 369 # ensures that VTK::mpi module is rejected when MPI is not enabled. 370 paraview_require_module( 371 CONDITION PARAVIEW_USE_MPI 372 MODULES VTK::ParallelMPI 376 paraview_require_module( 377 CONDITION PARAVIEW_USE_MPI AND PARAVIEW_ENABLE_RENDERING 378 MODULES VTK::RenderingParallelLIC 381 # ensures VTK::Python module is rejected when Python is not enabled. 382 paraview_require_module( 383 CONDITION PARAVIEW_USE_PYTHON 385 VTK::PythonInterpreter 386 ParaView::PythonInterpreterPath 389 paraview_require_module( 390 CONDITION PARAVIEW_USE_PYTHON AND PARAVIEW_ENABLE_RENDERING AND PARAVIEW_BUILD_CANONICAL 391 MODULES VTK::RenderingMatplotlib) 393 paraview_require_module( 394 CONDITION PARAVIEW_USE_VISKORES 395 MODULES VTK::AcceleratorsVTKmFilters 398 paraview_require_module( 399 CONDITION PARAVIEW_ENABLE_RAYTRACING AND PARAVIEW_ENABLE_RENDERING 400 MODULES VTK::RenderingRayTracing 403 paraview_require_module( 404 CONDITION PARAVIEW_ENABLE_RAYTRACING AND PARAVIEW_ENABLE_RENDERING AND PARAVIEW_ENABLE_ANARI 405 MODULES VTK::RenderingAnari 408 paraview_require_module( 409 CONDITION PARAVIEW_ENABLE_RAYTRACING AND VTK_ENABLE_OSPRAY 410 MODULES ParaView::VTKExtensionsShaderBall 413 paraview_require_module( 414 CONDITION PARAVIEW_ENABLE_NVPIPE 415 MODULES ParaView::nvpipe 418 paraview_require_module( 419 CONDITION PARAVIEW_ENABLE_ALEMBIC 420 MODULES VTK::IOAlembic 423 paraview_require_module( 424 CONDITION PARAVIEW_ENABLE_GDAL 428 paraview_require_module( 429 CONDITION PARAVIEW_ENABLE_LAS 433 paraview_require_module( 434 CONDITION PARAVIEW_ENABLE_OPENTURNS 435 MODULES VTK::FiltersOpenTURNS 438 paraview_require_module( 439 CONDITION PARAVIEW_ENABLE_PDAL 443 paraview_require_module( 444 CONDITION PARAVIEW_ENABLE_MOTIONFX 445 MODULES VTK::IOMotionFX 448 paraview_require_module( 449 CONDITION PARAVIEW_ENABLE_MOMENTINVARIANTS 450 MODULES VTK::MomentInvariants 453 paraview_require_module( 454 CONDITION PARAVIEW_ENABLE_MOMENTINVARIANTS AND PARAVIEW_USE_MPI 455 MODULES VTK::ParallelMomentInvariants 458 paraview_require_module( 459 CONDITION PARAVIEW_ENABLE_LOOKINGGLASS 460 MODULES VTK::RenderingLookingGlass 463 paraview_require_module( 464 CONDITION PARAVIEW_ENABLE_VISITBRIDGE 465 MODULES ParaView::IOVisItBridge 469 paraview_require_module( 470 CONDITION PARAVIEW_ENABLE_XDMF2 474 paraview_require_module( 475 CONDITION PARAVIEW_ENABLE_XDMF3 479 paraview_require_module( 480 CONDITION PARAVIEW_ENABLE_ADIOS2 481 MODULES VTK::IOADIOS2 484 paraview_require_module( 485 CONDITION PARAVIEW_ENABLE_FIDES 489 paraview_require_module( 490 CONDITION PARAVIEW_ENABLE_OPENVDB 491 MODULES VTK::IOOpenVDB 494 paraview_require_module( 495 CONDITION PARAVIEW_ENABLE_FFMPEG 496 MODULES VTK::IOFFMPEG 499 paraview_require_module( 500 CONDITION PARAVIEW_ENABLE_CGNS_READER 501 MODULES VTK::IOCGNSReader 504 paraview_require_module( 505 CONDITION PARAVIEW_ENABLE_CGNS_WRITER 506 MODULES ParaView::VTKExtensionsIOCGNSWriter 509 paraview_require_module( 510 CONDITION PARAVIEW_ENABLE_CGNS_WRITER AND PARAVIEW_USE_MPI 511 MODULES ParaView::VTKExtensionsIOParallelCGNSWriter 514 paraview_require_module( 515 CONDITION PARAVIEW_ENABLE_WEB AND PARAVIEW_USE_PYTHON 520 paraview_require_module( 521 CONDITION PARAVIEW_USE_SERIALIZATION 522 MODULES VTK::SerializationManager 525 paraview_require_module( 526 CONDITION PARAVIEW_ENABLE_OCCT 530 paraview_require_module( 531 CONDITION PARAVIEW_ENABLE_IFC 535 paraview_require_module( 536 CONDITION PARAVIEW_BUILD_CANONICAL 537 MODULES ParaView::VTKExtensionsFiltersGeneral 538 VTK::DomainsChemistry 542 VTK::FiltersExtraction 543 VTK::FiltersFlowPaths 548 VTK::FiltersHyperTree 551 VTK::FiltersParallelDIY2 552 VTK::FiltersParallelVerdict 554 VTK::FiltersStatistics 564 VTK::IOAsynchronous # needed for cinema 576 paraview_require_module( 577 CONDITION PARAVIEW_BUILD_CANONICAL AND PARAVIEW_ENABLE_NONESSENTIAL 592 VTK::IOParallelExodus 593 VTK::IOParallelLSDyna 601 paraview_require_module( 602 CONDITION PARAVIEW_ENABLE_RENDERING AND PARAVIEW_BUILD_CANONICAL 603 MODULES VTK::FiltersTexture 604 VTK::RenderingCellGrid 605 VTK::RenderingFreeType 608 paraview_require_module( 609 CONDITION PARAVIEW_USE_MPI AND PARAVIEW_USE_PYTHON 610 MODULES VTK::ParallelMPI4Py) 612 paraview_require_module( 613 CONDITION PARAVIEW_USE_MPI AND PARAVIEW_BUILD_CANONICAL 614 MODULES VTK::FiltersParallelFlowPaths 615 VTK::FiltersParallelGeometry 616 VTK::FiltersParallelMPI 619 paraview_require_module( 620 CONDITION PARAVIEW_USE_MPI AND PARAVIEW_BUILD_CANONICAL AND PARAVIEW_ENABLE_NONESSENTIAL 621 MODULES VTK::IOParallelNetCDF 624 paraview_require_module( 625 CONDITION PARAVIEW_BUILD_CANONICAL AND PARAVIEW_ENABLE_RENDERING AND PARAVIEW_ENABLE_NONESSENTIAL 626 MODULES ParaView::RemotingMisc 627 ParaView::RemotingExport 628 ParaView::RemotingLive 629 ParaView::RemotingAnimation) 631 # Legacy Catalyst Python modules depends on paraview.tpl.cinema_python 632 paraview_require_module( 633 CONDITION PARAVIEW_USE_PYTHON 634 MODULES ParaView::CinemaPython) 636 paraview_require_module( 637 CONDITION PARAVIEW_ENABLE_CATALYST 638 MODULES VTK::IOCatalystConduit 641 if (NOT PARAVIEW_ENABLE_NONESSENTIAL) 642 # This ensures that we don't ever enable certain problematic 643 # modules when PARAVIEW_ENABLE_NONESSENTIAL is OFF. 644 set(nonessential_modules 651 # PARAVIEW_ENABLE_CGNS_* are the only options that can force the need for cgns and 652 # hdf5 TPLs when PARAVIEW_ENABLE_NONESSENTIAL is true. 653 if (NOT PARAVIEW_ENABLE_CGNS_READER AND NOT PARAVIEW_ENABLE_CGNS_WRITER) 654 list(APPEND nonessential_modules 659 list(APPEND paraview_rejected_modules 660 ${nonessential_modules}) 661 foreach (nonessential_module IN LISTS nonessential_modules) 662 set("_vtk_module_reason_${nonessential_module}
" 663 "via `PARAVIEW_ENABLE_NONESSENTIAL` (via `PARAVIEW_BUILD_EDITION=${PARAVIEW_BUILD_EDITION}`)
") 666 function (_paraview_io_option_conflict option name) 669 "ParaView is configured without I/O support (via the
" 670 "${PARAVIEW_BUILD_EDITION} edition) which is incompatible with the
" 671 "request
for ${
name} support (via the `${option}` configure option)
") 675 _paraview_io_option_conflict(PARAVIEW_ENABLE_ADIOS2 "ADIOS 2.x
") 676 _paraview_io_option_conflict(PARAVIEW_ENABLE_ALEMBIC Alembic) 677 _paraview_io_option_conflict(PARAVIEW_ENABLE_FFMPEG FFmpeg) 678 _paraview_io_option_conflict(PARAVIEW_ENABLE_FIDES Fides) 679 _paraview_io_option_conflict(PARAVIEW_ENABLE_GDAL GDAL) 680 _paraview_io_option_conflict(PARAVIEW_ENABLE_LAS LAS) 681 _paraview_io_option_conflict(PARAVIEW_ENABLE_MOTIONFX MotionFX) 682 _paraview_io_option_conflict(PARAVIEW_ENABLE_OPENTURNS OpenTURNS) 683 _paraview_io_option_conflict(PARAVIEW_ENABLE_PDAL PDAL) 684 _paraview_io_option_conflict(PARAVIEW_ENABLE_VISITBRIDGE VisItBridge) 685 _paraview_io_option_conflict(PARAVIEW_ENABLE_XDMF2 xdmf2) 686 _paraview_io_option_conflict(PARAVIEW_ENABLE_XDMF3 xdmf3) 689 if (NOT PARAVIEW_ENABLE_RENDERING) 690 # This ensures that we don't ever enable OpenGL 691 # modules when PARAVIEW_ENABLE_RENDERING is OFF. 692 set(rendering_modules 694 list(APPEND paraview_rejected_modules 695 ${rendering_modules}) 696 foreach (rendering_module IN LISTS rendering_modules) 697 set("_vtk_module_reason_${rendering_module}
" 698 "via `PARAVIEW_ENABLE_RENDERING` (via `PARAVIEW_BUILD_EDITION=${PARAVIEW_BUILD_EDITION}`)
") 701 function (_paraview_rendering_option_conflict option name) 704 "ParaView is configured without Rendering support (via the
" 705 "${PARAVIEW_BUILD_EDITION} edition) which is incompatible with the
" 706 "request
for ${
name} support (via the `${option}` configure option)
") 710 _paraview_rendering_option_conflict(PARAVIEW_ENABLE_RAYTRACING raytracing) 711 _paraview_rendering_option_conflict(PARAVIEW_USE_QT Qt) 714 if (paraview_requested_modules) 715 list(REMOVE_DUPLICATES paraview_requested_modules) 718 if (paraview_rejected_modules) 719 list(REMOVE_DUPLICATES paraview_rejected_modules)
macro paraview_require_module()
Conditionally require/reject optional modules.
#define BUILD_SHARED_LIBS
function vtk_deprecated_setting(output_default, new, old, intended_default)