# $Id: Makefile,v 1.36 2010/12/17 21:52:11 timbl Exp $

#
# External stuff, i.e. stuff outside this directory
#

W=../../..
SWAP=$(W)/2000/10/swap
CWM=$(SWAP)/cwm.py
CURL=curl
USER=connolly
PASSWD=@@

PERL=perl

XPLANET=xplanet # http://xplanet.sourceforge.net/
#this shows the whole planet...
XPLANETOPTS=-projection peters -body Earth

# @@document where I got these
WGET=wget
TIDY=/home/connolly/src/tidy30apr00/tidy
# TIDY=tidy

#  iconv - Convert encoding of given files from one encoding
#       to another
# debian/gnu Linux man page
ICONV=iconv

# was 2.2, I don't have that any more -- tbl
PYTHON=python2.5
#PYTHON=python2

JAVA=java
# Java Linux http://www.blackdown.org/java-linux.html
# ...
# ftp://ftp.tux.org/pub/java/JDK-1.2.2/i386/FCS/
# ftp://ftp.tux.org/pub/java/JDK-1.2.2/i386/FCS/README
# Tue Aug  1 02:42:00 2000 
# 5e7f61497a67afdd2efc2b567a7ef1e3  j2sdk-1.2.2-FCS-linux-i386-glibc-2.1.3.tar.bz2
#JAVA=/usr/local/jdk1.2.2/bin/java
#JAVAC=/usr/local/jdk1.2.2/bin/javac

# Borland's JIT
# 1df5b98d341667fc8126138d4c3f9586  javacomp-1.2.15.tar.gz
# http://www.inprise.com/jbuilder/jbprev/jb3/linux/download/jit_steps.html
#JAVA=/usr/local/jdk1.2.2/bin/java -Djava.compiler=javacomp
#JAVAC=/usr/local/jdk1.2.2/bin/javac -J-Djava.compiler=javacomp

XT=/home/connolly/src/xt
#XT=/tux/u/connolly/src/xt
CLASSES=$(XT)/xt.jar:$(XT)/sax.jar:$(XT)/xp.jar:.
XTCMD=CLASSPATH=$(CLASSES) $(JAVA) -Dcom.jclark.xsl.sax.parser=com.jclark.xml.sax.CommentDriver com.jclark.xsl.sax.Driver

# From sw-team irc dancon 2002/11/13
#JAVA=java
#SAXONJAR=/usr/share/java/saxon.jar # debian package lib-saxon-java
#SAXONCMD=CLASSPATH=$(SAXONJAR) $(JAVA) com.icl.saxon.StyleSheet




URI_T=../uri43/uri.xsl

XMLWF=xmlwf

RM=rm
TOUCH=touch

.SUFFIXES: .rss .html

GROUPS=../../../Member/Mail/Overview.html
GBASE=http://www.w3.org/Member/Mail/
HERE=http://www.w3.org/2000/04/mem-news

all: group-leads.html groups.rdf orgchart.svg

JAVA=java
SAXONJAR=/usr/share/java/saxon.jar # debian package lib-saxon-java
SAXONCMD=CLASSPATH=$(SAXONJAR) $(JAVA) com.icl.saxon.StyleSheet
#SAXONCMD=/usr/local/bin/saxon
# syntax:
# java com.icl.saxon.StyleSheet [options] source-document stylesheet [params...]

group-leads.html: group-leads.rdf chairs.xsl
#	$(XTCMD) group-leads.rdf chairs.xsl $@
	$(SAXONCMD) group-leads.rdf chairs.xsl > $@

groups-redundant.rdf: $(GROUPS) group-scrape.xsl
	$(SAXONCMD) $(GROUPS) group-scrape.xsl Base=$(GBASE) Source=$(GROUPS) >$@

# There is some encoding problem which crashes expat on parsing the
# rdf directly alas @@
groups-redundant.n3 : groups-redundant.rdf
	$(PYTHON) $(CWM) --rdf=l groups-redundant.rdf --n3  > groups-redundant.n3

groups.rdf-old: groups-redundant.rdf groups-samePerson.n3 $(SWAP)/test/forgetDups.n3
	$(PYTHON) $(CWM) --rdf groups-redundant.rdf \
		--n3 groups-samePerson.n3 \
		--think \
		--apply=$(SWAP)/test/forgetDups.n3 --purge --purge-rules --bySubject --rdf=c >$@

groups.n3-old: groups-redundant.rdf groups-samePerson.n3 $(SWAP)/test/forgetDups.n3
	$(PYTHON) $(CWM) --rdf groups-redundant.rdf \
		--n3 groups-samePerson.n3 \
		--think \
		--apply=$(SWAP)/test/forgetDups.n3 --purge --purge-rules --n3 >$@

groups.n3: groups-redundant.n3 groups-samePerson.n3
	$(PYTHON) $(CWM) --closure=e groups-redundant.n3 groups-samePerson.n3 \
		--think \
		--data --n3 >$@

groups.rdf: groups-redundant.n3 groups-samePerson.n3 generate-uri.n3
	$(PYTHON) $(CWM) --closure=e groups-redundant.n3 generate-uri.n3 groups-samePerson.n3 \
		--think --data --bySubject --rdf=c >$@

