mirror of https://github.com/CGAL/cgal
100 lines
1.8 KiB
Bash
Executable File
100 lines
1.8 KiB
Bash
Executable File
#!/bin/sh
|
|
OUTPUTFILE=error.txt
|
|
|
|
use_purify=0
|
|
|
|
one_run()
|
|
{
|
|
goodresult=RESULT/${base}/`basename ${datafile}`
|
|
if "./${base}" < ${datafile} >output
|
|
then
|
|
if [ -r ${goodresult} ]
|
|
then
|
|
if diff -b output ${goodresult} > diffoutput
|
|
then
|
|
succes=ja
|
|
else
|
|
succes=nee
|
|
cat diffoutput >> ProgramOutput.${base}.$PLATFORM
|
|
fi
|
|
else
|
|
succes=ja
|
|
fi
|
|
else
|
|
succes=nee
|
|
fi
|
|
if [ ${succes} = ja ]
|
|
then
|
|
echo "succes: ${base} < ${datafile}">> $OUTPUTFILE
|
|
else
|
|
echo "ERROR: ${base} < ${datafile}" >> $OUTPUTFILE
|
|
fi
|
|
}
|
|
|
|
make_and_execute()
|
|
{
|
|
if [ -r ii_files/${base}.ii.$1 ]
|
|
then
|
|
mv ii_files/${base}.ii.$1 ii_files/${base}.ii
|
|
fi
|
|
EXTRA_FLAGS="-DTESTR=$1"
|
|
export EXTRA_FLAGS
|
|
if make ${base} # 2>/dev/null
|
|
then
|
|
echo "succes: compiling ${file} with TESTR=$1" >> $OUTPUTFILE
|
|
if [ -r ii_files/${base}.ii ]
|
|
then
|
|
mv ii_files/${base}.ii ii_files/${base}.ii.$1
|
|
fi
|
|
if [ ${use_purify} -eq 1 ]
|
|
then
|
|
purify -log-file="%v.$1.%p.plog" ${base}
|
|
mv ${base}.pure ${base}
|
|
fi
|
|
for datafile in ${datafiles}
|
|
do
|
|
if [ -r ${datafile} ]
|
|
then
|
|
one_run
|
|
fi
|
|
done
|
|
else
|
|
echo "ERROR: compiling ${file} with TESTR=$1" >> $OUTPUTFILE
|
|
fi
|
|
make ${base}.clean
|
|
}
|
|
|
|
echo ${CGAL_LIB_DIR}
|
|
|
|
rm -f $OUTPUTFILE
|
|
touch $OUTPUTFILE
|
|
|
|
if [ $# -ne 0 ]
|
|
then
|
|
sourcefiles="$*"
|
|
else
|
|
sourcefiles="tst*.cpp"
|
|
fi
|
|
|
|
|
|
for file in ${sourcefiles}
|
|
do
|
|
base=`basename ${file} .cpp`
|
|
rm -f ProgramOutput.${base}.$PLATFORM
|
|
touch -f ProgramOutput.${base}.$PLATFORM
|
|
datafiles="ls DATA/${base}/ix*"
|
|
if [ "${datafiles}" ]
|
|
then
|
|
echo "TESTR=1" >> ProgramOutput.${base}.$PLATFORM
|
|
make_and_execute 1;
|
|
fi
|
|
if [ "${datafiles}" ]
|
|
then
|
|
echo "TESTR=2" >> ProgramOutput.${base}.$PLATFORM
|
|
make_and_execute 2;
|
|
fi
|
|
done
|
|
|
|
|
|
|