mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-05 15:42:32 +08:00
Changes since 19990615 ---------------------- ./README Version number synchronized with library. ./bin/h5vers If the version number of the library is changed then the first line of the README file is also changed to something like This is hdf5-1.2.3 currently under development The `release' script (which also gets run by `snapshot') changes that line to include the release date but keeps the version number the same. The net effect is that the version numbers in README and H5public.h should now always stay synchronized. ./bin/snapshot The CVS checkin comment includes the version number for the snapshot that was just made. ./tools/testh5toh4 Changed `*-SKIP-*' to `-SKIP-' to be consistent with the other tests.
86 lines
2.5 KiB
Bash
Executable File
86 lines
2.5 KiB
Bash
Executable File
#!/bin/sh
|
|
set -x
|
|
date
|
|
#
|
|
# This script should be run nightly from cron. It checks out hdf5
|
|
# from the CVS source tree and compares it against the previous
|
|
# snapshot. If anything significant changed then a new snapshot is
|
|
# created, the minor version number is incremented, and the change is
|
|
# checked back into the CVS repository.
|
|
#
|
|
|
|
# The path isn't properly initialized on hawkwind -- /usr/local/bin is
|
|
# either missing or is after /usr/bin when it should be before.
|
|
PATH="/usr/local/bin:$PATH"
|
|
|
|
# Where are the snapshots stored?
|
|
ARCHIVES=/hdf3/ftp/pub/outgoing/hdf5/snapshots
|
|
if [ "$1" ]; then
|
|
ARCHIVES="$1"
|
|
shift
|
|
fi
|
|
|
|
# What compression methods to use?
|
|
METHODS="gzip bzip2"
|
|
|
|
# At NCSA, the standard place to find HDF4 software is in /usr/ncsa/.
|
|
CONFIGURE="./configure --with-hdf4=/usr/ncsa/include,/usr/ncsa/lib"
|
|
|
|
# Create a working directory. Hopefully one is left over from last
|
|
# time that still has the contents of the previous release. But if
|
|
# not, just create one and assume that a snapshot is necessary.
|
|
COMPARE=${HOME}/hdf5-snapshots
|
|
test -d ${COMPARE} || mkdir -p ${COMPARE} || exit 1
|
|
|
|
# Check out the current version from CVS
|
|
if [ -z "$CVSROOT" ]; then
|
|
echo "Where is the CVS repository?" 1>&2
|
|
exit 1
|
|
fi
|
|
cvs -Q co -d ${COMPARE}/current hdf5 || exit 1
|
|
|
|
# Compare it with the previous version. Compare only files listed in
|
|
# the MANIFEST plus the MANIFEST itself.
|
|
snapshot=yes
|
|
if [ -d ${COMPARE}/previous ]; then
|
|
if (diff -c ${COMPARE}/previous/MANIFEST ${COMPARE}/current/MANIFEST); then
|
|
snapshot=no
|
|
for src in `grep '^\.' ${COMPARE}/current/MANIFEST|expand|cut -f1 -d' '`; do
|
|
diff -I H5_VERS_RELEASE -I " released on " \
|
|
-I " currently under development" \
|
|
${COMPARE}/previous/$src ${COMPARE}/current/$src || \
|
|
snapshot=yes
|
|
# Don't break because we want to see all the diffs.
|
|
done
|
|
fi
|
|
fi
|
|
|
|
# Make sure all the serial tests work.
|
|
if [ "$snapshot" = "yes" ]; then
|
|
if (cd ${COMPARE}/current; \
|
|
${CONFIGURE}; \
|
|
make _test); then
|
|
:
|
|
else
|
|
snapshot=no
|
|
fi
|
|
(cd ${COMPARE}/current; make distclean)
|
|
fi
|
|
|
|
# Release snapshot, update version, and commit to cvs and tag
|
|
if [ "$snapshot" = "yes" ]; then
|
|
(
|
|
cd ${COMPARE}/current
|
|
cvs -Q tag hdf5-`perl -w bin/h5vers |tr . _`
|
|
bin/release -d $ARCHIVES $METHODS
|
|
RELEASE_VERSION="`perl -w bin/h5vers -v`"
|
|
perl -w bin/h5vers -i
|
|
cvs -Q commit -m "Snapshot $RELEASE_VERSION"
|
|
)
|
|
fi
|
|
|
|
# Replace the previous version with the current version.
|
|
rm -rf ${COMPARE}/previous
|
|
mv ${COMPARE}/current ${COMPARE}/previous
|
|
exit 0
|