[CMake] How does interaction between UseXXX.cmake, XXXBuildSettings.cmake and XXXConfig.cmake supposedly work.
kent williams
nkwmailinglists at gmail.com
Thu Aug 27 10:03:03 EDT 2009
I use some classes of vtkINRIA3D library for an ITK/VTK/KWWidgets
application. If you haven't heard of it:
http://www-sop.inria.fr/asclepios/software/vtkINRIA3D/
I had always been building against vtkINRIA3D 'in place' -- i.e.
including the UsevtkINRIA3D.cmake from its build directory.
I'm changing this to instead install the library in a common directory
with the other prerequisite libraries for our applications. This is
primarily an issue of delivery -- it makes it marginally easier to
collect all the shared libraries our app depends on for installation.
But if I try and build against this installed copy of vtkINRIA3D, the
compiler can't find the include files. In looking at
UsevtkINRIA3D.cmake, it has this clause:
INCLUDE_DIRECTORIES(${vtkINRIA3D_INCLUDE_DIRS})
but that variable is not defined. It IS defined in
vtkINRIA3DConfig.cmake, but that file is not included by
UsevtkINRIA3D.cmake. So I assumed there was something wrong with how
vtkINRIA3D is set up or built, in that vtkINRIA3DConfig.cmake is not
included. So I looked at what ITK and VTK do, and there's a similar
setup -- I don't see where either of them include the *Config.cmake
file.
So I'm down in the maze of CMake's deep structure, lost. How is this
all supposed to work?
More information about the CMake
mailing list