[v5,7/8] doc: add documention for windows

Message ID 20190326060238.9884-8-anand.rawat@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Thomas Monjalon
Headers
Series HelloWorld example for windows |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Anand Rawat March 26, 2019, 6:02 a.m. UTC
  Added documentation to build helloworld example
on windows using meson and clang. Updated the
maintainers list to include windows maintainers.

Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com>
Signed-off-by: Anand Rawat <anand.rawat@intel.com>
Reviewed-by: Jeff Shaw <jeffrey.b.shaw@intel.com>
Reviewed-by: Ranjit Menon <ranjit.menon@intel.com>
---
 MAINTAINERS                           |  7 +++
 doc/guides/index.rst                  |  3 +-
 doc/guides/windows_gsg/build_dpdk.rst | 73 +++++++++++++++++++++++++++
 doc/guides/windows_gsg/index.rst      | 14 +++++
 doc/guides/windows_gsg/intro.rst      | 20 ++++++++
 5 files changed, 116 insertions(+), 1 deletion(-)
 create mode 100644 doc/guides/windows_gsg/build_dpdk.rst
 create mode 100644 doc/guides/windows_gsg/index.rst
 create mode 100644 doc/guides/windows_gsg/intro.rst
  

Comments

Jerin Jacob Kollanukkaran March 26, 2019, 10:27 a.m. UTC | #1
On Mon, 2019-03-25 at 23:02 -0700, Anand Rawat wrote:
> Added documentation to build helloworld example
> on windows using meson and clang. Updated the
> maintainers list to include windows maintainers.
> 
> Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com>
> Signed-off-by: Anand Rawat <anand.rawat@intel.com>
> Reviewed-by: Jeff Shaw <jeffrey.b.shaw@intel.com>
> Reviewed-by: Ranjit Menon <ranjit.menon@intel.com>

Verified the build steps.

Tested-by: Jerin Jacob <jerinj@marvell.com>
  
David Marchand March 26, 2019, 10:37 a.m. UTC | #2
On Tue, Mar 26, 2019 at 7:04 AM Anand Rawat <anand.rawat@intel.com> wrote:

> Added documentation to build helloworld example
> on windows using meson and clang. Updated the
> maintainers list to include windows maintainers.
>

Can you fix the patch subject ?
  
Harini Ramakrishnan March 26, 2019, 4:33 p.m. UTC | #3
-----Original Message-----
From: dev <dev-bounces@dpdk.org> On Behalf Of Anand Rawat
Sent: Monday, March 25, 2019 11:03 PM
To: dev@dpdk.org
Cc: anand.rawat@intel.com; pallavi.kadam@intel.com; ranjit.menon@intel.com; jeffrey.b.shaw@intel.com; bruce.richardson@intel.com; thomas@monjalon.net
Subject: [dpdk-dev] [PATCH v5 7/8] doc: add documention for windows

Added documentation to build helloworld example on windows using meson and clang. Updated the maintainers list to include windows maintainers.

Signed-off-by: Pallavi Kadam <pallavi.kadam@intel.com>
Signed-off-by: Anand Rawat <anand.rawat@intel.com>
Reviewed-by: Jeff Shaw <jeffrey.b.shaw@intel.com>
Reviewed-by: Ranjit Menon <ranjit.menon@intel.com>
Acked-by: Harini Ramakrishnan <harini.ramakrishnan@microsoft.com>
---
 MAINTAINERS                           |  7 +++
 doc/guides/index.rst                  |  3 +-
 doc/guides/windows_gsg/build_dpdk.rst | 73 +++++++++++++++++++++++++++
 doc/guides/windows_gsg/index.rst      | 14 +++++
 doc/guides/windows_gsg/intro.rst      | 20 ++++++++
 5 files changed, 116 insertions(+), 1 deletion(-)  create mode 100644 doc/guides/windows_gsg/build_dpdk.rst
 create mode 100644 doc/guides/windows_gsg/index.rst  create mode 100644 doc/guides/windows_gsg/intro.rst

diff --git a/MAINTAINERS b/MAINTAINERS
index 452b8eb82..0080c8f4c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -272,6 +272,13 @@ FreeBSD UIO
 M: Bruce Richardson <bruce.richardson@intel.com>
 F: kernel/freebsd/nic_uio/
 
