#!/bin/csh
set IO = `basename $0`
#
#------------------------------------------------------- Fortran Code ---------
cat >! ${IO}.f << FINEF90
	nbin=40
	call mvbook(10,0.0,1.0,nbin,' Test numero 1')
	call mvbook(20,0.0,1.0,nbin,' Test numero 2')
	call mvbook(30,0.0,1.0,nbin,' Test numero 3')
	do i=1,10000
	   call mvbookfill(10,gauss(0.5,0.2),1.0)
	   if (mod(i,2).eq.0) call mvbookfill(20,gauss(0.5,0.2),1.0)
	   if (mod(i,3).eq.0) call mvbookfill(30,gauss(0.5,0.2),1.0)
	enddo
	call mvsetflags('X size',1000.0)
	call mvsetflags('palette di colori',8.0)
	call mvsetflags('histogram statistic',0.0)
	call mvsetflags('histogram background',1.0)
	call mvsetflags('histogram color',6.0)
	call mvsetplotframe(0.00,0.50,0.45,0.90)
	call mvbookplot(10)
	call mvsetflags('histogram color',7.0)
	call mvsetplotframe(0.45,0.95,0.45,0.90)
	call mvbookplot(20)
	call mvsetflags('histogram color',3.0)
	call mvsetplotframe(0.00,0.50,0.00,0.45)
	call mvbookplot(30)

	call mvsetplotframe(0.45,0.95,0.10,0.50)
	call mvsetflags('histogram color',6.0)
	call mvsetflags('histogram background',4.0)
	call mvbookplot(10)
	call mvsetplotframe(0.45,0.95,0.05,0.45)
	call mvsetflags('histogram color',7.0)
	call mvbookplot(20)
	call mvsetplotframe(0.45,0.95,0.00,0.40)
	call mvsetflags('histogram background',3.0)
	call mvsetflags('histogram color',3.0)
	call mvbookplot(30)
	call displayexample('$IO','MVBook subpackage','$IO')
	end
FINEF90
set LOGF = "true" 
set LOGF = "false" 

goto chkplatf 
retchkplatf:

if ( -f $IO.exe ) /bin/rm $IO.exe
f90 $OPTION -o $IO.exe $IO.f $JETNET $MVLIB $NCARLIB $X11LIB >&! fortran.log

if ( ! -x $IO.exe ) then
      echo " ${IO}: cannot find $IO.exe "
      echo "    This is the log for compilation:"
      echo "******************************************************************"
      cat fortran.log
      echo "******************************************************************"
      goto CANCELLA
else if ( $LOGF == "true" ) then
      cat fortran.log
      echo " Running $IO.exe"
endif

./$IO.exe

CANCELLA:
if  ( $LOGF == "true" ) echo " Removing all tmp files."
foreach FILE ( $IO.exe gmeta core $IO.log fortran.log \
               gifmerge.log ${IO}common.f CONDRV.SCR tbl.tmp )
   if ( -f $FILE) /bin/rm $FILE
end
if  ( $LOGF == "true" ) echo " Done."
exit

chkplatf:
set CHKSEL = "${?IO}"
if ( $CHKSEL == 0 ) set IO = `basename $0`
set CHKSEL = "${?SELCOMP}"
if ( $CHKSEL == 0 ) set SELCOMP = "nocomp"

set X11LIB = " -lX11 -lm "
if ( $SELCOMP == "nocomp" ) then
else if ( $SELCOMP == "pgf90" ) then
   if ( ! -X ${SELCOMP} ) then
      echo " ${IO}: ${SELCOMP} non available on this system. Exiting..."
      exit
   endif
   alias f90 pgf90 ; set COMP = "pgf90"
   set OPTION = '-silent -Mextend -byteswapio'
   set IPLATF = 5
   goto retchkplatf
else if ( $SELCOMP == "ifort" ) then
   if ( ! -X ${SELCOMP} ) then
      echo " ${IO}: ${SELCOMP} non available on this system. Exiting..."
      exit
   endif
   alias f90 ifort ; set COMP = "ifort"
   set OPTION = '-O2 -extend-source -convert big_endian'
   set IPLATF = 5
   goto retchkplatf
