--- MITgcm/verification/testreport 2007/12/06 04:04:38 1.108 +++ MITgcm/verification/testreport 2008/04/06 19:19:47 1.115 @@ -1,6 +1,6 @@ #! /usr/bin/env bash # -# $Header: /home/ubuntu/mnt/e9_copy/MITgcm/verification/testreport,v 1.108 2007/12/06 04:04:38 jmc Exp $ +# $Header: /home/ubuntu/mnt/e9_copy/MITgcm/verification/testreport,v 1.115 2008/04/06 19:19:47 jmc Exp $ # $Name: $ # @@ -15,9 +15,12 @@ echo " (-mpi) compile and run using MPI" echo " (-ieee|-noieee) if possible, use IEEE compiler flags" echo " (DEF=\"-ieee\")" + echo " (-gsl) compile with \"-gsl\" flag" echo " (-of=|-optfile=)STRING list of optfiles to use" echo " (-a|-addr) STRING list of email recipients" echo " (DEF=\"\" no email is sent)" + echo " (-mpd|-mpackdir) DIR location of the mpack utility" + echo " (DEF=\"../tools/mpack-1.6\")" echo " (-t|-tdir) STRING list of group and/or exp. dirs to test" echo " (recognized groups: basic, tutorials)" echo " (DEF=\"\" which test all)" @@ -64,7 +67,8 @@ build_mpack() { printf "building the mpack utility... " - if test ! -x "$MPACKDIR/mpack" ; then + MPACK="$MPACKDIR/mpack" + if test ! -x $MPACK ; then if test ! -d $MPACKDIR ; then echo echo "Error: can't find \"$MPACKDIR\"" @@ -73,10 +77,10 @@ echo HAVE_MPACK=f fi - printf "building mpack... " if test "x$CC" = x ; then export CC=cc fi + printf "building mpack (using CC=$CC)... " ( cd $MPACKDIR && ./configure && $MAKE ) > tr_build_mpack.out 2>&1 RETVAL=$? if test "x$RETVAL" != x0 ; then @@ -87,11 +91,12 @@ else rm -f tr_build_mpack.out HAVE_MPACK=t + echo "done" fi else HAVE_MPACK=t + echo "already exist" fi - echo "OK" } testoutput_var() @@ -327,6 +332,9 @@ if test "x$IEEE" != x ; then command="$command -ieee" fi + if test "x$GSL" = xt ; then + command="$command -gsl" + fi if test "x$MPI" = xt ; then command="$command -mpi" fi @@ -470,7 +478,7 @@ CODE_DIR=$dir/$code_dir # These are files that should replace their counter-part when using -mpi - MPI_FILES=`(cd $CODE_DIR; find . -name "*_mpi")` + MPI_FILES=`(cd $CODE_DIR; find . -name "*_mpi" -print)` # Is this an MPI run? if test "x$MPI" = xt ; then @@ -621,7 +629,7 @@ { # create codelet for comparing model output - printf "creating the comparison code... " + printf "creating the comparison code (using CC=$CC)... " cat > tr_cmpnum.c < #include @@ -718,14 +726,12 @@ debug=0 verbose=1 clean=0 -expts='' -# ieee=1 IEEE=true if test "x$MITGCM_IEEE" != x ; then IEEE=$MITGCM_IEEE fi - +GSL=f CLEANUP=f QUICK=f @@ -741,7 +747,7 @@ SKIPDIRS= MPACKDIR="../tools/mpack-1.6" HAVE_MPACK= -MPACK="$MPACKDIR/mpack" +MPACK= COMMAND= if test "x$MAKE" = x ; then MAKE=make @@ -790,6 +796,10 @@ ac_prev=ADDRESSES ;; -addr=* | --addr=*) ADDRESSES=$ac_optarg ;; + -mpackdir | --mpackdir | -mpd | --mpd) + ac_prev=MPACKDIR ;; + -mpackdir=* | --mpackdir=* | -mpd=* | --mpd=*) + MPACKDIR=$ac_optarg ;; -tdir | --tdir | -t | --t) ac_prev=TESTDIRS ;; @@ -855,6 +865,7 @@ -ieee) IEEE=true ;; -noieee) IEEE= ;; + -gsl) GSL=t ;; -verbose) verbose=2 ;; -debug) debug=1 ;; @@ -975,14 +986,16 @@ # create the FORTRAN comparison code createcodelet -# build the mpack utility -if test "x$ADDRESSES" = xNONE -o "x$ADDRESSES" = x ; then +# build the mpack utility (if ADDRESSES = NONE, do it to test the build) +if test "x$ADDRESSES" = x ; then echo "skipping mpack build" else build_mpack fi # Create a uniquely named directory to store results +CMDLINE=$0 +for xx in "$@" ; do CMDLINE="$CMDLINE '$xx'" ; done MACH=`hostname` UNAMEA=`uname -a` DATE=`date +%Y%m%d` @@ -1003,9 +1016,10 @@ exit 1 fi SUMMARY="$DRESULTS/summary.txt" -printf "Start time: " >> $SUMMARY start_date=`date` echo $start_date > $SUMMARY +echo 'run:' $CMDLINE >> $SUMMARY +echo 'on :' $UNAMEA >> $SUMMARY of_path= if test "x$OPTFILE" != xNONE ; then @@ -1092,7 +1106,7 @@ # Cleanup only! if test "x$CLEANUP" = xt ; then if test -r $BUILD_DIR/Makefile ; then - echo ' ------ clean dir:' $dir/build + echo ' ------ clean dir:' $dir/$builddir ( cd $BUILD_DIR ; make CLEAN ) fi if test -d $dir/$rundir/CVS ; then @@ -1241,7 +1255,7 @@ done printf "Start time: " >> $SUMMARY -echo $start_date >> $SUMMARY +echo "$start_date" >> $SUMMARY printf "End time: " >> $SUMMARY date >> $SUMMARY