[Pkg-samba-maint] samba-4.16 progress so far

Michael Tokarev mjt at tls.msk.ru
Sun Mar 27 07:13:08 BST 2022


26.03.2022 21:09, Michael Tokarev пишет:
> Now I'm seeing a new issue.  A started from scratch
> (after doing many trial-and-error things in my sbuild chroot), and am unable to
> compile the thing at all.
> 
> It fails like this:
> 
> In file included from ../../third_party/heimdal/lib/gssapi/gssapi/gssapi_krb5.h:40,
>                   from ../../lib/replace/system/gssapi.h:43,
>                   from ../../lib/krb5_wrap/gss_samba.h:27,
>                   from ../../lib/krb5_wrap/gss_samba.c:23:
> ../../third_party/heimdal/lib/gssapi/gssapi/gssapi_oid.h:9:8: error: unknown type name ‘GSSAPI_LIB_VARIABLE’

This is another fun issue with this version of samba.

gcc -E gives:
# 35 "../../lib/replace/system/gssapi.h"
# 1 "../../third_party/heimdal/lib/gssapi/gssapi.h" 1
# 39 "../../third_party/heimdal/lib/gssapi/gssapi.h"
# 1 "../../third_party/heimdal/lib/gssapi/gssapi.h" 1
# 40 "../../third_party/heimdal/lib/gssapi/gssapi.h" 2
# 36 "../../lib/replace/system/gssapi.h" 2

it is including lib/replace/system/gssapi.h, which, since we HAVE_GSSAPI_GSSAPI_H,
#includes <gssapi/gssapi.h>, which resolves to third_party/heimdal/lib/gssapi/gssapi.h.
This one is another "dispatcher", which also #includes <gssapi/gssapi.h>, which, as
we already know, resolves to the same third_party/heimdal/lib/gssapi/gssapi.h.
So we end up _not_ including actual gssapi/gssapi.h - which actually is in
third_party/heimdal/lib/gssapi/gssapi/gssapi.h.

Wug.

So we're messing up the order of includes or the dirnames. It is definitely unreliable
way to find includes.

Here is the command line. I have many other questions to it too, like e.g.
-Ilib/util/build/samba-RdGKBy/samba-4.16.0+dfsg/third_party/gpfs - wtf? :)

/usr/lib/ccache/gcc
-D_SAMBA_BUILD_=4
-DHAVE_CONFIG_H=1
-g
-O2
-ffile-prefix-map=/build/samba-RdGKBy/samba-4.16.0+dfsg=.
-fstack-protector-strong
-Wformat
-Werror=format-security
-MMD
-D_GNU_SOURCE=1
-D_XOPEN_SOURCE_EXTENDED=1
-DHAVE_CONFIG_H=1
-fPIC
-D__STDC_WANT_LIB_EXT1__=1
-D_REENTRANT
-DCTDB_HELPER_BINDIR="/usr/lib/x86_64-linux-gnu/ctdb"
-DLOGDIR="/var/log/ctdb"
-DCTDB_DATADIR="/usr/share/ctdb"
-DCTDB_ETCDIR="/etc/ctdb"
-DCTDB_VARDIR="/var/lib/ctdb"
-DCTDB_RUNDIR="/var/run/ctdb"
-fstack-protector-strong
-fstack-clash-protection
-DSTATIC_krb5samba_MODULES=NULL
-DSTATIC_krb5samba_MODULES_PROTO=extern
void
__krb5samba_dummy_module_proto(void)
-Ilib/krb5_wrap
-I../../lib/krb5_wrap
-Iinclude/public
-I../../include/public
-Isource4
-I../../source4
-Ilib
-I../../lib
-Isource4/lib
-I../../source4/lib
-Isource4/include
-I../../source4/include
-Iinclude
-I../../include
-Ilib/replace
-I../../lib/replace
-Ictdb/include
-I../../ctdb/include
-Ictdb
-I../../ctdb
-I.
-I../..
-Ithird_party/heimdal/lib/krb5
-I../../third_party/heimdal/lib/krb5
-Ithird_party/heimdal/lib/asn1
-I../../third_party/heimdal/lib/asn1
-Ithird_party/heimdal/include
-I../../third_party/heimdal/include
-Ithird_party/heimdal_build
-I../../third_party/heimdal_build
-Ithird_party/heimdal/lib/wind
-I../../third_party/heimdal/lib/wind
-Ithird_party/heimdal/lib/hcrypto/libtommath
-I../../third_party/heimdal/lib/hcrypto/libtommath
-Ilib/util/charset
-I../../lib/util/charset
-Ithird_party/heimdal/lib/hx509
-I../../third_party/heimdal/lib/hx509
-Ithird_party/heimdal/lib/com_err
-I../../third_party/heimdal/lib/com_err
-Ilib/util/build/samba-RdGKBy/samba-4.16.0+dfsg/third_party/gpfs
-I../../lib/util/build/samba-RdGKBy/samba-4.16.0+dfsg/third_party/gpfs
-Ithird_party/heimdal/lib/hcrypto
-I../../third_party/heimdal/lib/hcrypto
-Ithird_party/heimdal/lib
-I../../third_party/heimdal/lib
-Idynconfig
-I../../dynconfig
-Ilib/crypto
-I../../lib/crypto
-Ithird_party/heimdal/lib/ipc
-I../../third_party/heimdal/lib/ipc
-Ithird_party/heimdal/lib/gssapi
-I../../third_party/heimdal/lib/gssapi
-Ithird_party/heimdal/lib/base
-I../../third_party/heimdal/lib/base
-Ithird_party/heimdal/lib/gssapi/gssapi
-I../../third_party/heimdal/lib/gssapi/gssapi
-Ithird_party/heimdal/lib/gssapi/spnego
-I../../third_party/heimdal/lib/gssapi/spnego
-Ithird_party/heimdal/lib/gssapi/krb5
-I../../third_party/heimdal/lib/gssapi/krb5
-Ithird_party/heimdal/lib/gssapi/mech
-I../../third_party/heimdal/lib/gssapi/mech
-Ithird_party/heimdal/lib/ntlm
-I../../third_party/heimdal/lib/ntlm
-Ithird_party/heimdal/lib/roken
-I../../third_party/heimdal/lib/roken
-Ithird_party/heimdal_build/include
-I../../third_party/heimdal_build/include
-I/usr/include/p11-kit-1
../../lib/krb5_wrap/gss_samba.c
-c
-o/build/samba-RdGKBy/samba-4.16.0+dfsg/bin/default/lib/krb5_wrap/gss_samba.c.1.o
-Wdate-time
-D_FORTIFY_SOURCE=2


Removing "first" gssapi/gssapi.h fixes the build.

/mjt



More information about the Pkg-samba-maint mailing list