PYTHON=/usr/bin/python
#PYTHON=/usr/bin/python
CWM=~/WWW/2000/10/swap/cwm.py
TR_AUT=~/WWW/2002/01/tr-automation
XSLT=/home/dom/bin/_xslt_proc
HIST=http://www.w3.org/2002/01/tr-automation/rec-history.rdf
TR=http://www.w3.org/2002/01/tr-automation/tr.rdf
JAVA=/usr/local/bin/java
SAXON=com.icl.saxon.StyleSheet
GRAPH=graphs

all: Overview.html date-report.txt tr-stats.csv rec-history.svg current-tr.svg graphs

graphs: wd-rec.svg wd-cr.svg cr-pr.svg pr-rec.svg

Overview.html: history.n3
	$(PYTHON) $(CWM) --n3 history.n3 --think --strings > $@

date-stats.rdf: analyze.n3 bogus-data.n3 filter-data.n3
	$(PYTHON) $(CWM) analyze.n3 --think --purge --purge-rules bogus-data.n3 --think --purge --purge-rules --filter=filter-data.n3 --rdf > $@

date-report.txt: date-stats.rdf date-analysis.xsl
	$(XSLT) date-stats.rdf date-analysis.xsl > $@

tr-stats.csv: date-stats.rdf tr-stats-csv.xsl
	$(XSLT) date-stats.rdf tr-stats-csv.xsl > $@

rec-history.svg: rec-rdf2svg.xsl current-tr-history.rdf
	$(XSLT) current-tr-history.rdf rec-rdf2svg.xsl > $@

# not used anymore
#current-tr-histories.sh: make-shortnames-script.xsl
#	$(XSLT) $(TR) make-shortnames-script.xsl > $@
#	chmod a+x $@

shortnames-raw.rdf: extract-shortnames.xsl
	$(XSLT) $(TR) extract-shortnames.xsl > $@

# beware that mappings.n3 is a hand-generated file; it may not do everything
# shortnames.rdf needs it to in the future
shortnames.rdf: shortnames-raw.rdf mappings.n3
	$(PYTHON) $(CWM) --n3 mappings.n3 --rdf shortnames-raw.rdf --think --purge-rules --rdf > $@

# Replaced 2004-02-26 ; now using tr-logs in TR automation
current-tr-history.rdf: $(TR_AUT)/new-tr.rdf
	$(PYTHON) $(CWM) --rdf $(TR_AUT)/tr-pub-*.rdf $(TR_AUT)/new-tr.rdf --rdf > $@

current-tr.svg: shortnames.rdf current-tr-history.rdf other-rdf2svg.xsl
	$(XSLT) current-tr-history.rdf other-rdf2svg.xsl > $@

current-tr-animated.svg: current-tr-history.rdf other-rdf2svg.xsl
	$(XSLT) current-tr-history.rdf other-rdf2svg.xsl animate=t > $@

each-group.sh: make-each-group.n3
	$(PYTHON) $(CWM) --n3 $< --think --strings > $@
	chmod a+x $@

split-groups: each-group.sh split-groups.n3
	./each-group.sh
	touch $@

split-groups-svg: split-groups each-group-to-svg.sh
	./each-group-to-svg.sh
	touch $@

current-tr-by-group.html: groups-svg-link.n3
	$(PYTHON) $(CWM) --n3 $< --think --strings > $@

projection-1.n3: projected-1.n3
	$(PYTHON) $(CWM) --n3 projected-1.n3 --think --purge --purge-rules > $@

projection-2.n3: projection-1.n3 projected-2.n3
	$(PYTHON) $(CWM) --n3 projection-1.n3 projected-2.n3 --think --purge-rules > $@

projection-3.rdf: projection-2.n3 projected-3.n3
	$(PYTHON) $(CWM) --n3 projection-2.n3 projected-3.n3 --think --purge-rules --rdf > $@

tr-projected.rdf: projection-3.rdf current-tr-history.rdf
	$(PYTHON) $(CWM) --rdf projection-3.rdf current-tr-history.rdf --rdf > $@

projected-tr.svg: tr-projected.rdf projected-rdf2svg.xsl
	$(SAXON) tr-projected.rdf projected-rdf2svg.xsl > $@

wd-rec.svg: date-stats.rdf date-histogram.xsl
        $(JAVA) $(SAXON) date-stats.rdf date-histogram.xsl property=firstWDtoFirstREC group-by=6 y-stop=15 title='First WD to First REC Histogram' x-axis-label='Months between WD and REC' > $(GRAPH)/$@

wd-cr.svg: date-stats.rdf date-histogram.xsl
        $(JAVA) $(SAXON) date-stats.rdf date-histogram.xsl property=firstWDtoFirstCR group-by=6 y-stop=9 title='First WD to First CR Histogram' x-axis-label='Months between WD and CR' > $(GRAPH)/$@

cr-pr.svg: date-stats.rdf date-histogram.xsl
        $(JAVA) $(SAXON) date-stats.rdf date-histogram.xsl property=firstCRtoFirstPR group-by=6 y-stop=13 title='First CR to First PR Histogram' x-axis-label='Months between CR and PR' > $(GRAPH)/$@

pr-rec.svg: date-stats.rdf date-histogram.xsl
        $(JAVA) $(SAXON) date-stats.rdf date-histogram.xsl property=firstPRtoFirstREC group-by=1 y-stop=30 y-start-param=3 y-scale-param=5 y-step-param=3 title='First PR to First REC Histogram' x-axis-label='Months between PR and REC' > $(GRAPH)/$@

tr-by-quarter.svg: by-quarter.xsl current-tr-history.rdf
	$(XSLT) current-tr-history.rdf by-quarter.xsl end-year=2003 end-quarter=2 > $@

rec-control.rdf: extract-control.xsl
	$(XSLT) $(TR) extract-control.xsl > $@

clean:
	rm -rf Overview.html analysis.rdf rec-history.svg tr-stats.csv date-report.txt date-stats.rdf tr-projected.rdf projected-tr.svg projection-*.n3 current-tr-by-group.html current-tr.svg current-tr-history.rdf shortnames.rdf shortnames-raw.rdf graphs/*.svg
