Deterministic builds?

Giorgos Keramidas keramida at freebsd.org
Sun Nov 14 21:42:14 UTC 2010


On Sun, 14 Nov 2010 21:22:53 +0100, Erik Cederstrand <erik at cederstrand.dk> wrote:
>Den 12/11/2010 kl. 21.20 skrev Giorgos Keramidas:
>>> Since the SVN rev. is recorded, I think a timestamp is redundant. Any
>>> ideas where I can disable the timestamps in the source?
>>
>> The timestamp is not 'redundant'.  It records _when_ you compiled the
>> sources of the kernel, which in itself is a useful bit of information.
>
> I'm curious as to why this might be useful? Would the mtime of the file
> not be be sufficient? I can only think of debugging purposes, but apart
> from the timestamp, two kernels with the same rev. would be bitwise
> identical, so I think the rev. number is more useful.  Is the timestamp
> not just a remnant from the CVS days?

The timestamp is a remnant from much older days, but it's still a bit
useful if you build several kernels from 'almost' the same source tree.

For example, think of two kernels who are built from the same svn revision
but they are built from two different patched kernel source trees.  They
will both have a version string that says "svn 12345+" but their "+" will
refer to different patch states.

When a kernel developer is trying various iterations of this own local
patch, having the timestamp may actually be useful to differentiate between
a working and a non-working patch state.

I *like* the idea of 100% repeatable kernel builds and I'd even go as far
as suggesting it is nice to turn on by *default*, but let's think about a
way to _include_ the timestamp e.g. with an src.conf option for those cases
when it's really useful.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20101114/e8216b50/attachment.pgp


More information about the freebsd-hackers mailing list