#
#       Makefile for $(DENNOUDIR)/model/agcm5/prep
#
#                   ??/??/?? numaguti,takepiro,pochaka 
#                   94/04/29 ishiwatari
#                   94/10/29 ishiwatari
#       

include ../Mkinclude

FFLAGS 	      = $(STDFFLAGS) -I../include -I$(GTOOLINCDIR) $(AUTODBL)

CFLAGS        = $(STDCFLAGS) -I../include

CPPFLAGS      = $(STDCPPFLAGS) -I../include -I$(GTOOLINCDIR)

LDFLAGS        = $(STDLDFLAGS)

EXTHDRS	      = ../include/zccom.F \
		../include/zcdim.F \
		../include/zhdim.F

HDRS	      =

MAKEFILE      = Makefile

OBJS	       = $(OBJS_INIT) $(OBJS_SST) $(OBJS_SSTC) $(OBJS_SSTA) \
		$(OBJS_AXIS) $(OBJS_INI1D)
OBJS_INIT      = xmkinit.o
OBJS_INITR     = xmkinitR.o
OBJS_INITRG    = xmkinitRG.o
OBJS_SST       = xmksst.o calsst.o
OBJS_SSTC	= xmksst.o calsstc.o
OBJS_SSTA	= xmksstA.o calsstA.o
OBJS_SSTW	= xmksstA.o calsstW.o
OBJS_AXIS      = xmkaxis.o
OBJS_LOGS      = xmklogs.o
OBJS_XWN       = xmkaxxwn.o
OBJS_PLAX       = xmkplax.o
OBJS_INIT1D    = xmkini1d.o
OBJS_INIT250   = xmkinit250.o
OBJS_INIT300   = xmkinit300.o
OBJS_INIT310   = xmkinit310.o
OBJS_INIT320   = xmkinit320.o
OBJS_INIT330   = xmkinit330.o
OBJS_INIT340   = xmkinit340.o
OBJS_INIT350   = xmkinit350.o
OBJS_INIT400   = xmkinit400.o
OBJS_INI0    = xmkini0.o
OBJS_INIEQ    = xmkinieq.o
OBJS_INIEQSH   = xmkinieqsh.o

SRCS		= $(SRCS_INIT) $(SRCS_SST) $(SRCS_SSTC) $(SRCS_SSTA) \
		  $(SRCS_SSTW) \
                 $(SRCS_AXIS) $(SRCS_INI1D) \
		 $(SRCS_INIEQ) $(SRCS_INIEQSH) 
SRCS_INIT	= xmkinit.F
SRCS_INITR	= xmkinitR.F
SRCS_INITRG    = xmkinitRG.F
SRCS_SST	= xmksst.F calsst.F
SRCS_SSTC	= xmksst.F calsstc.F
SRCS_SSTA	= xmksstA.F calsstA.F
SRCS_SSTW	= xmksstA.F calsstW.F
SRCS_AXIS	= xmkaxis.F
SRCS_LOGS	= xmklogs.F
SRCS_XWN        = xmkaxxwn.F
SRCS_PLAX        = xmkplax.F
SRCS_INI1D	= xmkini1d.F
SRCS_INIT250	= xmkinit250.F
SRCS_INIT300	= xmkinit300.F
SRCS_INIT310	= xmkinit310.F
SRCS_INIT320	= xmkinit320.F
SRCS_INIT330	= xmkinit330.F
SRCS_INIT340	= xmkinit340.F
SRCS_INIT350	= xmkinit350.F
SRCS_INIT400	= xmkinit400.F
SRCS_INI0	= xmkini0.F
SRCS_INIEQ	= xmkinieq.F
SRCS_INIEQSH	= xmkinieqsh.F

