This is the mail archive of the glibc-bugs@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]

[Bug build/22432] New: Non-deterministic build


https://sourceware.org/bugzilla/show_bug.cgi?id=22432

            Bug ID: 22432
           Summary: Non-deterministic build
           Product: glibc
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: build
          Assignee: unassigned at sourceware dot org
          Reporter: juro.bystricky at intel dot com
                CC: carlos at redhat dot com
  Target Milestone: ---

Building various libraries can be non-deterministic because they may be be
built with two different versions of intl/plural.c. in two separate builds. 
We may or may not regenerate the file from thefile plural.y, based on
modification times of those two files, as the Makefile contains:

    plural.c: plural.y
        $(BISON) $(BISONFLAGS) $@ $^

GIT does not preserve modification times of files on checkout, so I don't see
how the above rule can work reliably (deterministically).
The libraries (with or without the above rule firing) will build correctly, so
we may not notice they differ until we try to binary compare them.

(Please see
http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=jurob/reproducible_binaries_4&id=936494cf34f003860352472bcdc43ec21433d27c)

-- 
You are receiving this mail because:
You are on the CC list for the bug.

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