################################################################# # Makefile.in for Samba Documentation # Authors: James Moore # Gerald Carter # Jelmer Vernooij # # Please see http://www.samba.org/samba/cvs.html # for information on getting the latest # source and documentation source files. # # Autoconf Variables MANPAGES_NAMES=findsmb.1 smbclient.1 \ smbspool.8 lmhosts.5 \ smbcontrol.1 smbstatus.1 \ smbd.8 net.8 smbtar.1 nmbd.8 \ smbmnt.8 smbumount.8 nmblookup.1 \ smbmount.8 swat.8 rpcclient.1 \ smbpasswd.5 testparm.1 samba.7 \ smbpasswd.8 testprns.1 \ smb.conf.5 wbinfo.1 pdbedit.8 \ smbcacls.1 smbsh.1 winbindd.8 \ tdbbackup.8 vfstest.1 \ profiles.1 smbtree.1 ntlm_auth.1 \ editreg.1 smbcquotas.1 ## This part contains only rules. You shouldn't need to change it ## if you are adding docs XSLTPROC = @XSLTPROC@ PDFLATEX = @PDFLATEX@ HTMLDOC = @HTMLDOC@ SRCDIR = @srcdir@ MANDIR=../manpages HTMLDIR=../htmldocs MANPROJDOC = manpages PROJDOC = projdoc DEVDOC = devdoc XMLTO = @XMLTO@ SMBDOTCONFDOC = smbdotconf PSDIR = .. PDFDIR = .. TXTDIR = ../textdocs FAQPROJDOC = faq FAQDIR = ../faq MANPAGES=$(patsubst %,$(MANDIR)/%,$(MANPAGES_NAMES)) MANPAGES_HTML=$(patsubst %,$(HTMLDIR)/%.html,$(MANPAGES_NAMES)) all: @echo "Supported make targets:" @echo "manpages - Build manpages" @echo "pdf - Build PDF version of HOWTO Collection and Developers Guide" @echo "txt - Build plain text version of HOWTO Collection and Developers Guide" @echo -n "html-single - Build single file HTML version of HOWTO Collection" @echo " and developers guide" @echo "html - Build HTML version of HOWTO Collection and Developers Guide" @echo "htmlman - Build html version of manpages" @echo "htmlfaq - Build html version of the FAQ" @echo "everything - Build all of the above" everything: manpages pdf html-single html htmlman htmlfaq txt # Global rules manpages: $(MANDIR) $(MANPAGES) pdf: $(PDFDIR) $(PDFDIR)/Samba-HOWTO-Collection.pdf $(PDFDIR)/Samba-Developers-Guide.pdf hpdf: $(PDFDIR) $(PDFDIR)/Samba-HOWTO-Collection.pdf txt: $(TXTDIR) $(TXTDIR)/Samba-HOWTO-Collection.txt $(TXTDIR)/Samba-Developers-Guide.txt htmlman: $(HTMLDIR) $(MANPAGES_HTML) CSS htmlfaq: $(HTMLDIR) CSS @$(XSLTPROC) --stringparam base.dir "$(FAQDIR)/" --stringparam root.filename samba-faq xslt/html-chunk.xsl $(FAQPROJDOC)/sambafaq.xml html-single: $(HTMLDIR) CSS $(HTMLDIR)/Samba-HOWTO-Collection.html $(HTMLDIR)/Samba-Developers-Guide.html html: $(HTMLDIR) CSS @$(XSLTPROC) xslt/html-chunk.xsl $(PROJDOC)/samba-doc.xml # Text files $(TXTDIR): mkdir $(TXTDIR) $(TXTDIR)/Samba-HOWTO-Collection.txt: $(PROJDOC)/samba-doc.xml @echo "Converting samba-doc to plain text..." @$(XMLTO) txt -o $(TXTDIR) $< @mv $(TXTDIR)/samba-doc.txt $(TXTDIR)/Samba-HOWTO-Collection.txt $(TXTDIR)/Samba-Developers-Guide.txt: $(DEVDOC)/dev-doc.xml @echo "Converting dev-doc to plain text..." @$(XMLTO) txt -o $(TXTDIR) $< @mv $(TXTDIR)/dev-doc.txt $(TXTDIR)/Samba-Developers-Guide.txt # Adobe PDF files $(PDFDIR)/Samba-HOWTO-Collection.pdf: $(PROJDOC)/samba-doc.xml @echo "Converting samba-doc to LaTeX..." @$(XSLTPROC) --output samba-doc.tex xslt/latex.xsl $< @echo "Building LaTeX sources via $(PDFLATEX)..." @$(PDFLATEX) samba-doc.tex | grep 'Rerun to get cross-references right' && \ $(PDFLATEX) samba-doc.tex | grep 'Rerun to get cross-references right' && \ $(PDFLATEX) samba-doc.tex || echo @echo "done" @mv samba-doc.pdf $@ $(PDFDIR)/Samba-Developers-Guide.pdf: $(DEVDOC)/dev-doc.xml @echo "Converting dev-doc to LaTeX..." @$(XSLTPROC) --output dev-doc.tex xslt/latex.xsl $< @echo "Building LaTeX sources via $(PDFLATEX)..." @$(PDFLATEX) dev-doc.tex | grep 'Rerun to get cross-references right' && \ $(PDFLATEX) dev-doc.tex | grep 'Rerun to get cross-references right' && \ $(PDFLATEX) dev-doc.tex || echo @echo "done" @mv dev-doc.pdf $@ # Single large HTML files $(HTMLDIR): @mkdir $(HTMLDIR) CSS: $(HTMLDIR) xslt/html/samba.css @cp xslt/html/samba.css $(HTMLDIR)/ $(HTMLDIR)/Samba-HOWTO-Collection.html: $(PROJDOC)/samba-doc.xml @$(XSLTPROC) --output $@ xslt/html.xsl $< $(HTMLDIR)/Samba-Developers-Guide.html: $(DEVDOC)/dev-doc.xml @$(XSLTPROC) --output $@ xslt/html.xsl $< $(HTMLDIR)/%.html: $(MANPROJDOC)/%.xml @$(XSLTPROC) --output $@ xslt/html.xsl $< # Manpages $(SMBDOTCONFDOC)/parameters.all.xml: $(SMBDOTCONFDOC)/generate-file-list.sh @cd $(SMBDOTCONFDOC) && \ /bin/sh generate-file-list.sh >parameters.all.xml && \ cd .. $(SMBDOTCONFDOC)/parameters.global.xml: $(SMBDOTCONFDOC)/parameters.all.xml $(SMBDOTCONFDOC)/generate-context.xsl @cd $(SMBDOTCONFDOC) && \ $(XSLTPROC) --xinclude \ --param smb.context "'G'" \ --output parameters.global.xml \ generate-context.xsl parameters.all.xml && \ cd .. $(SMBDOTCONFDOC)/parameters.service.xml: $(SMBDOTCONFDOC)/parameters.all.xml $(SMBDOTCONFDOC)/generate-context.xsl @cd $(SMBDOTCONFDOC) && \ $(XSLTPROC) --xinclude \ --param smb.context "'S'" \ --output parameters.service.xml \ generate-context.xsl parameters.all.xml && \ cd .. $(MANPROJDOC)/smb.conf.5.xml: $(SMBDOTCONFDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/parameters.all.xml \ $(SMBDOTCONFDOC)/parameters.global.xml $(SMBDOTCONFDOC)/parameters.service.xml \ $(SMBDOTCONFDOC)/expand-smb.conf.xsl @$(XSLTPROC) --xinclude --output $(MANPROJDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/expand-smb.conf.xsl $(SMBDOTCONFDOC)/smb.conf.5.xml $(MANDIR): mkdir $(MANDIR) $(MANDIR)/%: $(MANPROJDOC)/%.xml @$(XSLTPROC) xslt/man.xsl $< clean: @rm -f $(MANPAGES) $(MANPAGES_HTML) $(HTMLDIR)/*.html $(HTMLDIR)/*.css $(TXTDIR)/*.txt $(PSDIR)/*.ps $(PDFDIR)/*.pdf @rm -f $(MANPROJDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/parameters.*.xml @rm -f samba-doc.* dev-doc.*