[dpdk-dev] [PATCH 1/4] doc: rendering and installation of man pages

Christian Ehrhardt christian.ehrhardt at canonical.com
Thu Aug 4 13:16:56 CEST 2016


This enables the rendering of rst into man pages as well as installing
them (if built) along the binaries. To do so there is a new make target
"doc-guides-man" which will render the rst files into man format.

Currently these three tools had docs that were compatible "enough" to
make up for a reasonable manpage.
- testpmd
- dpdk-pdump
- dpdk-procinfo

Since a man page should be installed along the binary they are not
installed in install-doc but install-runtime insteade. If not explicitly
built by the "doc-guides-man" target before calling install-runtime there no
change to the old behaviour.

Signed-off-by: Christian Ehrhardt <christian.ehrhardt at canonical.com>
---
 doc/guides/conf.py   | 8 ++++++++
 mk/rte.sdkdoc.mk     | 2 +-
 mk/rte.sdkinstall.mk | 6 ++++++
 3 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index 2c5610f..4435974 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -92,6 +92,14 @@ class CustomLatexFormatter(LatexFormatter):
 # Replace the default latex formatter.
 PygmentsBridge.latex_formatter = CustomLatexFormatter
 
+# Configuration for man pages
+man_pages = [("testpmd_app_ug/run_app", "testpmd",
+              "tests for dpdk pmds", "", 1),
+             ("sample_app_ug/pdump", "dpdk-pdump",
+              "enable packet capture on dpdk ports", "", 1),
+             ("sample_app_ug/proc_info", "dpdk-procinfo",
+              "access dpdk port stats and memory info", "", 1)]
+
 ######## :numref: fallback ########
 # The following hook functions add some simple handling for the :numref:
 # directive for Sphinx versions prior to 1.3.1. The functions replace the
diff --git a/mk/rte.sdkdoc.mk b/mk/rte.sdkdoc.mk
index 9952f25..21d9bdf 100644
--- a/mk/rte.sdkdoc.mk
+++ b/mk/rte.sdkdoc.mk
@@ -63,7 +63,7 @@ help:
 all: api-html guides-html guides-pdf
 
 .PHONY: clean
-clean: api-html-clean guides-html-clean guides-pdf-clean
+clean: api-html-clean guides-html-clean guides-pdf-clean guides-man-clean
 
 .PHONY: api-html
 api-html: api-html-clean
diff --git a/mk/rte.sdkinstall.mk b/mk/rte.sdkinstall.mk
index 5217063..533d369 100644
--- a/mk/rte.sdkinstall.mk
+++ b/mk/rte.sdkinstall.mk
@@ -66,6 +66,7 @@ includedir  ?=      $(prefix)/include/dpdk
 datarootdir ?=      $(prefix)/share
 docdir      ?=       $(datarootdir)/doc/dpdk
 datadir     ?=       $(datarootdir)/dpdk
+mandir      ?=       $(datarootdir)/man
 sdkdir      ?=                $(datadir)
 targetdir   ?=                $(datadir)/$(RTE_TARGET)
 
@@ -133,6 +134,11 @@ install-runtime:
 	                           $(DESTDIR)$(sbindir)/dpdk-devbind)
 	$(Q)$(call rte_symlink,    $(DESTDIR)$(datadir)/tools/dpdk-pmdinfo.py, \
 	                           $(DESTDIR)$(bindir)/dpdk-pmdinfo)
+ifneq ($(wildcard $O/doc/man/*/*.1),)
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir))
+	$(Q)$(call rte_mkdir,     $(DESTDIR)$(mandir)/man1)
+	$(Q)cp -a $O/doc/man/*/*.1 $(DESTDIR)$(mandir)/man1
+endif
 
 install-kmod:
 ifneq ($(wildcard $O/kmod/*),)
-- 
2.7.4



More information about the dev mailing list