xref: /OK3568_Linux_fs/external/xserver/docbook.am (revision 4882a59341e53eb6f0b4789bf948001014eff981)
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