|Title:||FOSSIL_BUILD_HASH varies across builds|
|Last Modified:||2020-06-11 19:51:46|
|Version Found In:||2.11|
bmwiedemann added on 2020-06-11 13:37:13:
While working on reproducible builds for openSUSE, I found that
when building the fossil package, there were slight differences between each build, because mkversion produced a different
Here is a patch that allows us to produce the same binary twice:
drh added on 2020-06-11 14:16:35:
I added a compile-time option:
Any numeric value can be used as the argument. Whatever you use becomes
a replacement for "time()". The
bmwiedemann added on 2020-06-11 19:42:24:
Thanks for making it easier to get bit-reproducible results. I submitted it towards openSUSE in https://build.opensuse.org/request/show/813802
The downside compared to my patch is that now every distribution interested in reproducible build results needs to discover this new option and adjust their CFLAGS.
These distributions already set the SOURCE_DATE_EPOCH variable for all builds.
drh added on 2020-06-11 19:51:46:
Further updated mkversion.c to respond to SOURCE_DATE_EPOCH.