#
#	example Makefile for fftpk
#
#	macro definitions
#	
#	directory to put compiled library and modules in
# 
LIBD=
#
#	object files in the library
# 
OBJS=   radb2.o radb3.o radb4.o radb5.o radbg.o \
	radf2.o radf3.o radf4.o radf5.o radfg.o \
	ftrb.o ftrf.o ftcb.o ftcf.o fti.o \
	fthc.o fthci.o fths.o fthsi.o \
	ftqi.o ftqcb.o ftqcf.o ftqsb.o ftqsf.o \
	pimach.o fftpk90.o
#
#	fortran compiler flags (make sure use free or freeform flag)
#	following are for an SGI f90 compiler
#
FC=f90
FFLAGS=-freeform -mips3 -O3
#
.SUFFIXES: .f .mod $(SUFFIXES)
#
#	default rules
#
.f.o:
	$(FC) $(FFLAGS) -c $<

#.f.mod:
#	$(FC) $(FFLAGS) -c $<
#
#	target rules
#
libfftpk90.a: fftpk90.o
	ar r $@ $(OBJS)

sctest: sctest.o fftpk90.o
	$(FC) $(FFLAGS) -o $@ $@.o libfftpk90.a
	time $@

vtest: vtest.o fftpk90.o
	$(FC) $(FFLAGS) -o $@ $@.o libfftpk90.a
	time $@

install: libfftpk90.a
	cp libfftpk90.a fftpk90.mod $(LIBD)

compress:
	tar cvf - Makefile *.f | gzip > fftpk90.tgz

clean:
	rm *.o *.mod fttest
#
# dependencies
#
radb3.o: radb3.f pimach.o
radb5.o: radb5.f pimach.o
radbg.o: radbg.f pimach.o
radf3.o: radf3.f pimach.o
radf5.o: radf5.f pimach.o
radfg.o: radfg.f pimach.o
ftrb.o: ftrb.f radb2.o radb3.o radb4.o radb5.o radbg.o
ftrf.o: ftrf.f radf2.o radf3.o radf4.o radf5.o radfg.o
ftcb.o: ftcb.f ftrb.o
ftcf.o: ftcf.f ftrf.o
fthc.o: fthc.f ftrf.o
fthci.o: fthci.f fti.o pimach.o
fths.o: fths.f ftrf.o
fthsi.o: fthsi.f fti.o
ftqi.o: ftqi.f fti.o pimach.o
ftqcb.o: ftqcb.f ftrb.o
ftqcf.o: ftqcf.f ftrf.o
ftqsb.o: ftqsb.f ftqcb.o
ftqsf.o: ftqsf.f ftqcf.o
fftpk90.o: fftpk90.f fthc.o fthci.o ftrf.o ftrb.o ftcf.o ftcb.o fti.o \
	ftqi.o ftqcb.o ftqcf.o ftqsb.o ftqsf.o fths.o fthsi.o
#
#	end of Makefile
#