INIT		= agcm5mkini.$(RESOLUTION)
INITR		= agcm5mkinir.$(RESOLUTION)
INITRG		= agcm5mkinirg.$(RESOLUTION)
SST		= agcm5mksst.$(RESOLUTION)
SSTC		= agcm5mksstc.$(RESOLUTION)
SSTA		= agcm5mksstA.$(RESOLUTION)
SSTW		= agcm5mksstW.$(RESOLUTION)
AXIS		= agcm5mkaxs.$(RESOLUTION)
LOGS		= agcm5mklogs.$(RESOLUTION)
XWN		= agcm5mkxwn.$(RESOLUTION)
PLAX		= agcm5mkplax.$(RESOLUTION)
INI1D		= agcm5mkini1d.$(RESOLUTION)
INIT250		= agcm5mkinit250.$(RESOLUTION)
INIT300		= agcm5mkinit300.$(RESOLUTION)
INIT310		= agcm5mkinit310.$(RESOLUTION)
INIT320		= agcm5mkinit320.$(RESOLUTION)
INIT330		= agcm5mkinit330.$(RESOLUTION)
INIT340		= agcm5mkinit340.$(RESOLUTION)
INIT350		= agcm5mkinit350.$(RESOLUTION)
INIT400		= agcm5mkinit400.$(RESOLUTION)
INI0		= agcm5mkini0.$(RESOLUTION)
INIEQ		= agcm5mkinieq.$(RESOLUTION)
INIEQSH		= agcm5mkinieqsh.$(RESOLUTION)

PROGRAM		= $(INIT) $(SST) $(SSTC) $(AXIS) $(LOGS) $(XWN) $(PLAX) $(INI1D) $(INI0) $(INIEQ) 

all:	$(PROGRAM)

init: $(INIT)
	$(INIT)

initR: $(INITR)
	$(INITR)

initRG: $(INITRG)
	$(INITRG)

sst: $(SST)
	$(SST)

sstc: $(SSTC)
	$(SSTC)

sstA: $(SSTA)
	$(SSTA)

sstW: $(SSTW)
	$(SSTW)

axis: $(AXIS)
	$(AXIS)

logs: $(LOGS)
	$(LOGS)

xwn: $(XWN)
	$(XWN)

plax: $(PLAX)
	$(PLAX)

ini1d: $(INI1D)
	$(INI1D)

init250: $(INIT250)
	$(INIT250)

init300: $(INIT300)
	$(INIT300)

init310: $(INIT310)
	$(INIT310)

init320: $(INIT320)
	$(INIT320)

init330: $(INIT330)
	$(INIT330)

init340: $(INIT340)
	$(INIT340)

init350: $(INIT350)
	$(INIT350)

init400: $(INIT400)
	$(INIT400)

inieq: $(INIEQ)
	$(INIEQ)

ini0: $(INI0)
	$(INI0)

inieqsh: $(INIEQSH)

$(INIEQSH):	$(OBJS_INIEQSH)
	$(FC) $(LDFLAGS) $(OBJS_INIEQSH) $(LIBS) $(STDLIBS) -o $@

$(INIT):	$(OBJS_INIT)
	$(FC) $(LDFLAGS) $(OBJS_INIT) $(LIBS) $(STDLIBS) -o $@

$(INITRG):	$(OBJS_INITRG)
	$(FC) $(LDFLAGS) $(OBJS_INITRG) $(LIBS) $(STDLIBS) -o $@

$(SST):		$(OBJS_SST)
	$(FC) $(LDFLAGS) $(OBJS_SST) $(LIBS) $(STDLIBS) -o $@

$(SSTC):	$(OBJS_SSTC)
	$(FC) $(LDFLAGS) $(OBJS_SSTC) $(LIBS) $(STDLIBS) -o $@

$(SSTA):	$(OBJS_SSTA)
	$(FC) $(LDFLAGS) $(OBJS_SSTA) $(LIBS) $(STDLIBS) -o $@

$(SSTW):	$(OBJS_SSTW)
	$(FC) $(LDFLAGS) $(OBJS_SSTW) $(LIBS) $(STDLIBS) -o $@

$(AXIS):	$(OBJS_AXIS)
	$(FC) $(LDFLAGS) $(OBJS_AXIS) $(LIBS) $(STDLIBS) -o $@

$(LOGS):	$(OBJS_LOGS)
	$(FC) $(LDFLAGS) $(OBJS_LOGS) $(LIBS) $(STDLIBS) -o $@