+Windows support
+M: Harini Ramakrishnan <harini.ramakrishnan@microsoft.com>
+M: Omar Cardona <ocardona@microsoft.com>
+M: Anand Rawat <anand.rawat@intel.com>
+M: Ranjit Menon <ranjit.menon@intel.com>
+F: lib/librte_eal/windows/
+
 
 Core Libraries
 --------------
diff --git a/doc/guides/index.rst b/doc/guides/index.rst index 8a9ed65c8..8a1601b27 100644
--- a/doc/guides/index.rst
+++ b/doc/guides/index.rst
@@ -1,5 +1,5 @@
 ..  SPDX-License-Identifier: BSD-3-Clause
-    Copyright(c) 2010-2014 Intel Corporation.
+    Copyright(c) 2010-2019 Intel Corporation.
 
 DPDK documentation
 ==================
@@ -9,6 +9,7 @@ DPDK documentation
 
    linux_gsg/index
    freebsd_gsg/index
+   windows_gsg/index
    sample_app_ug/index
    prog_guide/index
    howto/index
diff --git a/doc/guides/windows_gsg/build_dpdk.rst b/doc/guides/windows_gsg/build_dpdk.rst
new file mode 100644
index 000000000..b88eb76c9
--- /dev/null
+++ b/doc/guides/windows_gsg/build_dpdk.rst
@@ -0,0 +1,73 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2019 Intel Corporation.
+
+Compiling the DPDK Target from Source
+=====================================
+
+System Requirements
+-------------------
+
+The DPDK and its applications require the Clang-LLVM* C compiler and MSVC* linker.
+The Meson* Build system is used to prepare the sources for compilation with the Ninja backend.
+
+\*Other names and brands may be claimed as the property of others.
+
+Install the Compiler
+--------------------
+
+Download and install the clang compiler from `LLVM* website <https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Freleases.llvm.org%2Fdownload.html&amp;data=02%7C01%7CHarini.Ramakrishnan%40microsoft.com%7Cc15cbeeecc1444e67dd508d6b1b0d207%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636891770331298978&amp;sdata=DlwCRrthiQFHfEUDRAvnNC6d3Id1XVlC6GtM4vYNFK8%3D&amp;reserved=0>`_.
+For example, Clang-LLVM direct download link::
+
+	
+https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Freleas
+es.llvm.org%2F7.0.1%2FLLVM-7.0.1-win64.exe&amp;data=02%7C01%7CHarini.Ra
+makrishnan%40microsoft.com%7Cc15cbeeecc1444e67dd508d6b1b0d207%7C72f988b
+f86f141af91ab2d7cd011db47%7C1%7C0%7C636891770331298978&amp;sdata=JYeD4D
+hXDwjW7dIpJYGCNHFPbTKkKXY6IAzXtdI5%2BTk%3D&amp;reserved=0
+
+
+Install the Linker
+------------------
+
+Download and install the Build Tools for Visual Studio to link and build the files on windows, from `Microsoft* website <https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fvisualstudio.microsoft.com%2Fdownloads&amp;data=02%7C01%7CHarini.Ramakrishnan%40microsoft.com%7Cc15cbeeecc1444e67dd508d6b1b0d207%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636891770331298978&amp;sdata=YgjrsjgivAcQTEsNUfAUESSrrwsc7qJQx3E0hDm00rQ%3D&amp;reserved=0>`_.
+When installing build tools, select the "Visual C++ build tools" option and ensure the Windows SDK is selected.
+
+
+Install the Build System
+------------------------
+
+Download and install the build system from `Meson* website <https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmesonbuild.com%2FGetting-meson.html&amp;data=02%7C01%7CHarini.Ramakrishnan%40microsoft.com%7Cc15cbeeecc1444e67dd508d6b1b0d207%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636891770331298978&amp;sdata=aYcX660Y7M3frO7uQq%2BbvBc5egx5ij9c3Si7ZTC0df8%3D&amp;reserved=0>`_.
+A good option to choose is the MSI installer for both meson and ninja together::
+
+	
+https://nam06.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmesonb
+uild.com%2FGetting-meson.html%23installing-meson-and-ninja-with-the-msi
+-installer%2522&amp;data=02%7C01%7CHarini.Ramakrishnan%40microsoft.com%
+7Cc15cbeeecc1444e67dd508d6b1b0d207%7C72f988bf86f141af91ab2d7cd011db47%7
+C1%7C0%7C636891770331298978&amp;sdata=CsFkIeLQM9XK4P1lWAAdo%2FeSXDP7WDe
+5BCdmhb8CMfA%3D&amp;reserved=0
+
+Install the Backend
+-------------------
+
+If using Ninja, download and install the backend from `Ninja* website 
+<https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fninja-build.org%2F&amp;data=02%7C01%7CHarini.Ramakrishnan%40microsoft.com%7Cc15cbeeecc1444e67dd508d6b1b0d207%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636891770331298978&amp;sdata=S5H8HQkxHWOCCzWzGUimF1ry1dDTVnohDDJD%2FRdjJ7E%3D&amp;reserved=0>`_ or install along with the meson build system.
+
+Build the code
+--------------
+
+The build environment is setup to build the EAL and the helloworld 
+example by default.
+
+Using the ninja backend
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. code-block:: console
+
+    cd C:\Users\me\dpdk
+    meson build
+    cd build
+    ninja
+
+Run the helloworld example
+==========================
+
+Navigate to the build directory and run `dpdk-helloworld.exe`.
+
+.. code-block:: console
+
+    cd C:\Users\me\dpdk\build
+    helloworld.exe
+    hello from core 1
+    hello from core 3
+    hello from core 0
+    hello from core 2
diff --git a/doc/guides/windows_gsg/index.rst b/doc/guides/windows_gsg/index.rst
new file mode 100644
index 000000000..d9b7990a8
--- /dev/null
+++ b/doc/guides/windows_gsg/index.rst
@@ -0,0 +1,14 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2019 Intel Corporation.
+
+.. _windows_gsg:
+
+Getting Started Guide for Windows
+=================================
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
+
+    intro
+    build_dpdk
diff --git a/doc/guides/windows_gsg/intro.rst b/doc/guides/windows_gsg/intro.rst
new file mode 100644
index 000000000..a0285732d
--- /dev/null
+++ b/doc/guides/windows_gsg/intro.rst
@@ -0,0 +1,20 @@
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2019 Intel Corporation.
+
+Introduction
+============
+
+This document contains instructions for installing and configuring the 
+Data Plane Development Kit (DPDK) software. The document describes how 
+to compile and run a DPDK application in a Windows* OS application 
+environment, without going deeply into detail.
+
+\*Other names and brands may be claimed as the property of others.
+
+Limitations
+===========
+
+DPDK for Windows is currently a work in progress. Not all DPDK source 
+files compile. Support is being added in pieces so as to limit the 
+overall scope of any individual patch series. The goal is to be able to 
+run any DPDK application natively on Windows.
--
2.17.1.windows.2
  
