[Wylug-help] Reproduceable kernel build.

Thomas, Nicholas nick.thomas at eldon.co.uk
Mon, 2 Jun 2003 03:12:55 -0600


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
--
[ Picked text/plain from multipart/alternative ]

Hi,

We are developing an embedded linux product.
The customers formal source code testing facilities have a requirement that
they can build the source code from our documentation
and there has to be a system to prove reproduceability.
I know this isn't an unusual situation, I have had similar restrictions from
other customers with other products.

The method chosen involves doing md5 checksums on the all the binary
deliverable parts of the product.

However, the linux kernel uses __DATE__ and __TIME__ macros in various
source files. And also it uses `date` in the top level Makefile and puts
this into the compile.h file. This means that some files get different
checksum values on subsequent builds because the date/time doesn't match
exactly.

The files which are different are:
bsetup.s, bsetup.o, bsetup, bzImage, bvmlinux.out compile.h, version.o and
vmlinux and piggy.o.

Also there is a lib.a in the kernel which appears to be different after each
build (not sure what is causing this to be different).

Prior to formal testing we have to:
1) Build the binary deliverables - and put them in a place where the formal
test group can get them.
2) Produce a build report with details checksums of the binary deliverable
parts.
3) Give the formal testers instructions on how to do the build, plus report
produces in step (2).
4) If the formal testers build exactly matches our own then it moves forward
to formal testing.

So, the question,
How would you go about solving this requirement?

Any ideas and help would be appreciated.

Regards

Nick

_________________________
Nick Thomas
Leading Software Engineer
Eldon Technology Limited
Park House
College Road
Bingley
West Yorkshire, UK
BD16 4UD
Tel: +44 1274 568432
Fax: +44 1274 551561
Email: nick.thomas@eldon.co.uk


--