#!/bin/csh -f

unalias *

cd ../..
set PVM_ROOT=`pwd`
set EASYROOT=$PVM_ROOT/easypvm3
cd $EASYROOT/verify

onintr fatal_error

if ( ! -f $EASYROOT/lib/pvmgetarch ) then
	echo "Can't get ARCH"
	goto fatal_error
else
	setenv ARCH `$EASYROOT/lib/pvmgetarch`
	echo "ARCH = $ARCH"
endif

echo -n "Working directory: "
pwd

set pvmcc=$EASYROOT/bin/pvmcc
set pvmf77=$EASYROOT/bin/pvmf77
set pvminit=$EASYROOT/bin/pvminit
set pvmclean=$EASYROOT/bin/pvmclean
set pvmfork=$EASYROOT/bin/pvmfork
set pvmrun=$EASYROOT/bin/pvmrun
set pvmserver=$EASYROOT/lib/$ARCH/pvmserver

set easylib=../../lib/$ARCH/libeasypvm.a
set incdir=../../include

set checklist="$pvmcc $pvmf77 $pvminit $pvmclean $pvmserver $pvmfork $pvmrun"

foreach CL ( $checklist )
	echo -n "Checking `basename $CL` ..."
	if ( -x $CL ) then
	  echo " Okay"
	else
	  echo " : Not an executable"
	  goto fatal_error
	endif
	
end

if ( $#argv == 0) then
  set verifydir="cnodeonly fnodeonly chostnode fhostnode"
else
  set verifydir="$*"
endif

foreach VD ( $verifydir )
	echo " "
	echo " "
	echo "********************************** "
	echo "*** $VD ..."
	echo "********************************** "
	echo " "
	cd $VD
	make clean || goto fatal_error
	make 	CC=$pvmcc FC=$pvmf77 INCDIR=$incdir \
		INIT=$pvminit CLEAN=$pvmclean \
		LIB=$easylib SHELL=/bin/sh ARCH=$ARCH \
		FORK=$pvmfork RUN=$pvmrun SV=$pvmserver || goto fatal_error
	make clean || goto fatal_error
	cd ..
end

echo " "
echo "Verification procedure ended successfully."
echo " "
exit 0

fatal_error:
	echo " "
	echo "*** ERROR: Verification procedure failed. Check the installation."
	echo " "
	exit 1
