[PATCH xserver 1/3] docbook.am: global maintenance update - entities, images and olinking

Jeremy Huddleston jeremyhu at apple.com
Thu Sep 15 00:32:09 PDT 2011


Loosely reviewed ... the magic looks reasonable to me, but I'm not terribly familiar with the docbook internals to know if it's really the right magic.

Reviewed-by: Jeremy Huddleston <jeremyhu at apple.com>

On Sep 14, 2011, at 9:12 AM, Gaetan Nadon wrote:

> Adding support in libX11 for html chunking caused a reorg of docbook.am
> as well as the xorg-sgml-doctools masterdb for olinking.
> The parameter img.src.path is added for pdf images.
> A searchpath to the root builddir is added for local entities, if present.
> This feature was initiated by xserver module and made available to all.
> 
> The docbook.am makefile hides all the details and is identical for
> all 22 modules having DocBook documentation. It is included by a thin
> Makefile.am which requires no docbook knowledge.
> 
> Signed-off-by: Gaetan Nadon <memsize at videotron.ca>
> ---
> docbook.am |  116 ++++++++++++++++++++++++++++++++----------------------------
> 1 files changed, 62 insertions(+), 54 deletions(-)
> 
> diff --git a/docbook.am b/docbook.am
> index eb3bf0c..9377f5b 100644
> --- a/docbook.am
> +++ b/docbook.am
> @@ -21,76 +21,84 @@ shelf_DATA =
> dist_shelf_DATA = $(docbook) $(chapters)
> 
> if HAVE_XMLTO
> -#
> -# Generate DocBook/XML output formats with or without stylesheets
> -#
> -
> -# Stylesheets are available if the package xorg-sgml-doctools is installed
> if HAVE_STYLESHEETS
> 
> -# The location where all cross reference databases are installed
> -sgmldbsdir = $(XORG_SGML_PATH)/X11/dbs
> -masterdb = "$(sgmldbsdir)/masterdb$(suffix $@).xml"
> -XMLTO_FLAGS =							\
> -	--searchpath "$(XORG_SGML_PATH)/X11"			\
> -	--searchpath "$(abs_top_builddir)"			\
> -	--stringparam target.database.document=$(masterdb)	\
> -	--stringparam current.docid="$(<:.xml=)"		\
> -	--stringparam collect.xref.targets="no"
> -
> -XMLTO_XHTML_FLAGS = \
> -	-x $(STYLESHEET_SRCDIR)/xorg-xhtml.xsl \
> -	--stringparam html.stylesheet=$(STYLESHEET_SRCDIR)/xorg.css
> -
> -XMLTO_FO_FLAGS = \
> -	-x $(STYLESHEET_SRCDIR)/xorg-fo.xsl
> -endif HAVE_STYLESHEETS
> +XMLTO_SEARCHPATH_FLAGS = 				\
> +	--searchpath "$(XORG_SGML_PATH)/X11" 		\
> +	--searchpath "$(abs_top_builddir)"
> +XMLTO_HTML_OLINK_FLAGS = \
> +	--stringparam target.database.document=$(XORG_SGML_PATH)/X11/dbs/masterdb.html.xml \
> +	--stringparam current.docid="$(<:.xml=)"
> +XMLTO_HTML_STYLESHEET_FLAGS = -x $(STYLESHEET_SRCDIR)/xorg-xhtml.xsl
> +XMLTO_HTML_CSS_STYLESHEET_FLAGS = --stringparam html.stylesheet=$(STYLESHEET_SRCDIR)/xorg.css
> +XMLTO_HTML_FLAGS = 					\
> +	$(XMLTO_SEARCHPATH_FLAGS)			\
> +	$(XMLTO_HTML_STYLESHEET_FLAGS)			\
> +	$(XMLTO_HTML_CSS_STYLESHEET_FLAGS)		\
> +	$(XMLTO_HTML_OLINK_FLAGS)
> 
> shelf_DATA += $(docbook:.xml=.html)
> -%.html: %.xml  $(chapters)
> -	$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_XHTML_FLAGS) xhtml-nochunks $<
> -
> -if HAVE_FOP
> -shelf_DATA += $(docbook:.xml=.pdf) $(docbook:.xml=.ps)
> -%.pdf: %.xml $(chapters)
> -	$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_FO_FLAGS) --with-fop pdf $<
> -%.ps: %.xml $(chapters)
> -	$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_FO_FLAGS) --with-fop ps $<
> -endif HAVE_FOP
> +%.html: %.xml $(chapters)
> +	$(AM_V_GEN)$(XMLTO) $(XMLTO_HTML_FLAGS) xhtml-nochunks $<
> 
> if HAVE_XMLTO_TEXT
> +
> shelf_DATA += $(docbook:.xml=.txt)
> %.txt: %.xml $(chapters)
> -	$(AM_V_GEN)$(XMLTO) $(XMLTO_FLAGS) $(XMLTO_XHTML_FLAGS) txt $<
> +	$(AM_V_GEN)$(XMLTO) $(XMLTO_HTML_FLAGS) txt $<
> endif HAVE_XMLTO_TEXT
> 
> -#
> -# Generate documents cross-reference target databases
> -#
> +if HAVE_FOP
> +XMLTO_FO_IMAGEPATH_FLAGS = --stringparam img.src.path=$(abs_builddir)/
> +XMLTO_PDF_OLINK_FLAGS = \
> +	--stringparam target.database.document=$(XORG_SGML_PATH)/X11/dbs/masterdb.pdf.xml \
> +	--stringparam current.docid="$(<:.xml=)"
> +XMLTO_FO_STYLESHEET_FLAGS = -x $(STYLESHEET_SRCDIR)/xorg-fo.xsl
> +
> +XMLTO_FO_FLAGS = 					\
> +	$(XMLTO_SEARCHPATH_FLAGS)			\
> +	$(XMLTO_FO_STYLESHEET_FLAGS)			\
> +	$(XMLTO_FO_IMAGEPATH_FLAGS)			\
> +	$(XMLTO_PDF_OLINK_FLAGS)
> +
> +shelf_DATA += $(docbook:.xml=.pdf)
> +%.pdf: %.xml $(chapters)
> +	$(AM_V_GEN)$(XMLTO) $(XMLTO_FO_FLAGS) --with-fop pdf $<
> 
> -# This is only possible if the xorg-sgml-doctools package is installed
> -if HAVE_STYLESHEETS
> -if HAVE_XSLTPROC
> +shelf_DATA += $(docbook:.xml=.ps)
> +%.ps: %.xml $(chapters)
> +	$(AM_V_GEN)$(XMLTO) $(XMLTO_FO_FLAGS) --with-fop ps $<
> +endif HAVE_FOP
> 
> -# DocBook/XML generated document cross-reference database
> -shelf_DATA += $(docbook:.xml=.html.db) $(docbook:.xml=.fo.db)
> +# Generate documents cross-reference target databases
> +if HAVE_XSLTPROC
> 
> -# Generate DocBook/XML document cross-reference database
> -# Flags for the XSL Transformation processor generating xref target databases
> -XSLTPROC_FLAGS =					\
> +XSLT_SEARCHPATH_FLAGS = 				\
> 	--path "$(XORG_SGML_PATH)/X11"			\
> -	--path "$(abs_top_builddir)"			\
> -	--stringparam targets.filename "$@"		\
> -	--stringparam collect.xref.targets "only"	\
> -	--nonet --xinclude
> -
> +	--path "$(abs_top_builddir)"
> +XSLT_OLINK_FLAGS = 					\
> +	--stringparam targets.filename "$@" 		\
> +	--stringparam collect.xref.targets "only" 	\
> +	--stringparam olink.base.uri "$(@:.db=)"
> +
> +XSLT_HTML_FLAGS =					\
> +	$(XSLT_SEARCHPATH_FLAGS) 			\
> +	$(XSLT_OLINK_FLAGS)				\
> +	--nonet --xinclude				\
> +	$(STYLESHEET_SRCDIR)/xorg-xhtml.xsl
> +XSLT_PDF_FLAGS = 					\
> +	$(XSLT_SEARCHPATH_FLAGS) 			\
> +	$(XSLT_OLINK_FLAGS)				\
> +	--nonet --xinclude				\
> +	$(STYLESHEET_SRCDIR)/xorg-fo.xsl
> +
> +shelf_DATA += $(docbook:.xml=.html.db)
> %.html.db: %.xml  $(chapters)
> -	$(AM_V_GEN)$(XSLTPROC) $(XSLTPROC_FLAGS) \
> -	http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl $<
> +	$(AM_V_GEN)$(XSLTPROC) $(XSLT_HTML_FLAGS) $<
> 
> -%.fo.db: %.xml $(chapters)
> -	$(AM_V_GEN)$(XSLTPROC) $(XSLTPROC_FLAGS) \
> -	http://docbook.sourceforge.net/release/xsl/current/fo/docbook.xsl $<
> +shelf_DATA += $(docbook:.xml=.pdf.db)
> +%.pdf.db: %.xml $(chapters)
> +	$(AM_V_GEN)$(XSLTPROC) $(XSLT_PDF_FLAGS) $<
> 
> endif HAVE_XSLTPROC
> endif HAVE_STYLESHEETS
> -- 
> 1.7.4.1
> 
> _______________________________________________
> xorg-devel at lists.x.org: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel
> 

---
Jeremy Huddleston

Rebuild Sudan
 - Board of Directors
 - http://www.rebuildsudan.org

Berkeley Foundation for Opportunities in Information Technology
 - Advisory Board
 - http://www.bfoit.org



More information about the xorg-devel mailing list