Bug 476199

Summary: rpm pkgconfig autoprovides doesn't know about the built-in pkg-config provides of pkgconfig itself
Product: [Fedora] Fedora Reporter: Caolan McNamara <caolanm>
Component: pkgconfigAssignee: Matthias Clasen <mclasen>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: alex, ffesti, jnovy, mclasen, peter, pmatilai
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-02-03 04:04:57 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Caolan McNamara 2008-12-12 12:42:49 UTC
Description of problem:

e.g. /usr/lib/pkgconfig/libempathy.pc
has a Requires: pkg-config >= 0.21 and so gets a
Requires: pkgconfig(pkg-config) >= 0.21
which can't be satisfied because rebuilding pkgconfig itself doesn't create a 
Provides: pkgconfig(pkg-config)

The pkg-config provides is built-in to pkgconfig i.e.
pkgconfig pkg-config --print-provides pkg-config
prints 
pkg-config = 0.23

Comment 1 Panu Matilainen 2008-12-12 15:30:04 UTC
This is another case that would be handled nice and cleanly by pkg-config providing .pc of itself (see discussion in bug 473814 and https://bugs.freedesktop.org/show_bug.cgi?id=14975) instead of having hidden built-in magic.

CC'ing pkgconfig maintainer for comments...

Comment 2 Alex Lancaster 2008-12-26 09:11:42 UTC
originally posted on bug 473814 comment 15:

"It appears that empathy-devel has a Requires of pkgconfig(pkg-config) >= 0.21:

http://koji.fedoraproject.org/koji/rpminfo?rpmID=912264

but nothing appears to satisfy that, causing failures of rebuilds of other
packages, e.g. desktop-data-model:

https://koji.fedoraproject.org/koji/taskinfo?taskID=1021990

"

This needs to be fixed ASAP because it is causing a whole chain of deps to fail to rebuild such as desktop-data-model, bigboard and perhaps others.

Comment 3 Panu Matilainen 2009-02-02 12:00:59 UTC
IMO the cleanest option would be adding a .pc for pkg-config itself.
Alternative, truly trivial way is to just add an explicit provide to pkgconfig:
Provides: pkgconfig(pkg-config) = %{version}

Assigning to pkgconfig for now. Matthias, if neither of the above options are acceptable to you then say so and throw back at rpm. But to fix this in rpm would mean a gross hardwired check on /usr/bin/pkg-config path, on a file thats otherwise "just any old elf binary" to rpm.

Comment 4 Matthias Clasen 2009-02-03 04:04:57 UTC
I've added an explicit Provides.