waf, PYTHONHASHSEED & -I order on other architectures

Andrew Bartlett abartlet at samba.org
Mon Apr 11 04:51:50 UTC 2022

On Sat, 2022-04-09 at 09:55 +0300, Michael Tokarev via samba-technical
> Just adding 3 comments to clarify (it is -ENOCOFFEE time).
> 1. I do set PYTHONHASHSEED=1 now everywhere, including this failing
> arch
> 2. complete build logs are available at
>   https://buildd.debian.org/status/package.php?p=samba . There, the
> sparc64
>   build failing (Click on the "Build-Attempted" link) exactly due to
> this
>   issue.
> 3. the "good" version is taken from amd64 build of the same file.

Thanks Michael,

I've always suspected that fixing PYTHONHASHSEED to 1 was only part of
the fix here, and that we really should not be relying on that
entirely.  However getting things close to upstream was always the
first step needed.

I think what we have were is the war of the build systems, brought up
in 2022 because we now import the whole Heimdal tree, not just some of

I've checked, and in the past the file didn't exist, it came in as
lib/gssapi/gssapi.h in 40b65c840e03bd5eb7f3b02fe80144650c63c005

Likewise it seems the stragely named lib/gssapi/gssapi/gssapi.h was
added upstream by:

ommit b65ef282f1ad2a33114ea86a109895742623cf2b
Author: Love Hörnquist Åstrand <lha at kth.se>
Date:   Sat Oct 7 22:06:25 2006 +0000

    git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@18333 ec53bebd-

diff --git a/lib/gssapi/ChangeLog b/lib/gssapi/ChangeLog
index e348f10a95..47f3696cee 100644
--- a/lib/gssapi/ChangeLog
+++ b/lib/gssapi/ChangeLog
@@ -1,5 +1,12 @@
 2006-10-07  Love H<F6>rnquist <C5>strand  <lha at it.su.se>
+       * gssapi.h: Add file inclusion protection.
+       * gssapi/gssapi.h: Correct header file inclusion protection.
+       * gssapi/gssapi.h: Move the gssapi.h from lib/gssapi/ to
+       lib/gssapi/gssapi/ to please automake.
        * spnego/spnego_locl.h: Maybe include <sys/types.h>.
        * mech/mech_locl.h: Include <roken.h>.

So the (time expensive) fix could be to work out how to remove the
'tripple gssapi' upstream, finding out if automake still requires this.

Otherwise, we need to find a way to depend on the .c files in
lib/gssapi but not the .h files or perhaps it might be as simple as
adding a empty subsystem to get the include path of lib/gssapi/gssapi/.

Either way, I agree there is a real bug here, we just need to stop
papering it over.

As always, I'm glad to provide more advice and review,

Andrew Bartlett

Andrew Bartlett (he/him)       https://samba.org/~abartlet/
Samba Team Member (since 2001) https://samba.org
Samba Team Lead, Catalyst IT   https://catalyst.net.nz/services/samba

Samba Development and Support, Catalyst IT - Expert Open Source

More information about the samba-technical mailing list