[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Patching and Releasing
From: |
James Youngman |
Subject: |
Re: Patching and Releasing |
Date: |
29 Jul 2001 12:16:04 +0100 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 |
Kent Henneuse <address@hidden> writes:
> I am currently struggling with some of the "administrative" duties
> of CVS. I want to be able to determine the changes that have
> happend on a branch between two different dates. This will then be
> used to make up a patch that can be added to fix defects. Currently
> I have only been able to do some of this using Perl scripts and the
> CVS/Entries file. When I have tried to use cvs diff with two -D
> args or -r and -D I get differences between the branch and HEAD. I
> am sure there is a more logical command set to accomplish this task
> that can be done using cvs.
I have two shell scripts, make-source-release and
make-binary-release. The former tags the main trunk and then exports
the tagged code. It then tars this up and stores this in an archive
directory. It also does "cvs rdiff -s" to produce a summary of what
changed in this release (it parses the output with, erm, Awk I
think).
The make-binary-release script picks up the generated tar file,
configures and builds the code and installs it into a temporary
directory. It then calculates the MD5 checksup of all the installed
files. A compressed tar file is made of the installed files.
This data is merged with the MD5 checksum data from the previous
release. This is used to produce a list of new and changed files. A
compressed tar file is generated containing only the changed files.
A human being then makes the decision as to which file is released
(i.e. is this a "patch release" or a "full release"?).
Outstanding problems with this process are that on Solaris you can
compile the same thing twice and get a different result. This only
happens with files compiled with debug info, but I have a policy of
not shipping stripped binaries.
--
James Youngman
Manchester, UK. +44 161 226 7339
PGP (GPG) key ID for <address@hidden> is 64A95EE5 (F1B83152).