SHELL = /bin/sh
# compile source files with mpif77
F77 = /usr/local/mpi/bin/mpif77
##F90 = mpif90
# link object files with mpif77
FLINKER = /usr/local/mpi/bin/mpif77
##FLINKER = mpif90
# compiler flags
FFLAGS = -c -fast 
# for debugging
###FFLAGS = -c -g

# executable file (goal)
#EXEC = parchanOC
# include files
INC1 = param.h
INC2 = compar.h
INC3 = /usr/local/mpi/include/mpif.h
# object files
OBJS = parchanOC.o solverOC.o routine1OC.o routine2OC.o

# to link single precision FFTW libraries 
LIBFLAG = -L/usr/local/lib/ -lsrfftw -lsfftw
# to link double precision FFTW libraries 
##LIBFLAG = -L/usr/local/lib/ -lrfftw -lfftw

parchanOC.x: $(OBJS)
	$(FLINKER) -o $@ $^ $(LIBFLAG)
parchanOC.o: parchanOC.F $(INC1) $(INC2) $(INC3)
	$(F77) $(FFLAGS) $< 
solverOC.o: solverOC.F $(INC1) $(INC2) $(INC3)
	$(F77) $(FFLAGS) $< 
routine1OC.o: routine1OC.F $(INC1) $(INC3)
	$(F77) $(FFLAGS) $< 
routine2OC.o: routine2OC.F $(INC3)
	$(F77) $(FFLAGS) $< 
clean:
	'rm' core a.out
tidy:
	'rm' bud_dat budst_new budst_old corrbd_dat corrbd_new corrbd_old \
            diag_dat dsc_out ener_dat harm_dat lesout new_stats old_stats \
            reynorbd_dat reynorbd_new reynorbd_old rijf_dat scal_dat \
            spec1d_dat stho_dat sthobd_new sthobd_old uwquad_dat
