[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Transition proposal: pkg-config to pkgconf



Hi!

On Mon, 2022-08-29 at 15:38:08 +0200, Andrej Shadura wrote:
> It seems like the proposal went mostly unnoticed. Any comments,
> ideas, anything?

I at least read it, and it looked great. But…

> Most importantly, I need a green light from the current pkg-config
> maintainer (Tollef) to proceed with the plan.

…as it was waiting for this, it slipped my mind.

> Meanwhile, I have uploaded an updated version of the package which
> dropped the crosswrapper, and instead uses the "personalities"
> feature to implement its functionality. The package also no longer
> needs a dpkg hook, as it ships a per-architecture symlinks in
> arch-specific packages.

Thank you for getting rid of both of these annoyances! I switched all
my hosts and chroots to pkgconf, when I watched your DebConf presentation
and it's been working great.

> On Sun, 24 Jul 2022, at 17:33, Andrej Shadura wrote:
> > Following a discussion at DebConf, I’d like to officially propose a transition
> > from pkg-config to pkgconf in Debian.
> >
> > pkgconf is a newer, actively maintained implementation of pkg-config that
> > supports more aspects of the pkg-config file specification and provides a
> > library interface that applications can use to incorporate intelligent
> > handling of pkg-config files into themselves (such as build file generators,
> > IDEs, and compilers).

Right, I track the pkg-config upstream git repo and it unfortunately has
seen no major development since 2019, and not upstream release since 2017.

I've also taken a peek to pkgconf from time to time, and it looks like
a nice project, code wise, etc.

> > Debian would benefit from switching to pkgconf by utilising a more complete
> > implementation of pkg-config that handles aspects of .pc files that pkg-config
> > does not. For example, Provides rules and Cflags.private rules are supported,
> > and pkgconf has a better (and less costly) dependency resolver for .pc files.

Yes.

> > Migration plan
> > ==============
> >
> > I believe that it would in the best interests of Debian to only ship one
> > pkg-config implementation, so I propose to make pkgconf provide the binary
> > package pkg-config without a possibility to fall back to the original
> > implementation. This means that after pkgconf takes over the pkg-config
> > binary package, all packages depending on pkg-config will be using the pkgconf
> > implementation without being able to opt out and use the one from
> > freedesktop.org. While this may seem limiting, it reduces the probability of
> > some packages staying with the freedesktop.org implementation indefinitely and
> > missing out on bug fixes or suffering from other differences in implementation
> > details in future when pkgconf becomes even more widespread.

If pkg-config was showing signs of activity, then this could perhaps
be a potential concern, but given its current state, I think this makes
perfect sense.

> > In preparation for this migration, I ran a rebuild of all packages depending
> > on pkg-config and found only very few failures [5], which may or may not be
> > related to the difference in behaviour between pkg-config and pkgconf. I will
> > perform another rebuild and continue investigating them to provide patches
> > during the transition period.

Great!

Thanks,
Guillem


Reply to: