[vtk-developers] New module system preview

Ben Boeckel ben.boeckel at kitware.com
Mon Oct 29 14:05:24 EDT 2018


On Mon, Oct 29, 2018 at 13:57:02 -0400, David Thompson wrote:
> I'm really looking forward to imported targets!
> 
> >  - Instead of `module.cmake`, there are `vtk.module` and `vtk.kit`
> >    files. These are basically CMake argument lists, but no variable
> >    expansion is allowed. If there are optional dependencies, they must
> >    be private dependencies. Optional public dependencies indicate that
> >    a new module should be made instead.
> 
> Is there a reason these things need to be separate files
> (vtk.module/vtk.kit) at all?

The `vtk.kit` declares a kit. Membership into a kit is via `vtk.module`.
Example `vtk.kit`:

```
NAME
  VTK::Common
LIBRARY_NAME
  vtkCommon
DESCRIPTION
  Core utilities for VTK.
```

and `vtk.module`:

```
NAME
  VTK::CommonCore
LIBRARY_NAME
  vtkCommonCore
DESCRIPTION
  The base VTK library.
KIT
  VTK::Common
GROUPS
  StandAlone
DEPENDS
  VTK::kwiml
  VTK::vtksys
PRIVATE_DEPENDS
  VTK::utf8
TEST_DEPENDS
  VTK::CommonSystem
  VTK::CommonTransforms
  VTK::TestingCore
  VTK::vtksys
```

--Ben


More information about the vtk-developers mailing list