#! /usr/sbin/smake
SHELL    = /sbin/sh
FC       = f90
LD       = $(FC)

RM       = /sbin/rm -f

MP       =
ABI      = -n32
ISA      = -r10000 -mips4
PROC     = ip27
ARCH     = $(MP) $(ABI) $(ISA)
OLEV     = -O3
ODEB     = -O0

FOPTS    = -OPT:IEEE_arithmetic=1:roundoff=0
FDEB     = -g3 -DEBUG:trap_uninitialized=ON:subscript_check=ON:div_check=3:verbose_runtime=ON
FFLAGS   = $(ARCH) $(OLEV) $(FOPT) -woff 2271,2272,2274 -fullwarn

LIBS     = -lpvm -lfastm -lfpe
LDFLAGS  = $(ARCH) $(OLEV)
PROF     =

# objects
MOBJS = modscal.o prod_mst.o
SOBJS = modscal.o prod_slv.o

# sources
MSRCS = modscal.f90 prod_mst.f90
SSRCS = modscal.f90 prod_slv.f90

# compilation
.f90.o:
	$(FC) $(FFLAGS) $< -c

# linking
all:  mst slv

EXECM = prod_mst.exe
mst:	$(MOBJS)
	$(LD) $(LDFLAGS) $(MOBJS) $(LIBS) -o $(EXECM)

EXECS = prod_slv.exe
slv:    $(SOBJS)
	$(LD) $(LDFLAGS) $(SOBJS) $(LIBS) -o $(EXECS)

clean:
	$(RM) $(MOBJS) $(SOBJS) $(EXECS) $(EXECM) *.mod
###
modscal.o: modscal.f90
prod_mst.o: prod_mst.f90 modscal.o
prod_slv.o: prod_slv.f90 modscal.o
