54ab45e845
Norman Walsh's DocBook Slides DTD. This DTD offers the vocabulary of simplified DocBook for presentations. Initially, the supported output formats are PDF and HTML. XSL stylesheets are used so libxslt is required. PassiveTeX is used for the PDF generation to convert the XSL-FO directly to PDF. This commit moves various TeX definitions out of doc.docbook.mk and into doc.project.mk, since docbook is no longer the only back-end to utilize TeX. An example Makefile would look like : ---- DOCFORMAT= slides DOC= slides SRCS= slides.xml DOC_PREFIX?= ${.CURDIR}/../../.. .include "${DOC_PREFIX}/share/mk/doc.project.mk" --- And an example slides file (slides.xml) looks like : --- <!DOCTYPE slides PUBLIC "-//Norman Walsh//DTD Slides XML V3.3.1//EN" "http://docbook.sourceforge.net/releases/slides/3.3.1/slides.dtd"> <slides> <slidesinfo> <title>What's new in FreeBSD 5.3</title> <titleabbrev>FreeBSD 5.3</titleabbrev> </slidesinfo> <foil><title>Introduction Slide</title> <para>Content</para> </foil> </slides> --- You could then build the HTML and PDF versions of the slides by typing "make FORMATS='pdf html'". Enjoy. Please coordinate with doceng@ before importing any presentations to doc/.
63 lines
1.6 KiB
Makefile
63 lines
1.6 KiB
Makefile
#
|
|
# $FreeBSD$
|
|
#
|
|
# This include file <doc.slides.mk> handles building and installing of
|
|
# DocBook Slides in the FreeBSD Documentation Project.
|
|
#
|
|
# Documentation using DOCFORMAT=slides is expected to be marked up
|
|
# according to the DocBook slides DTD.
|
|
#
|
|
# PDF and HTML output formats are currently supported.
|
|
#
|
|
|
|
# ------------------------------------------------------------------------
|
|
#
|
|
# Document-specific variables
|
|
#
|
|
# DOC This should be set to the name of the SLIDES
|
|
# marked-up file, without the .xml suffix.
|
|
#
|
|
# It also determins the name of the output files
|
|
# for print output : ${DOC}.pdf
|
|
#
|
|
# DOCBOOKSUFFIX The suffix of your document, defaulting to .xml
|
|
#
|
|
|
|
DOCBOOKSUFFIX?= xml
|
|
MASTERDOC?= ${.CURDIR}/${DOC}.${DOCBOOKSUFFIX}
|
|
|
|
KNOWN_FORMATS= html pdf
|
|
|
|
CSS_SHEET?=
|
|
|
|
SLIDES_XSLDIR= /usr/local/share/xsl/slides/xsl/
|
|
SLIDES_XSLHTML= ${SLIDES_XSLDIR}xhtml/default.xsl
|
|
SLIDES_XSLPRINT= ${SLIDES_XSLDIR}fo/plain.xsl
|
|
|
|
# Loop through formats we should build.
|
|
.for _curformat in ${FORMATS}
|
|
_cf=${_curformat}
|
|
|
|
# Create a 'bogus' doc for any format we support or not. This is so
|
|
# that we can fake up a target for it later on, and this target can print
|
|
# the warning message about the unsupported format.
|
|
_docs+= ${DOC}.${_curformat}
|
|
CLEANFILES+= ${DOC}.${_curformat}
|
|
|
|
.if ${_cf} == "pdf"
|
|
CLEANFILES+= ${DOC}.fo ${DOC}.aux ${DOC}.log ${DOC}.out ${DOC}.pdf texput.log
|
|
.endif
|
|
|
|
.endfor
|
|
|
|
|
|
.MAIN: all
|
|
|
|
all: ${_docs}
|
|
|
|
${DOC}.html: ${SRCS}
|
|
${XSLTPROC} ${XSLTPROCOPTS} ${SLIDES_XSLHTML} ${.ALLSRC}
|
|
|
|
${DOC}.pdf: ${SRCS}
|
|
${XSLTPROC} ${XSLTPROCOPTS} ${SLIDES_XSLPRINT} ${.ALLSRC} > ${.TARGET:S/.pdf$/.fo/}
|
|
${PDFTEX_CMD} --interaction nonstopmode "&pdfxmltex" ${.TARGET:S/.pdf$/.fo/}
|