FC     = f77
FFLAGS = -O
OPTLIB = ../npsol/npsol.a
SNPDIR = ../code
MIXDIR = ../code
SRCDIR = .

OBJECT = nlmix.o mcarlo.o quad.o post.o gaussq.o \
         mufun.o confun.o derchk.o normalh.o simlat.o \
         density.o normal.o sizes.o values.o plot.o pstart.o \
         snpsubs1.o snpsubs3.o snpsubs4.o snpsubs5.o utility.o

nlmix : $(OBJECT)
	$(FC) $(FFLAGS) -o nlmix $(OBJECT) $(OPTLIB)

density.o  : $(SRCDIR)/density.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(SRCDIR)/density.f

normalh.o  : $(MIXDIR)/normalh.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/normalh.f

simlat.o  : $(MIXDIR)/simlat.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/simlat.f

nlmix.o  : $(MIXDIR)/nlmix.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c  $(MIXDIR)/nlmix.f

mcarlo.o  : $(MIXDIR)/mcarlo.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c  $(MIXDIR)/mcarlo.f

quad.o  : $(MIXDIR)/quad.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/quad.f

post.o  : $(MIXDIR)/post.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/post.f

gaussq.o  : $(MIXDIR)/gaussq.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/gaussq.f

mufun.o  : $(MIXDIR)/mufun.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/mufun.f

confun.o  : $(MIXDIR)/confun.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/confun.f

normal.o  : $(MIXDIR)/normal.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/normal.f

sizes.o  : $(MIXDIR)/sizes.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/sizes.f

values.o  : $(MIXDIR)/values.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/values.f

plot.o  : $(MIXDIR)/plot.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/plot.f

pstart.o  : $(MIXDIR)/pstart.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/pstart.f

derchk.o  : $(MIXDIR)/derchk.f $(MIXDIR)/global.f
	$(FC) $(FFLAGS) -c $(MIXDIR)/derchk.f

snpsubs1.o : $(SNPDIR)/snpsubs1.f
	$(FC) $(FFLAGS) -c $(SNPDIR)/snpsubs1.f

snpsubs3.o : $(SNPDIR)/snpsubs3.f
	$(FC) $(FFLAGS) -c $(SNPDIR)/snpsubs3.f

snpsubs4.o : $(SNPDIR)/snpsubs4.f
	$(FC) $(FFLAGS) -c $(SNPDIR)/snpsubs4.f
	
snpsubs5.o : $(SNPDIR)/snpsubs5.f
	$(FC) $(FFLAGS) -c $(SNPDIR)/snpsubs5.f

utility.o : $(SNPDIR)/utility.f
	$(FC) $(FFLAGS) -c $(SNPDIR)/utility.f

clean :
	rm -f *.o  core 

veryclean :
	rm -f *.o nlmix core 
