Uploaded image for project: 'Erlang/OTP'
  1. Erlang/OTP
  2. ERL-1445

Repeated Erlang/OTP compilations from the same source directory don't produce identical build results

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 23.1
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      Steps to reproduce

      $ cd otp_src
      $ git checkout OTP-23.1.5
      $ export ERL_COMPILER_OPTIONS=deterministic
      $ git clean -xfdq
      $ ./otp_build autoconf
      $ ./otp_build configure
      $ make -j4
      $ make RELEASE_ROOT=/path/to/build/directory1 release

      $ # from the same otp_src directory
      $ git clean -xfdq
      $ ./otp_build autoconf
      $ ./otp_build configure
      $ make -j4
      $ make RELEASE_ROOT=/path/to/build/directory2 release

      Comparing the 2 buld directory outputs show differences in beam.smp, OtpErlang.jar and in a few .hrl files due to the introduction of timestamps.

      Cf. the attached diff file.

       

      Expected result

      Builds should produce deterministic results.
      Cf. https://reproducible-builds.org/ for why it matters.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              otp_team_vm Team VM
              Reporter:
              JeromeDeBretagne Jérôme de Bretagne
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated: