test-html html install-html \
install-jed install-bib \
-LDDLURL = http://lambdadelta.info/static/lddl
+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
-XHTBLDIR = bin/xhtbl
+
+WEBDIRS = $(SRCDIR) $(ETCDIR)
REMOTE = helm.cs.unibo.it
RDIR = /projects/helm/public_html/lambdadelta
crg_si/grundlagen/l/e/st/eq/landau/n/327/t25.ld.xml \
brg_si/grundlagen/ccs.ldc.xml
+LDWEB = ld_web.xsl ld_web_root.xsl ld_web_library.xsl
+
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) -O $(XSLTDIR) $(TBLS)
+
+ $(foreach LDW,$(LDWS),$(eval $(call HTML_TEMPLATE,$(LDW),$(notdir $(LDW:%.ldw.xml=%)))))
+endif
all: www
+www: $(HTMLS)
+
lint-xml: $(XMLS:%=$(XMLDIR)/%)
@echo XMLLINT --valid
$(H)$(XMLLINT) --valid $^
@echo " INSTALL $(BIB)"
$(H)scp $< $(DOWNDIR)
$(H)scp $< $(DOWNDIR)/$(BIB:%.bib=%.txt)
-
-www:
- $(H)$(MAKE) --no-print-directory -C $(XHTBLDIR) www
-
up:
@echo " UPDATE $(REMOTE):$(RDIR)"
$(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 $@"