]> git.proxmox.com Git - mirror_frr.git/blob - doc/subdir.am
pbrd: initial fwmark support for pbr matches #4460
[mirror_frr.git] / doc / subdir.am
1 #
2 # doc
3 #
4
5 # You can set these variables from the command line.
6 SPHINXOPTS ?=
7 PAPER ?=
8
9 # Internal variables.
10 PAPEROPT_a4 = -D latex_paper_size=a4
11 PAPEROPT_letter = -D latex_paper_size=letter
12 ALLSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS)
13 # the i18n builder cannot share the environment and doctrees with the others
14 I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS)
15
16 ###
17
18 AM_V_SPHINX = $(am__v_SPHINX_$(V))
19 am__v_SPHINX_ = $(am__v_SPHINX_$(AM_DEFAULT_VERBOSITY))
20 am__v_SPHINX_0 = @echo " SPHINX " $@;
21 am__v_SPHINX_1 =
22 AM_V_MAKEINFO = $(am__v_MAKEINFO_$(V))
23 am__v_MAKEINFO_ = $(am__v_MAKEINFO_$(AM_DEFAULT_VERBOSITY))
24 am__v_MAKEINFO_0 = @echo " MAKEINFO" $@;
25 am__v_MAKEINFO_1 =
26
27 #
28 # real-file sphinx targets that work for dependencies
29 #
30
31 doc/%/_build/.doctrees/environment.pickle:
32 $(AM_V_SPHINX) ( \
33 subdoc="$@"; subdoc="$${subdoc#doc/}"; subdoc="doc/$${subdoc%%/*}"; \
34 $(PYTHON) $(PYSPHINX) -a -q -b text -d "$${subdoc}/_build/.doctrees" \
35 $(ALLSPHINXOPTS) "$(top_srcdir)/$${subdoc}" "$${subdoc}/_build/text" \
36 )
37 doc/%/_build/html/.buildinfo: doc/%/_build/.doctrees/environment.pickle
38 $(AM_V_SPHINX) ( \
39 subdoc="$@"; subdoc="$${subdoc#doc/}"; subdoc="doc/$${subdoc%%/*}"; \
40 $(PYTHON) $(PYSPHINX) -q -b html -d "$${subdoc}/_build/.doctrees" \
41 $(ALLSPHINXOPTS) "$(top_srcdir)/$${subdoc}" "$${subdoc}/_build/html" \
42 )
43 .PRECIOUS: doc/%/_build/texinfo/frr.texi
44 doc/%/_build/texinfo/frr.texi: doc/%/_build/.doctrees/environment.pickle
45 $(AM_V_SPHINX) ( \
46 subdoc="$@"; subdoc="$${subdoc#doc/}"; subdoc="doc/$${subdoc%%/*}"; \
47 $(PYTHON) $(PYSPHINX) -q -b texinfo -d "$${subdoc}/_build/.doctrees" \
48 $(ALLSPHINXOPTS) "$(top_srcdir)/$${subdoc}" "$${subdoc}/_build/texinfo" \
49 )
50 doc/%/_build/texinfo/frr.info: doc/%/_build/texinfo/frr.texi
51 $(AM_V_MAKEINFO)$(MAKEINFO) --no-split -o '$@' '$<'
52 doc/%/_build/man/man.stamp: doc/%/_build/.doctrees/environment.pickle
53 $(AM_V_SPHINX) ( \
54 subdoc="$@"; subdoc="$${subdoc#doc/}"; subdoc="doc/$${subdoc%%/*}"; \
55 $(MKDIR_P) "$${subdoc}/_build/man"; touch $@.tmp; \
56 $(PYTHON) $(PYSPHINX) -a -q -b man -d "$${subdoc}/_build/.doctrees" \
57 $(ALLSPHINXOPTS) "$(top_srcdir)/$${subdoc}" "$${subdoc}/_build/man" && \
58 mv -f $@.tmp $@ \
59 )
60
61 #
62 # auxiliary sphinx targets (output name = directory,
63 # deps will not work very well)
64 #
65
66 SPHINXTARGETS = \
67 html dirhtml singlehtml pickle json \
68 htmlhelp qthelp applehelp devhelp \
69 epub latex text man texinfo gettext \
70 changes linkcheck doctest coverage \
71 xml pseudoxml \
72 # end
73
74 M_SPHINXTARGETS = $(addprefix doc/%/_build/,$(SPHINXTARGETS))
75 .PRECIOUS: $(M_SPHINXTARGETS)
76 $(M_SPHINXTARGETS): doc/%/_build/.doctrees/environment.pickle
77 $(AM_V_SPHINX) ( \
78 target="$@"; \
79 builder="$${target##*/}"; \
80 subdoc="$${target#doc/}"; subdoc="doc/$${subdoc%%/*}"; \
81 rm -rf "$@"; \
82 $(PYTHON) $(PYSPHINX) -q -b $${builder} -d $${subdoc}/_build/.doctrees \
83 $(ALLSPHINXOPTS) $(top_srcdir)/$${subdoc} $@ \
84 )
85
86 .PHONY: doc/%/_build/latexpdf
87 doc/%/_build/latexpdf: doc/%/_build/latex
88 @make -C $< all-pdf
89
90 # If you want to build the developer's docs in other formats, try the
91 # following:
92 #
93 # $ cd developer
94 # $ make help
95
96 # dist tarballs want doc sources
97 EXTRA_DIST += \
98 doc/mpls/ChangeLog.opaque.txt \
99 doc/mpls/ospfd.conf \
100 doc/mpls/cli_summary.txt \
101 doc/mpls/opaque_lsa.txt \
102 doc/figures/cligraph.png \
103 doc/figures/cligraph.svg \
104 doc/figures/fig-normal-processing.dia \
105 doc/figures/fig-normal-processing.png \
106 doc/figures/fig-normal-processing.txt \
107 doc/figures/fig-rs-processing.dia \
108 doc/figures/fig-rs-processing.png \
109 doc/figures/fig-rs-processing.txt \
110 doc/figures/fig_topologies_full.dia \
111 doc/figures/fig_topologies_full.png \
112 doc/figures/fig_topologies_full.txt \
113 doc/figures/fig_topologies_rs.dia \
114 doc/figures/fig_topologies_rs.png \
115 doc/figures/fig_topologies_rs.txt \
116 doc/figures/fig-vnc-commercial-route-reflector.dia \
117 doc/figures/fig-vnc-commercial-route-reflector.png \
118 doc/figures/fig-vnc-commercial-route-reflector.txt \
119 doc/figures/fig-vnc-frr-route-reflector.dia \
120 doc/figures/fig-vnc-frr-route-reflector.png \
121 doc/figures/fig-vnc-frr-route-reflector.txt \
122 doc/figures/fig-vnc-gw.dia \
123 doc/figures/fig-vnc-gw.png \
124 doc/figures/fig-vnc-gw-rr.dia \
125 doc/figures/fig-vnc-gw-rr.png \
126 doc/figures/fig-vnc-gw-rr.txt \
127 doc/figures/fig-vnc-gw.txt \
128 doc/figures/fig-vnc-mesh.dia \
129 doc/figures/fig-vnc-mesh.png \
130 doc/figures/fig-vnc-mesh.txt \
131 doc/figures/fig-vnc-redundant-route-reflectors.dia \
132 doc/figures/fig-vnc-redundant-route-reflectors.png \
133 doc/figures/fig-vnc-redundant-route-reflectors.txt \
134 doc/figures/frr-icon.svg \
135 doc/figures/frr-logo-icon.png \
136 doc/figures/frr-logo-medium.png \
137 doc/figures/frr-logo.png \
138 doc/figures/frr-logo-small.png \
139 doc/figures/git_branches.png \
140 doc/figures/git_branches.svg \
141 doc/figures/ospf_api_architecture.png \
142 doc/figures/ospf_api_msghdr.png \
143 doc/figures/ospf_api_msgs1.png \
144 doc/figures/ospf_api_msgs2.png \
145 doc/extra/frrlexer.py \
146 # end
147
148
149 .PHONY: doc/help
150 doc/help:
151 @echo "Please use \`make doc/{user,manpages,developer}/<target>' where <target> is one of"
152 @echo " html to make standalone HTML files"
153 @echo " dirhtml to make HTML files named index.html in directories"
154 @echo " singlehtml to make a single large HTML file"
155 @echo " pickle to make pickle files"
156 @echo " json to make JSON files"
157 @echo " htmlhelp to make HTML files and a HTML help project"
158 @echo " qthelp to make HTML files and a qthelp project"
159 @echo " applehelp to make an Apple Help Book"
160 @echo " devhelp to make HTML files and a Devhelp project"
161 @echo " epub to make an epub"
162 @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
163 @echo " latexpdf to make LaTeX files and run them through pdflatex"
164 @echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
165 @echo " text to make text files"
166 @echo " man to make manual pages"
167 @echo " texinfo to make Texinfo files"
168 @echo " info to make Texinfo files and run them through makeinfo"
169 @echo " gettext to make PO message catalogs"
170 @echo " changes to make an overview of all changed/added/deprecated items"
171 @echo " xml to make Docutils-native XML files"
172 @echo " pseudoxml to make pseudoxml-XML files for display purposes"
173 @echo " linkcheck to check all external links for integrity"
174 @echo " doctest to run all doctests embedded in the documentation (if enabled)"
175 @echo " coverage to run coverage check of the documentation (if enabled)"