Hello everyone! My name is Kyle. I work at Kitware, Inc., the upstream maintainer of the CMake buildsystem (https://www.cmake.org/) and VTK, the Visualization Toolkit (https://www.vtk.org/). As some of you on the Debian Science list may have heard, we are making an effort to officially support our flagship product, VTK, on Debian and its derivatives. To that end, we have created a new set of Debhelper utilities to meet the unique challenges of packaging a large CMake- based project like VTK. We have named this project "dh-cmake". It allows Debhelper to take advantage of some of the more advanced capabilities of CMake. For example:
* CMake's install() command takes an optional COMPONENT parameter, which allows you to break the installation up into multiple "components", such as "Libraries" and "Development". dh-cmake allows you to assign these components to separate binary packages, to avoid having to enumerate every file or file glob in the *.install files. * Projects that are CTest-aware can optionally have the output of dh_auto_configure, dh_auto_build, and dh_auto_test captured by CTest and submitted to a CDash server as part of a continuous integration process. This is very useful for making sure a large software project builds properly on Debian. * CPack includes a mechanism to declare dependencies between installation components, for example, stating that the "Development" component depends on the "Libraries" component. dh-cmake can propagate this information into the output packages, so that libexample-dev will automatically depend on libexample. You can download the source code at https://gitlab.kitware.com/debian/dh-cmake, and read more details about the rationale and how it works. You can also install the binaries from our own APT repository. Follow the instructions at https://apt.kitware.com/ to set up the repository, and then install the "dh-cmake" package. Our end goal is to get both dh-cmake and VTK into Debian proper, but it is still in an experimental state, and there is still a lot of work to be done yet. We would like to get some feedback on dh-cmake, and we will eventually file a formal ITP and RFS for it as it becomes more mature. We would also like to see other CMake-based packages follow our lead and use these utilities. If you have a package that uses CMake, we encourage you to give dh-cmake a try. Thank you in advance for the feedback. We are very excited to venture into Debian development. Kyle