1*4882a593Smuzhiyun# 2*4882a593Smuzhiyun# Generate output formats for a single DocBook/XML with/without chapters 3*4882a593Smuzhiyun# 4*4882a593Smuzhiyun# Variables set by the calling Makefile: 5*4882a593Smuzhiyun# shelfdir: the location where the docs/specs are installed. Typically $(docdir) 6*4882a593Smuzhiyun# docbook: the main DocBook/XML file, no chapters, appendix or image files 7*4882a593Smuzhiyun# chapters: all files pulled in by an XInclude statement and images. 8*4882a593Smuzhiyun# 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun# 11*4882a593Smuzhiyun# This makefile is intended for Users Documentation and Functional Specifications. 12*4882a593Smuzhiyun# Do not use for Developer Documentation which is not installed and does not require olink. 13*4882a593Smuzhiyun# Refer to http://www.x.org/releases/X11R7.6/doc/xorg-docs/ReleaseNotes.html#id2584393 14*4882a593Smuzhiyun# for an explanation on documents classification. 15*4882a593Smuzhiyun# 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun# DocBook/XML generated output formats to be installed 18*4882a593Smuzhiyunshelf_DATA = 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun# DocBook/XML file with chapters, appendix and images it includes 21*4882a593Smuzhiyundist_shelf_DATA = $(docbook) $(chapters) 22*4882a593Smuzhiyun 23*4882a593Smuzhiyunif HAVE_XMLTO 24*4882a593Smuzhiyunif HAVE_STYLESHEETS 25*4882a593Smuzhiyun 26*4882a593SmuzhiyunXMLTO_SEARCHPATH_FLAGS = \ 27*4882a593Smuzhiyun --searchpath "$(XORG_SGML_PATH)/X11" \ 28*4882a593Smuzhiyun --searchpath "$(abs_top_builddir)" 29*4882a593SmuzhiyunXMLTO_HTML_OLINK_FLAGS = \ 30*4882a593Smuzhiyun --stringparam target.database.document=$(XORG_SGML_PATH)/X11/dbs/masterdb.html.xml \ 31*4882a593Smuzhiyun --stringparam current.docid="$(<:.xml=)" 32*4882a593SmuzhiyunXMLTO_HTML_STYLESHEET_FLAGS = -x $(STYLESHEET_SRCDIR)/xorg-xhtml.xsl 33*4882a593SmuzhiyunXMLTO_HTML_FLAGS = \ 34*4882a593Smuzhiyun $(XMLTO_SEARCHPATH_FLAGS) \ 35*4882a593Smuzhiyun $(XMLTO_HTML_STYLESHEET_FLAGS) \ 36*4882a593Smuzhiyun $(XMLTO_HTML_OLINK_FLAGS) 37*4882a593Smuzhiyun 38*4882a593Smuzhiyunshelf_DATA += $(docbook:.xml=.html) 39*4882a593Smuzhiyun%.html: %.xml $(chapters) 40*4882a593Smuzhiyun $(AM_V_GEN)$(XMLTO) $(XMLTO_HTML_FLAGS) xhtml-nochunks $< 41*4882a593Smuzhiyun 42*4882a593Smuzhiyunif HAVE_XMLTO_TEXT 43*4882a593Smuzhiyun 44*4882a593Smuzhiyunshelf_DATA += $(docbook:.xml=.txt) 45*4882a593Smuzhiyun%.txt: %.xml $(chapters) 46*4882a593Smuzhiyun $(AM_V_GEN)$(XMLTO) $(XMLTO_HTML_FLAGS) txt $< 47*4882a593Smuzhiyunendif HAVE_XMLTO_TEXT 48*4882a593Smuzhiyun 49*4882a593Smuzhiyunif HAVE_FOP 50*4882a593SmuzhiyunXMLTO_FO_IMAGEPATH_FLAGS = --stringparam img.src.path=$(abs_builddir)/ 51*4882a593SmuzhiyunXMLTO_PDF_OLINK_FLAGS = \ 52*4882a593Smuzhiyun --stringparam target.database.document=$(XORG_SGML_PATH)/X11/dbs/masterdb.pdf.xml \ 53*4882a593Smuzhiyun --stringparam current.docid="$(<:.xml=)" 54*4882a593SmuzhiyunXMLTO_FO_STYLESHEET_FLAGS = -x $(STYLESHEET_SRCDIR)/xorg-fo.xsl 55*4882a593Smuzhiyun 56*4882a593SmuzhiyunXMLTO_FO_FLAGS = \ 57*4882a593Smuzhiyun $(XMLTO_SEARCHPATH_FLAGS) \ 58*4882a593Smuzhiyun $(XMLTO_FO_STYLESHEET_FLAGS) \ 59*4882a593Smuzhiyun $(XMLTO_FO_IMAGEPATH_FLAGS) \ 60*4882a593Smuzhiyun $(XMLTO_PDF_OLINK_FLAGS) 61*4882a593Smuzhiyun 62*4882a593Smuzhiyunshelf_DATA += $(docbook:.xml=.pdf) 63*4882a593Smuzhiyun%.pdf: %.xml $(chapters) 64*4882a593Smuzhiyun $(AM_V_GEN)$(XMLTO) $(XMLTO_FO_FLAGS) --with-fop pdf $< 65*4882a593Smuzhiyun 66*4882a593Smuzhiyunshelf_DATA += $(docbook:.xml=.ps) 67*4882a593Smuzhiyun%.ps: %.xml $(chapters) 68*4882a593Smuzhiyun $(AM_V_GEN)$(XMLTO) $(XMLTO_FO_FLAGS) --with-fop ps $< 69*4882a593Smuzhiyunendif HAVE_FOP 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun# Generate documents cross-reference target databases 72*4882a593Smuzhiyunif HAVE_XSLTPROC 73*4882a593Smuzhiyun 74*4882a593SmuzhiyunXSLT_SEARCHPATH_FLAGS = \ 75*4882a593Smuzhiyun --path "$(XORG_SGML_PATH)/X11" \ 76*4882a593Smuzhiyun --path "$(abs_top_builddir)" 77*4882a593SmuzhiyunXSLT_OLINK_FLAGS = \ 78*4882a593Smuzhiyun --stringparam targets.filename "$@" \ 79*4882a593Smuzhiyun --stringparam collect.xref.targets "only" \ 80*4882a593Smuzhiyun --stringparam olink.base.uri "$(@:.db=)" 81*4882a593Smuzhiyun 82*4882a593SmuzhiyunXSLT_HTML_FLAGS = \ 83*4882a593Smuzhiyun $(XSLT_SEARCHPATH_FLAGS) \ 84*4882a593Smuzhiyun $(XSLT_OLINK_FLAGS) \ 85*4882a593Smuzhiyun --nonet --xinclude \ 86*4882a593Smuzhiyun $(STYLESHEET_SRCDIR)/xorg-xhtml.xsl 87*4882a593SmuzhiyunXSLT_PDF_FLAGS = \ 88*4882a593Smuzhiyun $(XSLT_SEARCHPATH_FLAGS) \ 89*4882a593Smuzhiyun $(XSLT_OLINK_FLAGS) \ 90*4882a593Smuzhiyun --nonet --xinclude \ 91*4882a593Smuzhiyun $(STYLESHEET_SRCDIR)/xorg-fo.xsl 92*4882a593Smuzhiyun 93*4882a593Smuzhiyunshelf_DATA += $(docbook:.xml=.html.db) 94*4882a593Smuzhiyun%.html.db: %.xml $(chapters) 95*4882a593Smuzhiyun $(AM_V_GEN)$(XSLTPROC) $(XSLT_HTML_FLAGS) $< 96*4882a593Smuzhiyun 97*4882a593Smuzhiyunshelf_DATA += $(docbook:.xml=.pdf.db) 98*4882a593Smuzhiyun%.pdf.db: %.xml $(chapters) 99*4882a593Smuzhiyun $(AM_V_GEN)$(XSLTPROC) $(XSLT_PDF_FLAGS) $< 100*4882a593Smuzhiyun 101*4882a593Smuzhiyunendif HAVE_XSLTPROC 102*4882a593Smuzhiyunendif HAVE_STYLESHEETS 103*4882a593Smuzhiyunendif HAVE_XMLTO 104*4882a593Smuzhiyun 105*4882a593SmuzhiyunCLEANFILES = $(shelf_DATA) 106