[CMake] Confusion on how find_package works.

Andreas Pakulat apaku at gmx.de
Wed Jan 14 14:20:44 EST 2009


On 14.01.09 12:33:35, Robert Dailey wrote:
> On Wed, Jan 14, 2009 at 6:22 AM, Andreas Pakulat <apaku at gmx.de> wrote:
> 
> > On 13.01.09 19:06:13, Robert Dailey wrote:
> > > Trust me, I've read this already. It makes no sense to me. How am I
> > supposed
> > > to know that any of the variables it is checking have been set?
> >
> > Not sure what you mean wit that. You can check for any cmake variable
> > wether its set via if(<variablename>)
> >
> > > And if so, where were they set?
> >
> > They are set via the commandline options when running cmake, i.e. cmake
> > -DCMAKE_PREFIX_PATH or by setting an environment variable before running
> > cmake. I'm not sure how the various CMake GUI's handle this.
> >
> > > Could someone give me a summary of what find_path is
> > > searching in in this specific case?
> >
> > Check section 4. and 5., both indicate whats used on the platforms to get
> > paths which should be checked. 4. mentions PATH and INCLUDE environment
> > variables, 5. mentiones platform files for the current system. Those
> > informations are usualy found in
> > <cmake>/share/cmake-2.6/Modules/Platform/<yourplatform>.cmake, in the case
> > of the CMAKE_SYSTEM_PREFIX_PATH variable you'll find the settings in the
> > *Paths.cmake files.
> 
> 
> I'm trying the following CMake code to setup the search paths for
> find_library():
> 
> set( search_path ${third_party} )
> foreach( i RANGE 4 )
>     set( search_path ${search_path}/* )
>     list( APPEND CMAKE_INCLUDE_PATH ${search_path} )
>     list( APPEND CMAKE_PREFIX_PATH ${search_path} )
> endforeach()
> 
> However, this isn't working. I'm assuming wildcards work, which is why I am
> doing this. I read a thread somewhere on the cmake mailing list that said I
> could use wildcards this way. What am I doing wrong?

If you look at the cmake docs, then you'll find out that nothing in there
states that wildcards are allowed. Hence I'd assume that wildcards are not
supported.

Also you only need to set one of the two for find_path to use the
directory.

Andreas

-- 
You will be the last person to buy a Chrysler.


More information about the CMake mailing list