This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH v2 0/1] improve build reproducibility


There is a subtle non-determinism when building glibc.
Basically, under the same conditions (same build host, toolchain, etc.) we occasionally
ended up with slightly different binaries. This was eventually tracked down to the fact
that sometimes the libraries were built using the checked-in intl/plural.c and some other
times using a different version of intl/plural.c generated by Bison from intl/plural.y.
It seems that the generation of intl/plural.c is not quite deteministic, most likely due
to the fact that GIT does not preserve file modification time.

This patch proposes to unconditionally generate plural.c from plural.y

This, however, means that now "bison" (previously optional) is now required.

More on the subject (including a diffoscope output that demonstrates the differences) can
be seen here:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=12291

See also glibc Bugzilla:
https://sourceware.org/bugzilla/show_bug.cgi?id=22432


Juro Bystricky (1):
  plural.c: improve reproducibility

 ChangeLog           |   10 +
 INSTALL             |   10 +-
 NEWS                |    3 +-
 configure           |  128 ++--
 configure.ac        |    7 +-
 intl/Makefile       |    9 +-
 intl/plural.c       | 2011 ---------------------------------------------------
 manual/install.texi |   14 +-
 8 files changed, 94 insertions(+), 2098 deletions(-)
 delete mode 100644 intl/plural.c

-- 
2.7.4


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]