X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fwww%2Flambdadelta%2FMakefile;h=98fb867c78d89d062e18f7a975205bec50266f94;hb=1aca50505c3ce6c76dd7d20d00e358707caffd4a;hp=51ecbd1a5698e532571a967c8d09c4669c650403;hpb=21e21b3b061807035bbd18d29d7a4fd8086ca10d;p=helm.git diff --git a/helm/www/lambdadelta/Makefile b/helm/www/lambdadelta/Makefile index 51ecbd1a5..98fb867c7 100644 --- a/helm/www/lambdadelta/Makefile +++ b/helm/www/lambdadelta/Makefile @@ -1,23 +1,26 @@ +SHELL := $(shell which bash) H=@ +TAGS = up-html up-html-ix up-home html html-ix home ldw ldw-ix + TAGS = www up-html up-css up-images up-download \ lint-xml index lddl install-xml \ test-html html install-html \ install-jed install-bib install-2 install-1 install-coq \ install-automath install-v install-matita \ -# LDURL = http://lambdadelta.info/ -LDURL = http://helm.cs.unibo.it/lambdadelta/ +LDWEBURL = http://helm.cs.unibo.it/lambdadelta/ SITEDIR = html +HTMLDIR = html/lddl +SRCDIR = web/home +LDDLDIR = web/lddl +XHTBLDIR = bin/xhtbl +INDEXDIR = bin/index ETCDIR = etc DOWNDIR = download XSLTDIR = xslt XMLDIR = xml -SRCDIR = web/home -LDDLDIR = web/lddl -XHTBLDIR = bin/xhtbl -HTMLDIR = html/lddl JEDDIR = $(HOME)/mps/jed BIBDIR = $(HOME)/texmf/bibtex/bib CONTRIBDIR = $(ETCDIR)/lambdadelta @@ -32,6 +35,15 @@ RXMLDIR = $(RHOMEDIR)/xml RDOWNDIR = $(RHOMEDIR)/download RSTATICDIR = /projects/helm/public_html/lambda-delta/static +HTMLSTAMP = $(ETCDIR)/html.stamp +HTMLIXSTAMP = $(ETCDIR)/html_ix.stamp +HOMESTAMP = $(ETCDIR)/home.stamp +LDWSTAMP = $(ETCDIR)/ldw.stamp +LDWIXSTAMP = $(ETCDIR)/ldw_ix.stamp + +SITEMAP = $(XSLTDIR)/sitemap.xsl +TABLES = $(XSLTDIR)/xhtbl.xsl + SLS = helena.sl automath.sl BIB = lambdadelta.bib CONTRIB = lambdadelta_2.tar.gz @@ -52,6 +64,7 @@ MATITA = matita/root matita/grundlagen_2.ma XMLLINT = xmllint --noout XSLT = xsltproc XHTBL = $(XHTBLDIR)/xhtbl.native +INDEX = $(INDEXDIR)/index.native XHTBLOPTS = @@ -70,33 +83,105 @@ ifeq ($(XSLT), xalan) XSLT += -indent 2 endif -XSLT += $(XSLT_PARAM) baseurl '"$(LDURL)"' $(XSLT_PARAM) date '"$(shell date -R)"' +XSLT += $(XSLT_PARAM) baseurl '"$(LDWEBURL)"' $(XSLT_PARAM) date '"$(shell date -R)"' + +all: + +# UPDATE HTML LDDL ########################################################### + +$(ETCDIR)/html_lddl.tar.bz2: $(HTMLSTAMP) + @echo " UPDATE $(RHOMEDIR)/$(HTMLDIR)/" + $(H)tar -cjf $@ $(HTMLDIR) + $(H)scp $@ $(RHOMEDIR)/$(ETCDIR) + $(H)ssh $(REMOTE) "cd $(RDIR) && tar -xjf $@" + +up-html: $(ETCDIR)/html_lddl.tar.bz2 + +# UPDATE HTML IX LDDL ######################################################## + +$(ETCDIR)/html_lddl_ix.tar.bz2: $(HTMLIXSTAMP) + @echo " UPDATE $(RHOMEDIR)/$(HTMLDIR)/*/index.html" + $(H)tar -cjf $@ `find $(HTMLDIR) -name index.html` + $(H)scp $@ $(RHOMEDIR)/$(ETCDIR) + $(H)ssh $(REMOTE) "cd $(RDIR) && tar -xjf $@" + +up-html-ix: $(ETCDIR)/html_lddl_ix.tar.bz2 + +# UPDATE HTML HOME ########################################################### -define HTML_TEMPLATE - HTML_$(2) = $$(SITEDIR)/$(2).html - HTMLS += $$(HTML_$(2)) +up-home: $(HOMESTAMP) + @echo " UPDATE $(RHOMEDIR)/$(SITEDIR)/" + $(H)scp -q html/*.html $(RHOMEDIR)/$(SITEDIR)/ - $$(HTML_$(2)): $(1) $$(XSLS) $$(LDWEB:%=$$(XSLTDIR)/%) - @echo " XSLT $$(notdir $$<)" - $$(H)$$(XSLT) $$(XSLT_OUT) $$@ $$(XSLT_XSL) $$(XSLTDIR)/ld_web.xsl $$(XSLT_IN) $$< -endef +# GENERATE HTML LDDL ######################################################### -ifeq ($(MAKECMDGOALS), www) - LDWS = $(shell find -L $(WEBDIRS) -name "*.ldw.xml") - TBLS = $(shell find -L $(WEBDIRS) -name "*.tbl") - XSLS = $(addprefix $(XSLTDIR)/,xhtbl.xsl $(notdir $(TBLS:%.tbl=%.xsl))) +$(HTMLSTAMP): LDWS = `find $(LDDLDIR) -name *.ldw.xml` - $(XSLS): $(TBLS) $(XHTBL) +$(HTMLSTAMP): $(LDWSTAMP) $(SITEMAP) $(LDWEB:%=$(XSLTDIR)/%) + $(H)for LDW in $(LDWS); do \ + TMP=$${LDW/web/html};HTML=$${TMP/ldw.xml/html}; \ + echo " XSLT $$LDW"; \ + mkdir -p $${HTML%/*}; \ + $(XSLT) $(XSLT_OUT) $$HTML $(XSLT_XSL) $(XSLTDIR)/ld_web.xsl $(XSLT_IN) $$LDW; \ + done + $(H)touch $@ + $(H)touch $(HTMLIXSTAMP) + +html: $(HTMLSTAMP) + +# GENERATE HTML IX LDDL ###################################################### + +$(HTMLIXSTAMP): LDWS = `find $(LDDLDIR) -name index.ldw.xml` + +$(HTMLIXSTAMP): $(LDWIXSTAMP) $(SITEMAP) $(LDWEB:%=$(XSLTDIR)/%) + $(H)for LDW in $(LDWS); do \ + TMP=$${LDW/web/html};HTML=$${TMP/ldw.xml/html}; \ + echo " XSLT $$LDW"; \ + mkdir -p $${HTML%/*}; \ + $(XSLT) $(XSLT_OUT) $$HTML $(XSLT_XSL) $(XSLTDIR)/ld_web.xsl $(XSLT_IN) $$LDW; \ + done + $(H)touch $@ + +html-ix: $(HTMLIXSTAMP) + +# GENERATE HTML HOME ######################################################### + +$(HOMESTAMP): LDWS = `find -L $(WEBDIRS) -name "*.ldw.xml"` + +$(HOMESTAMP): $(LDWS) $(TABLES) $(LDWEB:%=$(XSLTDIR)/%) + $(H)for LDW in $(LDWS); do \ + TMP=$${LDW##*/};HTML=$${TMP/ldw.xml/html}; \ + echo " XSLT $$LDW"; \ + $(XSLT) $(XSLT_OUT) $(SITEDIR)/$$HTML $(XSLT_XSL) $(XSLTDIR)/ld_web.xsl $(XSLT_IN) $$LDW; \ + done + $(H)touch $@ + +home: $(HOMESTAMP) + +# GENERATE XSL ############################################################### + +$(TABLES) $(SITEMAP): TBLS = `find -L $(WEBDIRS) -name "*.tbl"` + +$(TABLES) $(SITEMAP): $(TBLS) $(XHTBL) @echo " XHTBL $(XHTBLOPTS) *.tbl" - $(H)$(XHTBL) $(XHTBLOPTS) -b $(LDURL) -O $(XSLTDIR) $(TBLS) + $(H)$(XHTBL) $(XHTBLOPTS) -b $(LDWEBURL) -O $(XSLTDIR) $(TBLS) - $(foreach LDW,$(LDWS),$(eval $(call HTML_TEMPLATE,$(LDW),$(notdir $(LDW:%.ldw.xml=%))))) -endif +# GENERATE LDW LDDL ########################################################## -all: - @echo $(HTMLS) +$(LDWSTAMP): + $(H)touch $@ + +ldw: $(LDWSTAMP) -www: $(HTMLS) $(TBLS) $(XHTBL) +# GENERATE LDW IX LDDL ####################################################### + +$(LDWIXSTAMP): $(INDEX) + $(H)$(INDEX) -i $(LDDLDIR) -o $(HTMLDIR) . + $(H)touch $@ + +ldw-ix: $(LDWIXSTAMP) + +############################################################################## lint-xml: $(XMLS:%=$(XMLDIR)/%) @echo XMLLINT --valid @@ -119,15 +204,9 @@ install-xml: $(DOWNDIR)/lddl.tar.bz2 test-html: @$(MAKE) --no-print-directory $(XMLS:%.xml=%) -html: $(ETCDIR)/make_html.sh - @echo " MAKE */*.ld" - $(H). $< - -install-html $(DOWNDIR)/static_lddl.tar.bz2: $(ETCDIR)/exclude.txt $(ETCDIR)/make_html.sh - @echo " INSTALL html" - $(H)tar -cjf $(DOWNDIR)/static_lddl.tar.bz2 -C static -X $< lddl - $(H)scp $(DOWNDIR)/static_lddl.tar.bz2 $(RDOWNDIR) - $(H)ssh $(REMOTE) "cd $(RSTATICDIR) && tar -xjf ../../lambdadelta/download/static_lddl.tar.bz2 +# html: $(ETCDIR)/make_html.sh +# @echo " MAKE */*.ld" +# $(H). $< install-jed: $(SLS:%=$(JEDDIR)/%) @echo " INSTALL $(SLS)" @@ -162,10 +241,6 @@ install-v: $(HELENADIR)/$(COQ) @echo " INSTALL $(notdir $<)" $(H)scp $< $(DOWNDIR) -up-html: - @echo " UPDATE $(RHOMEDIR)/html/" - $(H)scp -q html/*.html $(RHOMEDIR)/html/ - up-css: @echo " UPDATE $(RHOMEDIR)/css/" $(H)scp -q -r css $(RHOMEDIR) @@ -178,11 +253,9 @@ up-download: @echo " UPDATE $(RHOMEDIR)/download/" $(H)scp -q -r download $(RHOMEDIR) -%.ld: - @echo " XSLT $@" - $(H)mkdir -p $(LDDLDIR)/$(@D) - $(H)$(XSLT) --novalid $(XSLT_OUT) $(LDDLDIR)/$@.ldw.xml $(XSLT_XSL) $(XSLTDIR)/lddl.xsl $(XSLT_IN) $(XMLDIR)/$@.xml - $(H)mkdir -p $(HTMLDIR)/$(@D) - $(H)$(XSLT) $(XSLT_OUT) $(HTMLDIR)/$@.html $(XSLT_XSL) $(XSLTDIR)/ld_web.xsl $(XSLT_IN) $(LDDLDIR)/$@.ldw.xml +#%.ld: +# @echo " XSLT $@" +# $(H)mkdir -p $(LDDLDIR)/$(@D) +# $(H)$(XSLT) --novalid $(XSLT_OUT) $(LDDLDIR)/$@.ldw.xml $(XSLT_XSL) $(XSLTDIR)/lddl.xsl $(XSLT_IN) $(XMLDIR)/$@.xml .PHONY: $(TAGS)