################################################################# # 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. # # 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 log2pcap.1 \ mount.cifs.8 ## This part contains only rules. You shouldn't need to change it ## if you are adding docs TEXSTYLESHEET = @TEXSTYLESHEET@ XSLTPROC = @XSLTPROC@ @PAPERSIZE@ --stringparam samba-book 1 --stringparam duplicate_ulinks "@DUPLICATE_ULINKS@" @FONTSIZE@ @CROP@ DVIPS = @DVIPS@ PNGTOPNM = @PNGTOPNM@ PNMTOPS = @PNMTOPS@ XMLTO = @XMLTO@ SRCDIR = @srcdir@ MANDIR=../manpages MANPROJDOC = manpages PROJDOC = projdoc MAKEINDEX = @MAKEINDEX@ IMAGEPROJDIR = $(PROJDOC)/imagefiles DEVDOC = devdoc SMBDOTCONFDOC = smbdotconf PSDIR = .. PDFDIR = .. DVIDIR = .. TXTDIR = ../textdocs FAQPROJDOC = faq FAQDIR = ../faq HTMLDIR=../htmldocs PDFLATEX = TEXINPUTS=xslt/latex:.: @PDFLATEX@ --interaction nonstopmode LATEX = TEXINPUTS=xslt/latex:.: @LATEX@ --interaction nonstopmode MANPAGES=$(patsubst %,$(MANDIR)/%,$(MANPAGES_NAMES)) MANPAGES_HTML=$(patsubst %,$(HTMLDIR)/%.html,$(MANPAGES_NAMES)) PROJDOC_IMAGES_PNG = $(wildcard $(IMAGEPROJDIR)/*.png) PROJDOC_IMAGES_EPS=$(patsubst %.png,%.eps,$(wildcard $(IMAGEPROJDIR)/*.png)) PROJDOC_DEPS = $(PROJDOC)/*.xml $(PROJDOC)/attributions.xml $(MANPROJDOC)/*.xml $(SMBDOTCONFDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/parameters.all.xml $(SMBDOTCONFDOC)/parameters.global.xml $(SMBDOTCONFDOC)/parameters.service.xml DEVDOC_DEPS = $(DEVDOC)/*.xml $(DEVDOC)/attributions.xml all: @echo "Supported make targets:" @echo "pdf - Build PDF version of book" @echo "tex - Build Latex version of book" @echo "dvi - Build Device Independant File of book" @echo "ps - Build PostScript version of book" @echo "everything - Build all of the above" @echo "manpages - Build manpages" @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 "undocumented - Output list of undocumented smb.conf options" @echo "everything - Build all of the above" everything: manpages pdf html-single html htmlman htmlfaq txt ps # Global rules pdf: $(PDFDIR) $(PDFDIR)/Samba-HOWTO-Collection.pdf $(PDFDIR)/Samba-Developers-Guide.pdf dvi: $(DVIDIR) $(DVIDIR)/Samba-HOWTO-Collection.dvi $(DVIDIR)/Samba-Developers-Guide.dvi ps: $(PSDIR) $(PSDIR)/Samba-HOWTO-Collection.ps $(PSDIR)/Samba-Developers-Guide.ps 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 Samba-HOWTO-Collection.xml $(XSLTPROC) -o $(HTMLDIR) xslt/html-chunk.xsl Samba-HOWTO-Collection.xml manpages: $(MANDIR) $(MANPAGES) tex: Samba-HOWTO-Collection.tex Samba-Developers-Guide.tex Samba-HOWTO-Collection.xml: $(PROJDOC)/samba-doc.xml $(PROJDOC_DEPS) $(XSLTPROC) --xinclude --output $@ xslt/expand-sambadoc.xsl $< Samba-Developers-Guide.xml: $(DEVDOC)/dev-doc.xml $(DEVDOC_DEPS) $(XSLTPROC) --xinclude --output $@ xslt/expand-sambadoc.xsl $< $(PROJDOC)/attributions.xml: $(PROJDOC)/samba-doc.xml @echo > $@ # Make sure we don't get recursive dependencies, etc! $(XSLTPROC) --output $@ xslt/generate-attributions.xsl $< $(DEVDOC)/attributions.xml: $(DEVDOC)/dev-doc.xml @echo > $@ # Make sure we don't get recursive dependencies, etc! $(XSLTPROC) --output $@ xslt/generate-attributions.xsl $< clean: @rm -f *.xml $(MANPAGES) $(TXTDIR)/*.txt $(PSDIR)/*.ps $(PDFDIR)/*.pdf @rm -f $(SMBDOTCONFDOC)/parameters.*.xml $(DVIDIR)/*.dvi @rm -f samba-doc.* dev-doc.* $(PROJDOC)/attributions.xml $(DEVDOC)/attributions.xml @rm -f $(IMAGEPROJDIR)/*.eps $(MANPROJDOC)/smb.conf.5.xml # Text files $(TXTDIR): mkdir $(TXTDIR) $(TXTDIR)/%.txt: %.xml $(XMLTO) txt -o $(TXTDIR) $< > $@ # Tex files %.tex: %.xml $(XSLTPROC) --output $@ xslt/latex.xsl $< # Adobe PDF files $(PDFDIR)/%.pdf: %.tex $(PDFLATEX) $< $(PDFLATEX) $< $(PDFLATEX) $< mv $(patsubst %.tex,%.pdf,$<) $@ epsimages: $(PROJDOC_IMAGES_EPS) # DVI files $(DVIDIR)/%.dvi: %.tex epsimages $(LATEX) $< $(LATEX) $< $(LATEX) $< mv $(patsubst %.tex,%.dvi,$<) $@ %.eps: %.png $(PNGTOPNM) $< | $(PNMTOPS) > $@ # PostScript files $(PSDIR)/%.ps: $(DVIDIR)/%.dvi $(DVIPS) -o $@ $< # Single large HTML files $(HTMLDIR): mkdir $(HTMLDIR) CSS: $(HTMLDIR) xslt/html/samba.css cp xslt/html/samba.css $(HTMLDIR)/ $(HTMLDIR)/Samba-HOWTO-Collection.html: Samba-HOWTO-Collection.xml $(PROJDOC_DEPS) $(PROJDOC_IMAGES_PNG) $(XSLTPROC) --output $@ xslt/html.xsl $< $(HTMLDIR)/Samba-Developers-Guide.html: Samba-Developers-Guide.xml $(DEVDOC_DEPS) $(XSLTPROC) --output $@ xslt/html.xsl $< $(HTMLDIR)/%.html: %.xml $(XSLTPROC) --output $@ xslt/html.xsl $< %.xml: $(MANPROJDOC)/%.xml $(XSLTPROC) --output $@ xslt/expand-sambadoc.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 .. smb.conf.5.xml: $(SMBDOTCONFDOC)/smb.conf.5.xml $(SMBDOTCONFDOC)/parameters.all.xml \ $(SMBDOTCONFDOC)/parameters.global.xml $(SMBDOTCONFDOC)/parameters.service.xml $(XSLTPROC) --xinclude --output $@ xslt/expand-sambadoc.xsl $< $(MANDIR): mkdir $(MANDIR) $(MANDIR)/%: %.xml $(XSLTPROC) --output $@ xslt/man.xsl $< undocumented: $(SMBDOTCONFDOC)/parameters.all.xml $(PERL) scripts/find_missing_doc.pl ../..