]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/www/lambdadelta/Makefile
update in lambdadelta
[helm.git] / helm / www / lambdadelta / Makefile
index df4a4b51942408d74a716fc85918d5464706eb97..1acebccc52d8f7354264b9d9e7295f06e67c64fa 100644 (file)
@@ -1,25 +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
 ETCDIR     = etc
+XHTBLDIR   = $(ETCDIR)/lambdadelta/bin/xhtbl
+INDEXDIR   = $(ETCDIR)/lambdadelta/bin/index
 DOWNDIR    = download
 XSLTDIR    = xslt
 XMLDIR     = xml
-SRCDIR     = web/home
-LDDLDIR    = web/lddl
-XHTBLDIR   = bin/xhtbl
-INDEXDIR   = bin/index
-HTMLDIR    = html/lddl
 JEDDIR     = $(HOME)/mps/jed
 BIBDIR     = $(HOME)/texmf/bibtex/bib
 CONTRIBDIR = $(ETCDIR)/lambdadelta
@@ -34,8 +35,14 @@ RXMLDIR  = $(RHOMEDIR)/xml
 RDOWNDIR = $(RHOMEDIR)/download
 RSTATICDIR = /projects/helm/public_html/lambda-delta/static
 
-DLHTMLSTAMP = $(ETCDIR)/lddl_html.stamp
-DLHTMLIXSTAMP = $(ETCDIR)/lddl_html_ix.stamp
+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
@@ -76,32 +83,109 @@ 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 ###########################################################
 
-define HTML_TEMPLATE
-   HTML_$(2)  = $$(SITEDIR)/$(2).html
-   HTMLS     += $$(HTML_$(2))
+$(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 $@"
 
-   $$(HTML_$(2)): $(1) $$(XSLS) $$(LDWEB:%=$$(XSLTDIR)/%)
-       @echo "  XSLT $$(notdir $$<)"
-       $$(H)$$(XSLT) $$(XSLT_OUT) $$@ $$(XSLT_XSL) $$(XSLTDIR)/ld_web.xsl $$(XSLT_IN) $$<
-endef
+up-html: $(ETCDIR)/html_lddl.tar.bz2
 
-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)))
+# UPDATE HTML IX LDDL ########################################################
 
-   $(XSLS): $(TBLS) $(XHTBL)
-       @echo "  XHTBL $(XHTBLOPTS) *.tbl"
-       $(H)$(XHTBL) $(XHTBLOPTS) -b $(LDURL) -O $(XSLTDIR) $(TBLS)
+$(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 $@"
 
-   $(foreach LDW,$(LDWS),$(eval $(call HTML_TEMPLATE,$(LDW),$(notdir $(LDW:%.ldw.xml=%)))))
+up-html-ix: $(ETCDIR)/html_lddl_ix.tar.bz2
+
+# UPDATE HTML HOME ###########################################################
+
+up-home: $(HOMESTAMP)
+       @echo "  UPDATE $(RHOMEDIR)/$(SITEDIR)/"
+       $(H)scp -q html/*.html $(RHOMEDIR)/$(SITEDIR)/
+
+# GENERATE HTML LDDL #########################################################
+
+ifeq ($(MAKECMDGOALS),html)
+  LDWS = $(shell find $(LDDLDIR) -name *.ldw.xml)
 endif
 
-all:
+$(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)
 
-www: $(HTMLS) $(TBLS) $(XHTBL)
+# GENERATE HTML HOME #########################################################
+
+ifeq ($(MAKECMDGOALS),home)
+  LDWS = $(shell find -L $(WEBDIRS) -name *.ldw.xml)
+endif
+
+$(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 ###############################################################
+
+TBLS = $(shell find -L $(WEBDIRS) -name *.tbl)
+
+$(TABLES) $(SITEMAP): $(TBLS) $(XHTBL)
+       @echo "  XHTBL $(XHTBLOPTS) *.tbl"
+       $(H)$(XHTBL) $(XHTBLOPTS) -b $(LDWEBURL) -O $(XSLTDIR) $(TBLS)
+
+# GENERATE LDW LDDL ##########################################################
+
+$(LDWSTAMP):
+       $(H)touch $@
+
+ldw: $(LDWSTAMP)
+
+# GENERATE LDW IX LDDL #######################################################
+
+$(LDWIXSTAMP): $(INDEX)
+       $(H)$(INDEX) -i $(LDDLDIR) -o $(HTMLDIR) .
+       $(H)touch $@
+
+ldw-ix: $(LDWIXSTAMP)
+
+##############################################################################
 
 lint-xml: $(XMLS:%=$(XMLDIR)/%)
        @echo XMLLINT --valid
@@ -124,47 +208,9 @@ install-xml: $(DOWNDIR)/lddl.tar.bz2
 test-html:
        @$(MAKE) --no-print-directory $(XMLS:%.xml=%)
 
-html: $(ETCDIR)/make_html.sh
-       @echo "  MAKE */*.ld"
+html: $(ETCDIR)/make_html.sh
+#      @echo "  MAKE */*.ld"
 #      $(H). $<
-       $(H)$(INDEX) -i $(LDDLDIR) -o $(HTMLDIR) .
-
-test: $(DLHTMLIXSTAMP)
-
-$(DLHTMLSTAMP):
-       $(H)for LDW in `find $(LDDLDIR) -name *.ldw.xml`; 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 $(DLHTMLIXSTAMP)
-
-$(DLHTMLIXSTAMP):
-       $(H)for LDW in `find $(LDDLDIR) -name index.ldw.xml`; 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 $@
-
-install-html: $(ETCDIR)/html_lddl.tar.bz2
-
-$(ETCDIR)/html_lddl.tar.bz2:
-       @echo "  INSTALL html"
-       $(H)tar -cjf $@ $(HTMLDIR)
-       $(H)scp $@ $(RHOMEDIR)/$(ETCDIR)
-       $(H)ssh $(REMOTE) "cd $(RDIR) && tar -xjf $@"
-
-install-html-ix: $(ETCDIR)/html_lddl_ix.tar.bz2
-
-$(ETCDIR)/html_lddl_ix.tar.bz2:
-       @echo "  INSTALL html"
-#      $(H)tar -cjf $@ `find $(HTMLDIR) -name index.html`
-       $(H)scp $@ $(RHOMEDIR)/$(ETCDIR)
-       $(H)ssh $(REMOTE) "cd $(RDIR) && tar -xjf $@"
 
 install-jed: $(SLS:%=$(JEDDIR)/%)
        @echo "  INSTALL $(SLS)"
@@ -199,10 +245,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)
@@ -215,11 +257,11 @@ up-download:
        @echo "  UPDATE $(RHOMEDIR)/download/"
        $(H)scp -q -r download $(RHOMEDIR)
 
-%.ld:
-       @echo "  XSLT $@"
+#%.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
 
 .PHONY: $(TAGS)
+
+.SUFFIXES: