Adding krb5 maintainers to discuss ownership of the bug.
On Sun, Sep 07, 2014 at 07:07:24PM -0700, Daniel Schepler wrote:
> From my pbuilder build log:
>
> ...
> scons GSSAPI=/usr CFLAGS="-g -O2 -fstack-protector-strong -Wformat
> -Werror=format-security" CPPFLAGS="-D_FORTIFY_SOURCE=2"
> LINKFLAGS="-Wl,-z,relro -Wl,-z,defs -Wl,--as-needed"
> scons: Reading SConscript files ...
> TypeError: Directory /usr/include/mit-krb5 found where file expected.:
> File "/tmp/buildd/serf-1.3.7/SConstruct", line 360:
> env.ParseConfig('$GSSAPI --cflags gssapi')
> …
> debian/rules:26: recipe for target 'debian/stamp-build' failed
> make: *** [debian/stamp-build] Error 2
> dpkg-buildpackage: error: debian/rules build gave error exit status 2
The problem here is two-fold. krb5-multidev's krb5-config recently
changed to emit “-isystem /usr/include/mit-krb5” for CFLAGS:
krb5 (1.12.1+dfsg-9) unstable; urgency=high
[ Jelmer Vernooij ]
…
* Use -isystem for include paths, to prevent the compiler from warning
about problems in them. Closes: #751760
…
-- Sam Hartman <[email protected]> Wed, 03 Sep 2014 23:14:34 -0400
(Side note, that bug probably should have been #751054)
Now, when serf tries to build, it ends up using scons'
Environment.ParseFlags (through some indirection) to interpret the
output of krb5-config.
env.ParseConfig('$GSSAPI --cflags gssapi')
However, ParseFlags doesn't understand -isystem, so it ends up adding
-isystem to CCFLAGS and /usr/include/mit-krb5 to LIBS. This obviously
causes the subsequently generated build commands to fail.
In terms of addressing the immediate FTBFS for serf, I'm leaning towards
krb5-config's use of -isystem rather than -I.
I understand that using -isystem works around FTBFS in other packages
which are using very high warning levels. However, it seems to me those
packages should reduce their use of -W flags instead of assuming all the
libraries they depend on live up to those flags (i.e., require all
dependencies to use -isystem instead of -I).
Therefore, I'm inclined to reassign this to krb5-multidev and open a
wishlist+patch bug against scons to teach it about -isystem.
--
James
GPG Key: 4096R/331BA3DB 2011-12-05 James McCoy <[email protected]>
signature.asc
Description: Digital signature

