]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/www/lambdadelta/Makefile
the corrected "Grundlagen" is online
[helm.git] / helm / www / lambdadelta / Makefile
index 388070cd0daab79da8e2958ddf4f5e943dbf77b2..cbdcfd4f0c1f044b8d95f92118103b0a46b1b6b1 100644 (file)
@@ -3,44 +3,95 @@ H=@
 TAGS = www up \
        lint-xml index lddl install-xml \
        test-html html install-html \
-       install-jed install-bib \
-
-LDDLURL = http://lambdadelta.info/static/lddl
-
-ETCDIR   = etc
-DOWNDIR  = download
-XSLTDIR  = xslt
-XMLDIR   = xml
-HTMLDIR  = $(HOME)/public_html/lddl
-JEDDIR   = $(HOME)/mps/jed
-BIBDIR   = $(HOME)/texmf/bibtex/bib
-XHTBLDIR = bin/xhtbl
+       install-jed install-bib install-contrib \
+       install-automath install-matita \
+
+LDURL   = http://lambdadelta.info/
+
+HOMEDIR = .
+ETCDIR     = etc
+DOWNDIR    = download
+XSLTDIR    = xslt
+XMLDIR     = xml
+SRCDIR     = web/home
+XHTBLDIR   = bin/xhtbl
+HTMLDIR    = $(HOME)/public_html/lddl
+JEDDIR     = $(HOME)/mps/jed
+BIBDIR     = $(HOME)/texmf/bibtex/bib
+CONTRIBDIR = $(ETCDIR)/lambdadelta
+HELENADIR  = ../../software/helena
+
+WEBDIRS  = $(SRCDIR) $(ETCDIR)
 
 REMOTE   = helm.cs.unibo.it
 RDIR     = /projects/helm/public_html/lambdadelta
-RXMLDIR  = $(REMOTE):$(RDIR)/xml
-RHTMLDIR = $(REMOTE):$(RDIR)/static/lddl
-
-SLS = helena.sl automath.sl
-BIB = lambdadelta.bib
-
-XMLS = brg_si/grundlagen/l/not.ld.xml \
-       brg_si/grundlagen/l/et.ld.xml \
-       brg_si/grundlagen/l/e/st/eq/landau/n/rt/rp/r/c/8283/t234.ld.xml \
-       brg_si/grundlagen/l/e/pairis1.ld.xml \
-       brg_si/grundlagen/l/e/st/eq/landau/n/327/t25.ld.xml \
-       crg_si/grundlagen/l/not.ld.xml \
-       crg_si/grundlagen/l/et.ld.xml \
-       crg_si/grundlagen/l/e/st/eq/landau/n/rt/rp/r/c/8283/t234.ld.xml \
-       crg_si/grundlagen/l/e/pairis1.ld.xml \
-       crg_si/grundlagen/l/e/st/eq/landau/n/327/t25.ld.xml \
-       brg_si/grundlagen/ccs.ldc.xml
+RHOMEDIR = $(REMOTE):$(RDIR)
+RXMLDIR  = $(RHOMEDIR)/xml
+RHTMLDIR = $(RHOMEDIR)/static/lddl
+RDOWNDIR = $(RHOMEDIR)/download
+
+SLS     = helena.sl automath.sl
+BIB     = lambdadelta.bib
+CONTRIB = lambdadelta_2.tar.gz
+
+XMLS = Environment/grundlagen_2/l/not.ld.xml \
+       Environment/grundlagen_2/l/et.ld.xml \
+       Environment/grundlagen_2/l/e/st/eq/landau/n/rt/rp/r/c/8283/t234.ld.xml \
+       Environment/grundlagen_2/l/e/pairis1.ld.xml \
+       Environment/grundlagen_2/l/e/st/eq/landau/n/327/t25.ld.xml \
+
+LDWEB = ld_web.xsl ld_web_root.xsl ld_web_library.xsl
+
+AUTOMATH = examples/automath/grundlagen_2.aut
+
+MATITA = matita/root matita/grundlagen_2.ma
 
 XMLLINT = xmllint --noout
