source: branches/port5/HELP_SOURCE/Makefile

Last change on this file was 7033, checked in by arb_build, 14 years ago
  • remove _index.html in clean (automatic builds were still failing)
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 7.2 KB
Line 
1
2.SUFFIXES: .o .c .cxx .source .hlp .xml .dtd .html .depend .ps.gz .pdf.gz
3
4# --------------------------------------------------------------------------------
5
6TEST_ONE=0# default is 0 (if 1 only one .hlp file is processed. see below @ TEST_ONE)
7
8# --------------------------------------------------------------------------------
9# directories of source/destination files:
10
11HLP_SOURCE=oldhelp
12HLP_GENERATED=genhelp
13XML_LOCATION=Xml
14HTML_LOCATION=../lib/help_html
15HLP_DEST=../lib/help
16HELP_INDEX_NAME = help_index
17
18# needed tools:
19TOOL_OBJECTS = \
20         arb_help2xml.o
21
22BINARIES = $(TOOL_OBJECTS:%.o=$(ARBHOME)/bin/%)
23
24QUIETLY = ./quietly.pl
25
26# using xsltproc and XMLLINT:
27XSLTPROC = xsltproc
28VALIDATE = $(QUIETLY) XMLLINT
29
30# --------------------------------------------------------------------------------
31
32all: date generated dirs tools nonhlp_formats delzerohtml
33                @echo --------------------------------------------------- [old hlp 2 xml]
34                time $(MAKE) xml
35                @echo --------------------------------------------------- [xml 2 hlp]
36                time $(MAKE) help
37                $(MAKE) $(HLP_DEST)/FORM.hlp
38                @echo --------------------------------------------------- [xml 2 html]
39                time $(MAKE) html
40
41$(HLP_DEST)/FORM.hlp: $(HLP_SOURCE)/FORM.hlp
42                cp -p $< $@
43
44
45dirs:
46                mkdir -p $(XML_LOCATION)
47                mkdir -p $(XML_LOCATION)/prompt
48
49                mkdir -p $(HTML_LOCATION)
50                mkdir -p $(HTML_LOCATION)/prompt
51
52                mkdir -p $(HLP_DEST)
53                mkdir -p $(HLP_DEST)/prompt
54
55                @-ln -s ../arb_help.dtd $(XML_LOCATION)
56                @-ln -s ../../arb_help.dtd $(XML_LOCATION)/prompt
57
58HELP2XML=$(ARBHOME)/bin/arb_help2xml
59
60# --------------------------------------------------------------------------------
61# Generate help files in $(HLP_GENERATED):
62
63generated:
64                @echo ---------------------------------------------------
65                @echo ------------ Generating some help files:
66                (cd $(HLP_GENERATED);$(MAKE) all)
67
68# --------------------------------------------------------------------------------
69
70HELP_INDEX_XML = $(XML_LOCATION)/$(HELP_INDEX_NAME).xml
71
72#OLD_HELP= oldhelp/importift.hlp
73OLD_HELP_ALL= \
74                $(HLP_SOURCE)/arb.hlp \
75                $(wildcard \
76                                $(HLP_GENERATED)/*.hlp \
77                                $(HLP_SOURCE)/*.hlp \
78                                $(HLP_SOURCE)/prompt/*.hlp \
79                )
80
81ifeq ($(TEST_ONE),1)
82#OLD_HELP=$(HLP_SOURCE)/parser.hlp $(HLP_SOURCE)/commands.hlp $(HLP_SOURCE)/FAQS.hlp $(HLP_SOURCE)/acisrt.hlp
83#OLD_HELP=$(HLP_SOURCE)/arb.hlp $(HLP_SOURCE)/version.hlp $(HLP_SOURCE)/translate_dna_2_pro.hlp $(HLP_SOURCE)/species_join.hlp
84OLD_HELP=$(HLP_SOURCE)/version.hlp
85#OLD_HELP=$(HLP_SOURCE)/arb.hlp
86else
87OLD_HELP=$(OLD_HELP_ALL:$(HLP_SOURCE)/FORM.hlp=)# remove FORM.hlp (this is just a default file)
88endif
89
90XML_TMP=$(OLD_HELP:%.hlp=%.xml)
91XML_TMP2=$(XML_TMP:$(HLP_SOURCE)/%=$(XML_LOCATION)/%)
92XML=$(XML_TMP2:$(HLP_GENERATED)/%=$(XML_LOCATION)/%) 
93
94XML_DEPEND=xml.stamp# xml files are rebuild if this stamp is recreated
95DTD=arb_help.dtd
96
97$(XML) : $(XML_DEPEND) Makefile $(QUIETLY)
98
99$(HELP_INDEX_XML): $(OLD_HELP_ALL) $(XML) ./generate_index.pl Makefile
100        ./generate_index.pl $(HELP_INDEX_NAME).xml $(XML_LOCATION) > $(HELP_INDEX_XML)
101
102xml : $(XML) $(HELP_INDEX_XML)
103
104dump:
105                echo $(XML)
106
107$(XML_LOCATION)/%.xml : $(HLP_SOURCE)/%.hlp $(DTD)
108                @test \! -f $(HLP_GENERATED)/$(<F) || \
109                                ( echo $<:1: exists twice -- only one existence allowed; \
110                                  echo $(HLP_GENERATED)/$(<F):1: other occurrence \
111                                  && false )
112                @$(HELP2XML) $< $@
113                @$(VALIDATE) $@
114
115$(XML_LOCATION)/%.xml : $(HLP_GENERATED)/%.hlp $(DTD)
116                @test \! -f $(HLP_SOURCE)/$(<F) || \
117                                ( echo $<:1: exists twice -- only one existence allowed; \
118                                  echo $(HLP_SOURCE)/$(<F):1: other occurrence \
119                                  && false )
120                @$(HELP2XML) $< $@
121                @$(VALIDATE) $@
122
123$(HTML_LOCATION)/help_index.html : $(HELP_INDEX_XML)
124
125HTML_TMP=$(XML:%.xml=%.html) 
126HTML=$(HTML_TMP:$(XML_LOCATION)/%=$(HTML_LOCATION)/%) 
127
128HELP_TMP=$(XML:%.xml=%.hlp)
129HELP=$(HELP_TMP:$(XML_LOCATION)/%=$(HLP_DEST)/%)
130
131# --------------------------------------------------------------------------------
132
133PS_SRC=$(wildcard $(HLP_SOURCE)/*.ps.gz)
134PDF_SRC=$(wildcard $(HLP_SOURCE)/*.pdf.gz)
135
136PS_DEST=$(PS_SRC:$(HLP_SOURCE)/%=$(HLP_DEST)/%)
137PDF_DEST=$(PDF_SRC:$(HLP_SOURCE)/%=$(HLP_DEST)/%)
138
139ps: $(PS_DEST)
140
141pdf: $(PDF_DEST)
142
143nonhlp_formats: ps pdf
144
145$(HLP_DEST)/%.ps.gz : $(HLP_SOURCE)/%.ps.gz
146        cp -p $< $@
147
148$(HLP_DEST)/%.pdf.gz : $(HLP_SOURCE)/%.pdf.gz
149        cp -p $< $@
150
151# --------------------------------------------------------------------------------
152
153delzerohtml:
154                -find $(HTML_LOCATION) -name "*.html" -size -1 -exec rm {} \;
155
156date :
157        $(MAKE) date.xsl.tmp
158        ../SOURCE_TOOLS/mv_if_diff date.xsl.tmp date.xsl
159
160date.xsl.tmp :
161                cat date.xsl.header >$@
162                bash -c "(export LC_ALL=C;date '+%d. %b %Y')" >>$@
163                cat date.xsl.footer >>$@
164
165date.xsl : date
166
167# --------------------------------------------------------------------------------
168
169STYLE_HTML=to_html.xsl
170STYLE_HELP=to_help.xsl
171
172# --------------------------------------------------------------------------------
173
174XSLTPROC_ARGS=--nonet --nomkdir --stringparam xml_location "$(XML_LOCATION)"
175
176$(HELP) : $(STYLE_HELP) $(DTD) Makefile
177
178$(HLP_DEST)/%.hlp : $(XML_LOCATION)/%.xml
179                @-rm -f $@
180                @$(XSLTPROC) --output $@ $(XSLTPROC_ARGS) --stringparam myname "$(subst $(XML_LOCATION)/,,$<)" $(STYLE_HELP) $< || rm $@
181                @test -f $@ || (echo "$<:0: did not compile to $@" && false)
182
183# --------------------------------------------------------------------------------
184
185$(HTML) : $(STYLE_HTML) $(DTD) Makefile
186
187# Google logo
188google_logo: $(HTML_LOCATION)/Logo_25wht.gif
189$(HTML_LOCATION)/Logo_25wht.gif : Logo_25wht.gif
190                cp -p $< $@
191                @test -f $@
192
193$(HTML_LOCATION)/%.html : $(XML_LOCATION)/%.xml
194                @-rm -f $@
195                @$(XSLTPROC) --output $@ $(XSLTPROC_ARGS) --stringparam myname "$(subst $(XML_LOCATION)/,,$<)" $(STYLE_HTML) $< || (rm $@ && test -f $@)
196                @test -f $@ || (echo "$<:0: did not compile to $@" && false)
197
198# --------------------------------------------------------------------------------
199
200html : $(HTML) google_logo $(HTML_LOCATION)/$(HELP_INDEX_NAME).html
201
202help : $(HELP)
203
204# --------------------------------------------------------------------------------
205
206clean:
207        rm -f $(TOOL_OBJECTS) $(BINARIES)
208        rm -f `find $(HLP_DEST) -name "*.hlp"`
209        rm -f `find $(HTML_LOCATION) -name "*.html"`
210        rm -f $(XML_DEPEND) dummy _index.html
211        rm -f `find $(XML_LOCATION) -name "*.xml"`
212        $(MAKE) -C $(HLP_GENERATED) clean
213
214# --------------------------------------------------------------------------------
215
216tools: $(BINARIES)
217
218LIBS=../XML/XML.a
219
220$(HELP2XML): $(LIBS)
221
222$(XML_DEPEND) : arb_help2xml.cxx
223        touch $(XML_DEPEND)
224
225%.o: %.cxx
226        $(CPP) $(cflags) -c $< $(CPPINCLUDES) $(POST_COMPILE)
227
228$(HELP2XML): arb_help2xml.o $(LIBS)
229        $(LINK_EXECUTABLE) $@ $< $(LIBS) $(LIBPATH) -lARBDB
230
231DEPENDS = $(TOOL_OBJECTS:.o=.depend)
232depends: $(DEPENDS)
233        @cat $(DEPENDS) | grep -v '^#' >>Makefile
234        @rm $(DEPENDS)
235$(DEPENDS): depend.init
236depend.init:
237        $(MAKEDEPEND) $(MAKEDEPENDFLAGS) 2>/dev/null # remove dependencies
238.c.depend:
239        $(MAKEDEPEND) -f- $(MAKEDEPENDFLAGS) $< 2>/dev/null >$@
240.cxx.depend:
241        $(MAKEDEPEND) -f- $(MAKEDEPENDFLAGS) $< 2>/dev/null >$@
242
243# DO NOT DELETE
244
245# Do not add dependencies manually - use 'make depend' in $ARBHOME
246# For formatting issues see SOURCE_TOOLS/fix_depends.pl
247
248arb_help2xml.o: $(ARBHOME)/INCLUDE/ad_k_prot.h
249arb_help2xml.o: $(ARBHOME)/INCLUDE/arb_assert.h
250arb_help2xml.o: $(ARBHOME)/INCLUDE/arbdb_base.h
251arb_help2xml.o: $(ARBHOME)/INCLUDE/attributes.h
252arb_help2xml.o: $(ARBHOME)/INCLUDE/xml.hxx
Note: See TracBrowser for help on using the repository browser.