RFR: 8288399: MacOS debug symbol files not always deterministic in reproducible builds

Andrew Leonard aleonard at openjdk.java.net
Wed Jun 15 10:18:23 UTC 2022


MacOS builds built with ENABLE_REPRODUCIBLE_BUILD enabled still contain full build paths in the
debug symbol information. Linux gcc reproducible builds already uses -fdebug-prefix-map to make these deterministic,
clang supports the same option, and testing with this for clang shows correct mapping.
Similiarly for reproducible builds assembly source file debug declarations need to be relative, as is for Linux gcc. 

The compiler generated unique function symbols contain a random generated part, which if not deterministically
seeded will be random. -frandom-seed provides a deterministic seed solution.

Signed-off-by: Andrew Leonard <anleonar at redhat.com>

-------------

Commit messages:
 - 8288399: MacOS debug symbol files not always deterministic in reproducible builds

Changes: https://git.openjdk.org/jdk/pull/9166/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=9166&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8288399
  Stats: 17 lines in 2 files changed: 13 ins; 0 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/9166.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/9166/head:pull/9166

PR: https://git.openjdk.org/jdk/pull/9166



More information about the build-dev mailing list