OK, so how about this: 1) If a package need pkgconfig to properly prepare its .pc file, pkgconfig should be a BuildDepends 2) If a package uses features of the new pkgconfig which would cause incorrect behavior with the old pkgconfig, then pkgconfig should be a versioned Depends. 3) If a library requires pkgconfig to build, it should have a BuildDepends. 4) Otherwise, dependencies on pkgconfig should be optional and perhaps even deprecated.
Just my 2 cents. -- Dave On Aug 17, 2006, at 10:28 AM, Daniel Macks wrote: > On Wed, Aug 16, 2006 at 03:24:37PM +0200, Martin Costabel wrote: >> David R. Morrison wrote: >>>> *From: *Peter Dyballa <[EMAIL PROTECTED] >> [] >>>> When I want to install libpng3 Fink wants to install glib and >>>> glib-shlibs too. What have these "Common C routines used by Gtk+ >>>> and >>>> other libs" to do with PNG? >> >> This comes from two deliberate decisions in Fink: >> >> 1. Every package that installs a *.pc file must have a dependency >> on the >> pkgconfig package. > [snip] >> In the case of libpng3, 1. is questionable, IMHO. It does not use >> pkg-config, it simply installs two files into /sw/lib/pkgconfig/. > > IIRC, we've never even had a consensus on this policy...didn't used to > be required, then it was for a while, now not. > > Okay, let's resolve it now: should packages that contain .pc files be > required to Depends:pkgconfig? > > Pro 1: .pc is a data file for pkg-config, so it doesn't make sense to > have data files without their accessor program (would be like having > foo-pmXXX not Depends:perlXXX-core). > > Pro 2 (Response to Con 1): People install foo-dev to be able to > compile against libfoo and compiling against a lib that supplies .pc > often requires using pkg-config, so we should reduce the number of > unstated dependencies, especially for non-fink uses. The pkgconfig > package is not BuildDependsOnly. > > Pro 3: Some ./configure for packages that install .pc actually use the > pkg-config program (to determine where to install the .pc) using > various hacks that don't make it obvious this is happening. Setting > the dependency, at least as a BuildDepends, thus leads to reduced > packaging problems. > > Pro 4: There are some features of .pc files that require a minimum > version of pkgconfig to support, and older versions mishandle it > silently: ./configure of packages that link against libs whose .pc use > these features give confusing error messages and/or cause deficient > flags to be passed when compiling. Having a having a blanket "must > depend" policy causes maintainers (or at least committers) to think > about the dependency and decide how/if it needs to be versioned. > > Con 1: More dependencies==more building for users, and in this case > it's of things that aren't "obviously needed" by what user says he > wants. > > Con 2 (Response to Pro 1): pkg-config isn't the only thing that can > process .pc files (however, it is the only one in fink at this time). > If user wanted to use a different one, why should he also need this > one? If fink gets another that is completely backward compatible with > the 'pkg-config' program, it would likely supply such a program also, > which will lead to a dependency disaster if we have packages that have > versioned dependencies on pkgconfi > > Con 3 (Response to Pro 4): not really...people will blindly add it and > not look for any specifics. Would be up to 'fink validate' or > responding to user bug reports to handle the the need for versioning. > > dan > > -- > Daniel Macks > [EMAIL PROTECTED] > http://www.netspace.org/~dmacks > > > ---------------------------------------------------------------------- > --- > Using Tomcat but need to do more? Need to support web services, > security? > Get stuff done quickly with pre-integrated technology to make your > job easier > Download IBM WebSphere Application Server v.1.0.1 based on Apache > Geronimo > http://sel.as-us.falkag.net/sel? > cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Fink-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/fink-devel ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Fink-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/fink-devel
