F90=pathf90
OPTIONS=-c
OBJECTS= math_head.o Funcs.o main.o Master.o NEB_toolbox.o MatrixOps.o skb.o fileio.o string.o Slave.o mvlsq.o abslinfit.o

min: $(OBJECTS)
	mpif90 -w -g -o min $(OBJECTS)

Master.o: Master.f90 math_head.o NEB_toolbox.o Funcs.o MatrixOps.o skb.o fileio.o
	mpif90 $(OPTIONS) $<

math_head.o: math_head.f90 
	$(F90) $(OPTIONS) $<

mvlsq.o: mvlsq.f90 abslinfit.o math_head.o
	$(F90) $(OPTIONS) $<

abslinfit.o : abslinfit.f
	$(F90) -c -fixedform $<

MatrixOps.o: MatrixOps.f90 math_head.o
	$(F90) $(OPTIONS) $<

Slave.o: Slave.f90 math_head.o fileio.o
	mpif90 $(OPTIONS) $<

string.o: string.f90
	$(F90) $(OPTIONS) $<

NEB_toolbox.o: NEB_toolbox.f90 math_head.o MatrixOps.o
	$(F90) $(OPTIONS) $<

skb.o: skb.f90 math_head.o MatrixOps.o mvlsq.o
	$(F90) $(OPTIONS) $<

fileio.o: fileio.f90 math_head.o string.o
	$(F90) $(OPTIONS) $<

Funcs.o: Funcs.f90 math_head.o MatrixOps.o
	$(F90) $(OPTIONS) $<

main.o: main.f90 math_head.o Master.o Slave.o
	mpif90 $(OPTIONS) $<

