[CMake] Query about FindXXX files

Alexander Neundorf a.neundorf-work at gmx.net
Wed Oct 1 18:35:45 EDT 2008


On Wednesday 17 September 2008, Leo Breebaart wrote:
> In CMake 2.6.1, the header for FindTIFF.cmake says:
>
> # This module defines
> #  TIFF_INCLUDE_DIR, where to find tiff.h, etc.
> #  TIFF_LIBRARIES, libraries to link against to use TIFF.
> #  TIFF_FOUND, If false, do not try to use TIFF.
> # also defined, but not for general use are
> #  TIFF_LIBRARY, where to find the TIFF library.
>
> However, after executing:
>
>   FIND_PACKAGE(TIFF)
>
> my CMakeCache.txt now has the following entries:
>
>     TIFF_INCLUDE_DIR:PATH=/usr/include
>     TIFF_LIBRARY:FILEPATH=/usr/lib/libtiff.so
>
> So, in other words, the "not for general use" TIFF_LIBRARY
> variable is placed in my cache, while the promised TIFF_LIBRARIES
> variable is not.
>
> Something similar seems to be happening for FindJPEG, FindMPEG,
> FindPNG, etc.
>
> So I am probably just missing something here. Can somebody
> perhaps explain to me what the reasoning behind the
> LIBRARY/LIBRARIES approach is?

The foo_LIBRARY/foo_INCLUDE_DIR variables point to existing files on your 
system, if they are not found automatically, it is not too hard to set them 
manually so they point to the right location.
For the LIBRARIES/INCLUDES variables this is more complicated, since they 
(can) contain several variables, and for you as a user it is harder to know 
which one should be there in the list, so this logic is kept in the 
Find-modules.

Alex


More information about the CMake mailing list