DOsol2 1.75 KB
#!/bin/csh

#-------------------------------------------------------------------------------

echo '################################################################################'
echo 'Tcov test:' $1 $2
echo '################################################################################'

# get a clean directory
# /bin/mv Tests/$1_$2 `mktemp -d Trash2/XXXXXX`
# mkdir SolOut/$1_$2

# put in UMFPACK (excluding Tcov and MATLAB directories) and AMD
mkdir SolOut/$1_$2/UMFPACK
mkdir SolOut/$1_$2/UMFPACK/Doc
/bin/cp -prL ../Source SolOut/$1_$2/UMFPACK
/bin/cp -prL ../Lib SolOut/$1_$2/UMFPACK
/bin/cp -prL ../Include SolOut/$1_$2/UMFPACK
/bin/cp -prL ../Demo SolOut/$1_$2/UMFPACK
/bin/cp -prL ../Makefile SolOut/$1_$2/UMFPACK/Makefile
/bin/cp -prL ../Doc/License SolOut/$1_$2/UMFPACK/Doc
/bin/cp -prL ../../AMD SolOut/$1_$2
/bin/cp debug.* SolOut/$1_$2

# put in the makefile
/bin/cp GNUmakefile.$2 SolOut/$1_$2/GNUmakefile

# put in the UFconfig.mk and UFconfig.h files
mkdir SolOut/$1_$2/UFconfig
/bin/cp -f Make.$1 SolOut/$1_$2/UFconfig/UFconfig.mk
/bin/cp -f ../../UFconfig/UFconfig.h SolOut/$1_$2/UFconfig

# put in the main program
/bin/cp ut.c SolOut/$1_$2

# put in the test matrices
/bin/cp -f badnum*.umf SolOut/$1_$2
/bin/cp -f badsym*.umf SolOut/$1_$2
/bin/cp -pr TestMat SolOut/$1_$2

# compile and run
( cd SolOut/$1_$2 ; time make $3 > $1_$2.out )

# for Solaris
( cd SolOut/$1_$2 ; tail -5 ut.out > $1_$2.tail )
( cd SolOut/$1_$2 ; tcov -x ut.profile */Source/*.c )
( cd SolOut/$1_$2 ; grep -n "#####" *cov > $1_$2.cov )

# /bin/rm -rf SolOut/$1_$2

# cov $1_$2/UMFPACK/Source/umfp*cov
# cov $1_$2/UMFPACK/Source/umf_[0-c]*cov
# cov $1_$2/UMFPACK/Source/umf_[e-z]*cov
# cov $1_$2/AMD/Source/amd_[0-c]*cov
# cov $1_$2/AMD/Source/amd_de*cov
# cov $1_$2/AMD/Source/amd_[e-z]*cov