From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-GB; rv:1.7.6) Gecko/20050323 Firefox/1.0.2 Fedora/1.0.2-1.3.1 Description of problem: Package contains a pkgconfig template file, which lists other pkgconfig files as requirements. When these files are included in other RPM packages, the RPM package "Requires" must be complete. Else pkgconfig fails, prints an error message and returns an error code for standard queries like "pkg-config --exists foo-1.0", "pkg-config --cflags foo-1.0" or "pkg-config --list-all". missing dependencies due to pkgconfig files: Requires: glib2-devel Version-Release number of selected component (if applicable): gamin-devel-0.0.25-4 How reproducible: Always Steps to Reproduce: - Additional info:
On Wed, Mar 30, 2005 at 12:24:13AM -1000, Warren Togami wrote: > Daniel Veillard wrote: > > I don't understand what is the consequence of adding a library to > > pkgconfig. > >Suppose package A requires gamin to work. It will link with gamin or fam. > >It does not need to link with glib. But glib is needed for gamin server > >and the server only not the library used by the client application. The > >package of the application depending on gamin should *not* get a glib > >dependancy, only gamin need to. It seems the bug raised break that test > >case, but I don't understand how pkgconfig works. > > Do you have a clear normative description of pkgconfig which could > >explain how that case need to be handled ? If by requiring gamin/fam > >all KDE suddenly get a glib dependancy people will complain publicly > >that's 100 sure. So I'm very reluctant following the advice in > > https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=152486 > >or in your mail. > > > >Daniel > > > > My response is only "builds fail without it", political reasons should > not override reality. However... > > https://www.redhat.com/archives/fedora-maintainers/2005-March/msg00132.html > Michael explains here with more detail. If you have a response, then > please respond on that list. Okay I have only one normative text for what pkgconfig is all about: man pkg-config ------------------------- The pkg-config program is used to retrieve information about installed libraries in the system. It is typically used to compile and link against one or more libraries. Here is a typical usage scenario in a Makefile: ------------------------- pkg-config is there to get library dependancies. Program needing fam or gamin support need it to get the libraries to link to. The output of pkgconfig cflags or link must *NOT* show glib output, even if from a packaging level, gamin requires glib for the server side. The fact that KDE requires fam or gamin, does not mean it should link against glib. So without further detailed information allowing to disambiguate using pkgconfig for it's original goal of simplifying compiling and linking from the added use as a packaging dependancy, bug #152486 is a WONTFIX for me. Daniel
But you do require glib2-devel CFLAGS and LDFLAGS in your .pc file. Drop them if they are not needed. See "pkg-config --cflags --ldflags gamin". --- gamin.pc.orig 2005-03-01 19:06:28.000000000 +0100 +++ gamin.pc 2005-03-30 12:47:50.000000000 +0200 @@ -6,6 +6,5 @@ Name: gamin Description: The gamin file monitoring system. Version: 0.0.25 -Requires: glib-2.0 gthread-2.0 Libs: -L${libdir} -lgamin-1 Cflags: -I${includedir}/fam
Okay, that make more sense then. Changed upstream, thanks,