Source: glib2.0
Version: 2.46.2-3
Severity: wishlist
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: toolchain
X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org

Hi,

Whilst working on the "reproducible builds" effort [0], we noticed that glib2.0 
generates output that is not reproducible.

In particular, the generated calls to glib-mkenums / gsettings_ENUM_FILES 
mechanism in the m4 macros can generate output in a non-deterministic 
(filesystem) order as most GNOME packages just specify "src/*.h" or similar.

Patch attached.

 [0] https://wiki.debian.org/ReproducibleBuilds


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
diff --git a/m4macros/gsettings.m4 b/m4macros/gsettings.m4
index 35ee5aa..4d38e1b 100644
--- a/m4macros/gsettings.m4
+++ b/m4macros/gsettings.m4
@@ -67,7 +67,7 @@ clean-gsettings-schemas:
 
 ifdef gsettings_ENUM_NAMESPACE
 $(gsettings__enum_file): $(gsettings_ENUM_FILES)
-       $(AM_V_GEN) glib-mkenums --comments '\''<!-- @comment@ -->'\'' --fhead 
"<schemalist>" --vhead "  <@type@ 
id='\''$(gsettings_ENUM_NAMESPACE).@EnumName@'\''>" --vprod "    <value 
nick='\''@valuenick@'\'' value='\''@valuenum@'\''/>" --vtail "  </@type@>" 
--ftail "</schemalist>" [$]^ > [$]@.tmp && mv [$]@.tmp [$]@
+       $(AM_V_GEN) glib-mkenums --comments '\''<!-- @comment@ -->'\'' --fhead 
"<schemalist>" --vhead "  <@type@ 
id='\''$(gsettings_ENUM_NAMESPACE).@EnumName@'\''>" --vprod "    <value 
nick='\''@valuenick@'\'' value='\''@valuenum@'\''/>" --vtail "  </@type@>" 
--ftail "</schemalist>" [$](sort [$]^) > [$]@.tmp && mv [$]@.tmp [$]@
 endif
 '
   _GSETTINGS_SUBST(GSETTINGS_RULES)

Reply via email to