Anand Rawat March 26, 2019, 6:29 p.m. UTC | #4
On 3/26/2019 3:37 AM, David Marchand wrote:
> On Tue, Mar 26, 2019 at 7:04 AM Anand Rawat <anand.rawat@intel.com 
> <mailto:anand.rawat@intel.com>> wrote:
> 
>     Added documentation to build helloworld example
>     on windows using meson and clang. Updated the
>     maintainers list to include windows maintainers.
> 
> 
> Can you fix the patch subject ?
> 
> -- 
> David Marchand

Will correct in the next version, Thanks.
  

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index 452b8eb82..0080c8f4c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -272,6 +272,13 @@  FreeBSD UIO
 M: Bruce Richardson <bruce.richardson@intel.com>
 F: kernel/freebsd/nic_uio/
 
+Windows support
+M: Harini Ramakrishnan <harini.ramakrishnan@microsoft.com>
+M: Omar Cardona <ocardona@microsoft.com>
+M: Anand Rawat <anand.rawat@intel.com>
+M: Ranjit Menon <ranjit.menon@intel.com>
+F: lib/librte_eal/windows/
+
 
 Core Libraries
 --------------
diff --git a/doc/guides/index.rst b/doc/guides/index.rst
index 8a9ed65c8..8a1601b27 100644
--- a/doc/guides/index.rst
+++ b/doc/guides/index.rst
@@ -1,5 +1,5 @@ 
 ..  SPDX-License-Identifier: BSD-3-Clause
-    Copyright(c) 2010-2014 Intel Corporation.
+    Copyright(c) 2010-2019 Intel Corporation.
 
 DPDK documentation
 ==================
@@ -9,6 +9,7 @@  DPDK documentation
 
    linux_gsg/index
    freebsd_gsg/index
+   windows_gsg/index
    sample_app_ug/index
    prog_guide/index
    howto/index
diff --git a/doc/guides/windows_gsg/build_dpdk.rst b/doc/guides/windows_gsg/build_dpdk.rst
new file mode 100644
index 000000000..b88eb76c9
--- /dev/null
+++ b/doc/guides/windows_gsg/build_dpdk.rst
@@ -0,0 +1,73 @@ 
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2019 Intel Corporation.
+
+Compiling the DPDK Target from Source
+=====================================
+
+System Requirements
+-------------------
+
+The DPDK and its applications require the Clang-LLVM* C compiler and MSVC* linker.
+The Meson* Build system is used to prepare the sources for compilation with the Ninja backend.
+
+\*Other names and brands may be claimed as the property of others.
+
+Install the Compiler
+--------------------
+
+Download and install the clang compiler from `LLVM* website <http://releases.llvm.org/download.html>`_.
+For example, Clang-LLVM direct download link::
+
+	http://releases.llvm.org/7.0.1/LLVM-7.0.1-win64.exe
+
+
+Install the Linker
+------------------
+
+Download and install the Build Tools for Visual Studio to link and build the files on windows, from `Microsoft* website <https://visualstudio.microsoft.com/downloads>`_.
+When installing build tools, select the "Visual C++ build tools" option and ensure the Windows SDK is selected.
+
+
+Install the Build System
+------------------------
+
+Download and install the build system from `Meson* website <http://mesonbuild.com/Getting-meson.html>`_.
+A good option to choose is the MSI installer for both meson and ninja together::
+
+	http://mesonbuild.com/Getting-meson.html#installing-meson-and-ninja-with-the-msi-installer%22
+
+Install the Backend
+-------------------
+
+If using Ninja, download and install the backend from `Ninja* website <https://ninja-build.org/>`_ or
+install along with the meson build system.
+
+Build the code
+--------------
+
+The build environment is setup to build the EAL and the helloworld example by
+default.
+
+Using the ninja backend
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+.. code-block:: console
+
+    cd C:\Users\me\dpdk
+    meson build
+    cd build
+    ninja
+
+Run the helloworld example
+==========================
+
+Navigate to the build directory and run `dpdk-helloworld.exe`.
+
+.. code-block:: console
+
+    cd C:\Users\me\dpdk\build
+    helloworld.exe
+    hello from core 1
+    hello from core 3
+    hello from core 0
+    hello from core 2
diff --git a/doc/guides/windows_gsg/index.rst b/doc/guides/windows_gsg/index.rst
new file mode 100644
index 000000000..d9b7990a8
--- /dev/null
+++ b/doc/guides/windows_gsg/index.rst
@@ -0,0 +1,14 @@ 
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2019 Intel Corporation.
+
+.. _windows_gsg:
+
+Getting Started Guide for Windows
+=================================
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
+
+    intro
+    build_dpdk
diff --git a/doc/guides/windows_gsg/intro.rst b/doc/guides/windows_gsg/intro.rst
new file mode 100644
index 000000000..a0285732d
--- /dev/null
+++ b/doc/guides/windows_gsg/intro.rst
@@ -0,0 +1,20 @@ 
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2019 Intel Corporation.
+
+Introduction
+============
+
+This document contains instructions for installing and configuring the Data
+Plane Development Kit (DPDK) software. The document describes how to compile
+and run a DPDK application in a Windows* OS application environment, without
+going deeply into detail.
+
+\*Other names and brands may be claimed as the property of others.
+
+Limitations
+===========
+
+DPDK for Windows is currently a work in progress. Not all DPDK source files
+compile. Support is being added in pieces so as to limit the overall scope
+of any individual patch series. The goal is to be able to run any DPDK
+application natively on Windows.