[PATCH Libgpg-error] gpg-error.m4: support pkg-config

Werner Koch wk at gnupg.org
Fri Oct 12 08:31:10 CEST 2018

On Thu, 11 Oct 2018 20:27, alon.barlev at gmail.com said:

> * Simplicity, built for the task.

I cannot say that 145,517 source lines of code is a good indication of
simplicity (Debian's 0.29).  Compare that to make which has 30,919 SLOC
and thus 21% of pkg-config.  I know that pkg-config it comes with glib
included but for a bootstrapping tool this is quite excessive.  In
particular when looking at the 45,000 SLOC of libgpg-error.

> * Good integration into autoconf using the pkg.m4 macros, enables the
>   detection of pkg-config, fallback if missing and handle the
>   interaction, including override settings by environment.

And still not way to indicate an API break.  Pretty inflexible way to
add new configure options due to using its own syntax instead of
utilizing the standard glue scripting language on Unix.

Remember that it was build for large projects like GNOME where creating
new libs is so common that virtually nobody takes care of ABI/API
maintenance.  For such an environment pkg-config (or the older larger
foo-config) stuff makes a lot of sense.  For libraries with a maintained
API and ABI a simpler, more portable but also harder to initially create
dedicated config file is a cleaner approach.

> * Support for multilib configurations as configuration is installed per
>   library setup, unlike a common script that is installed at bindir.

Multilib is a questionable feature as it introduced a third way to build
packages (native, cross, multilib).  The major problem, here is that it
was been developed by the linux distros without integrating this in the
standard GNU toolchain or getting it properly upstream.

> * Cross-compile support, support sysroot and does not require to execute
>   anything from sysroot.

It seems to have improved over the years.  I remember well, how we
needed to patch around pkg-config when cross building larger systems for

Please don't let us have such discussions in commit logs.



Die Gedanken sind frei.  Ausnahmen regelt ein Bundesgesetz.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <https://lists.gnupg.org/pipermail/gnupg-devel/attachments/20181012/8a2c8696/attachment.sig>

More information about the Gnupg-devel mailing list