$(XWN):	$(OBJS_XWN)
	$(FC) $(LDFLAGS) $(OBJS_XWN) $(LIBS) $(STDLIBS) -o $@

$(PLAX):$(OBJS_PLAX)
	$(FC) $(LDFLAGS) $(OBJS_PLAX) $(LIBS) $(STDLIBS) -o $@

$(INI1D):	$(OBJS_INI1D)
	$(FC) $(LDFLAGS) $(OBJS_INIT) $(LIBS) $(STDLIBS) -o $@

$(INIT250):	$(OBJS_INIT250)
	$(FC) $(LDFLAGS) $(OBJS_INIT250) $(LIBS) $(STDLIBS) -o $@

$(INIT300):	$(OBJS_INIT300)
	$(FC) $(LDFLAGS) $(OBJS_INIT300) $(LIBS) $(STDLIBS) -o $@

$(INIT310):	$(OBJS_INIT310)
	$(FC) $(LDFLAGS) $(OBJS_INIT310) $(LIBS) $(STDLIBS) -o $@

$(INIT320):	$(OBJS_INIT320)
	$(FC) $(LDFLAGS) $(OBJS_INIT320) $(LIBS) $(STDLIBS) -o $@

$(INIT330):	$(OBJS_INIT330)
	$(FC) $(LDFLAGS) $(OBJS_INIT330) $(LIBS) $(STDLIBS) -o $@

$(INIT340):	$(OBJS_INIT340)
	$(FC) $(LDFLAGS) $(OBJS_INIT340) $(LIBS) $(STDLIBS) -o $@

$(INIT350):	$(OBJS_INIT350)
	$(FC) $(LDFLAGS) $(OBJS_INIT350) $(LIBS) $(STDLIBS) -o $@

$(INIT400):	$(OBJS_INIT400)
	$(FC) $(LDFLAGS) $(OBJS_INIT400) $(LIBS) $(STDLIBS) -o $@

$(INIEQ):	$(OBJS_INIEQ)
	$(FC) $(LDFLAGS) $(OBJS_INIEQ) $(LIBS) $(STDLIBS) -o $@

$(INI0):	$(OBJS_INI0)
	$(FC) $(LDFLAGS) $(OBJS_INI0) $(LIBS) $(STDLIBS) -o $@

clean:
		$(RM) *.o *~ core *.trace *.f $(PROGRAM)

install: $(PROGRAM)
	$(INSTALL) $(PROGRAM) $(BINDEST)

index:
		@$(INDEX) $(HDRS) $(SRCS)

print:		$(PRINTSTAMP)

$(PRINTSTAMP): $(HDRS) $(SRCS)
		$(PRINT) $?
		$(TOUCH) $(PRINTSTAMP)

tags:
		@$(TAGS) $(HDRS) $(SRCS)

pack:	$(PACKFILE) packs

packs: $(SRCS:.F=.pac)
	$(MD) $(PACKDIR)
	$(MV) $(PACKFILE) $(PACKDIR)/prep

$(PACKFILE):
	$(RM) $(PACKFILE)
	$(TOUCH) $(PACKFILE)

###
xmkinit.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinitRG.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit250.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit300.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit310.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit320.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit330.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit340.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit350.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinit400.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F
xmkinieq.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F ../include/zqsat.F
xmkinieqsh.o: ../include/zcdim.F ../include/zhdim.F ../include/zccom.F ../include/zqsat.F
xmksst.o: ../include/zcdim.F ../include/zhdim.F
xmksstc.o: ../include/zcdim.F ../include/zhdim.F
xmksstA.o: ../include/zcdim.F ../include/zhdim.F
xmksstW.o: ../include/zcdim.F ../include/zhdim.F
xmkaxis.o: ../include/zcdim.F $(GTOOLINCDIR)/gzsize.F
xmklogs.o: ../include/zcdim.F $(GTOOLINCDIR)/gzsize.F
xmkxwn.o: ../include/zcdim.F $(GTOOLINCDIR)/gzsize.F
xmkplax.o: ../include/zcdim.F $(GTOOLINCDIR)/gzsize.F
xmkaxxwn.o: ../include/zcdim.F $(GTOOLINCDIR)/gzsize.F
