Snapshot, diffs and crap
Marc Espie
espie@quatramaran.ens.fr
Wed Jan 28 08:08:00 GMT 1998
Okay, after getting the whole recent snapshot, it turns out that
only the .brik file was wrong. Turns out that my compilation failed
because I need a true `make bootstrap' this time. I didn't try on
this machine (Amiga3000-openbsd) before, and I can't get away with
a simple `make' for the C++ library, even though a three stage build
will take *forever* (around 24 hours, I guess).
Sorry for the outburst. I actually appreciate quite a lot all the work
that has been going on in egcs.
There is another small difference between snapshot 980122 and
980115 + diffs: some bytecode files still exist in 980122, even though
they're actually empty.
I obviously have missed the message concerning the `wrong' .brik file.
As far as CVS comments go, I must point out that some of us use
configurations that make ftp the only viable way to procure snapshots.
I can retrieve files on a linux box that is directly connected to the net at
the university, but I don't have enough room on that box to install a cvs
tree and let cvs run. Moreover, there is a local mirror (ftp.lip6.fr) which
is much faster than egcs can ever hope to be.
When I get large archives, I connect my syquest easy-flyer to the linux
box and download the archives to the flyer directly. For small files, such
as snapshot diffs, I can forego the hastle and just pop a floopy-disk in.
Connecting the amiga at home is not that easy, and more to the point, it's
expensive. France still hasn't woken up to the world of modern
telecommunications, so that downloading anything but the simplest mail takes
time and costs me money.
Bottom-line, snapshot + diffs is important for me. I'd like it to be
very reliable.
Related to the .brik problem, I don't quite understand how such a problem
could sneak in... I would have thought snapshot-building were designed to
enforce consistency. That is: build a new snapshot archive.
Unarchive old and new snapshot. Compute corresponding diff file.
Apply diff to old snapshot. Compare against new snapshot. Complain if there
is any discrepancy.
I don't see how the .brik file could get through the cracks.
For that matter, I noticed the empty byte-code files through diff myself.
They should have been apparent, wouldn't they.
As another related point, from what I've read, it seems that the current
CVS installation uses patch 2.1.
An upgrade to a more recent version of patch is vital. This version does
not work with patches at the end of file. Under some circumstances, if you
add something at the end of the file, build up the diff. then modify the
original file elsewhere, so that the line count will change, patch will
incorrectly apply the patch right smack where the end of the file used to be,
without even complaining about wrong context.
I've been bitten by this one at least once.
More information about the Gcc
mailing list