[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

autobuilding and embedded timestamps



Recently I've been playing around with a small system that can compile
itself.[1]

I like to make the system compile itself until it converges, that is,
the newly compiled system is identical to the installed system. It's
surprising how many cycles it takes it to converge in some cases; I
think there are some subtle mutual dependencies between gcc and glibc.

But sometimes it is hard to detect convergence because of embedded
timestamps. All ar archives contain embedded timestamps (my system has
3 .a files), and also bzImage and lilo contain deliberately inserted
timestamps. Fortunately the kernel's timestamp is not in the
compressed part of the image.

So I was wondering:

Do Debian's autobuilders compile repeatedly until the system
converges? If so, how do they detect convergence?

Finally, might it be a good idea to get rid of embedded timestamps, so
that the same source doesn't give a different binary each time it is
compiled? The build script for a package could replace the embedded
timestamps by the date of the newest source file, for example.

Edmund


[1] I'm using 20 source packages. Compressed source is about 60 MB;
binaries are about 35 MB, but you need something like 400 MB free
space for compiling glibc. I make it compile itself under chroot, but
I did boot it under bochs once, too. Compiling glibc under bochs
wouldn't be a very good idea ...



Reply to: