diff mbox

[dpdk-dev,1/2] doc: Add 'make pdf' target to convert guide docs to pdf.

Message ID 1421255657-19521-2-git-send-email-john.mcnamara@intel.com (mailing list archive)
State Superseded, archived
Headers show

Commit Message

Mcnamara, John Jan. 14, 2015, 5:14 p.m. UTC
This patch adds a high level 'make pdf' target to generate
pdf documents from the sphinx/rst user guides.

Signed-off-by: John McNamara <john.mcnamara@intel.com>
---
 doc/api/sphinx-latex-update.pl              |   71 ++++++++++++++++++++++
 doc/guides/freebsd_gsg/conf.py              |   86 +++++++++++++++++++++++++++
 doc/guides/linux_gsg/conf.py                |   86 +++++++++++++++++++++++++++
 doc/guides/prog_guide/conf.py               |   86 +++++++++++++++++++++++++++
 doc/guides/rel_notes/conf.py                |   85 ++++++++++++++++++++++++++
 doc/guides/rel_notes/supported_features.rst |    2 +-
 doc/guides/sample_app_ug/conf.py            |   86 +++++++++++++++++++++++++++
 doc/guides/sample_app_ug/test_pipeline.rst  |    6 +-
 doc/guides/testpmd_app_ug/conf.py           |   85 ++++++++++++++++++++++++++
 mk/rte.sdkdoc.mk                            |   28 +++++++--
 mk/rte.sdkroot.mk                           |    3 +-
 11 files changed, 614 insertions(+), 10 deletions(-)
 create mode 100644 doc/api/sphinx-latex-update.pl
 create mode 100644 doc/guides/freebsd_gsg/conf.py
 create mode 100644 doc/guides/linux_gsg/conf.py
 create mode 100644 doc/guides/prog_guide/conf.py
 create mode 100644 doc/guides/rel_notes/conf.py
 create mode 100644 doc/guides/sample_app_ug/conf.py
 create mode 100644 doc/guides/testpmd_app_ug/conf.py
diff mbox

Patch

diff --git a/doc/api/sphinx-latex-update.pl b/doc/api/sphinx-latex-update.pl
new file mode 100644
index 0000000..d41c695
--- /dev/null
+++ b/doc/api/sphinx-latex-update.pl
@@ -0,0 +1,71 @@ 
+#!/usr/bin/perl -i
+
+#   BSD LICENSE
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+#   All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#   * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+#   * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+#   * Neither the name of Intel Corporation nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+
+# Utility program to post-process the Sphinx LaTex docs prior to
+# generating the latexpdf output.
+
+use strict;
+use warnings;
+
+
+while (<>) {
+
+    # Convert escaped single quotes back to real single quote so that
+    # the Latex upquote package has an effect.
+    s/\\PYGZsq{}/'/g;
+
+    # Remove italic form the Pygments formatting.
+    s/\\let\\PYG\@it=\\textit//g;
+
+    # Change the comments color in the Pygments formatting.
+    s/0\.25,0\.50,0\.56/0.40,0.69,0.33/;
+
+    # Use PNG instead of SVG (which isn't well supported by LaTeX).
+    if ( /\\includegraphics/ ) {
+        s/\.svg/.png/;
+    }
+
+    # Center the images.
+    if ( /^\\includegraphics/ ) {
+        print "\\begin{center}\n";
+        print;
+        print "\\end{center}\n";
+
+        next;
+    }
+
+    print;
+}
+
+
+__END__
diff --git a/doc/guides/freebsd_gsg/conf.py b/doc/guides/freebsd_gsg/conf.py
new file mode 100644
index 0000000..65a7ede
--- /dev/null
+++ b/doc/guides/freebsd_gsg/conf.py
@@ -0,0 +1,86 @@ 
+#   BSD LICENSE
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+#   All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#   * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+#   * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+#   * Neither the name of Intel Corporation nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+import sys
+import os
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'DPDK FreeBSD Getting Started Guide'
+copyright = '2014, Intel'
+
+version = '2.0.0'
+release = version
+pygments_style = 'sphinx'
+
+html_theme = 'default'
+html_title = 'DPDK FreeBSD Getting Started Guide Documentation'
+html_show_sphinx = True
+html_show_copyright = True
+htmlhelp_basename = 'DPDKFreeBSDGettingStartedGuide'
+html_add_permalinks = ''
+
+latex_preamble = """
+\\usepackage{upquote}
+\usepackage[utf8]{inputenc}
+\\usepackage{DejaVuSansMono}
+\\usepackage[T1]{fontenc}
+\\usepackage{helvet}
+\\renewcommand{\\familydefault}{\\sfdefault}
+
+\\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
+"""
+
+latex_elements = {
+    'papersize': 'a4paper',
+    'pointsize': '11pt',
+    'preamble': latex_preamble,
+}
+
+latex_documents = [
+  ('index',
+   'dpdk_freebsd_getting_started_guide.tex',
+   'The DPDK FreeBSD Getting Started Guide',
+   'Intel',
+   'manual')
+]
+
+latex_logo = 'img/Intel-logo.png'
+
+texinfo_documents = [
+  ('index',
+   'DPDK FreeBSD Getting Started Guide',
+   'DPDK FreeBSD Getting Started Guide Documentation',
+   'Intel',
+   'DPDK FreeBSD Getting Started Guide',
+   'One line description of project.',
+   'Miscellaneous'),
+]
diff --git a/doc/guides/linux_gsg/conf.py b/doc/guides/linux_gsg/conf.py
new file mode 100644
index 0000000..355b8bb
--- /dev/null
+++ b/doc/guides/linux_gsg/conf.py
@@ -0,0 +1,86 @@ 
+#   BSD LICENSE
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+#   All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#   * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+#   * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+#   * Neither the name of Intel Corporation nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+import sys
+import os
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'DPDK Linux Getting Started Guide'
+copyright = '2014, Intel'
+
+version = '2.0.0'
+release = version
+pygments_style = 'sphinx'
+
+html_theme = 'default'
+html_title = 'DPDK Linux Getting Started Guide Documentation'
+html_show_sphinx = True
+html_show_copyright = True
+htmlhelp_basename = 'DPDKLinuxGettingStartedGuide'
+html_add_permalinks = ''
+
+latex_preamble = """
+\\usepackage{upquote}
+\usepackage[utf8]{inputenc}
+\\usepackage{DejaVuSansMono}
+\\usepackage[T1]{fontenc}
+\\usepackage{helvet}
+\\renewcommand{\\familydefault}{\\sfdefault}
+
+\\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
+"""
+
+latex_elements = {
+    'papersize': 'a4paper',
+    'pointsize': '11pt',
+    'preamble': latex_preamble,
+}
+
+latex_documents = [
+  ('index',
+   'dpdk_linux_getting_started_guide.tex',
+   'The DPDK Linux Getting Started Guide',
+   'Intel',
+   'manual')
+]
+
+latex_logo = 'img/Intel-logo.png'
+
+texinfo_documents = [
+  ('index',
+   'DPDK Linux Getting Started Guide',
+   'DPDK Linux Getting Started Guide Documentation',
+   'Intel',
+   'DPDK Linux Getting Started Guide',
+   'One line description of project.',
+   'Miscellaneous'),
+]
diff --git a/doc/guides/prog_guide/conf.py b/doc/guides/prog_guide/conf.py
new file mode 100644
index 0000000..d884dac
--- /dev/null
+++ b/doc/guides/prog_guide/conf.py
@@ -0,0 +1,86 @@ 
+#   BSD LICENSE
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+#   All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#   * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+#   * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+#   * Neither the name of Intel Corporation nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+import sys
+import os
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'DPDK Programmers Guide'
+copyright = '2014, Intel'
+
+version = '2.0.0'
+release = version
+pygments_style = 'sphinx'
+
+html_theme = 'default'
+html_title = 'DPDK Programmers Guide Documentation'
+html_show_sphinx = True
+html_show_copyright = True
+htmlhelp_basename = 'DPDKProgrammersGuide'
+html_add_permalinks = ''
+
+latex_preamble = """
+\\usepackage{upquote}
+\usepackage[utf8]{inputenc}
+\\usepackage{DejaVuSansMono}
+\\usepackage[T1]{fontenc}
+\\usepackage{helvet}
+\\renewcommand{\\familydefault}{\\sfdefault}
+
+\\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
+"""
+
+latex_elements = {
+    'papersize': 'a4paper',
+    'pointsize': '11pt',
+    'preamble': latex_preamble,
+}
+
+latex_documents = [
+  ('index',
+   'dpdk_programmers_guide.tex',
+   "The DPDK Programmer's Guide",
+   'Intel',
+   'manual')
+]
+
+latex_logo = 'img/Intel-logo.png'
+
+texinfo_documents = [
+  ('index',
+   'DPDK Programmers Guide',
+   'DPDK Programmers Guide Documentation',
+   'Intel',
+   'DPDK Programmers Guide',
+   'One line description of project.',
+   'Miscellaneous'),
+]
diff --git a/doc/guides/rel_notes/conf.py b/doc/guides/rel_notes/conf.py
new file mode 100644
index 0000000..6f4cc70
--- /dev/null
+++ b/doc/guides/rel_notes/conf.py
@@ -0,0 +1,85 @@ 
+#   BSD LICENSE
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+#   All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#   * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+#   * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+#   * Neither the name of Intel Corporation nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+import sys
+import os
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'DPDK Release Notes'
+copyright = '2014, Intel'
+
+version = '2.0.0'
+release = version
+pygments_style = 'sphinx'
+
+html_theme = 'default'
+html_title = 'DPDK Release Notes'
+html_show_sphinx = True
+html_show_copyright = True
+htmlhelp_basename = 'DPDKReleaseNotes'
+html_add_permalinks = ''
+
+latex_preamble = """
+\\usepackage{upquote}
+\\usepackage{DejaVuSansMono}
+\\usepackage[T1]{fontenc}
+\\usepackage{helvet}
+\\renewcommand{\\familydefault}{\\sfdefault}
+
+\\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
+"""
+
+latex_elements = {
+    'papersize': 'a4paper',
+    'pointsize': '11pt',
+    'preamble': latex_preamble,
+}
+
+latex_documents = [
+  ('index',
+   'dpdk_release_notes.tex',
+   'The DPDK Rlease Notes',
+   'Intel',
+   'manual')
+]
+
+latex_logo = 'img/Intel-logo.png'
+
+texinfo_documents = [
+  ('index',
+   'DPDK Release Notes',
+   'DPDK Release Notes',
+   'Intel',
+   'DPDK Release Notes',
+   'One line description of project.',
+   'Miscellaneous'),
+]
diff --git a/doc/guides/rel_notes/supported_features.rst b/doc/guides/rel_notes/supported_features.rst
index 7936e93..d87fcaa 100644
--- a/doc/guides/rel_notes/supported_features.rst
+++ b/doc/guides/rel_notes/supported_features.rst
@@ -51,7 +51,7 @@  Supported Features
 
     *   Intel® X710 40 Gigabit Ethernet Controller
 
-*   Support NIC filters in addition to flow director for Intel� 1GbE and 10GbE Controllers
+*   Support NIC filters in addition to flow director for Intel® 1GbE and 10GbE Controllers
 
 *   Virtualization (KVM)
 
diff --git a/doc/guides/sample_app_ug/conf.py b/doc/guides/sample_app_ug/conf.py
new file mode 100644
index 0000000..e7d7d13
--- /dev/null
+++ b/doc/guides/sample_app_ug/conf.py
@@ -0,0 +1,86 @@ 
+#   BSD LICENSE
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+#   All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#   * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+#   * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+#   * Neither the name of Intel Corporation nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+import sys
+import os
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'DPDK Sample Applications Guide'
+copyright = '2014, Intel'
+
+version = '2.0.0'
+release = version
+pygments_style = 'sphinx'
+
+html_theme = 'default'
+html_title = 'DPDK Sample Applications Guide Documentation'
+html_show_sphinx = True
+html_show_copyright = True
+htmlhelp_basename = 'DPDKSample ApplicationsGuide'
+html_add_permalinks = ''
+
+latex_preamble = """
+\\usepackage{upquote}
+\usepackage[utf8]{inputenc}
+\\usepackage{DejaVuSansMono}
+\\usepackage[T1]{fontenc}
+\\usepackage{helvet}
+\\renewcommand{\\familydefault}{\\sfdefault}
+
+\\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
+"""
+
+latex_elements = {
+    'papersize': 'a4paper',
+    'pointsize': '11pt',
+    'preamble': latex_preamble,
+}
+
+latex_documents = [
+  ('index',
+   'dpdk_sample_applications_guide.tex',
+   'The DPDK Sample Applications Guide',
+   'Intel',
+   'manual')
+]
+
+latex_logo = 'img/Intel-logo.png'
+
+texinfo_documents = [
+  ('index',
+   'DPDK Sample Applications Guide',
+   'DPDK Sample Applications Guide Documentation',
+   'Intel',
+   'DPDK Sample Applications Guide',
+   'One line description of project.',
+   'Miscellaneous'),
+]
diff --git a/doc/guides/sample_app_ug/test_pipeline.rst b/doc/guides/sample_app_ug/test_pipeline.rst
index 867a7a7..07eb3bf 100644
--- a/doc/guides/sample_app_ug/test_pipeline.rst
+++ b/doc/guides/sample_app_ug/test_pipeline.rst
@@ -137,7 +137,7 @@  For hash tables, the following parameters can be selected:
 |       |                        | entries.                                                 | hash table with the following key format:             |
 |       |                        |                                                          |                                                       |
 |       |                        |                                                          | [4-byte index, 4 bytes of 0]                          |
-+-------+------------------------+----------------------------------------------------------+                                                       |
++-------+------------------------+----------------------------------------------------------+-------------------------------------------------------+
 | 4     | hash-[spec]-8-ext      |  Extendible bucket hash table with 8-byte key size       | The action configured for all table entries is        |
 |       |                        |  and 16 million entries.                                 | "Sendto output port", with the output port index      |
 |       |                        |                                                          | uniformly distributed for the range of output ports.  |
@@ -156,7 +156,7 @@  For hash tables, the following parameters can be selected:
 |       |                        | entries.                                                 | table with the following key format:                  |
 |       |                        |                                                          |                                                       |
 |       |                        |                                                          | [4-byte index, 12 bytes of 0]                         |
-+-------+------------------------+----------------------------------------------------------+                                                       |
++-------+------------------------+----------------------------------------------------------+-------------------------------------------------------+
 | 6     | hash-[spec]-ash-16-ext | Extendible bucket hash table with 16-byte key size       | The action configured for all table entries is        |
 |       |                        | and 16 million entries.                                  | "Send to output port", with the output port index     |
 |       |                        |                                                          | uniformly distributed for the range of output ports.  |
@@ -175,7 +175,7 @@  For hash tables, the following parameters can be selected:
 |       |                        | entries.                                                 |  table with the following key format:                 |
 |       |                        |                                                          |                                                       |
 |       |                        |                                                          | [4-byte index, 28 bytes of 0].                        |
-+-------+------------------------+----------------------------------------------------------+                                                       |
++-------+------------------------+----------------------------------------------------------+-------------------------------------------------------+
 | 8     | hash-[spec]-32-ext     | Extendible bucket hash table with 32-byte key size       | The action configured for all table entries is        |
 |       |                        | and 16 million entries.                                  | "Send to output port", with the output port index     |
 |       |                        |                                                          | uniformly distributed for the range of output ports.  |
diff --git a/doc/guides/testpmd_app_ug/conf.py b/doc/guides/testpmd_app_ug/conf.py
new file mode 100644
index 0000000..194571c
--- /dev/null
+++ b/doc/guides/testpmd_app_ug/conf.py
@@ -0,0 +1,85 @@ 
+#   BSD LICENSE
+#   Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
+#   All rights reserved.
+#
+#   Redistribution and use in source and binary forms, with or without
+#   modification, are permitted provided that the following conditions
+#   are met:
+#
+#   * Redistributions of source code must retain the above copyright
+#   notice, this list of conditions and the following disclaimer.
+#   * Redistributions in binary form must reproduce the above copyright
+#   notice, this list of conditions and the following disclaimer in
+#   the documentation and/or other materials provided with the
+#   distribution.
+#   * Neither the name of Intel Corporation nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific prior written permission.
+#
+#   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+#   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+#   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+#   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+#   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+#   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+import sys
+import os
+
+source_suffix = '.rst'
+master_doc = 'index'
+
+project = 'DPDK Testpmd Application'
+copyright = '2014, Intel'
+
+version = '2.0.0'
+release = version
+pygments_style = 'sphinx'
+
+html_theme = 'default'
+html_title = 'DPDK Testpmd Application Documentation'
+html_show_sphinx = True
+html_show_copyright = True
+htmlhelp_basename = 'DPDKTestpmdApplication'
+html_add_permalinks = ''
+
+latex_preamble = """
+\\usepackage{upquote}
+\\usepackage{DejaVuSansMono}
+\\usepackage[T1]{fontenc}
+\\usepackage{helvet}
+\\renewcommand{\\familydefault}{\\sfdefault}
+
+\\RecustomVerbatimEnvironment{Verbatim}{Verbatim}{xleftmargin=5mm}
+"""
+
+latex_elements = {
+    'papersize': 'a4paper',
+    'pointsize': '11pt',
+    'preamble': latex_preamble,
+}
+
+latex_documents = [
+  ('index',
+   'dpdk_testpmd_guide.tex',
+   'The DPDK Testpmd Application Guide',
+   'Intel',
+   'manual'),
+]
+
+latex_logo = 'img/Intel-logo.png'
+
+texinfo_documents = [
+  ('index',
+   'DPDK Testpmd Application',
+   'DPDK Testpmd Application Documentation',
+   'Intel',
+   'DPDK Testpmd Application',
+   'One line description of project.',
+   'Miscellaneous'),
+]
diff --git a/mk/rte.sdkdoc.mk b/mk/rte.sdkdoc.mk
index dabc0d6..1c4dc67 100644
--- a/mk/rte.sdkdoc.mk
+++ b/mk/rte.sdkdoc.mk
@@ -38,10 +38,12 @@  endif
 
 RTE_SPHINX_BUILD = sphinx-build
 ifndef V
