get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 65716,
    "url": "http://patches.dpdk.org/api/patches/65716/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200211011942.1569573-4-thomas@monjalon.net/",
    "project": {
        "id": 1,
        "url": "http://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": "<20200211011942.1569573-4-thomas@monjalon.net>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200211011942.1569573-4-thomas@monjalon.net",
    "date": "2020-02-11T01:19:40",
    "name": "[v3,3/5] net/mlx: workaround static linkage with meson",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "e7f1338fdd465af51f21f89b79a347769d1289b8",
    "submitter": {
        "id": 685,
        "url": "http://patches.dpdk.org/api/people/685/?format=api",
        "name": "Thomas Monjalon",
        "email": "thomas@monjalon.net"
    },
    "delegate": {
        "id": 3268,
        "url": "http://patches.dpdk.org/api/users/3268/?format=api",
        "username": "rasland",
        "first_name": "Raslan",
        "last_name": "Darawsheh",
        "email": "rasland@nvidia.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20200211011942.1569573-4-thomas@monjalon.net/mbox/",
    "series": [
        {
            "id": 8489,
            "url": "http://patches.dpdk.org/api/series/8489/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=8489",
            "date": "2020-02-11T01:19:38",
            "name": "mlx ibverbs linking in meson",
            "version": 3,
            "mbox": "http://patches.dpdk.org/series/8489/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/65716/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/65716/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 dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id F1868A051C;\n\tTue, 11 Feb 2020 02:20:31 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 4E0F41BFA2;\n\tTue, 11 Feb 2020 02:20:06 +0100 (CET)",
            "from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com\n [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id 33DC91BF98\n for <dev@dpdk.org>; Tue, 11 Feb 2020 02:20:04 +0100 (CET)",
            "from compute1.internal (compute1.nyi.internal [10.202.2.41])\n by mailout.nyi.internal (Postfix) with ESMTP id D934521F15;\n Mon, 10 Feb 2020 20:20:03 -0500 (EST)",
            "from mailfrontend1 ([10.202.2.162])\n by compute1.internal (MEProxy); Mon, 10 Feb 2020 20:20:03 -0500",
            "from xps.monjalon.net (184.203.134.77.rev.sfr.net [77.134.203.184])\n by mail.messagingengine.com (Postfix) with ESMTPA id 19603328005A;\n Mon, 10 Feb 2020 20:20:03 -0500 (EST)"
        ],
        "DKIM-Signature": [
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h=\n from:to:cc:subject:date:message-id:in-reply-to:references\n :mime-version:content-transfer-encoding; s=mesmtp; bh=VZLzkexi4U\n aBvdjvaQ0Cz4BkHUvPOImJH1nnPTC/MKo=; b=pOqKLMiS0w71hiYMt/98aGQOyv\n BnLmez8ekogGOmk2xfy1hnTEX30n+ZRQDgKTacWwuS88RpEltLlMX/ssQWmdcA+l\n cMMGCjAqI4XEK5yEGuW/OT/iQ/U+MAHMaLr6YJJCysfE2iREb4FtA88+KM6UFXPp\n xMf1on1rAfIIHBoYA=",
            "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n messagingengine.com; h=cc:content-transfer-encoding:date:from\n :in-reply-to:message-id:mime-version:references:subject:to\n :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=\n fm2; bh=VZLzkexi4UaBvdjvaQ0Cz4BkHUvPOImJH1nnPTC/MKo=; b=cqDs83GM\n a1JWSoNcmGlPRRBRHeu0Hrp/szBFXKfQG6b8qTenJMTvhpKhnAknaSdsuLKWj6Vl\n 630BQ1ae3gaWtWgfN4Hg3EMmjmQbmqypg2YjPQB9vmd4vQtz9OrpUmv4P1eOIQ5C\n AfacXcQXbbL58p0zLnKVYHXlFDfzfddfEjVD76AY4+IE16vDqiWTCbeVB3jn/3M0\n R29W86i+SF0DlZE75+lxS8hzZURwXfUmepNa5frrM3CQNr3/NqKA4cOl/ZB+2m5Q\n qJy09yyfB8RU76KCmN+hNS403M5yqFdMqXWKaddHK4lR+F+G0ZPfjn0cSdm0KC3N\n n1LzBaue6a3Aiw=="
        ],
        "X-ME-Sender": "<xms:QwFCXioa47HWmybkvXKTtokicRcM8qBohcd27FMsezTDJFh7c8KtYQ>",
        "X-ME-Proxy-Cause": "\n gggruggvucftvghtrhhoucdtuddrgedugedriedvgdefvdcutefuodetggdotefrodftvf\n curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu\n uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc\n fjughrpefhvffufffkofgjfhgggfestdekredtredttdenucfhrhhomhepvfhhohhmrghs\n ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucffoh\n hmrghinhepghhithhhuhgsrdgtohhmnecukfhppeejjedrudefgedrvddtfedrudekgeen\n ucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehthhhomh\n grshesmhhonhhjrghlohhnrdhnvght",
        "X-ME-Proxy": "<xmx:QwFCXmDz1tkiHDUeDWMD66ZD_SbFzdpOturV63a00klNocUq7IfFLQ>\n <xmx:QwFCXnbG2pawDdRd8rurc3EdZlLslMjNhu6j8Znctppfo0D1b7B2mQ>\n <xmx:QwFCXh4XT7Ulu7FiJgv2vgtRN1e8sCCWoZW58MPpCY9nDd2cs9mh1A>\n <xmx:QwFCXs1WnIgR_h5QRjl1OvtQ3RK1KuBFPqbc8su94AFKxqOJe20XYA>",
        "From": "Thomas Monjalon <thomas@monjalon.net>",
        "To": "dev@dpdk.org",
        "Cc": "bruce.richardson@intel.com, Matan Azrad <matan@mellanox.com>,\n Shahaf Shuler <shahafs@mellanox.com>,\n Viacheslav Ovsiienko <viacheslavo@mellanox.com>",
        "Date": "Tue, 11 Feb 2020 02:19:40 +0100",
        "Message-Id": "<20200211011942.1569573-4-thomas@monjalon.net>",
        "X-Mailer": "git-send-email 2.25.0",
        "In-Reply-To": "<20200211011942.1569573-1-thomas@monjalon.net>",
        "References": "<20200127154402.4008069-1-thomas@monjalon.net>\n <20200211011942.1569573-1-thomas@monjalon.net>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH v3 3/5] net/mlx: workaround static linkage with\n\tmeson",
        "X-BeenThere": "dev@dpdk.org",
        "X-Mailman-Version": "2.1.15",
        "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",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "If ibverbs_link is static and the application choose to link DPDK\nas static libraries, both PMD and ibverbs libraries must be linked\nas static libraries. And the dependencies of ibverbs (netlink) must\nstill be linked as shared libraries.\n\nUnfortunately, meson forget about the static requirement for ibverbs\nwhen generating the .pc file.\nAs a result, libibverbs, libmlx4, libmlx5 are listed in Requires.private\nsection (allowing to be linked as shared libraries) and libnl is missing.\n\nA fix is in progress for meson, but anyway we will have to live without\nsuch a fix until a better version of meson is widely available:\n\thttps://github.com/mesonbuild/meson/pull/6393\n\nIn order to avoid meson suggesting shared libraries in the section\nRequires.private of the .pc file, the dependency object is recreated\nwith declare_dependency():\n\t- cflags are extracted the libibverbs.pc\n\t- ldflags, from libibverbs.pc, are processed to force\n\tstatic flavor of ibverbs libraries, thanks to this syntax:\n\t\t\t-l:libfoo.a\n\nFixes: 83fff714bd27 (\"net/mlx: add static ibverbs linkage with meson\")\n\nSigned-off-by: Thomas Monjalon <thomas@monjalon.net>\nSigned-off-by: Bruce Richardson <bruce.richardson@intel.com>\n---\n buildtools/meson.build          |  2 ++\n drivers/common/mlx5/meson.build | 12 +++++++++++-\n drivers/net/mlx4/meson.build    | 14 ++++++++++++--\n 3 files changed, 25 insertions(+), 3 deletions(-)",
    "diff": "diff --git a/buildtools/meson.build b/buildtools/meson.build\nindex 0f563d89a3..4e3541b0d7 100644\n--- a/buildtools/meson.build\n+++ b/buildtools/meson.build\n@@ -3,9 +3,11 @@\n \n subdir('pmdinfogen')\n \n+pkgconf = find_program('pkg-config', 'pkgconf')\n pmdinfo = find_program('gen-pmdinfo-cfile.sh')\n list_dir_globs = find_program('list-dir-globs.py')\n check_experimental_syms = find_program('check-experimental-syms.sh')\n+ldflags_ibverbs_static = find_program('options-ibverbs-static.sh')\n \n # set up map-to-def script using python, either built-in or external\n python3 = import('python').find_installation(required: false)\ndiff --git a/drivers/common/mlx5/meson.build b/drivers/common/mlx5/meson.build\nindex f24e421bc3..bf04d16d76 100644\n--- a/drivers/common/mlx5/meson.build\n+++ b/drivers/common/mlx5/meson.build\n@@ -30,16 +30,26 @@ foreach libname:libnames\n \tendif\n \tif lib.found()\n \t\tlibs += lib\n+\t\tif not static_ibverbs\n+\t\t\text_deps += lib\n+\t\tendif\n \telse\n \t\tbuild = false\n \t\treason = 'missing dependency, \"' + libname + '\"'\n \tendif\n endforeach\n+if build and static_ibverbs\n+\t# Build without adding shared libs to Requires.private\n+\tibv_cflags = run_command(pkgconf, '--cflags', 'libibverbs').stdout()\n+\text_deps += declare_dependency(compile_args: ibv_cflags.split())\n+\t# Add static deps ldflags to internal apps and Libs.private\n+\tibv_ldflags = run_command(ldflags_ibverbs_static, check:true).stdout()\n+\text_deps += declare_dependency(link_args:ibv_ldflags.split())\n+endif\n \n if build\n \tallow_experimental_apis = true\n \tdeps += ['hash', 'pci', 'net', 'eal', 'kvargs']\n-\text_deps += libs\n \tsources = files(\n \t\t'mlx5_devx_cmds.c',\n \t\t'mlx5_common.c',\ndiff --git a/drivers/net/mlx4/meson.build b/drivers/net/mlx4/meson.build\nindex 8696f6ebdf..cf53a6b3e1 100644\n--- a/drivers/net/mlx4/meson.build\n+++ b/drivers/net/mlx4/meson.build\n@@ -30,16 +30,26 @@ foreach libname:libnames\n \t\tlib = cc.find_library(libname, required:false)\n \tendif\n \tif lib.found()\n-\t\tlibs += [ lib ]\n+\t\tlibs += lib\n+\t\tif not static_ibverbs\n+\t\t\text_deps += lib\n+\t\tendif\n \telse\n \t\tbuild = false\n \t\treason = 'missing dependency, \"' + libname + '\"'\n \tendif\n endforeach\n+if build and static_ibverbs\n+\t# Build without adding shared libs to Requires.private\n+\tibv_cflags = run_command(pkgconf, '--cflags', 'libibverbs').stdout()\n+\text_deps += declare_dependency(compile_args: ibv_cflags.split())\n+\t# Add static deps ldflags to internal apps and Libs.private\n+\tibv_ldflags = run_command(ldflags_ibverbs_static, check:true).stdout()\n+\text_deps += declare_dependency(link_args:ibv_ldflags.split())\n+endif\n \n if build\n \tallow_experimental_apis = true\n-\text_deps += libs\n \tsources = files(\n \t\t'mlx4.c',\n \t\t'mlx4_ethdev.c',\n",
    "prefixes": [
        "v3",
        "3/5"
    ]
}