[rb-general] __DATE__ and other toolchain patches

Eli Schwartz eschwartz at archlinux.org
Tue Dec 25 21:52:58 CET 2018

On 12/25/18 3:31 PM, Bernhard M. Wiedemann wrote:
> regarding https://github.com/uoaerg/wavemon/pull/59
> I thought, we do not need to do this kind of patch anymore since gcc
> natively supports SOURCE_DATE_EPOCH to override __DATE__ and __TIME__
> and everyone interested in reproducible builds sets this variable.
> I guess, we could even frame this more broadly and ask, if there is a
> toolchain fix merged upstream
> (think https://bugs.launchpad.net/intltool/+bug/1687644 )
> do we still want to fix issues that would already have gone away if
> everyone had that fix in his distribution?
> On my side I very much prefer to push toolchain fixes because you fix
> it only once and not in an infinite number of places using that code.

I believe in this case it may have simply been a case of confusion. I
actually submitted https://github.com/uoaerg/wavemon/pull/48 to make
this use the macro in the first place, as it previously was not using
__DATE__ either, but instead adding a CPP definition which called
/usr/bin/date (or setting $BUILD_DATE in the configure call)...

But my fix was in master, not released versions.

It may not have been intuitively obvious that it is reproducible in
master and not in the release version. A pretty understandable mistake
to make:

- find unreproducible distribution package
- look at latest code, find __DATE__
- blame unreproducibility on use of __DATE__

Eh, it's hardly harmful either way. I don't believe there was any
explicit desire to avoid relying on toolchain fixes though. Especially
since the patch is definitely in Arch Linux's toolchain (we have gcc 8)
so in the ordinary way of things we would never notice any issues with
packages using __DATE__ at all.

Eli Schwartz
Bug Wrangler and Trusted User

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.reproducible-builds.org/pipermail/rb-general/attachments/20181225/32c9953c/attachment.sig>

More information about the rb-general mailing list