Skip to content
Snippets Groups Projects
Commit 282eb414 authored by Ben Boeckel's avatar Ben Boeckel
Browse files

cmake: disable kits when building statically

ParaView has witnessed that dependency cycles with its Python module
loading strategy during static builds where kits are enabled. To avoid
having this trip up users, just deny the configuration.
parent b2112718
No related branches found
No related tags found
No related merge requests found
......@@ -321,7 +321,10 @@ if ("VTK::Python" IN_LIST vtk_modules)
endif ()
endif ()
option(VTK_ENABLE_KITS "Enable kits compilation" OFF)
cmake_dependent_option(VTK_ENABLE_KITS "Enable kits compilation" OFF
# Static builds don't make sense with kits. Ignore the flag if shared
# libraries aren't being built.
"VTK_BUILD_SHARED_LIBS" OFF)
mark_as_advanced(VTK_ENABLE_KITS)
option(VTK_USE_EXTERNAL "Use external copies of third party libraries by default" OFF)
......
......@@ -171,9 +171,9 @@ Less common, but variables which may be of interest to some:
values are `OFF` (no testing), `WANT` (enable tests as possible), and `ON`
(enable all tests; may error out if features otherwise disabled are
required by test code).
* `VTK_ENABLE_KITS` (default `OFF`): Compile VTK into
a smaller set of libraries. Can be useful on platforms where VTK takes a
long time to launch due to expensive disk access.
* `VTK_ENABLE_KITS` (default `OFF`; requires `BUILD_SHARED_LIBS`): Compile
VTK into a smaller set of libraries. Can be useful on platforms where VTK
takes a long time to launch due to expensive disk access.
* `VTK_ENABLE_WRAPPING` (default `ON`): Whether any wrapping support will be
available or not.
* `VTK_WRAP_JAVA` (default `OFF`; requires `VTK_ENABLE_WRAPPING`):
......
## no-static-kits
Static builds no longer allow building with kits. The goal of a kit build is to
reduce the number of runtime libraries needed, but this is not relevant in a
static build anyways. Additionally, there are issues that arise with static kit
builds that are lingering and rather than leaving them around for users to
accidentally run into, VTK now only considers `VTK_ENABLE_KITS` in shared
builds.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment