View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0013125CMakeModulespublic2012-04-12 23:202012-09-03 16:01
ReporterOrion Poplawski 
Assigned ToRolf Eike Beer 
PriorityhighSeveritymajorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product VersionCMake 2.8.8 
Target VersionCMake 2.8.9Fixed in VersionCMake 2.8.9 
Summary0013125: FindPkgConfig.cmake not setting PKG_CONFIG_FOUND in 2.8.8
DescriptionFrom https://bugzilla.redhat.com/show_bug.cgi?id=812188 [^]

A few of my packages use pkg-config from within CMake to resolve build
dependencies, using the FindPkgConfig.cmake module shipped with CMake.
According to the comments in rawhide's FindPkgConfig.cmake:

# It sets the following variables:
# PKG_CONFIG_FOUND ... true if pkg-config works on the system
# PKG_CONFIG_EXECUTABLE ... pathname of the pkg-config program
# PKG_CONFIG_VERSION_STRING ... the version of the pkg-config program found
# (since CMake 2.8.8)
# PKG_CONFIG_FOUND ... if pkg-config executable was found

(note the two lines mentioning PKG_CONFIG_FOUND with different meanings)

Most of my packages check for PKG_CONFIG_FOUND before trying to use pkg-config,
and the fact that this module is no longer setting that variable means that
CMake isn't picking up on all of the available dependencies. The result is
FTBFS errors and missing program features on builds that do succeed.

Version-Release number of selected component (if applicable):
cmake-2.8.8-0.2.rc2.fc18.x86_64
Steps To ReproduceThe following simple CMakeLists.txt can be used to recreate the problem:

======begin CMakeLists.txt======
cmake_minimum_required(VERSION 2.8)

include(FindPkgConfig)

if(PKG_CONFIG_FOUND)
 message(STATUS "PkgConfig Found.")
else(PKG_CONFIG_FOUND)
 message(STATUS "PkgConfig Not Found.")
endif(PKG_CONFIG_FOUND)

message(STATUS "PkgConfig Executable: ${PKG_CONFIG_EXECUTABLE}")
======end CMakeLists.txt======

cmake-2.8.8-0.2.rc2.fc18.x86_64 in rawhide (f18) produces the following output:
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.25")
-- PkgConfig Not Found.
-- PkgConfig Executable: /usr/bin/pkg-config

cmake-2.8.7-4.fc17.x86_64 in f17 produces:
-- PkgConfig Found.
-- PkgConfig Executable: /usr/bin/pkg-config
TagsNo tags attached.
Attached Filespatch file icon 13125.patch [^] (595 bytes) 2012-04-12 23:56 [Show Content]
patch file icon Rolf-cmake_13125-nocolor.patch [^] (2,062 bytes) 2012-04-13 03:12 [Show Content]

 Relationships

  Notes
(0029140)
Yury G. Kudryashov (reporter)
2012-04-12 23:56
edited on: 2012-04-13 00:03

The regression was introduced by my commit 55c3435d88618d7ed935736604e7ab989cef4b28. I've attached 13125.patch.

The same patch is available as git commit:
git pull git@gitorious.org:~urkud1/cmake/urkud-cmake.git fix-FindPkgConfig

I have to go right now, so I haven't tested the patch. Test it, please.

The regression in docs was introduced by 27501155c7bcc04ada498407ad3d6fd40dbea2bd.

(0029142)
Rolf Eike Beer (developer)
2012-04-13 02:51

Yury, why don't you just call fphsa(PKG_CONFIG ...)?
(0029143)
Yury G. Kudryashov (reporter)
2012-04-13 02:54
edited on: 2012-04-13 02:55

Because find_package() sets PkgConfig_FIND_REQUIRED, not PKG_CONFIG_FIND_REQUIRED. Look at 0012620.

(0029144)
Yury G. Kudryashov (reporter)
2012-04-13 03:00
edited on: 2012-04-13 03:13

Rolf, your patch contains ASCII color sequences. I've uploaded an updated version of your patch (without colors).

(0029145)
Rolf Eike Beer (developer)
2012-04-13 03:22

Ok, valid point. Will commit a merge of our patches tonight.
(0029153)
Rolf Eike Beer (developer)
2012-04-13 16:59

Fix merged as 8bd38d7070b1cec6ed27b71d0359f1b2ccd1e1c8 to next.
(0030860)
David Cole (manager)
2012-09-03 16:01

Closing resolved issues that have not been updated in more than 4 months.

 Issue History
Date Modified Username Field Change
2012-04-12 23:20 Orion Poplawski New Issue
2012-04-12 23:56 Yury G. Kudryashov Note Added: 0029140
2012-04-12 23:56 Yury G. Kudryashov File Added: 13125.patch
2012-04-13 00:03 Yury G. Kudryashov Note Edited: 0029140
2012-04-13 02:51 Rolf Eike Beer Note Added: 0029142
2012-04-13 02:51 Rolf Eike Beer File Added: cmake_13125.patch
2012-04-13 02:52 Rolf Eike Beer Assigned To => Rolf Eike Beer
2012-04-13 02:52 Rolf Eike Beer Status new => assigned
2012-04-13 02:54 Yury G. Kudryashov Note Added: 0029143
2012-04-13 02:55 Yury G. Kudryashov Note Edited: 0029143
2012-04-13 03:00 Yury G. Kudryashov Note Added: 0029144
2012-04-13 03:12 Yury G. Kudryashov File Added: Rolf-cmake_13125-nocolor.patch
2012-04-13 03:13 Yury G. Kudryashov Note Edited: 0029144
2012-04-13 03:21 Rolf Eike Beer File Deleted: cmake_13125.patch
2012-04-13 03:22 Rolf Eike Beer Note Added: 0029145
2012-04-13 16:59 Rolf Eike Beer Note Added: 0029153
2012-04-13 16:59 Rolf Eike Beer Status assigned => resolved
2012-04-13 16:59 Rolf Eike Beer Resolution open => fixed
2012-04-13 16:59 Rolf Eike Beer Fixed in Version => CMake 2.8.8
2012-04-13 16:59 Rolf Eike Beer Target Version => CMake 2.8.8
2012-04-19 08:56 Rolf Eike Beer Status resolved => feedback
2012-04-19 08:56 Rolf Eike Beer Resolution fixed => reopened
2012-04-19 08:57 Rolf Eike Beer Status feedback => resolved
2012-04-19 08:57 Rolf Eike Beer Resolution reopened => fixed
2012-04-19 08:57 Rolf Eike Beer Product Version => CMake 2.8.8
2012-04-19 08:57 Rolf Eike Beer Fixed in Version CMake 2.8.8 => CMake 2.8.9
2012-04-19 08:57 Rolf Eike Beer Target Version CMake 2.8.8 => CMake 2.8.9
2012-04-19 08:57 Rolf Eike Beer Summary FindPkgConfig.cmake not setting PKG_CONFIG_FOUND in 2.8.8 rc2 (and rc1) => FindPkgConfig.cmake not setting PKG_CONFIG_FOUND in 2.8.8
2012-09-03 16:01 David Cole Note Added: 0030860
2012-09-03 16:01 David Cole Status resolved => closed


Copyright © 2000 - 2018 MantisBT Team