eba98e6c667cd74f2c802f6d9f41b5c81d86f5ff
[sfrench/samba-autobuild/.git] / docs / docbook / Makefile.in
1 #################################################################
2 # Makefile.in for Samba Documentation
3 # Authors:      James Moore <jmoore@php.net>
4 #                       Gerald Carter <jerry@samba.org>
5 #                       Jelmer Vernooij <jelmer@samba.org>
6 #
7 # Please see http://www.samba.org/samba/cvs.html
8 # for information on getting the latest  
9 # source and documentation source files.  
10 #
11
12 # Autoconf Variables
13
14 MANPAGES_NAMES=findsmb.1 smbclient.1 \
15         smbspool.8 lmhosts.5 \
16         smbcontrol.1 smbstatus.1 \
17         smbd.8 net.8 smbtar.1 nmbd.8 \
18         smbmnt.8 smbumount.8 nmblookup.1 \
19         smbmount.8 swat.8 rpcclient.1 \
20         smbpasswd.5 testparm.1 samba.7 \
21         smbpasswd.8 testprns.1 \
22         smb.conf.5 wbinfo.1 pdbedit.8 \
23         smbcacls.1 smbsh.1 winbindd.8 \
24         tdbbackup.8 vfstest.1 \
25         profiles.1 smbtree.1 ntlm_auth.1 \
26         editreg.1 smbcquotas.1
27
28 ## This part contains only rules. You shouldn't need to change it 
29 ## if you are adding docs
30
31 XSLTPROC = @XSLTPROC@
32 PDFLATEX = @PDFLATEX@
33 HTMLDOC = @HTMLDOC@
34 SRCDIR = @srcdir@
35 MANDIR=../manpages
36 HTMLDIR=../htmldocs
37 MANPROJDOC = manpages
38 PROJDOC = projdoc
39 DEVDOC = devdoc
40 SMBDOTCONFDOC = smbdotconf
41 PSDIR = ..
42 PDFDIR = ..
43 TXTDIR = ../textdocs
44 FAQPROJDOC = faq
45 FAQDIR = ../faq
46
47 MANPAGES=$(patsubst %,$(MANDIR)/%,$(MANPAGES_NAMES))
48 MANPAGES_HTML=$(patsubst %,$(HTMLDIR)/%.html,$(MANPAGES_NAMES))
49
50 all: 
51         @echo "Supported make targets:"
52         @echo "manpages - Build manpages"
53         @echo "pdf - Build PDF version of HOWTO Collection"
54         @echo -n "html-single - Build single file HTML version of HOWTO Collection"
55         @echo " and developers guide"
56         @echo "html - Build HTML version of HOWTO Collection"
57         @echo "htmlman - Build html version of manpages"
58         @echo "htmlfaq - Build html version of the FAQ"
59         @echo "everything - Build all of the above"
60
61 everything: manpages pdf html-single html htmlman htmlfaq
62
63 # Global rules
64
65 manpages: $(MANDIR) $(MANPAGES)
66 pdf: $(PDFDIR) $(PDFDIR)/Samba-HOWTO-Collection.pdf $(PDFDIR)/Samba-Developers-Guide.pdf
67 htmlman: $(HTMLDIR) $(MANPAGES_HTML) CSS
68 htmlfaq: $(HTMLDIR) CSS
69         @$(XSLTPROC) --output $(FAQDIR)/samba-faq.html xslt/html.xsl $(FAQPROJDOC)/sambafaq.xml
70 html-single: $(HTMLDIR) CSS $(HTMLDIR)/Samba-HOWTO-Collection.html  $(HTMLDIR)/Samba-Developers-Guide.html
71 html: $(HTMLDIR) CSS
72         @$(XSLTPROC) xslt/html-chunk.xsl $(PROJDOC)/samba-doc.xml
73
74 # Text files
75
76 # Adobe PDF files
77 $(PDFDIR)/Samba-HOWTO-Collection.pdf: $(PROJDOC)/samba-doc.xml
78         @echo "Converting samba-doc to LaTeX..."
79         @$(XSLTPROC) --output samba-doc.tex xslt/latex.xsl $<
80         @echo "Building LaTeX sources via $(PDFLATEX)..."
81         @$(PDFLATEX) samba-doc.tex | grep 'Rerun to get cross-references right' && \
82         $(PDFLATEX) samba-doc.tex | grep 'Rerun to get cross-references right' && \
83         $(PDFLATEX) samba-doc.tex || echo
84         @echo "done"
85         @mv samba-doc.pdf $@
86
87 $(PDFDIR)/Samba-Developers-Guide.pdf: $(DEVDOC)/dev-doc.xml
88         @echo "Converting dev-doc to LaTeX..."
89         @$(XSLTPROC) --output dev-doc.tex xslt/latex.xsl $<
90         @echo "Building LaTeX sources via $(PDFLATEX)..."
91         @$(PDFLATEX) dev-doc.tex | grep 'Rerun to get cross-references right' && \
92         $(PDFLATEX) dev-doc.tex | grep 'Rerun to get cross-references right' && \
93         $(PDFLATEX) dev-doc.tex || echo 
94         @echo "done"
95         @mv dev-doc.pdf $@
96
97 # Single large HTML files
98
99 $(HTMLDIR):
100         @mkdir $(HTMLDIR)
101
102 CSS: $(HTMLDIR) xslt/html/samba.css
103         @cp xslt/html/samba.css $(HTMLDIR)/
104
105 $(HTMLDIR)/Samba-HOWTO-Collection.html: $(PROJDOC)/samba-doc.xml
106         @$(XSLTPROC) --output $@ xslt/html.xsl $<
107
108 $(HTMLDIR)/Samba-Developers-Guide.html: $(DEVDOC)/dev-doc.xml
109         @$(XSLTPROC) --output $@ xslt/html.xsl $<
110
111
112 $(HTMLDIR)/%.html: $(MANPROJDOC)/%.xml
113         @$(XSLTPROC) --output $@ xslt/html.xsl $<
114
115 # Manpages
116 $(SMBDOTCONFDOC)/parameters.all.xml: $(SMBDOTCONFDOC)/generate-file-list.sh
117         @cd $(SMBDOTCONFDOC) && \
118         /bin/sh generate-file-list.sh >parameters.all.xml && \
119         cd ..
120
121 $(SMBDOTCONFDOC)/parameters.global.xml: $(SMBDOTCONFDOC)/parameters.all.xml $(SMBDOTCONFDOC)/generate-context.xsl
122         @cd $(SMBDOTCONFDOC) && \
123         $(XSLTPROC) --xinclude \
124         --param smb.context "'G'" \
125         --output parameters.global.xml \
126         generate-context.xsl parameters.all.xml && \
127         cd ..
128
129 $(SMBDOTCONFDOC)/parameters.service.xml: $(SMBDOTCONFDOC)/parameters.all.xml $(SMBDOTCONFDOC)/generate-context.xsl
130         @cd $(SMBDOTCONFDOC) && \
131         $(XSLTPROC) --xinclude \
132         --param smb.context "'S'" \
133         --output parameters.service.xml \
134         generate-context.xsl parameters.all.xml && \
135         cd ..
136
137 $(MANPROJDOC)/smb.conf.5.xml: $(SMBDOTCONFDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/parameters.all.xml \
138                         $(SMBDOTCONFDOC)/parameters.global.xml $(SMBDOTCONFDOC)/parameters.service.xml \
139                         $(SMBDOTCONFDOC)/expand-smb.conf.xsl
140         @$(XSLTPROC) --xinclude --output $(MANPROJDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/expand-smb.conf.xsl $(SMBDOTCONFDOC)/smb.conf.5.xml
141
142 $(MANDIR): 
143         mkdir $(MANDIR)
144
145 $(MANDIR)/%: $(MANPROJDOC)/%.xml
146         @$(XSLTPROC) xslt/man.xsl $<
147
148 clean: 
149         @rm -f $(MANPAGES) $(MANPAGES_HTML) $(HTMLDIR)/*.html $(HTMLDIR)/*.css $(TXTDIR)/*.txt $(PSDIR)/*.ps $(PDFDIR)/*.pdf 
150         @rm -f $(MANPROJDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/parameters.*.xml
151         @rm -f samba-doc.* dev-doc.*
152