-XSLT    = xsltproc
+XSLT    = xalan
+XHTBL   = $(XHTBLDIR)/xhtbl.native
+
+ifeq ($(XSLT), xsltproc)
+   XSLT_PARAM := --param
+   XSLT_OUT   := -o
+   XSLT_XSL   :=
+   XSLT_IN    :=
+endif
+
+ifeq ($(XSLT), xalan)
+   XSLT_PARAM := -param
+   XSLT_OUT   := -out
+   XSLT_XSL   := -xsl
+   XSLT_IN    := -in
+   XSLT       += -indent 2
+endif
+
+XSLT += $(XSLT_PARAM) baseurl '"$(LDURL)"' $(XSLT_PARAM) date '"$(shell date -R)"'
+
+define HTML_TEMPLATE
+   HTML_$(2)  = $$(HOMEDIR)/$(2).html
+   HTMLS     += $$(HTML_$(2))
+
+   $$(HTML_$(2)): $(1) $$(XSLS) $$(LDWEB:%=$$(XSLTDIR)/%)
+       @echo "  XSLT $$(notdir $$<)"
+       $$(H)$$(XSLT) $$(XSLT_OUT) $$@ $$(XSLT_XSL) $$(XSLTDIR)/ld_web.xsl $$(XSLT_IN) $$<
+endef
+
+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)))
+
+   $(XSLS): $(TBLS) $(XHTBL)
+       @echo "  XHTBL *.tbl"
+       $(H)$(XHTBL) -b $(LDURL) -O $(XSLTDIR) $(TBLS)
+
+   $(foreach LDW,$(LDWS),$(eval $(call HTML_TEMPLATE,$(LDW),$(notdir $(LDW:%.ldw.xml=%)))))
+endif
 
 all: www
 
+www: $(HTMLS) $(TBLS) $(XHTBL)
+
 lint-xml: $(XMLS:%=$(XMLDIR)/%)
        @echo XMLLINT --valid
        $(H)$(XMLLINT) --valid $^ 
@@ -50,13 +101,16 @@ $(ETCDIR)/make-html.sh $(XMLDIR)/index.txt index:
        $(H)find $(XMLDIR) -name "*.ld.xml" | sed s/.xml//g | sed s/xml/ld:/g > $(XMLDIR)/index.txt
        $(H)sed "s/^/make --no-print-directory /" $(XMLDIR)/index.txt | sed s.ld:/.. > $(ETCDIR)/make_html.sh
 
-lddl: $(ETCDIR)/exclude.txt index
+$(DOWNDIR)/lddl.tar.bz2 lddl: $(ETCDIR)/exclude.txt $(XMLDIR)/index.txt
        @echo "  GENERATE lddl.tar.bz2"
        $(H)tar -cjf $(DOWNDIR)/lddl.tar.bz2 -X $< $(XMLDIR) 
 
-install-xml: $(XMLDIR)/index.txt
+install-xml: $(DOWNDIR)/lddl.tar.bz2 
        @echo "  INSTALL xml"
-       $(H)scp -r $< $(XMLDIR)/brg_si/ $(XMLDIR)/crg_si/ $(RXMLDIR)
+       $(H)scp $^ $(RDOWNDIR)
+       $(H)ssh $(REMOTE) "cd $(RDIR) && tar -xjf download/lddl.tar.bz2"
+
+#      $(H)scp -r $(XMLDIR) $(RXMLDIR)
 
 test-html:
        @$(MAKE) --no-print-directory $(XMLS:%.xml=%)
@@ -78,19 +132,26 @@ install-bib: $(BIB:%=$(BIBDIR)/%)
        $(H)scp $< $(DOWNDIR)
        $(H)scp $< $(DOWNDIR)/$(BIB:%.bib=%.txt)
 
-www: 
-       $(H)$(MAKE) --no-print-directory -C $(XHTBLDIR) www
+install-contrib: $(CONTRIB:%=$(CONTRIBDIR)/%)
+       @echo "  INSTALL $(CONTRIB)"
+       $(H)scp $< $(DOWNDIR)
+
+install-automath: $(HELENADIR)/$(AUTOMATH)
+       @echo "  INSTALL $(notdir $<)"
+       $(H)scp $< $(DOWNDIR)
+
+install-matita: $(MATITA:%=$(HELENADIR)/%)
+       @echo "  INSTALL matita"
+       $(H)tar -C $(HELENADIR) -cjf $(DOWNDIR)/grundlagen_2.tar.bz2 $(MATITA)
 
 up:
-       @echo "  UPDATE $(REMOTE):$(RDIR)"
+       @echo "  UPDATE $(RHOMEDIR)"
        $(H)ssh $(REMOTE) "svn up $(RDIR)"
 
-%.ld: BASEURL = --stringparam baseurl $(LDDLURL)
-
 %.ld:
        @echo "  XSLT $@"
        $(H)mkdir -p $(HTMLDIR)/$(@D)
-       $(H)$(XSLT) -o $(HTMLDIR)/$@.html $(BASEURL) $(XSLTDIR)/lddl.xsl $(XMLDIR)/$@.xml
+       $(H)$(XSLT) $(XSLT_OUT) $(HTMLDIR)/$@.html $(XSLT_XSL) $(XSLTDIR)/lddl.xsl $(XSLT_IN) $(XMLDIR)/$@.xml
 
 %.ldc:
        @echo "  SKIP $@"