else if ( $SELCOMP == "gfortran" ) then
   if ( ! -X ${SELCOMP} ) then
      echo " ${IO}: ${SELCOMP} non available on this system. Exiting..."
      exit
   endif
   alias f90 gfortran ; set COMP = "gfortran"
   set OPTION = '-ffixed-line-length-132 -fconvert=big-endian -w -Wno-tabs -O2'
   set IPLATF = 5
   goto retchkplatf
else
   echo " ${IO}: compiler ${SELCOMP} not available on this machine, exiting..."
   exit
endif
set COMP = "f90"
if ( `uname -a | grep alpha  | wc -l` > 0 ) then
    set OPTION = ' -convert big_endian -extend_source'
    set IPLATF = 1
else if ( `uname -a | grep SunOS  | wc -l` > 0 ) then
    set OPTION = ' -silent -e'         #  -silent is unknown for f90
    set OPTION = ' -e'
    set IPLATF = 2
else if ( `uname -a | grep IRIX64 | wc -l` > 0 ) then
#   set OPTION = ' -n32 -pfa -mpio -mp -Ofast '
    set OPTION = ' -n32 -Ofast -extend_source'
    set IPLATF = 3
else if ( `uname -a | grep AIX  | wc -l` > 0 ) then
    set OPTION = ' -q64 '
    set AROPT  = ' -X 64 '
    set IPLATF = 4
    echo " Preprocessing source files for IBM AIX Platform."
    ./ibmsources
    set FILES = `ls *.f`
    foreach FILE ( $FILES )
       ./ibmsources.exe $FILE
    end
    /bin/rm ./ibmsources.exe
    alias f90 xlf
    set COMP = "xlf"
else if ( `uname -a | grep Linux  | wc -l` > 0 ) then
    if ( -X gfortran ) then
       alias f90 gfortran ; set COMP = "gfortran"
       set OPTION = \
           ' -ffixed-line-length-132 -fconvert=big-endian -w -Wno-tabs -O2'
#      set NOLTIME = 'true'
    else if ( -X ifort ) then
       alias f90 ifort ; set COMP = "ifort"
       set OPTION = ' -O2 -extend-source -convert big_endian'
    else if ( -X pgf90 ) then
       alias f90 pgf90 ; set COMP = "pgf90"
       set OPTION = ' -silent -Mextend -byteswapio '
    endif
    set IPLATF = 5
else
    echo " Unknown HW/SW Platform. Exiting ..."
    exit
endif
#                                       Alla ricerca delle ncarlib
set NCARLIB = ' '
foreach JDIR ( /usr/lib /usr/local/lib /usr/local/ncarg /usr/local/ncarg/lib \
               $HOME/../verdecch/ncarg/lib/ $HOME/ncarg $HOME/ncarg/lib \
               ./ncarg ./ncarg/lib )
   if ( -f $JDIR/libncarg.a ) then 
      set NCARLIB  = " -L$JDIR -lncarg -lncarg_gks -lncarg_c "
      setenv NCARG_ROOT $JDIR 
   endif
end

#					Alla ricerca delle mvlib
set MVLIB = " "
if ( -f /usr/local/lib/libmv.a )                                                   set MVLIB = " -L/usr/local/lib -lmvgraf -lncaruti -lmv"
if ( -f ./libmv.a )              set MVLIB = " -L. -lmvgraf -lncaruti -lmv"
if ( -f /usr/local/ncarg/lib/libmv.a )                                             set MVLIB = " -L/usr/local/ncarg/lib -lmvgraf -lncaruti -lmv"
if ( -f $HOME/../verdecch//mvlib/lib/$IPLATF/libmv.a )                            set MVLIB = " -L$HOME/../verdecch//mvlib/lib/$IPLATF/ -lmvgraf -lncaruti -lmv"
if ( -f $HOME/mvlib/lib/$IPLATF/libmv.a )                                           set MVLIB = " -L$HOME/mvlib/lib/$IPLATF/ -lmvgraf -lncaruti -lmv"
if ( -f ./libchym.a ) set MVLIB = " -L. -lchym "
set JETNET = ' '
foreach JDIR ( $HOME/../verdecch/mvlib/lib/$IPLATF /usr/local/lib \
               /usr/lib $HOME/mvlib/lib/$IPLATF )
   if ( -f $JDIR/libjetnet20.a ) set JETNET = " -L$JDIR -ljetnet20"
   if ( -f $JDIR/jetnet20.a ) set JETNET = " $JDIR/jetnet20.a"
end
goto retchkplatf