get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/133691/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 133691,
    "url": "https://patches.dpdk.org/api/patches/133691/?format=api",
    "web_url": "https://patches.dpdk.org/project/dpdk/patch/20231101004932.1371-4-dave@youngcopy.com/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/?format=api",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "dev.dpdk.org",
        "list_email": "dev@dpdk.org",
        "web_url": "http://core.dpdk.org",
        "scm_url": "git://dpdk.org/dpdk",
        "webscm_url": "http://git.dpdk.org/dpdk",
        "list_archive_url": "https://inbox.dpdk.org/dev",
        "list_archive_url_format": "https://inbox.dpdk.org/dev/{}",
        "commit_url_format": ""
    },
    "msgid": "<20231101004932.1371-4-dave@youngcopy.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20231101004932.1371-4-dave@youngcopy.com",
    "date": "2023-11-01T00:49:28",
    "name": "[3/3] GSG Section 2: Install and Build DPDK - Updated based on feedback",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "2cfa508e5371bfec5d97e6a8d8692b14db07ce26",
    "submitter": {
        "id": 3122,
        "url": "https://patches.dpdk.org/api/people/3122/?format=api",
        "name": "Dave Young",
        "email": "dave@youngcopy.com"
    },
    "delegate": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "https://patches.dpdk.org/project/dpdk/patch/20231101004932.1371-4-dave@youngcopy.com/mbox/",
    "series": [
        {
            "id": 30083,
            "url": "https://patches.dpdk.org/api/series/30083/?format=api",
            "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=30083",
            "date": "2023-11-01T00:49:25",
            "name": "docs: Unify Getting Started Guides v2 Updates",
            "version": 2,
            "mbox": "https://patches.dpdk.org/series/30083/mbox/"
        }
    ],
    "comments": "https://patches.dpdk.org/api/patches/133691/comments/",
    "check": "warning",
    "checks": "https://patches.dpdk.org/api/patches/133691/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@inbox.dpdk.org",
        "Delivered-To": "patchwork@inbox.dpdk.org",
        "Received": [
            "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id EDF8243258;\n\tWed,  1 Nov 2023 01:50:14 +0100 (CET)",
            "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id 09D1940ED6;\n\tWed,  1 Nov 2023 01:50:00 +0100 (CET)",
            "from mail-yb1-f176.google.com (mail-yb1-f176.google.com\n [209.85.219.176])\n by mails.dpdk.org (Postfix) with ESMTP id 1FA0E40DDB\n for <dev@dpdk.org>; Wed,  1 Nov 2023 01:49:58 +0100 (CET)",
            "by mail-yb1-f176.google.com with SMTP id\n 3f1490d57ef6-d9b720b5398so1024733276.0\n for <dev@dpdk.org>; Tue, 31 Oct 2023 17:49:58 -0700 (PDT)",
            "from localhost.localdomain\n ([2600:1700:20c0:a560:ed1f:aab2:519a:50e3])\n by smtp.gmail.com with ESMTPSA id\n c14-20020a81df0e000000b00589b653b7adsm1516144ywn.136.2023.10.31.17.49.55\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 31 Oct 2023 17:49:56 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=youngcopy-com.20230601.gappssmtp.com; s=20230601; t=1698799797;\n x=1699404597;\n darn=dpdk.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=9oaO+iHn51WEFkN2sVBPjtO76Tn4JdWowmCzVuFvZzU=;\n b=ANhZazpljjvIlY34/X0cl9/4NUFf53iIboLtoIezHI8zSAi24EvrCf5/vxxNHdlUEn\n LaxBEvOsVWdi1fC+en7dCdJCpFMWCHSxboIyg8/IhBQ0S3suaPz97T7iqKhNxXtUHuAU\n fePaBOdVJEgaZfOXmL/GZwYPrsB9B+TYmKge5Sq++qAOQCAcETmxZnCdu0OzYSRomXjr\n NatGAVA1gzlDkhuYVoICs7Z7J2vIMxm9+we6atRnKfwFQndJqTW00FjNp/fve9MjYKjE\n kLBcJcIWX4Gf3qrS+gY92QmUeP7Iovd39yrYkBH44G2HmLOU8fMNhjqGEb8L0igAOKz0\n 1jew==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20230601; t=1698799797; x=1699404597;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc\n :subject:date:message-id:reply-to;\n bh=9oaO+iHn51WEFkN2sVBPjtO76Tn4JdWowmCzVuFvZzU=;\n b=DAJJtpzJEvdeXxeU45zAQ4tkk3xCCbTnnGNoJ/NbO7sKRtxB/5Byz9+1WWRYU1dSCq\n cLk3FAOa7mybU1MZXqeIZXBSd4Osjjkrm/sTUD+00NnVKMg+oVTmFFt4+GekWJCgeayY\n 2RaOoFE2KfbI/15Sx+JWh/hLyvPNrXOZ8EnA3wD9HANZNSnDQ79iKnrB+IFBhUqHJysn\n xQowD7e4L1HgXim6jCXcBguRVn/s6w7Bi4vKENgIowYIvvrBrUp5E9DPhllVdsN7WfWi\n rMD6eGGbtmZB0RaPmpsFyBDIiOHjj3fOYcSYa2V/XHjlAGXmNwhRn+ed8Y9leuNnP944\n hh/Q==",
        "X-Gm-Message-State": "AOJu0YzMh0hyS8LoVTAWobzPi3V39aSr1vvdwohkYXEnqkMBhXu6Xio1\n C/VBDOudaR4UAmvSePsfdyEx4EMLedSkVfMRC9c=",
        "X-Google-Smtp-Source": "\n AGHT+IF2YYqvZ8/w1OYtDfPc0OX+X1U5tj+tNnDtuEU4GKAUT/ougmWD8bylaWYETm5uqtco5sBbrw==",
        "X-Received": "by 2002:a81:9850:0:b0:5a7:af9d:c313 with SMTP id\n p77-20020a819850000000b005a7af9dc313mr10020367ywg.0.1698799796908;\n Tue, 31 Oct 2023 17:49:56 -0700 (PDT)",
        "From": "David Young <dave@youngcopy.com>",
        "To": "dev@dpdk.org",
        "Cc": "Bruce Richardson <bruce.richardson@intel.com>,\n Aaron Conole <aconole@redhat.com>, David Young <dave@youngcopy.com>",
        "Subject": "[PATCH 3/3] GSG Section 2: Install and Build DPDK - Updated based on\n feedback",
        "Date": "Tue, 31 Oct 2023 20:49:28 -0400",
        "Message-ID": "<20231101004932.1371-4-dave@youngcopy.com>",
        "X-Mailer": "git-send-email 2.41.0.windows.1",
        "In-Reply-To": "<20231101004932.1371-1-dave@youngcopy.com>",
        "References": "<20231101004932.1371-1-dave@youngcopy.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=y",
        "Content-Transfer-Encoding": "8bit",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "DPDK patches and discussions <dev.dpdk.org>",
        "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "List-Archive": "<http://mails.dpdk.org/archives/dev/>",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org"
    },
    "content": "Merged windows_install_build.rst into building_from_sources.rst\n---\n .../building_from_sources.rst                 | 124 ++++++++++++++----\n .../install_and_build/index.rst               |   3 +-\n .../windows_install_build.rst                 |  93 -------------\n 3 files changed, 96 insertions(+), 124 deletions(-)\n delete mode 100644 doc/guides/getting_started_guide/install_and_build/windows_install_build.rst",
    "diff": "diff --git a/doc/guides/getting_started_guide/install_and_build/building_from_sources.rst b/doc/guides/getting_started_guide/install_and_build/building_from_sources.rst\nindex e4ee8e436d..554d604109 100644\n--- a/doc/guides/getting_started_guide/install_and_build/building_from_sources.rst\n+++ b/doc/guides/getting_started_guide/install_and_build/building_from_sources.rst\n@@ -6,8 +6,7 @@\n Building and Installing DPDK from Sources\n =========================================\n \n-This chapter provides a comprehensive guide for building DPDK from sources on both\n-Linux and FreeBSD platforms. It covers the necessary steps, prerequisites, \n+This chapter provides a comprehensive guide for building DPDK from sources on Linux, FreeBSD, and Windows. It covers the necessary steps, prerequisites, \n and considerations for different architectures and compilers.\n \n Required Tools\n@@ -18,91 +17,158 @@ To build DPDK, you'll need the following tools:\n - A C compiler like ``gcc`` (version 5+) or ``clang`` (version 3.6+)\n - ``pkg-config`` or ``pkgconf``\n - Python 3.6 or later\n-- ``meson`` (version 0.53.2+) and ``ninja``\n+- ``meson`` (version 0.57.0) and ``ninja``\n - ``pyelftools`` (version 0.22+)\n \n-Here's how to install them:\n+Platform-Specific Tool Installation\n+-----------------------------------\n \n Linux\n ^^^^^\n \n+Common Tools for All Distributions:\n+\n+.. code-block:: bash\n+\n+   sudo apt install gcc pkg-config python3 meson ninja pyelftools\n+\n Alpine\n \n .. code-block:: bash\n \n    sudo apk add alpine-sdk bsd-compat-headers\n-   pip install meson ninja\n \n-Debian and Ubuntu and derivatives\n+Debian, Ubuntu, and derivatives\n \n .. code-block:: bash\n \n    sudo apt install build-essential\n-   pip install meson ninja\n \n Fedora and RedHat Enterprise Linux RHEL\n \n .. code-block:: bash\n \n    sudo dnf groupinstall \"Development Tools\"\n-   pip install meson ninja\n \n openSUSE\n \n .. code-block:: bash\n \n    sudo zypper install -t pattern devel_basis python3-pyelftools\n-   pip install meson ninja\n \n FreeBSD\n ^^^^^^^\n \n-FreeBSD (as root)\n+Common Tools for FreeBSD:\n \n .. code-block:: bash\n \n-   pkg install meson pkgconf py38-pyelftools\n+   pkg install gcc pkgconf python3 meson ninja pyelftools\n \n-Note: If you're using FreeBSD, you'll also need kernel sources. Make sure they're included during the FreeBSD installation.\n+.. note::\n \n-Getting the DPDK Source\n------------------------\n+   If you're using FreeBSD, make sure kernel sources are included during the FreeBSD installation.\n \n-Download the DPDK source code from the official repository \n-``https://fast.dpdk.org/rel/``.\n+Windows System Requirements\n+^^^^^^^^^^^^^^^^^^^^^^^^^^^\n \n-Use ``wget`` to grab the DPDK version::\n+Building the DPDK and its applications on Windows requires one of the following\n+environments:\n \n-        wget https://fast.dpdk.org/rel/dpdk-<version>.tar.xz\n+- The Clang-LLVM C compiler and Microsoft MSVC linker.\n+- The MinGW-w64 toolchain (either native or cross).\n \n-Extract the downloaded archive:\n+The Meson Build system is used to prepare the sources for compilation with the Ninja backend.\n \n-.. code-block:: bash\n+Option 1: Clang-LLVM C Compiler and Microsoft MSVC Linker\n+\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n+\n+1. Install the Compiler: Download and install the Clang compiler from the \n+   `LLVM website <http://releases.llvm.org/>`_.\n+\n+2. Install the Linker: Download and install the Build Tools for Visual Studio from the\n+   `Microsoft website <https://visualstudio.microsoft.com/downloads/>`_.\n+   When installing build tools, select the “Visual C++ build tools” option and make sure\n+   the Windows SDK is selected.\n \n-   tar -xvf dpdk-<version>.tar.gz\n+Option 2: MinGW-w64 Toolchain\n+\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\n \n-Navigate to the DPDK directory:\n+1. On Linux (for cross-compilation): Install MinGW-w64 via a package manager. \n+   Version 4.0.4 for Ubuntu 16.04 cannot be used due to a MinGW-w64 bug.\n+\n+2. On Windows: Obtain the latest version installer from the\n+   `MinGW-w64 repository <https://mingw-w64.org/doku.php>`_. \n+   Any thread model (POSIX or Win32) can be chosen, DPDK does not rely on it. \n+   Install to a folder without spaces in its name, like ``C:\\MinGW``. \n+   This path is assumed for the rest of this guide.\n+\n+Install the Build System\n+^^^^^^^^^^^^^^^^^^^^^^^^\n+\n+Download and install the build system from the\n+`Meson website <http://mesonbuild.com/Getting-meson.html#installing-meson-and-ninja-with-the-msi-installer>`_.\n+A good option to choose is the MSI installer for both meson and ninja together.\n+Recommended version is either Meson 0.57.0 (baseline) or the latest release.\n+\n+Getting the DPDK Source\n+-----------------------\n+\n+Linux and FreeBSD\n+^^^^^^^^^^^^^^^^^\n \n .. code-block:: bash\n \n+   wget https://fast.dpdk.org/rel/dpdk-<version>.tar.xz\n+   tar -xvf dpdk-<version>.tar.xz\n    cd dpdk-<version>\n \n+Windows\n+^^^^^^^\n+\n+Download the DPDK source code from `DPDK's official website <https://www.dpdk.org/>`_ or clone the repository using a Git client. Extract the downloaded archive, if applicable, and navigate to the DPDK directory.\n+\n+Navigate to the directory where the DPDK source code is located:\n+\n+.. code-block:: bash\n+\n+   cd C:\\path\\to\\dpdk-<version>\n+\n Building DPDK\n -------------\n \n-Configure the build based on your needs, hardware, and environment. \n-This might include setting specific flags or options. For example: “meson setup -Dbuildtype=debugoptimized build”. Then compile using “ninja” and install using “meson install”.\n+Linux and FreeBSD\n+^^^^^^^^^^^^^^^^^\n \n .. code-block:: bash\n \n+   meson build\n    ninja -C build\n-   cd build\n-   sudo ninja install\n-   ldconfig\n \n-For detailed information on Meson build configuration options specific to DPDK, see :ref:`DPDK Meson Build Configuration Options <dpdk_meson_build_options>`.\n+Windows\n+^^^^^^^\n+\n+**Option 1: Using Clang-LLVM**\n+\n+.. code-block:: bash\n+\n+   set CC=clang\n+   meson setup -Dexamples=helloworld build\n+   meson compile -C build\n+\n+**Option 2: Using MinGW-w64**\n+\n+.. code-block:: bash\n+\n+   set PATH=C:\\MinGW\\mingw64\\bin;%PATH%\n+   meson setup -Dexamples=helloworld build\n+   meson compile -C build\n+\n+.. note::\n+\n+   For detailed information on Meson build configuration options specific to DPDK, see :ref:`DPDK Meson Build Configuration Options <dpdk_meson_build_options>`.\n \n Cross-Compilation Instructions for Different Architectures\n ----------------------------------------------------------\n \n-For instructions on building DPDK for ARM64, LoongArch, and RISC-V, refer to :ref:`cross_compile_dpdk`.\n+For instructions on building DPDK for ARM64, LoongArch, and RISC-V, refer to :ref:`cross_compile_dpdk`.\n\\ No newline at end of file\ndiff --git a/doc/guides/getting_started_guide/install_and_build/index.rst b/doc/guides/getting_started_guide/install_and_build/index.rst\nindex f4d8740fb6..48e438282f 100644\n--- a/doc/guides/getting_started_guide/install_and_build/index.rst\n+++ b/doc/guides/getting_started_guide/install_and_build/index.rst\n@@ -11,5 +11,4 @@ Install and Build DPDK\n \n     \n     installing_prebuilt_packages\n-    building_from_sources\n-    windows_install_build\n\\ No newline at end of file\n+    building_from_sources\n\\ No newline at end of file\ndiff --git a/doc/guides/getting_started_guide/install_and_build/windows_install_build.rst b/doc/guides/getting_started_guide/install_and_build/windows_install_build.rst\ndeleted file mode 100644\nindex ea0e131766..0000000000\n--- a/doc/guides/getting_started_guide/install_and_build/windows_install_build.rst\n+++ /dev/null\n@@ -1,93 +0,0 @@\n-..  SPDX-License-Identifier: BSD-3-Clause\n-    Copyright(c) 2010-2015 Intel Corporation.\n-\n-.. _windows_install_build:\n-\n-Windows DPDK Build\n-==================\n-\n-Before you begin the process of building DPDK on Windows, \n-make sure your system meets all the necessary requirements as outlined below.\n-\n-Windows System Requirements\n----------------------------\n-\n-Building the DPDK and its applications on Windows requires one of the following\n-environments:\n-\n-- The Clang-LLVM C compiler and Microsoft MSVC linker.\n-- The MinGW-w64 toolchain (either native or cross).\n-\n-The Meson Build system is used to prepare the sources for compilation with the Ninja backend.\n-\n-Option 1: Clang-LLVM C Compiler and Microsoft MSVC Linker\n----------------------------------------------------------\n-\n-1. Install the Compiler: Download and install the clang compiler from the \n-`LLVM website <http://releases.llvm.org/>`_.\n-\n-2. Install the Linker: Download and install the Build Tools for Visual Studio from the\n-`Microsoft website <https://visualstudio.microsoft.com/downloads/>`_. \n-When installing build tools, select the “Visual C++ build tools” option and make sure\n-the Windows SDK is selected.\n-\n-Option 2: MinGW-w64 Toolchain\n------------------------------\n-\n-1. On Linux (for cross-compilation): Install MinGW-w64 via a package manager. \n-Version 4.0.4 for Ubuntu 16.04 cannot be used due to a MinGW-w64 bug.\n-\n-2. On Windows: Obtain the latest version installer from the\n-`MinGW-w64 repository <https://mingw-w64.org/doku.php>`_. \n-Any thread model (POSIX or Win32) can be chosen, DPDK does not rely on it. \n-Install to a folder without spaces in its name, like ``C:\\MinGW``. \n-This path is assumed for the rest of this guide.\n-\n-Install the Build System\n-------------------------\n-\n-Download and install the build system from the\n-`Meson website <http://mesonbuild.com/Getting-meson.html#installing-meson-and-ninja-with-the-msi-installer>`_. \n-A good option to choose is the MSI installer for both meson and ninja together.\n-Recommended version is either Meson 0.57.0 (baseline) or the latest release.\n-\n-Install the Backend\n--------------------\n-\n-If using Ninja, download and install the backend from the\n-`Ninja website <https://ninja-build.org/>`_ or install along with the meson build\n-system. \n-\n-Once you have verified that your system meets these requirements, \n-you can proceed with the following steps to build DPDK.\n-\n-Build the Code\n---------------\n-\n-The build environment is setup to build the EAL and the helloworld example by default.\n-To compile the examples, the flag -Dexamples is required.\n-\n-**Option 1. Native Build on Windows**\n-\n-When using Clang-LLVM, specifying the compiler might be required to complete the meson\n-command::\n-\n-        set CC=clang\n-\n-When using MinGW-w64, it is sufficient to have toolchain executables in PATH::\n-\n-        set PATH=C:\\MinGW\\mingw64\\bin;%PATH%\n-\n-To compile the examples::\n-\n-        cd C:\\Users\\me\\dpdk\n-        meson -Dexamples=helloworld build\n-        ninja -C build\n-\n-**Option 2. Cross-Compile with MinGW-w64**\n-\n-The cross-file option must be specified for Meson. \n-Depending on the distribution, paths in this file may need adjustments::\n-\n-        meson --cross-file config/x86/cross-mingw -Dexamples=helloworld build\n-        ninja -C build\n\\ No newline at end of file\n",
    "prefixes": [
        "3/3"
    ]
}