[vtk-developers] Guide to implementing kits

Adam Rankin arankin at robarts.ca
Tue Mar 8 14:23:08 EST 2016


After reading your reply, I don't think kits will be necessary for our project. We don't have nearly the number of projects as VTK does.

I have since removed the kit entries from my module.cmake files and it generates and compiles as expected. Thanks!

Adam

-----Original Message-----
From: Ben Boeckel [mailto:ben.boeckel at kitware.com] 
Sent: Tuesday, March 08, 2016 11:18 AM
To: Adam Rankin <arankin at robarts.ca>
Cc: David Gobbi <david.gobbi at gmail.com>; vtk-developers at vtk.org
Subject: Re: [vtk-developers] Guide to implementing kits

On Tue, Mar 08, 2016 at 00:15:53 +0000, Adam Rankin wrote:
> Not quite. Specifically the kit part of the module system
> 
> For example:
> vtk_module(vtkCommonCore
>   GROUPS
>     StandAlone
>   PRIVATE_DEPENDS
>     vtksys
>   TEST_DEPENDS
>     vtkTestingCore
>     vtkCommonSystem
>     vtkCommonTransforms
>   KIT
>     vtkCommon
>   )
> 
> Produces projects like:
> vtkCommon
> vtkCommonKitPython
> vtkCommonKitPythonD
> vtkCommonCoreObjects
> 
> and I’m just trying to understand how those get generated, how they 
> are populated etc… I have started digging into the vtk CMake 
> functions/macros but was hoping someone may have documented the Kit 
> (sub?)system.

The idea here was to reduce the number of libraries that VTK generates (to help minimize disk I/O when loading them). Basically, when vtk_add_library is called, it sees if kits are enabled and what (if any) kit the module is part of. It then goes and stores this information for building the main kit libraries (if kits are enabled). It does this using add_library(OBJECT) to create objects for each module and then the kit library actually links all of these together into a library.

What are you looking to use kits for?

--Ben


More information about the vtk-developers mailing list