public-groups.rdf: groups.rdf public-groups-filter.n3
	$(PYTHON) $(CWM) --crypto --rdf groups.rdf --n3 public-groups-filter.n3 --filter=public-groups-filter.n3 --rdf > $@

group-leads.rdf: groups.rdf group-leads-filter.n3
	$(PYTHON) $(CWM) --quiet \
		--rdf groups.rdf \
		--filter=group-leads-filter.n3 \
		--rdf >$@


chairs-subs.html:
	$(CURL) --user $(USER):$(PASSWD) 'http://cgi.w3.org/team-bin/MailingListQuery.pl?queryList=chairs' >$@

chairs-subs.n3: chairs-subs.html grokListAudit.pl
	$(PERL) grokListAudit.pl chairs-subs.html >$@

chairs-subs-issues.n3: groups.rdf chairs-subs.n3 chairs-check.n3
	$(PYTHON) $(CWM) chairs-check.n3 --think >$@


tr.rdf: tr.html groktr.xsl
#	$(XTCMD) tr.html groktr.xsl $@
	$(SAXONCMD) tr.html groktr.xsl > $@

# This is not relevant anymore since tr data is maintained in WWW/2002/01/tr-automation/tr.rdf
#tr2.rdf: tr.rdf trleg.rdf trbroken.rdf tr-merge.n3 tr.rdf trsupp.n3
#	$(PYTHON) $(CWM) --rdf tr.rdf trleg.rdf trbroken.rdf --n3 trsupp.n3 --filter=tr-merge.n3 --rdf >$@

tr.html:
	$(CURL) http://www.w3.org/TR/ >$@

trleg.rdf: groktrleg.py
	$(PYTHON) groktrleg.py >$@

# see for tr2.rdf
# tr2.n3: tr.rdf trleg.rdf tr-merge.n3 tr.rdf
#	$(PYTHON) $(CWM) --rdf tr.rdf trleg.rdf --filter=tr-merge.n3 --n3 >$@

recent-tr.html: recent-tr.xsl tr.html
#	$(XTCMD) tr.html recent-tr.xsl $@
	$(SAXONCMD) tr.html recent-tr.xsl > $@

upcoming-cal.html: upcoming-cal.xsl Eventscal.xhtml
	$(XTCMD) Eventscal.xhtml upcoming-cal.xsl $@

Eventscal.xhtml: Eventscal.html
	$(TIDY) -asxml $< > $@

teamWorld.png: teamCities.txt
	$(XPLANET) $(XPLANETOPTS) -markerfile teamCities.txt -output $@

teamCities.txt: teamCities.nt
	$(PERL) $(SWAP)/n-triples2xplanet.pl teamCities.nt >$@

teamCities.nt: teamRolo.rdf teamToGlobe.n3
	$(PYTHON) $(CWM) --rdf teamRolo.rdf --n3 teamToGlobe.n3 --think --ntriples >$@


teamRolo.rdf:
	$(CURL) --user $(USER):$(PASSWD) http://www.w3.org/Team/2001/05/rolodex >$@

#@@ .html

TPDATA=tpdump.rdf

tpmap.n3: tpcities.n3 tpregfolk.n3 cityCoords.n3
	$(PYTHON) $(CWM) tpcities.n3 tpregfolk.n3 cityCoords.n3 --think >$@

tpcities.n3: $(TPDATA) tpregfolk.n3
	$(PYTHON) $(CWM) --rdf $(TPDATA) --n3 tpregfolk.n3 --think >$@

#########
#
# How often do groups publish? Audit Mar 2002.


CHATTY=10

wg-tr-audit.n3: wg-tr-age.n3 wg-doc.n3 tr2.rdf groups.rdf
	$(PYTHON) $(CWM) --chatty=$(CHATTY) wg-tr-age.n3 --think >$@

tr-roots.n3: tr-roots-age.n3 tr2.rdf
	$(PYTHON) $(CWM) --chatty=$(CHATTY) tr-roots-age.n3 --think >$@

,wg-doc-check.n3: tr-roots.n3 wg-doc.n3
	$(PYTHON) $(CWM) --chatty=$(CHATTY) wg-doc.n3 --think >$@

clean:
	$(RM) chairs.txt ,wg-doc-check.n3 wg-tr-audit.n3 tr-roots.n3


wg-sched.html: wg-sched-report.n3 groups.rdf wg-doc.n3 tr2.rdf wg-charters.n3
	$(PYTHON) $(CWM) --chatty=$(CHATTY) wg-sched-report.n3 --think --strings >$@


wg-schedD.html: wg-sched-reportD.n3 groups.rdf wg-doc.n3 wg-charters.n3
	$(PYTHON) $(CWM) --chatty=$(CHATTY) wg-sched-reportD.n3 --think --strings >$@

orgchart.svg : groupchart.py groups.rdf old-groups.rdf
# -cf=old-groups.rdf
	$(PYTHON) groupchart.py -in=groups.rdf  \
			-chart=orgchart.svg

old-groups.rdf:
	cvs update -p -D "365 days ago" groups.rdf > old-groups.rdf

# tr-association.rdf was generated by hand
# also depends on ../../../2002/01/tr-automation/tr.rdf
tr-unassociated.rdf: tr-association.rdf
	$(PYTHON) $(CWM) --n3 non-associated.n3 --think --purge --purge-rules --rdf > $@

#ends
