diff options
author | Albert Cheng <acheng@hdfgroup.org> | 1999-10-26 19:30:08 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 1999-10-26 19:30:08 (GMT) |
commit | 35d1bedfcf75095668ceef94bcd22e5ffad97e80 (patch) | |
tree | 890dc1bf6c53771a6dd2a3a89e3f1a9097ed81db /bin/chkmanifest | |
parent | bb1c7d462e5e333d76eba6990e5194bd91506aec (diff) | |
download | hdf5-35d1bedfcf75095668ceef94bcd22e5ffad97e80.zip hdf5-35d1bedfcf75095668ceef94bcd22e5ffad97e80.tar.gz hdf5-35d1bedfcf75095668ceef94bcd22e5ffad97e80.tar.bz2 |
[svn-r1791] Moved the MANIFEST checking to a separate command file (chkmanifest) so that
it can be invoked individually.
Diffstat (limited to 'bin/chkmanifest')
-rwxr-xr-x | bin/chkmanifest | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/bin/chkmanifest b/bin/chkmanifest new file mode 100755 index 0000000..a166fe7 --- /dev/null +++ b/bin/chkmanifest @@ -0,0 +1,42 @@ +#!/bin/sh + +# Check that all the files in MANIFEST exist and that (if this is a +# CVS checkout) that all the CVS-managed files appear in the +# MANIFEST. + +verbose=yes +MANIFEST=/tmp/H5_MANIFEST.$$ + +# Copy the manifest file to get a list of file names. +grep '^\.' MANIFEST | expand | cut -f1 -d' ' >$MANIFEST + +test "$verbose" && echo " Checking manifest..." 1>&2 +test -f $MANIFEST || exit 1 +for file in `cat $MANIFEST`; do + if [ ! -f $file ]; then + echo "- $file" + fail=yes + fi +done +for cvs in `find . -type d -name CVS -print`; do + path=`echo $cvs |sed 's/\/CVS//'` + for file in `grep '^\/' $cvs/Entries |cut -d/ -f2`; do + if (grep $path/$file $MANIFEST >/dev/null); then + : + else + echo "+ $path/$file" + fail=yes + fi + done +done + +if [ "X$fail" = "Xyes" ]; then + cat 1>&2 <<EOF +The MANIFEST is out of date. Files marked with a minus sign (-) no +longer exist; files marked with a plus sign (+) are CVS-managed but do +not appear in the MANIFEST. Please remedy the situation and try again. +EOF + exit 1 +fi + +exit 0 |