[svn-r1351] Bug fix:

hdp before HDF 4.1r3 does not handle Vgroups loops correctly.
Solution:
Added codes to detect the library version of hdp command. Skipped
tests for loops.  Tested in an old solaris with HDF 4.1r2, Solaris 2.6
and Hawkwind.
This commit is contained in:
Albert Cheng 1999-06-15 20:05:03 -05:00
parent dfbdfb60a2
commit 004cf630d5

View File

@ -8,6 +8,19 @@ RM='rm -f'
SED='sed ' SED='sed '
H4DUMP='hdp' H4DUMP='hdp'
# Find out which version of hdp is being used. Over simplified
# algorithm but will do the job for now.
if ( $H4DUMP | grep -s 'NCSA HDF Version 4.1 Release 3' > /dev/null )
then
H4DUMPVER=413
else
H4DUMPVER=0
echo " Some tests are skipped because your version of $H4DUMP does"
echo " not handle loops in Vgroups correctly. You need version"
echo " 4.1 Release 3 or later. Visit http://hdf.ncsa.uiuc.edu"
echo " or email hdfhelp@ncsa.uiuc.edu for more information."
fi
# The build (current) directory might be different than the source directory. # The build (current) directory might be different than the source directory.
if test "X$srcdir" = X; then if test "X$srcdir" = X; then
srcdir=. srcdir=.
@ -124,16 +137,23 @@ CONVERT()
expect_out=$outfile.expect expect_out=$outfile.expect
actual_out=$outfile.actual actual_out=$outfile.actual
(cd $SRCDIR/Expected if [ $outfile = "tloop" -a $H4DUMPVER -lt 413 ]
$H4DUMP dumpvg $outfile.hdf then
$H4DUMP dumpvd $outfile.hdf echo "*-SKIP-*"
$H4DUMP dumpsds $outfile.hdf ) | result="skipped"
sed -e 's/reference = [0-9]*;//' > $expect_out touch $expect_out $actual_out # fake them
(cd $OUTDIR else
$H4DUMP dumpvg $outfile.hdf (cd $SRCDIR/Expected
$H4DUMP dumpvd $outfile.hdf $H4DUMP dumpvg $outfile.hdf
$H4DUMP dumpsds $outfile.hdf ) | $H4DUMP dumpvd $outfile.hdf
sed -e 's/reference = [0-9]*;//' > $actual_out $H4DUMP dumpsds $outfile.hdf ) |
sed -e 's/reference = [0-9]*;//' > $expect_out
(cd $OUTDIR
$H4DUMP dumpvg $outfile.hdf
$H4DUMP dumpvd $outfile.hdf
$H4DUMP dumpsds $outfile.hdf ) |
sed -e 's/reference = [0-9]*;//' > $actual_out
fi
if $cmp $expect_out $actual_out; then if $cmp $expect_out $actual_out; then
: :
@ -241,7 +261,8 @@ CONVERT tstr2.h5 tstr2.hdf
$RM $OUTDIR/*.hdf $OUTDIR/*.tmp $RM $OUTDIR/*.hdf $OUTDIR/*.tmp
CONVERT -m tgroup.h5 tdset.h5 tattr.h5 tslink.h5 thlink.h5 CONVERT -m tgroup.h5 tdset.h5 tattr.h5 tslink.h5 thlink.h5
CONVERT -m tcompound.h5 tall.h5 tloop.h5 CONVERT -m tcompound.h5 tall.h5
CONVERT -m tloop.h5
CONVERT -m tdset2.h5 tcompound2.h5 tmany.h5 CONVERT -m tdset2.h5 tcompound2.h5 tmany.h5
CONVERT -m tstr.h5 tstr2.h5 CONVERT -m tstr.h5 tstr2.h5