]> git.proxmox.com Git - mirror_ovs.git/blame - Documentation/automake.mk
cirrus: Use FreeBSD 12.2.
[mirror_ovs.git] / Documentation / automake.mk
CommitLineData
e9f521b3 1DOC_SOURCE = \
c431227e 2 Documentation/group-selection-method-property.txt \
daf5079e 3 Documentation/_static/logo.png \
2eaf6a08 4 Documentation/_static/overview.png \
daf5079e
SF
5 Documentation/conf.py \
6 Documentation/index.rst \
11820a1f
SF
7 Documentation/contents.rst \
8 Documentation/intro/index.rst \
2eaf6a08 9 Documentation/intro/what-is-ovs.rst \
3c8a3b31 10 Documentation/intro/why-ovs.rst \
11820a1f 11 Documentation/intro/install/index.rst \
795752a3 12 Documentation/intro/install/bash-completion.rst \
0de1b425 13 Documentation/intro/install/afxdp.rst \
795752a3 14 Documentation/intro/install/debian.rst \
73c76b44 15 Documentation/intro/install/documentation.rst \
4ae3db4a 16 Documentation/intro/install/distributions.rst \
795752a3
SF
17 Documentation/intro/install/dpdk.rst \
18 Documentation/intro/install/fedora.rst \
19 Documentation/intro/install/general.rst \
20 Documentation/intro/install/netbsd.rst \
21 Documentation/intro/install/rhel.rst \
22 Documentation/intro/install/userspace.rst \
23 Documentation/intro/install/windows.rst \
24 Documentation/intro/install/xenserver.rst \
11820a1f 25 Documentation/tutorials/index.rst \
98dc8dee 26 Documentation/tutorials/faucet.rst \
e12569bb 27 Documentation/tutorials/ovs-advanced.rst \
c9ccdec7 28 Documentation/tutorials/ovs-conntrack.rst \
7b243c30 29 Documentation/tutorials/ipsec.rst \
11820a1f 30 Documentation/topics/index.rst \
7c9afefd 31 Documentation/topics/bonding.rst \
e90bc056 32 Documentation/topics/idl-compound-indexes.rst \
7c9afefd
SF
33 Documentation/topics/datapath.rst \
34 Documentation/topics/design.rst \
e69e4f5b 35 Documentation/topics/dpdk/index.rst \
7b743caf 36 Documentation/topics/dpdk/bridge.rst \
a790e75f 37 Documentation/topics/dpdk/jumbo-frames.rst \
43307ad0 38 Documentation/topics/dpdk/memory.rst \
6477dbb9 39 Documentation/topics/dpdk/phy.rst \
31d0dae2 40 Documentation/topics/dpdk/pmd.rst \
6fe32f11 41 Documentation/topics/dpdk/qos.rst \
b20eabc3 42 Documentation/topics/dpdk/vdev.rst \
e69e4f5b 43 Documentation/topics/dpdk/vhost-user.rst \
d11728b1
BS
44 Documentation/topics/fuzzing/index.rst \
45 Documentation/topics/fuzzing/what-is-fuzzing.rst \
46 Documentation/topics/fuzzing/ovs-fuzzing-infrastructure.rst \
47 Documentation/topics/fuzzing/ovs-fuzzers.rst \
48 Documentation/topics/fuzzing/security-analysis-of-ovs-fuzzers.rst \
e69e4f5b 49 Documentation/topics/testing.rst \
7c9afefd 50 Documentation/topics/integration.rst \
f150a8ba 51 Documentation/topics/language-bindings.rst \
60405863 52 Documentation/topics/networking-namespaces.rst \
7c9afefd 53 Documentation/topics/openflow.rst \
ef11ff8a 54 Documentation/topics/ovs-extensions.rst \
7c9afefd
SF
55 Documentation/topics/ovsdb-replication.rst \
56 Documentation/topics/porting.rst \
73f5354b 57 Documentation/topics/tracing.rst \
29cf9c1b 58 Documentation/topics/userspace-tso.rst \
7c9afefd 59 Documentation/topics/windows.rst \
11820a1f 60 Documentation/howto/index.rst \
e69e4f5b 61 Documentation/howto/dpdk.rst \
7b243c30 62 Documentation/howto/ipsec.rst \
795752a3
SF
63 Documentation/howto/kvm.rst \
64 Documentation/howto/libvirt.rst \
65 Documentation/howto/selinux.rst \
66 Documentation/howto/ssl.rst \
43f317ff 67 Documentation/howto/lisp.rst \
b0bef8d1
SF
68 Documentation/howto/qos.png \
69 Documentation/howto/qos.rst \
198c5d3d
SF
70 Documentation/howto/sflow.png \
71 Documentation/howto/sflow.rst \
4643d687
SF
72 Documentation/howto/tunneling.png \
73 Documentation/howto/tunneling.rst \
b438493e 74 Documentation/howto/userspace-tunneling.rst \
e37319ea
SF
75 Documentation/howto/vlan.png \
76 Documentation/howto/vlan.rst \
43f317ff 77 Documentation/howto/vtep.rst \
11820a1f
SF
78 Documentation/ref/index.rst \
79 Documentation/faq/index.rst \
11e02906
SF
80 Documentation/faq/configuration.rst \
81 Documentation/faq/contributing.rst \
82 Documentation/faq/design.rst \
83 Documentation/faq/general.rst \
84 Documentation/faq/issues.rst \
85 Documentation/faq/openflow.rst \
86 Documentation/faq/qos.rst \
87 Documentation/faq/releases.rst \
88 Documentation/faq/terminology.rst \
89 Documentation/faq/vlan.rst \
90 Documentation/faq/vxlan.rst \
ebe0e518 91 Documentation/faq/bareudp.rst \
d0e53b15
SF
92 Documentation/internals/index.rst \
93 Documentation/internals/authors.rst \
94 Documentation/internals/bugs.rst \
45c2f69a 95 Documentation/internals/charter.rst \
43e9c263 96 Documentation/internals/committer-emeritus-status.rst \
d0e53b15
SF
97 Documentation/internals/committer-grant-revocation.rst \
98 Documentation/internals/committer-responsibilities.rst \
1e6567d4 99 Documentation/internals/documentation.rst \
d0e53b15
SF
100 Documentation/internals/mailing-lists.rst \
101 Documentation/internals/maintainers.rst \
3c2604f7 102 Documentation/internals/patchwork.rst \
d0e53b15
SF
103 Documentation/internals/release-process.rst \
104 Documentation/internals/security.rst \
105 Documentation/internals/contributing/index.rst \
1102cc39 106 Documentation/internals/contributing/backporting-patches.rst \
d0e53b15
SF
107 Documentation/internals/contributing/coding-style.rst \
108 Documentation/internals/contributing/coding-style-windows.rst \
109 Documentation/internals/contributing/documentation-style.rst \
cb991590 110 Documentation/internals/contributing/libopenvswitch-abi.rst \
73c76b44 111 Documentation/internals/contributing/submitting-patches.rst \
fd0837a7 112 Documentation/requirements.txt \
16ee8726 113 $(addprefix Documentation/ref/,$(RST_MANPAGES) $(RST_MANPAGES_NOINST))
b9b3b9ce 114FLAKE8_PYFILES += Documentation/conf.py
e9f521b3
RB
115EXTRA_DIST += $(DOC_SOURCE)
116
daf5079e
SF
117# You can set these variables from the command line.
118SPHINXOPTS =
daf5079e 119SPHINXSRCDIR = $(srcdir)/Documentation
c431227e 120SPHINXBUILDDIR = $(builddir)/Documentation/_build
daf5079e
SF
121
122# Internal variables.
70cb24de 123ALLSPHINXOPTS = -W -n -d $(SPHINXBUILDDIR)/doctrees $(SPHINXOPTS) $(SPHINXSRCDIR)
daf5079e 124
099cf485
SF
125sphinx_verbose = $(sphinx_verbose_@AM_V@)
126sphinx_verbose_ = $(sphinx_verbose_@AM_DEFAULT_V@)
127sphinx_verbose_0 = -q
d84bdc82
SF
128
129if HAVE_SPHINX
fd0837a7 130docs-check: $(DOC_SOURCE)
e9f521b3 131 $(AM_V_GEN)$(SPHINXBUILD) $(sphinx_verbose) -b html $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/html && touch $@
fd0837a7
SF
132 $(AM_V_GEN)$(SPHINXBUILD) $(sphinx_verbose) -b man $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/man && touch $@
133ALL_LOCAL += docs-check
134CLEANFILES += docs-check
099cf485
SF
135
136check-docs:
137 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(SPHINXBUILDDIR)/linkcheck
f93f0e4a
SF
138
139clean-docs:
fd0837a7 140 rm -rf $(SPHINXBUILDDIR)
f654d6e4 141 rm -f docs-check
f93f0e4a 142CLEAN_LOCAL += clean-docs
d84bdc82 143endif
d84bdc82 144.PHONY: check-docs
f93f0e4a 145.PHONY: clean-docs
fd0837a7
SF
146\f
147# Installing manpages based on rST.
148#
149# The docs-check target converts the rST files listed in RST_MANPAGES
150# into nroff manpages in Documentation/_build/man. The easiest way to
151# get these installed by "make install" is to write our own helper
152# rules.
153
154# rST formatted manpages under Documentation/ref.
155RST_MANPAGES = \
39b5e463
BP
156 ovs-appctl.8.rst \
157 ovs-ctl.8.rst \
158 ovs-l3ping.8.rst \
159 ovs-parse-backtrace.8.rst \
160 ovs-pki.8.rst \
161 ovs-tcpdump.8.rst \
162 ovs-tcpundump.1.rst \
3591d8c7 163 ovs-test.8.rst \
12b84d50
BP
164 ovs-vlan-test.8.rst \
165 ovsdb-server.7.rst \
166 ovsdb.5.rst \
16ee8726
BP
167 ovsdb.7.rst
168
169# rST formatted manpages that we don't want to install because they
170# document stuff that only works with a build tree, not with an
171# installed OVS.
172RST_MANPAGES_NOINST = ovs-sim.1.rst
fd0837a7
SF
173
174# The GNU standards say that these variables should control
175# installation directories for manpages in each section. Automake
176# will define them for us only if it sees that a manpage in the
177# appropriate section is to be installed through its built-in feature.
178# Since we're working independently, for best safety, we need to
179# define them ourselves.
180man1dir = $(mandir)/man1
181man2dir = $(mandir)/man2
182man3dir = $(mandir)/man3
183man4dir = $(mandir)/man4
184man5dir = $(mandir)/man5
185man6dir = $(mandir)/man6
186man7dir = $(mandir)/man7
187man8dir = $(mandir)/man8
188man9dir = $(mandir)/man9
189
190# Set a shell variable for each manpage directory.
191set_mandirs = \
192 man1dir='$(man1dir)' \
193 man2dir='$(man2dir)' \
194 man3dir='$(man3dir)' \
195 man4dir='$(man4dir)' \
196 man5dir='$(man5dir)' \
197 man6dir='$(man6dir)' \
198 man7dir='$(man7dir)' \
199 man8dir='$(man8dir)' \
200 man9dir='$(man9dir)'
201
202# Given an $rst of "ovs-vlan-test.8.rst", sets $stem to
203# "ovs-vlan-test", $section to "8", and $mandir to $man8dir.
204extract_stem_and_section = \
205 stem=`echo "$$rst" | sed -n 's/^\(.*\)\.\([0-9]\).rst$$/\1/p'`; \
206 section=`echo "$$rst" | sed -n 's/^\(.*\)\.\([0-9]\).rst$$/\2/p'`; \
207 test -n "$$section" || { echo "$$rst: cannot infer manpage section from filename" 2>&1; continue; }; \
208 eval "mandir=\$$man$${section}dir"; \
209 test -n "$$mandir" || { echo "unknown directory for manpage section $$section"; continue; }
210
fd0837a7 211INSTALL_DATA_LOCAL += install-man-rst
9db5e1ef 212if HAVE_SPHINX
fd0837a7
SF
213install-man-rst: docs-check
214 @$(set_mandirs); \
16ee8726 215 for rst in $(RST_MANPAGES) $(EXTRA_RST_MANPAGES); do \
fd0837a7
SF
216 $(extract_stem_and_section); \
217 echo " $(MKDIR_P) '$(DESTDIR)'\"$$mandir\""; \
218 $(MKDIR_P) '$(DESTDIR)'"$$mandir"; \
219 echo " $(INSTALL_DATA) $(SPHINXBUILDDIR)/man/$$stem.$$section '$(DESTDIR)'\"$$mandir/$$stem.$$section\""; \
220 $(INSTALL_DATA) $(SPHINXBUILDDIR)/man/$$stem.$$section '$(DESTDIR)'"$$mandir/$$stem.$$section"; \
221 done
9db5e1ef
BP
222else
223install-man-rst:
224 @:
fd0837a7
SF
225endif
226
227UNINSTALL_LOCAL += uninstall-man-rst
228uninstall-man-rst:
229 @$(set_mandirs); \
230 for rst in $(RST_MANPAGES); do \
231 $(extract_stem_and_section); \
232 echo "rm -f '$(DESTDIR)'\"$$mandir/$$stem.$$section\""; \
233 rm -f '$(DESTDIR)'"$$mandir/$$stem.$$section"; \
234 done