]> matita.cs.unibo.it Git - helm.git/blob - helm/www/lambdadelta/Makefile
lddl update with the disambiguated "grundlagen"
[helm.git] / helm / www / lambdadelta / Makefile
1 H=@
2
3 TAGS = www up \
4        lint-xml index lddl install-xml \
5        test-html html install-html \
6        install-jed install-bib install-contrib \
7
8 LDURL   = http://lambdadelta.info/
9
10 HOMEDIR = .
11 ETCDIR     = etc
12 DOWNDIR    = download
13 XSLTDIR    = xslt
14 XMLDIR     = xml
15 SRCDIR     = web/home
16 XHTBLDIR   = bin/xhtbl
17 HTMLDIR    = $(HOME)/public_html/lddl
18 JEDDIR     = $(HOME)/mps/jed
19 BIBDIR     = $(HOME)/texmf/bibtex/bib
20 CONTRIBDIR = $(ETCDIR)/lambdadelta
21
22 WEBDIRS  = $(SRCDIR) $(ETCDIR)
23
24 REMOTE   = helm.cs.unibo.it
25 RDIR     = /projects/helm/public_html/lambdadelta
26 RHOMEDIR = $(REMOTE):$(RDIR)
27 RXMLDIR  = $(RHOMEDIR)/xml
28 RHTMLDIR = $(RHOMEDIR)/static/lddl
29 RDOWNDIR = $(RHOMEDIR)/download
30
31 SLS     = helena.sl automath.sl
32 BIB     = lambdadelta.bib
33 CONTRIB = lambdadelta_2.tar.gz
34
35 XMLS = Environment/grundlagen_2/l/not.ld.xml \
36        Environment/grundlagen_2/l/et.ld.xml \
37        Environment/grundlagen_2/l/e/st/eq/landau/n/rt/rp/r/c/8283/t234.ld.xml \
38        Environment/grundlagen_2/l/e/pairis1.ld.xml \
39        Environment/grundlagen_2/l/e/st/eq/landau/n/327/t25.ld.xml \
40
41 LDWEB = ld_web.xsl ld_web_root.xsl ld_web_library.xsl
42
43 XMLLINT = xmllint --noout
44 XSLT    = xalan
45 XHTBL   = $(XHTBLDIR)/xhtbl.native
46
47 ifeq ($(XSLT), xsltproc)
48    XSLT_PARAM := --param
49    XSLT_OUT   := -o
50    XSLT_XSL   :=
51    XSLT_IN    :=
52 endif
53
54 ifeq ($(XSLT), xalan)
55    XSLT_PARAM := -param
56    XSLT_OUT   := -out
57    XSLT_XSL   := -xsl
58    XSLT_IN    := -in
59    XSLT       += -indent 2
60 endif
61
62 XSLT += $(XSLT_PARAM) baseurl '"$(LDURL)"' $(XSLT_PARAM) date '"$(shell date -R)"'
63
64 define HTML_TEMPLATE
65    HTML_$(2)  = $$(HOMEDIR)/$(2).html
66    HTMLS     += $$(HTML_$(2))
67
68    $$(HTML_$(2)): $(1) $$(XSLS) $$(LDWEB:%=$$(XSLTDIR)/%)
69         @echo "  XSLT $$(notdir $$<)"
70         $$(H)$$(XSLT) $$(XSLT_OUT) $$@ $$(XSLT_XSL) $$(XSLTDIR)/ld_web.xsl $$(XSLT_IN) $$<
71 endef
72
73 ifeq ($(MAKECMDGOALS), www)
74    LDWS  = $(shell find -L $(WEBDIRS) -name "*.ldw.xml")
75    TBLS  = $(shell find -L $(WEBDIRS) -name "*.tbl")
76    XSLS  = $(addprefix $(XSLTDIR)/,xhtbl.xsl $(notdir $(TBLS:%.tbl=%.xsl)))
77
78    $(XSLS): $(TBLS) $(XHTBL)
79         @echo "  XHTBL *.tbl"
80         $(H)$(XHTBL) -b $(LDURL) -O $(XSLTDIR) $(TBLS)
81
82    $(foreach LDW,$(LDWS),$(eval $(call HTML_TEMPLATE,$(LDW),$(notdir $(LDW:%.ldw.xml=%)))))
83 endif
84
85 all: www
86
87 www: $(HTMLS) $(TBLS) $(XHTBL)
88
89 lint-xml: $(XMLS:%=$(XMLDIR)/%)
90         @echo XMLLINT --valid
91         $(H)$(XMLLINT) --valid $^ 
92
93 $(ETCDIR)/make-html.sh $(XMLDIR)/index.txt index:
94         @echo "  GENERATE INDEXES"
95         $(H)find $(XMLDIR) -name "*.ld.xml" | sed s/.xml//g | sed s/xml/ld:/g > $(XMLDIR)/index.txt
96         $(H)sed "s/^/make --no-print-directory /" $(XMLDIR)/index.txt | sed s.ld:/.. > $(ETCDIR)/make_html.sh
97
98 $(DOWNDIR)/lddl.tar.bz2 lddl: $(ETCDIR)/exclude.txt $(XMLDIR)/index.txt
99         @echo "  GENERATE lddl.tar.bz2"
100         $(H)tar -cjf $(DOWNDIR)/lddl.tar.bz2 -X $< $(XMLDIR) 
101
102 install-xml: $(DOWNDIR)/lddl.tar.bz2 
103         @echo "  INSTALL xml"
104         $(H)scp $^ $(RDOWNDIR)
105         $(H)ssh $(REMOTE) "cd $(RDIR) && tar -xjf download/lddl.tar.bz2"
106
107 #       $(H)scp -r $(XMLDIR) $(RXMLDIR)
108
109 test-html:
110         @$(MAKE) --no-print-directory $(XMLS:%.xml=%)
111
112 html: $(ETCDIR)/make_html.sh
113         @echo "  MAKE */*.ld"
114         $(H). $<
115
116 install-html: $(ETCDIR)/make_html.sh
117         @echo "  INSTALL html"
118         $(H)scp -r $(HTMLDIR)/* $(RHTMLDIR)
119
120 install-jed: $(SLS:%=$(JEDDIR)/%)
121         @echo "  INSTALL $(SLS)"
122         $(H)scp $^ $(DOWNDIR)
123
124 install-bib: $(BIB:%=$(BIBDIR)/%)
125         @echo "  INSTALL $(BIB)"
126         $(H)scp $< $(DOWNDIR)
127         $(H)scp $< $(DOWNDIR)/$(BIB:%.bib=%.txt)
128
129 install-contrib: $(CONTRIB:%=$(CONTRIBDIR)/%)
130         @echo "  INSTALL $(CONTRIB)"
131         $(H)scp $< $(DOWNDIR)
132
133 up:
134         @echo "  UPDATE $(RHOMEDIR)"
135         $(H)ssh $(REMOTE) "svn up $(RDIR)"
136
137 %.ld:
138         @echo "  XSLT $@"
139         $(H)mkdir -p $(HTMLDIR)/$(@D)
140         $(H)$(XSLT) $(XSLT_OUT) $(HTMLDIR)/$@.html $(XSLT_XSL) $(XSLTDIR)/lddl.xsl $(XSLT_IN) $(XMLDIR)/$@.xml
141
142 %.ldc:
143         @echo "  SKIP $@"
144
145 .PHONY: $(TAGS)