MantisBT - CMake
View Issue Details
0004051CMakeCMakepublic2006-11-20 09:032016-06-10 14:30
Frederic Heem 
Bill Hoffman 
lowfeaturealways
closedmoved 
 
 
0004051: integrated pkgconfig
pkgconfig is becoming an ad-hoc standard on *NIX for retrieving information about libraries.
However, its usage through cmake is cumbersome:
* the PKG_CONFIG_PATH searching is broken, suppose that PKG_CONFIG_PATH equals to MYPROJECTDIR in order to look for $MYPROJECTDIR/myproject.pc and ONLY $MYPROJECTDIR/myproject.pc. pkgconfig will first search in /usr, which is not what is intended
This problem leads to have separate cases in FindXXX.cmake, the one which uses FIND_INCLUDE, FIND_LIBRARY in case when MYPROJECTDIR is set, and the other case which uses pkgconfig
* pkgconfig returns string with ending line ("\r\n")
* pkgconfig returns include directories with -I, this is not directly understood by cmake
* pkgconfig may return multiple path, e.g -I/opt/include -I/usr/local/include, FIND_INCLUDE doesn't support this
* pkgconfig is not installed by default on windows
* pkgconfig is removing default include directory such as -I/usr/include and default library directory such as -I/usr/local
This makes UsePkgconfig more complicated.
So the request in to include pkgconfig code inside cmake and fixing all issues explained.
Thanks
No tags attached.
Issue History
2013-11-02 10:08Stephen KellyNote Added: 0034320
2016-06-10 14:27Kitware RobotNote Added: 0041331
2016-06-10 14:27Kitware RobotStatusassigned => resolved
2016-06-10 14:27Kitware RobotResolutionopen => moved
2016-06-10 14:30Kitware RobotStatusresolved => closed

Notes
(0006486)
Bill Hoffman   
2007-02-20 16:24   
HAve you seen the new FindPkgConfig.cmake in CVS does that do what you want?
(0034320)
Stephen Kelly   
2013-11-02 10:08   
Should this be closed?
(0041331)
Kitware Robot   
2016-06-10 14:27   
Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current CMake Issues page linked in the banner at the top of this page.