[cmake-developers] find_package module-only policy (was: find_package error wording)

Alexander Neundorf neundorf at kde.org
Tue Feb 21 16:22:08 EST 2012


On Tuesday 21 February 2012, Alexander Neundorf wrote:
> On Monday 20 February 2012, Alexander Neundorf wrote:
> > On Monday 20 February 2012, Brad King wrote:
> ...
> 
> > > (2) Add the explicit MODULE and CONFIG mode keywords.  Warn if they
> > > are used and the current minimum CMake version is not >= 2.8.8 so that
> > > people do not add them in places that will break old versions.
> > > 
> > > (3) Add two possible AUTHOR_WARNING messages in the case that no mode
> > > 
> > > keyword or Find module is present:
> > >   - If the current minimum CMake required version is >= 2.8.8 then
> > >   
> > >     warn that MODULE or CONFIG should be used.
> > >   
> > >   - Otherwise if CMAKE_FIND_PACKAGE_WARN_NO_MODULE is set to true then
> > >   
> > >     warn that NO_MODULE should be used to get the config mode.
> > 
> > There is now a branch FindPackage_ModeWarning on stage.
> 
> I should have probably pushed all my commits to this branch...
> Done now.
> 
> Working on your suggestions.

Problem ?
Somebody has a FindConfig.cmake here:
http://lists.gforge.inria.fr/pipermail/blobseer-commits/2009-
January/000101.html

There may be also a FindCONFIG.cmake or a FindMODULE.cmake somewhere...

Even so with FindConfig.cmake, if this runs on Windows, they might be doing
find_package(CONFIG REQUIRED)
Now it searches for the required package FindCONFIG.cmake.
Then it would search for REQUIREDConfig.cmake...
Using the next argument only as package name if it is not a known keyword or 
version number would lead to even more non-working package names: HINTS, 
PATHS, CONFIGS, "123", REQUIRED, COMPONENTS, NAMES (I left all keywords which 
have an underscore out, it is probably too unlikely that there is a 
FindPATH_SUFFIXES.cmake).

Ignore and just hope it will be ok ?

Alex



More information about the cmake-developers mailing list