PROJECTNAME = OrangeTree
BD = BUGS
RD = R
AD = ADMB
WD = WRITEUP
LCMD = pdflatex
ROPTS = --vanilla
RCMD = $(REXE) $(ROPTS) CMD
RSCRIPT = Rscript $(ROPTS)

runR = R CMD BATCH --vanilla 

.PHONY = all clean admb bugs r

all: bugs r admb
allx: bugs r admb rx admbx writeup

clean: 
	cd $(AD); rm -f fit.RData $(PROJECTNAME)_$(AD)_run.Rout *~
	cd $(RD); rm -f fit.RData $(PROJECTNAME)_$(RD)_run.Rout *~
	cd $(BD); rm -f fit.RData $(PROJECTNAME)_$(BD)_run.Rout *~

admb: $(AD)/fit.RData
admbx: $(AD)/fitx.RData $(AD)/$(PROJECTNAME)_ADMB_fits.RData

$(AD)/fit.RData: $(AD)/$(PROJECTNAME)_$(AD)_run.R
	cd $(AD); $(runR) $(PROJECTNAME)_$(AD)_run.R

## FIXME: not right
$(AD)/fitx.RData: $(AD)/$(PROJECTNAME)_$(AD)_runx.R
	cd $(AD); $(runR) $(PROJECTNAME)_$(AD)_runx.R

$(AD)/$(PROJECTNAME)_$(AD)_fits.RData: $(AD)/$(PROJECTNAME)_$(AD)_runx.R
	cd $(AD); $(runR) $(PROJECTNAME)_$(AD)_runx.R

bugs: $(BD)/fit.RData

$(BD)/fit.RData: $(BD)/$(PROJECTNAME)_$(BD)_run.R
	cd $(BD); $(runR) $(PROJECTNAME)_$(BD)_run.R

r: $(RD)/fit.RData

rx: $(RD)/fit_fits.RData $(RD)/fitx.RData

$(RD)/fit.RData: $(RD)/$(PROJECTNAME)_$(RD)_run.R
	cd $(RD); $(runR) $(PROJECTNAME)_$(RD)_run.R

$(RD)/fitx.RData: $(RD)/$(PROJECTNAME)_$(RD)_runx.R
	cd $(RD); $(runR) $(PROJECTNAME)_$(RD)_runx.R

writeup: $(WD)/$(PROJECTNAME).pdf

$(WD)/$(PROJECTNAME).pdf: $(WD)/$(PROJECTNAME).tex
	cd $(WD); $(LCMD) $(PROJECTNAME).tex

$(WD)/$(PROJECTNAME).tex: $(WD)/$(PROJECTNAME).Rnw
	cd $(WD); R CMD Sweave $(PROJECTNAME).Rnw
sim: 
	cd SIMS; make clean; make data; make est -j4; make collect
