3 EXTRA_DIST=kdb.1.xml elektra.7.xml elektra.5.xml
4 EXTRA_DIST+=author.xml bestpract.xml rgexample.xml rgcmd.xml storage.xml overview.xml apiexample.xml api.xml compared.xml garbage.xml html-params.xsl html-titlepage-layout.tpl society.xml storage.xml UPLOAD
5 EXTRA_DIST+=docbook.css doxygen.css
6 #EXTRA_DIST+=elektra.odp
7 EXTRA_DIST+=$(all_mans)
8 EXTRA_DIST+= $(HTML_TITLE_LAYOUT_XSL)
10 SUBDIRS=images standards
12 # Dependencies for Doxygen documentation
14 DOXYSOURCES=$(srcdir)/../src/libelektra/*.c $(srcdir)/../src/include/*.h $(srcdir)/../src/Doxyfile
17 DOXYSOURCES+=$(srcdir)/../src/libelektratools/kdbtools.c
20 DOXYSOURCES+=$(srcdir)/../src/kdb/kdb-tool.c
23 DOXYSOURCES+=$(srcdir)/../src/backends/doc/backend.c
27 SUFFIXES: .xml .html .pdf .ps .rtf .xsl .fo .tpl
29 ## Build man documentation
32 # man pages are installed in any case, but not distributed if they
38 all_mans = $(man1_MANS) $(man5_MANS) $(man7_MANS)
40 kdb.1: kdb.1.xml author.xml bestpract.xml rgexample.xml rgcmd.xml
41 $(xsltproc) $(dbroot)/manpages/docbook.xsl $<
43 elektra.7: elektra.7.xml author.xml overview.xml bestpract.xml rgexample.xml
44 $(xsltproc) $(dbroot)/manpages/docbook.xsl $<
46 elektra.5: elektra.5.xml author.xml storage.xml
47 $(xsltproc) $(dbroot)/manpages/docbook.xsl $<
51 # HTML and doc targets for the previous web site. Obsolete, unused for now
54 # howto.html dependencies and target (unused)
56 $(xsltproc) -path . -o $@ ${HTML_TITLE_LAYOUT_XSL} $<
58 howto.html: howto.xml elektra.7.xml author.xml garbage.xml overview.xml bestpract.xml rgexample.xml rgcmd.xml storage.xml api.xml society.xml compared.xml api.xml apiexample.xml xorgpatch.xml initpatch.xml csource.xml ${HTML_TITLE_LAYOUT_XSL}
60 # Layout and configurations to generate HTML for the web site
61 HTML_TITLE_LAYOUT_XSL=html-titlepage-layout.xsl
62 #HTML_TITLE_LAYOUT=html-titlepage-layout.tpl
63 HTML_TITLE_LAYOUT=html-params.xsl
65 $(HTML_TITLE_LAYOUT_XSL): $(HTML_TITLE_LAYOUT)
66 -$(xsltproc) -o ${HTML_TITLE_LAYOUT_XSL} $(dbroot)/template/titlepage.xsl $(srcdir)/${HTML_TITLE_LAYOUT}
69 libelektra.org: howto.xml elektra.7.xml author.xml garbage.xml overview.xml bestpract.xml rgexample.xml rgcmd.xml storage.xml api.xml society.xml compared.xml api.xml apiexample.xml xorgpatch.xml initpatch.xml csource.xml elektra-api.tar.gz $(man_html) ${HTML_TITLE_LAYOUT_XSL}
70 $(xsltproc) -path . -stringparam base.dir $@ ${HTML_TITLE_LAYOUT_XSL} $<
71 -cp $(srcdir)/docbook.css $@/
73 -cp -r images/*png images/*gif $@/images
74 -find elektra-api/html | cpio -pdvm $@
75 -cp elektra-api.tar.gz $@
79 # in case there are no man pages in source dir and the xsl tools
80 # are not installed, make install will fail without the files.
81 # this situation should be very rare, it could only happen
82 # from cvs (and without xsl tools) or after a make maintainer-clean
83 # or after a modification of the xml sources.
84 kdb.1: kdb.1.xml author.xml bestpract.xml rgexample.xml rgcmd.xml
87 elektra.7: elektra.7.xml author.xml overview.xml bestpract.xml rgexample.xml
90 elektra.5: elektra.5.xml author.xml storage.xml
96 # html generated from man pages.
98 man_html = kdb.1.html elektra.7.html elektra.5.html kdb.3.html key.3.html keyset.3.html
101 $(man2html) -r $< | sed -e 's|Content-type: text/html||; s|\"\.\.\/man.\/|\"|g; s|\"\.\.\/|\"|g;' > kdb.1.html
103 elektra.5.html: elektra.5
104 $(man2html) -r $< | sed -e 's|Content-type: text/html||; s|\"\.\.\/man.\/|\"|g; s|\"\.\.\/|\"|g;' > elektra.5.html
106 elektra.7.html: elektra.7
107 $(man2html) -r $< | sed -e 's|Content-type: text/html||; s|\"\.\.\/man.\/|\"|g; s|\"\.\.\/|\"|g;' > elektra.7.html
109 kdb.3.html: elektra-api
111 if test -f elektra-api/man/man3/kdb.3; then dir=elektra-api/man/man3 ;\
113 if test -f $(srcdir)/elektra-api/man/man3/kdb.3; then dir=$(srcdir)/elektra-api/man/man3 ; fi; \
115 $(man2html) -r < $$dir/kdb.3 | sed -e 's|Content-type: text/html||; s|\"\.\.\/man.\/|\"|g; s|\"\.\.\/|\"|g;' > kdb.3.html
117 key.3.html: elektra-api
119 if test -f elektra-api/man/man3/key.3; then dir=elektra-api/man/man3 ;\
121 if test -f $(srcdir)/elektra-api/man/man3/key.3; then dir=$(srcdir)/elektra-api/man/man3 ; fi; \
123 $(man2html) -r < $$dir/key.3 | sed -e 's|Content-type: text/html||; s|\"\.\.\/man.\/|\"|g; s|\"\.\.\/|\"|g;' > key.3.html
125 keyset.3.html: elektra-api
127 if test -f elektra-api/man/man3/keyset.3; then dir=elektra-api/man/man3 ;\
129 if test -f $(srcdir)/elektra-api/man/man3/keyset.3; then dir=$(srcdir)/elektra-api/man/man3 ; fi; \
131 $(man2html) -r < $$dir/keyset.3 | sed -e 's|Content-type: text/html||; s|\"\.\.\/man.\/|\"|g; s|\"\.\.\/|\"|g;' > keyset.3.html
138 # documentation: docbookman doxygen
139 # docbookman: kdb.1 elektra.7 elektra.5
141 develdoc_DATA = elektra-api
142 apihtmldir = $(develdocdir)/api-html
146 # Generate doxygen documentation
147 # This generate man for API too (see src/Doxyfile)
149 elektra-api.tar.gz: elektra-api
150 tar -zcf elektra-api.tar.gz elektra-api/html
152 elektra-api: $(DOXYSOURCES)
153 @echo "Making Doxygen..."
154 cd ../src/; srcdir=$(top_srcdir)/src $(doxygen) $(top_srcdir)/src/Doxyfile
158 rm -rf libelektra.org
162 # fake target that is required when doxygen isn't found and the directory
163 # has to be created (make install, make dist)
172 CLEANFILES = csource.xml \
174 $(HTML_TITLE_LAYOUT_XSL) \
175 xorgpatch.xml initpatch.xml \
178 MAINTAINERCLEANFILES = howto.html \
179 kdb.1 elektra.5 elektra.7
181 # putting in EXTRA_DIST doesn't work, since in that case it may be
182 # copied from srcdir and also from the current dir, leading to an error
184 if test -d elektra-api/html; \
185 then cp -pR elektra-api $(distdir); \
187 if test -d $(srcdir)/elektra-api; \
188 then cp -pR $(srcdir)/elektra-api $(distdir); \
192 install-develdocDATA: $(api_DATA)
194 $(mkinstalldirs) $(DESTDIR)$(apihtmldir)
195 @if test -d elektra-api/html/; then api_d=elektra-api/html/; \
196 else api_d=$(srcdir)/elektra-api/html/; \
198 list=`find $$api_d`; for p in $$list; do \
199 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
200 f="`echo $$p | sed -e 's|^.*/||'`"; \
201 echo " $(develdocDATA_INSTALL) $$d$$p $(DESTDIR)$(apihtmldir)/$$f"; \
202 $(develdocDATA_INSTALL) $$d$$p $(DESTDIR)$(apihtmldir)/$$f; \
205 uninstall-develdocDATA:
206 -if test -d elektra-api/html/; then api_d=elektra-api/html/; \
207 else api_d=$(srcdir)/elektra-api/html/; \
209 list=`find "$$api_d"`; for p in $$list; do \
210 f="`echo $$p | sed -e 's|^.*/||'`"; \
211 echo "rm -f $(DESTDIR)$(apihtmldir)/$$f"; \
212 rm -f $(DESTDIR)$(apihtmldir)/$$f; \
214 -rmdir $(DESTDIR)$(apihtmldir)
216 # $(mkinstalldirs) $(DESTDIR)$(apimandir)
217 # @list=`find elektra-api/man/man3`; for p in $$list; do \
218 # if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
219 # f="`echo $$p | sed -e 's|^.*/||'`"; \
220 # echo " $(develdocDATA_INSTALL) $$d$$p $(DESTDIR)$(apimandir)/$$f"; \
221 # $(develdocDATA_INSTALL) $$d$$p $(DESTDIR)$(apimandir)/$$f; \
224 install-man3: $(man3_MANS)
226 test -z "$(man3dir)" || $(mkdir_p) "$(DESTDIR)$(man3dir)"
227 @if test -d elektra-api/man/; then man_d=elektra-api/man/; \
228 else man_d=$(srcdir)/elektra-api/man/; \
230 list=`find $$man_d -name "k[db,ey,s]*.3"` ; for i in $$list; do \
231 if test -f "$$i"; then d=; else d="$(srcdir)/"; fi; \
233 inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
234 inst=`echo $$inst | sed -e 's/^.*\///'`; \
235 inst=`echo $$inst | sed '$(transform)'`.$$ext; \
236 echo " $(INSTALL_DATA) $$d$$i $(DESTDIR)$(man3dir)/$$inst"; \
237 $(INSTALL_DATA) $$d$$i $(DESTDIR)$(man3dir)/$$inst; \
243 -if test -d elektra-api/man/; then man_d=elektra-api/man/; \
244 else man_d=$(srcdir)/elektra-api/man/; \
246 list=`find $$man_d -name "k[db,ey,s]*.3"` ; for i in $$list; do \
248 inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
249 inst=`echo $$inst | sed -e 's/^.*\///'`; \
250 inst=`echo $$inst | sed '$(transform)'`.$$ext; \
251 echo " rm -f '$(DESTDIR)$(man3dir)/$$inst'"; \
252 rm -f "$(DESTDIR)$(man3dir)/$$inst"; \