SHELL=/bin/csh
#
FLNM= tigcm
USER= foster
USERUC= FOSTER
CFT=	cft77
#FFLAGS= -Wf"-ezo -o off"
FFLAGS=
LDR=	segldr
LDFLAGS= -i /u0/$(USER)/segdir -D dupentry=ignore
LIBS=	
COMMAND=$(FLNM).ymp
PROFLIB=
MSSRCPATH=/$(USERUC)/src
TARFILE=$(FLNM).v1.0.tar
TDIR=/d/$(USER)/$(FLNM).sh
LIST = $(FLNM).list
#
FSRCS=\
	tigcm.f getinp.f blkdatix.f fof2int.f \
	gethist.f newhts.f proclat.f top2lab.f ave.f \
	tgcmint.f mapeod.f bwcon.f labaxes.f setag.f \
	labpolar.f prgcmhdr.f lnblnk2.f blkdat.f sltxax.f\
	setgrid.f botlab.f setdef.f ixlat.f mklabti.f \
	ixlon.f selgrid.f pltutlat.f pltutzpm.f pltglb.f \
	pltvec.f velvct.f mxftraj.f mxfangl.f vmaxr.f \
	pltpol.f pltuthtm.f cool.f blkcool.f pltlonzp.f \
	pltlatzp.f defclrs.f clrcon.f colram.f box.f \
	pltlatht.f altyax.f ixslt.f pltsatv.f \
	mkuivi.f mklabtie.f dynglb.f dynpol.f \
	assgn.f dynsatv.f mkuivih.f mkuivis.f lenstr.f
CSRCS=\
	lnblnk.c fminmax.c
#
OBJS=\
	tigcm.o getinp.o blkdatix.o fof2int.o \
	gethist.o lnblnk.o newhts.o proclat.o top2lab.o \
	tgcmint.o mapeod.o bwcon.o labaxes.o setag.o \
	labpolar.o prgcmhdr.o lnblnk2.o blkdat.o sltxax.o\
	setgrid.o botlab.o setdef.o ixlat.o mklabti.o \
	ixlon.o selgrid.o pltutlat.o pltutzpm.o pltglb.o \
	pltvec.o velvct.o mxftraj.o mxfangl.o vmaxr.o \
	pltpol.o pltuthtm.o cool.o blkcool.o pltlonzp.o \
	pltlatzp.o defclrs.o clrcon.o colram.o box.o \
	pltlatht.o altyax.o ixslt.o pltsatv.o fminmax.o \
	mkuivi.o mklabtie.o dynglb.o dynpol.o \
	assgn.o dynsatv.o ave.o mkuivih.o mkuivis.o lenstr.o
#
INCH = \
	    /home/sting/foster/getgcm/input.h \
	    /home/sting/foster/getgcm/tgcmrd.h \
            /home/sting/foster/procs/lib/tgcmhdr.h \
            /home/sting/foster/proclib/selgrid.h \
            /home/sting/foster/proclib/cool.h \
	    /home/sting/foster/proclib/tgcmlab.h \
            /home/sting/foster/proclib/tgcmparam.h \
            /home/sting/foster/proclib/tigcmfld.h \
            /home/sting/foster/proclib/tiegcmfld.h \
            /home/sting/foster/plt/color.h \
            /home/sting/foster/plt/cpwrk.h \
            /home/sting/foster/plt/lblbar.h
INCF = \
            /home/sting/foster/getgcm/assgn.f \
	    /home/sting/foster/getgcm/fof2int.f \
	    /home/sting/foster/getgcm/gethist.f \
	    /home/sting/foster/getgcm/dyn/proclat.f \
	    /home/sting/foster/getgcm/newhts.f \
            /home/sting/foster/plt/top2lab.f \
            /home/sting/foster/plt/mapeod.f \
            /home/sting/foster/plt/bwcon.f \
            /home/sting/foster/plt/labaxes.f \
            /home/sting/foster/plt/setag.f \
            /home/sting/foster/plt/labpolar.f \
            /home/sting/foster/plt/pltvec.f \
            /home/sting/foster/plt/mxfangl.f \
            /home/sting/foster/plt/mxftraj.f \
            /home/sting/foster/plt/velvct.f \
            /home/sting/foster/plt/vmaxr.f \
            /home/sting/foster/plt/defclrs.f \
            /home/sting/foster/plt/clrcon.f \
            /home/sting/foster/plt/colram.f \
            /home/sting/foster/plt/box.f \
            /home/sting/foster/proclib/ave.f \
            /home/sting/foster/proclib/lenstr.f \
            /home/sting/foster/proclib/tgcmint.f \
            /home/sting/foster/proclib/ixslt.f \
            /home/sting/foster/proclib/prgcmhdr.f \
            /home/sting/foster/proclib/lnblnk.c \
            /home/sting/foster/proclib/lnblnk2.f \
            /home/sting/foster/proclib/selgrid.f \
            /home/sting/foster/proclib/setgrid.f \
            /home/sting/foster/proclib/botlab.f \
            /home/sting/foster/proclib/setdef.f \
            /home/sting/foster/proclib/ixlat.f \
            /home/sting/foster/proclib/blkcool.f \
            /home/sting/foster/proclib/cool.f \
            /home/sting/foster/proclib/ixlon.f \
            /home/sting/foster/proclib/sltxax.f \
	    /home/sting/foster/proclib/blkdatix.f \
	    /home/sting/foster/proclib/altyax.f \
            /home/sting/foster/proclib/mklabtie.f \
            /home/sting/foster/proclib/mklabti.f \
            /home/sting/foster/proclib/getmss.c \
            /home/sting/foster/proclib/fminmax.c
#
#
.KEEP_STATE:
#
# Make shavano executable:
#
$(COMMAND):	$(OBJS)
	$(LDR) $(LDFLAGS) -o $(COMMAND) $(OBJS) $(LIBS)
#
# Make profiled version of shavano executable:
# WARNING:  DO NOT PROFILE AND FLOWTRACE AT THE SAME TIME
#
$(COMMAND).prof:	$(OBJS)
	$(LDR) $(LDFLAGS) -o $(COMMAND) $(OBJS) $(PROFLIB) $(LIBS)
#
# flint is fortran source code analyzer on shavano:
#
lint:
	flint -fg $(FSRCS) 
#
# Make backup of source code on the mass store:
# (make this target from the sun)
#
msbackup:
	/home/sting/foster/bin/mktar \
-v -f $(TDIR)/$(TARFILE) -r -i $(INCF) $(INCH) $(FLNM).inp
	toms -ft $(TDIR)/$(TARFILE) $(MSSRCPATH)/$(TARFILE)
tar:
	/home/sting/foster/bin/mktar \
-v -f $(TDIR)/$(TARFILE) -r -i $(INCF) $(INCH) $(FLNM).inp Makefile
#
# Make master listing of header and source files:
# (make this target from the sun)
#
listing:
	cat *.h $(INCH) *.f $(INCF) > $(LIST)
#
# remove executable from shavano:
rmymp:
	rsh shavano 'rm /usr/tmp/$(USER)/$(FLNM)/$(COMMAND)'
#
# clean shavano:
cleanymp:
	rsh shavano 'cd /usr/tmp/$(USER)/$(FLNM); \
rm gmeta *.ymp M* *.f *.c *.h *.tar *.inp *.out fort.* *.nqs cjob core jafile '
