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 <hartm...@debian.org>  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 <james...@debian.org>

Attachment: signature.asc
Description: Digital signature

Reply via email to