[Pkg-cmake-team] Bug#959064: ignition-transport FTBFS in testing.

peter green plugwash at p10link.net
Thu Apr 30 03:40:30 BST 2020


On 29/04/2020 17:47, Jochen Sprickerhof wrote:
>
> What I found up to now:
>
> - pkg-config=0.29.2-1:
>
>   $ pkg-config --cflags-only-I libzmq
>   -isystem /usr/include/mit-krb5 -I/usr/include/pgm-5.2
>
> - Whereas pkg-config=0.29-6 (or pkgconfig):
>
>   $ pkg-config --cflags-only-I libzmq
>   -I/usr/include/pgm-5.2
>
> So the recent update of pkg-config has a new behaviour, introduced in
>
> https://bugs.freedesktop.org/show_bug.cgi?id=97337
>
So to clarify the situation as I now understand it (it took me a couple of readings of the mail for it to sink in)

The behavior of pkg-config has changed so that --cflags-only-I now lets through "-isystem" as well as "-I"

This lets though a -isystem parameter with a space which was previously suppressed (not because it had a space but because it was a -isystem parameter rather than a -I parameter)

And the space in said parameter breaks cmake.

> Changing -isystem /usr/include/mit-krb5 to -isystem/usr/include/mit-krb5 works in the .pc file(s) works around this but man gcc indicates that a space after -isystem seems fine as well.
>
Investigating further it seems that the use of -isystem in krb5 and the space after it are the results of a Debian patch (upstream uses -I with no space). So it seemed to me that the expedient way to fix the build failure was just to change the krb5 patch and that this would actually reduce the delta from upstream. I went ahead and did that in Raspbian. A debdiff should appear soon at https://debdiffs.rapsbian.org/main/k/krb5/


> I think cmake should handle -isystem<space>¹ and as this is reproducible without ignition-transport, I'm reassigning this to cmake. 
This certainly seems like the long term solution.



More information about the Pkg-cmake-team mailing list