mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-01-18 15:15:56 +08:00
[svn-r11362] Purpose:
Feature - md5 checksum Description: Added md5 checksumming to snapshot releases. When bin/release is run, it will by default create a .tar archive and a .md5 checksum of that archive in the destination directory. Solution: md5 is now a method in bin/release, along with the various ways to compress hdf5. The checksum is always of the .tar archive, even when other forms of compression are used (this is so that a given release always has only one checksum, for simplicity). Platforms tested: mir (change to bin/release only) Misc. update:
This commit is contained in:
parent
edfb6b70e2
commit
c9d2d8f74c
48
bin/release
48
bin/release
@ -9,26 +9,29 @@
|
||||
#
|
||||
# The other command-line options are the names of the programs to use
|
||||
# for compressing the resulting tar archive (if none are given then
|
||||
# `tar' is assumed):
|
||||
# `tar md5' is assumed):
|
||||
#
|
||||
# tar -- use tar and don't do any compressing.
|
||||
# compress -- use compress and append `.Z' to the output name.
|
||||
# gzip -- use gzip with `-9' and append `.gz' to the output name.
|
||||
# bzip2 -- use bzip2 with `-9' and append `.bz2' to the output name.
|
||||
# md5 -- produce a md5 checksum in addition to the archive.
|
||||
#
|
||||
# Examples:
|
||||
#
|
||||
# $ release
|
||||
# releases/hdf5-1.0.38.tar
|
||||
# releases/hdf5-1.0.38.tar.md5
|
||||
#
|
||||
# $ release gzip
|
||||
# releases/hdf5-1.0.38.tar.gz
|
||||
#
|
||||
# $ release -d /tmp tar compress gzip bzip2
|
||||
# $ release -d /tmp tar compress gzip bzip2 md5
|
||||
# /tmp/hdf5-1.0.38.tar
|
||||
# /tmp/hdf5-1.0.38.tar.Z
|
||||
# /tmp/hdf5-1.0.38.tar.gz
|
||||
# /tmp/hdf5-1.0.38.tar.bz2
|
||||
# /tmp/hdf5-1.0.38.tar.md5
|
||||
#
|
||||
# Modifications
|
||||
# Robb Matzke, 1999-07-16
|
||||
@ -55,26 +58,29 @@ Usage: $0 [--nocheck] [-d <dir>] [-h] <methods> ...
|
||||
|
||||
The other command-line options are the names of the programs to use
|
||||
for compressing the resulting tar archive (if none are given then
|
||||
"tar" is assumed):
|
||||
"tar md5" is assumed):
|
||||
|
||||
tar -- use tar and don't do any compressing.
|
||||
compress -- use compress and append ".Z" to the output name.
|
||||
gzip -- use gzip with "-9" and append ".gz" to the output name.
|
||||
bzip2 -- use bzip2 with "-9" and append ".bz2" to the output name.
|
||||
md5 -- produce a md5 checksum in addition to the archive.
|
||||
|
||||
Examples:
|
||||
|
||||
$ release
|
||||
releases/hdf5-1.0.38.tar
|
||||
releases/hdf5-1.0.38.tar.md5
|
||||
|
||||
$ release gzip
|
||||
releases/hdf5-1.0.38.tar.gz
|
||||
|
||||
$ release -d /tmp tar compress gzip bzip2
|
||||
$ release -d /tmp tar compress gzip bzip2 md5
|
||||
/tmp/hdf5-1.0.38.tar
|
||||
/tmp/hdf5-1.0.38.tar.Z
|
||||
/tmp/hdf5-1.0.38.tar.gz
|
||||
/tmp/hdf5-1.0.38.tar.bz2
|
||||
/tmp/hdf5-1.0.38.tar.md5
|
||||
|
||||
EOF
|
||||
|
||||
@ -131,9 +137,9 @@ while [ -n "$1" ]; do
|
||||
esac
|
||||
done
|
||||
|
||||
# Default method is tar
|
||||
# Default methods are tar and md5
|
||||
if [ "X$methods" = "X" ]; then
|
||||
methods=tar
|
||||
methods="tar md5"
|
||||
fi
|
||||
|
||||
# setup restoration in case of abort.
|
||||
@ -148,7 +154,10 @@ if [ X$pmode = Xyes ]; then
|
||||
bin/h5vers -s $VERS
|
||||
fi
|
||||
|
||||
test "$verbose" && echo "Releasing hdf5-$VERS to $DEST" 1>&2
|
||||
# Store hdf5-$VERS ("hdf5-1.7.51", e.g.) to a variable to avoid typos
|
||||
HDF5_VERS=hdf5-$VERS
|
||||
|
||||
test "$verbose" && echo "Releasing $HDF5_VERS to $DEST" 1>&2
|
||||
if [ ! -d $DEST ]; then
|
||||
echo " Destination directory $DEST does not exist" 1>&2
|
||||
exit 1
|
||||
@ -170,8 +179,8 @@ MANIFEST=/tmp/H5_MANIFEST.$$
|
||||
grep '^\.' MANIFEST | grep -v _DO_NOT_DISTRIBUTE_ >$MANIFEST
|
||||
|
||||
# Prepare the source tree for a release.
|
||||
test -h ../hdf5-$VERS && rm ../hdf5-$VERS
|
||||
ln -s `pwd` ../hdf5-$VERS || exit 1
|
||||
test -h ../$HDF5_VERS && rm ../$HDF5_VERS
|
||||
ln -s `pwd` ../$HDF5_VERS || exit 1
|
||||
mv Makefile ../Makefile.x 2>/dev/null #might fail
|
||||
cp -p Makefile.dist Makefile
|
||||
|
||||
@ -188,7 +197,7 @@ done
|
||||
test "$verbose" && echo " Running tar..." 1>&2
|
||||
( \
|
||||
cd ..; \
|
||||
tar cf x.tar hdf5-$VERS/Makefile \
|
||||
tar cf $HDF5_VERS.tar $HDF5_VERS/Makefile \
|
||||
`sed 's/^\.\//hdf5-'$VERS'\//' $MANIFEST` || exit 1 \
|
||||
)
|
||||
|
||||
@ -196,27 +205,32 @@ test "$verbose" && echo " Running tar..." 1>&2
|
||||
for comp in $methods; do
|
||||
case $comp in
|
||||
tar)
|
||||
cp -p ../x.tar $DEST/hdf5-$VERS.tar;;
|
||||
cp -p ../$HDF5_VERS.tar $DEST/$HDF5_VERS.tar;;
|
||||
compress)
|
||||
test "$verbose" && echo " Running compress..." 1>&2
|
||||
compress -c <../x.tar >$DEST/hdf5-$VERS.tar.Z;;
|
||||
compress -c <../$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.Z;;
|
||||
gzip)
|
||||
test "$verbose" && echo " Running gzip..." 1>&2
|
||||
gzip -9 <../x.tar >$DEST/hdf5-$VERS.tar.gz;;
|
||||
gzip -9 <../$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.gz;;
|
||||
bzip2)
|
||||
test "$verbose" && echo " Running bzip2..." 1>&2
|
||||
bzip2 -9 <../x.tar >$DEST/hdf5-$VERS.tar.bz2;;
|
||||
bzip2 -9 <../$HDF5_VERS.tar >$DEST/$HDF5_VERS.tar.bz2;;
|
||||
md5)
|
||||
test "$verbose" && echo " Creating checksum..." 1>&2
|
||||
( cd .. && md5sum $HDF5_VERS.tar >$HDF5_VERS.tar.md5 )
|
||||
cp -p ../$HDF5_VERS.tar.md5 $DEST/$HDF5_VERS.tar.md5;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Copy the RELEASE.txt to the release area.
|
||||
cp release_docs/RELEASE.txt $DEST/hdf5-$VERS-RELEASE.txt
|
||||
cp release_docs/RELEASE.txt $DEST/$HDF5_VERS-RELEASE.txt
|
||||
|
||||
# Remove temporary things
|
||||
test -f ../Makefile.x && mv ../Makefile.x Makefile
|
||||
rm -f $MANIFEST
|
||||
rm -f ../hdf5-$VERS
|
||||
rm -f ../x.tar
|
||||
rm -f ../$HDF5_VERS
|
||||
rm -f ../$HDF5_VERS.tar
|
||||
rm -f ../$HDF5_VERS.tar.md5
|
||||
|
||||
# Restore OLD version information, then no need for trap.
|
||||
if [ X$pmode = Xyes ]; then
|
||||
|
Loading…
Reference in New Issue
Block a user