-RTE_SPHINX_VERBOSE := -q
+RTE_SPHINX_VERBOSE   := -q
+RTE_PDFLATEX_VERBOSE := > /dev/null 2>&1
 endif
 ifeq '$V' '0'
-RTE_SPHINX_VERBOSE := -q
+RTE_SPHINX_VERBOSE   := -q
+RTE_PDFLATEX_VERBOSE := > /dev/null 2>&1
 endif
 
 .PHONY: help
@@ -49,11 +51,11 @@  help:
 	@cat $(RTE_SDK)/doc/build-sdk-quick.txt
 	@$(MAKE) -rR showconfigs | sed 's,^,\t\t\t\t,'
 
-.PHONY: all
+.PHONY: all pdf
 all: api-html guides-html
 
 .PHONY: clean
-clean: api-html-clean guides-html-clean
+clean: api-html-clean guides-html-clean guides-latex-clean
 
 .PHONY: api-html
 api-html: api-html-clean
@@ -82,4 +84,20 @@  guides-%-clean:
 guides-%:
 	@echo 'sphinx for guides...'
 	$(Q)$(RTE_SPHINX_BUILD) -b $* $(RTE_SPHINX_VERBOSE) \
-		-c $(RTE_SDK)/doc/guides $(RTE_SDK)/doc/guides $(RTE_OUTPUT)/doc/$*/guides
+	    -c $(RTE_SDK)/doc/guides $(RTE_SDK)/doc/guides \
+	    $(RTE_OUTPUT)/doc/$*/guides
+
+pdf: pdf-rel_notes pdf-linux_gsg pdf-freebsd_gsg pdf-prog_guide \
+     pdf-sample_app_ug pdf-testpmd_app_ug
+
+pdf-%:
+	@echo 'creating' $* 'pdf ...'
+	$(Q)$(RTE_SPHINX_BUILD) -b latex $(RTE_SPHINX_VERBOSE) \
+	    -c $(RTE_SDK)/doc/guides/$*  $(RTE_SDK)/doc/guides/$* \
+	    $(RTE_OUTPUT)/doc/latex/guides/$*
+	$(Q)cp $(RTE_SDK)/doc/guides/$*/img/*.png \
+	    $(RTE_OUTPUT)/doc/latex/guides/$*
+	$(Q)perl $(RTE_SDK)/doc/api/sphinx-latex-update.pl \
+	    $(RTE_OUTPUT)/doc/latex/guides/$*/*.tex
+	$(Q)$(MAKE) -C $(RTE_OUTPUT)/doc/latex/guides/$* \
+	    all-pdf $(RTE_PDFLATEX_VERBOSE)
diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
index e8423b0..68931bb 100644
--- a/mk/rte.sdkroot.mk
+++ b/mk/rte.sdkroot.mk
@@ -101,9 +101,10 @@  testall:
 install uninstall:
 	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk $@
 
-.PHONY: doc help
+.PHONY: doc help pdf
 doc: doc-all
 help: doc-help
+pdf: doc-pdf
 doc-%:
 	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkdoc.mk $*