# # Makefile for archive processing # .SUFFIXES: .SUFFIXES: .c .F .f .o .F: @echo "Must have an explicit rule for" $* @exit 1 .f: @echo "Must have an explicit rule for" $* @exit 1 .c: @echo "Must have an explicit rule for" $* @exit 1 # # --- generic make definitions # SHELL = /bin/sh RM = \rm -f # # rules. # # intelICE_setup incorportated below: .c.o: $(CC) $(CPPFLAGS) $(CCFLAGS) -c $*.c .f.o: $(FC) $(FCFFLAGS) -c $*.f .F.o: $(FC) $(CPPFLAGS) $(FCFFLAGS) -c $*.F FC = ftn FCFFLAGS = -traceback -g -O3 -fp-model precise -ftz -align array64byte -convert big_endian -assume byterecl DEBUGFCF = -g -O0 -check all -check noarg_temp_created -check nopointer -warn -warn noerrors -nogen-interfaces -fp-stack-check -fstack-protector-all -fpe0 -debug -traceback -ftrapuv CC = cc CCFLAGS = -O CPP = cpp -P CPPFLAGS = -DIA32 -DREAL4 LD = $(FC) LDFLAGS = -V $(FCFFLAGS) LDFLAGS = -V $(FCFFLAGS) -shared-intel EXTRALIBS = CMD = rtofs_ncoda_archv_inc BINDIR = ../../../exec # # --------------------------------------------------------------------- # Standard part of the Makefile starts here # --------------------------------------------------------------------- # MODR = mod_plot.o mod_xc.o mod_za.o mod_zb.o wtime.o DATAX_OBJ = bigrid.o blkin.o \ dum_gks.o \ extrct.o fordate.o \ getdat.o getdepth.o \ indxi.o indxj.o \ psmoo.o \ zebra.o zh.o DATAR_OBJ = $(DATAX_OBJ) putdat.o # --- executables. # all: $(CMD) everything: clean $(CMD) install finish ${CMD}: $(MODR) ncoda_archv_inc.o $(DATAR_OBJ) $(LD) $(LDFLAGS) -o ${CMD} ncoda_archv_inc.o $(MODR) $(DATAR_OBJ) debug: FCFFLAGS = $(DEBUGFCF) debug: all test: $(CMD) < input.txt > output.txt diff output.txt valid_output.txt clean: /bin/rm -f *.o *.a *.mod ${CMD} finish: /bin/rm -f ${OBJS} *.o *.a *.mod install: -mv $(CMD) ${BINDIR} # # --- explicit dependencies for each .[fF] file. # ncoda_archv_inc.o: ncoda_archv_inc.f mod_plot.o mod_za.o bigrid.o: bigrid.f mod_plot.o blkin.o: blkin.f buoflx.o: buoflx.f dum_gks.o: dum_gks.f extrct.o: extrct.f extrot.o: extrot.f fordate.o: fordate.f getdat.o: getdat.f mod_plot.o mod_za.o getdepth.o: getdepth.f mod_plot.o mod_za.o indxi.o: indxi.f mod_plot.o indxj.o: indxj.f mod_plot.o pakk.o: pakk.f psmoo.o: psmoo.f mod_plot.o putdat.o: putdat.f mod_plot.o mod_za.o wtime.o: wtime.F mod_plot.o: mod_plot.F mod_xc.o: mod_xc.F mod_za.o: mod_za.F mod_xc.o zh.o: zh.F zh_sun.f zh_t3e.f zh_ymp.f