| 29 | |
| 30 | === Current reproducibility problems in MacPorts === |
| 31 | |
| 32 | At the moment, binary archives in MacPorts are generally not reproducible. The following issues are known and must be fixed to get reproducible binary archives. |
| 33 | |
| 34 | - The order of entries in a binary archive depends on the filesystem order. Entries should be sorted before being added to the archives. |
| 35 | - The timestamps of files in a binary archive vary with the local system time. Timestamps for these files should be clamped to a specific maximum value, possibly specified by [https://reproducible-builds.org/specs/source-date-epoch/ $SOURCE_DATE_EPOCH]. |
| 36 | - The macOS linker includes a file's modification time when creating debug maps, unless the environment variable `ZERO_AR_DATE` is set (value doesn't matter). Search the ld64 source code for `ZERO_AR_DATE` in `src/ld/Options.cpp` for more information. |