get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 65746,
    "url": "http://patches.dpdk.org/api/patches/65746/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20200212015944.3037000-2-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": "<20200212015944.3037000-2-thomas@monjalon.net>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20200212015944.3037000-2-thomas@monjalon.net",
    "date": "2020-02-12T01:59:39",
    "name": "[v4,1/6] drivers: cleanup meson build variable",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "8a306e72f508d9fde465615950c996512fa9c37d",
    "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/20200212015944.3037000-2-thomas@monjalon.net/mbox/",
    "series": [
        {
            "id": 8506,
            "url": "http://patches.dpdk.org/api/series/8506/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=8506",
            "date": "2020-02-12T01:59:38",
            "name": "mlx ibverbs linking in meson",
            "version": 4,
            "mbox": "http://patches.dpdk.org/series/8506/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/65746/comments/",
    "check": "fail",
    "checks": "http://patches.dpdk.org/api/patches/65746/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 C078CA0530;\n\tWed, 12 Feb 2020 03:00:02 +0100 (CET)",
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 63F4C2B94;\n\tWed, 12 Feb 2020 02:59:55 +0100 (CET)",
            "from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com\n [66.111.4.27]) by dpdk.org (Postfix) with ESMTP id 514CD2B84\n for <dev@dpdk.org>; Wed, 12 Feb 2020 02:59:53 +0100 (CET)",
            "from compute1.internal (compute1.nyi.internal [10.202.2.41])\n by mailout.nyi.internal (Postfix) with ESMTP id DBC3021C24;\n Tue, 11 Feb 2020 20:59:52 -0500 (EST)",
            "from mailfrontend1 ([10.202.2.162])\n by compute1.internal (MEProxy); Tue, 11 Feb 2020 20:59:52 -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 C13DA328005A;\n Tue, 11 Feb 2020 20:59:51 -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=zwBN9O7y5D\n rqOsaDuu9msqjOLlKuxH0+prPs2ysbjJY=; b=VFVhqoTBZ7xMYUlsOXHONltwkQ\n 4UTox4jpFpSbfZWjPdpEgutsLh4EncnxZyxDC1feemuFIvWtMH0Pbg2g3ilblMpg\n wmRgm3TqI8SWpvnv2VzG6tdMHc4XUppQv0sV36oFTk1KSttYT3Jk9OR7W2bMegl7\n zSqc/bLS3ajh8Vz64=",
            "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=zwBN9O7y5DrqOsaDuu9msqjOLlKuxH0+prPs2ysbjJY=; b=eRME8hG1\n gmbUK5VLe92Q6P5gX7dyqkjkr67yZakEVWPH4O+ySTgexwAHbNOLNs4835w0g+Nd\n JdAQ7njVcWJagqTrPhuH4PnT4XRTrkMqrkX7i3dfm5ywiY/rCboWYks/5YxGwFrQ\n ORODjmpDjsbjn0qT4cwDtBOwR/LXZGAsT+XeVvn7xG1xqAoTpQwxl9GsjeIXKgz2\n qwbU9C0nkr/xLC7KV9X07wsBY0Kps7Gj9aPJy0kFYA0ZZhb4oXPO1f/16HcIlGPN\n 5zBSURcltXn3mCc2rCY6aTGMp+1OO0JZygfclmYbJNFkSdbh6p1GYKU7Hnjr+L0p\n jjB2CDq9vFzS9A=="
        ],
        "X-ME-Sender": "<xms:GFxDXuwchlYVtnxEoIImt0yGZEosylBc7S3ktoD8MD-s3BLb46CKhw>",
        "X-ME-Proxy-Cause": "\n gggruggvucftvghtrhhoucdtuddrgedugedrieeggdefgecutefuodetggdotefrodftvf\n curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu\n uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc\n fjughrpefhvffufffkofgjfhgggfestdekredtredttdenucfhrhhomhepvfhhohhmrghs\n ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucfkph\n epjeejrddufeegrddvtdefrddukeegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghr\n rghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhhonhdrnhgvth",
        "X-ME-Proxy": "<xmx:GFxDXvTCu3NmwtXyi0oxvn-KwW4SWy2j1CJ9RPvPkMzV_UXLVWbXeA>\n <xmx:GFxDXoOH34XeQ8dFJ4ZwYQkgWMOmui8Wmj0TFOtqjjKnt7cXN6uIEw>\n <xmx:GFxDXiW5s-e4IEy7tUqn3wJsjKEqNcnWb_R1lgT97p01UIe3Rpo0xA>\n <xmx:GFxDXtUUl_MDjgkkaG0lTqzgOaGwiEm2s9EfOaSV-CLu2AfFu02B1g>",
        "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>,\n Rosen Xu <rosen.xu@intel.com>, Tianfei zhang <tianfei.zhang@intel.com>",
        "Date": "Wed, 12 Feb 2020 02:59:39 +0100",
        "Message-Id": "<20200212015944.3037000-2-thomas@monjalon.net>",
        "X-Mailer": "git-send-email 2.25.0",
        "In-Reply-To": "<20200212015944.3037000-1-thomas@monjalon.net>",
        "References": "<20200116071656.1663967-1-thomas@monjalon.net>\n <20200212015944.3037000-1-thomas@monjalon.net>",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[dpdk-dev] [PATCH v4 1/6] drivers: cleanup meson build variable",
        "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": "The variable build is already initialized as true in\ndrivers/meson.build. Duplicate initializations can be removed from mlx.\n\nWhen the variable build is set to false, it is easier to call\nsubdir_done() than branch the rest of the code on build condition.\n\nSuggested-by: Bruce Richardson <bruce.richardson@intel.com>\nSigned-off-by: Thomas Monjalon <thomas@monjalon.net>\n---\n drivers/common/mlx5/meson.build | 293 ++++++++++++++++----------------\n drivers/net/ipn3ke/meson.build  |  17 +-\n drivers/net/mlx4/meson.build    | 131 +++++++-------\n drivers/raw/ifpga/meson.build   |  23 ++-\n 4 files changed, 230 insertions(+), 234 deletions(-)",
    "diff": "diff --git a/drivers/common/mlx5/meson.build b/drivers/common/mlx5/meson.build\nindex 2b704107cd..be57558267 100644\n--- a/drivers/common/mlx5/meson.build\n+++ b/drivers/common/mlx5/meson.build\n@@ -6,7 +6,6 @@ if not is_linux\n \treason = 'only supported on Linux'\n \tsubdir_done()\n endif\n-build = true\n \n pmd_dlopen = (get_option('ibverbs_link') == 'dlopen')\n LIB_GLUE_BASE = 'librte_pmd_mlx5_glue.so'\n@@ -32,158 +31,158 @@ foreach libname:libnames\n \telse\n \t\tbuild = false\n \t\treason = 'missing dependency, \"' + libname + '\"'\n+\t\tsubdir_done()\n \tendif\n endforeach\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',\n-\t\t'mlx5_nl.c',\n-\t)\n-\tif not pmd_dlopen\n-\t\tsources += files('mlx5_glue.c')\n-\tendif\n-\tcflags_options = [\n-\t\t'-std=c11',\n-\t\t'-Wno-strict-prototypes',\n-\t\t'-D_BSD_SOURCE',\n-\t\t'-D_DEFAULT_SOURCE',\n-\t\t'-D_XOPEN_SOURCE=600'\n-\t]\n-\tforeach option:cflags_options\n-\t\tif cc.has_argument(option)\n-\t\t\tcflags += option\n-\t\tendif\n-\tendforeach\n-\tif get_option('buildtype').contains('debug')\n-\t\tcflags += [ '-pedantic', '-DPEDANTIC' ]\n-\telse\n-\t\tcflags += [ '-UPEDANTIC' ]\n+allow_experimental_apis = true\n+deps += ['hash', 'pci', 'net', 'eal', 'kvargs']\n+ext_deps += libs\n+sources = files(\n+\t'mlx5_devx_cmds.c',\n+\t'mlx5_common.c',\n+\t'mlx5_nl.c',\n+)\n+if not pmd_dlopen\n+\tsources += files('mlx5_glue.c')\n+endif\n+cflags_options = [\n+\t'-std=c11',\n+\t'-Wno-strict-prototypes',\n+\t'-D_BSD_SOURCE',\n+\t'-D_DEFAULT_SOURCE',\n+\t'-D_XOPEN_SOURCE=600'\n+]\n+foreach option:cflags_options\n+\tif cc.has_argument(option)\n+\t\tcflags += option\n \tendif\n-\t# To maintain the compatibility with the make build system\n-\t# mlx5_autoconf.h file is still generated.\n-\t# input array for meson member search:\n-\t# [ \"MACRO to define if found\", \"header for the search\",\n-\t#   \"symbol to search\", \"struct member to search\" ]\n-\thas_member_args = [\n-\t\t[ 'HAVE_IBV_MLX5_MOD_SWP', 'infiniband/mlx5dv.h',\n-\t\t'struct mlx5dv_sw_parsing_caps', 'sw_parsing_offloads' ],\n-\t\t[ 'HAVE_IBV_DEVICE_COUNTERS_SET_V42', 'infiniband/verbs.h',\n-\t\t'struct ibv_counter_set_init_attr', 'counter_set_id' ],\n-\t\t[ 'HAVE_IBV_DEVICE_COUNTERS_SET_V45', 'infiniband/verbs.h',\n-\t\t'struct ibv_counters_init_attr', 'comp_mask' ],\n-\t]\n-\t# input array for meson symbol search:\n-\t# [ \"MACRO to define if found\", \"header for the search\",\n-\t#   \"symbol to search\" ]\n-\thas_sym_args = [\n-\t\t[ 'HAVE_IBV_DEVICE_STRIDING_RQ_SUPPORT', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_CQE_RES_FORMAT_CSUM_STRIDX' ],\n-\t\t[ 'HAVE_IBV_DEVICE_TUNNEL_SUPPORT', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_CONTEXT_MASK_TUNNEL_OFFLOADS' ],\n-\t\t[ 'HAVE_IBV_MLX5_MOD_MPW', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_CONTEXT_FLAGS_MPW_ALLOWED' ],\n-\t\t[ 'HAVE_IBV_MLX5_MOD_CQE_128B_COMP', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_CONTEXT_FLAGS_CQE_128B_COMP' ],\n-\t\t[ 'HAVE_IBV_MLX5_MOD_CQE_128B_PAD', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_CQ_INIT_ATTR_FLAGS_CQE_PAD' ],\n-\t\t[ 'HAVE_IBV_FLOW_DV_SUPPORT', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_create_flow_action_packet_reformat' ],\n-\t\t[ 'HAVE_IBV_DEVICE_MPLS_SUPPORT', 'infiniband/verbs.h',\n-\t\t'IBV_FLOW_SPEC_MPLS' ],\n-\t\t[ 'HAVE_IBV_WQ_FLAGS_PCI_WRITE_END_PADDING', 'infiniband/verbs.h',\n-\t\t'IBV_WQ_FLAGS_PCI_WRITE_END_PADDING' ],\n-\t\t[ 'HAVE_IBV_WQ_FLAG_RX_END_PADDING', 'infiniband/verbs.h',\n-\t\t'IBV_WQ_FLAG_RX_END_PADDING' ],\n-\t\t[ 'HAVE_MLX5DV_DR_DEVX_PORT', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_query_devx_port' ],\n-\t\t[ 'HAVE_IBV_DEVX_OBJ', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_devx_obj_create' ],\n-\t\t[ 'HAVE_IBV_FLOW_DEVX_COUNTERS', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_FLOW_ACTION_COUNTERS_DEVX' ],\n-\t\t[ 'HAVE_IBV_DEVX_ASYNC', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_devx_obj_query_async' ],\n-\t\t[ 'HAVE_MLX5DV_DR_ACTION_DEST_DEVX_TIR', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_dr_action_create_dest_devx_tir' ],\n-\t\t[ 'HAVE_IBV_DEVX_EVENT', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_devx_get_event' ],\n-\t\t[ 'HAVE_MLX5_DR_CREATE_ACTION_FLOW_METER', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_dr_action_create_flow_meter' ],\n-\t\t[ 'HAVE_MLX5DV_MMAP_GET_NC_PAGES_CMD', 'infiniband/mlx5dv.h',\n-\t\t'MLX5_MMAP_GET_NC_PAGES_CMD' ],\n-\t\t[ 'HAVE_MLX5DV_DR', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_DR_DOMAIN_TYPE_NIC_RX' ],\n-\t\t[ 'HAVE_MLX5DV_DR_ESWITCH', 'infiniband/mlx5dv.h',\n-\t\t'MLX5DV_DR_DOMAIN_TYPE_FDB' ],\n-\t\t[ 'HAVE_MLX5DV_DR_VLAN', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_dr_action_create_push_vlan' ],\n-\t\t[ 'HAVE_IBV_VAR', 'infiniband/mlx5dv.h', 'mlx5dv_alloc_var' ],\n-\t\t[ 'HAVE_SUPPORTED_40000baseKR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_40000baseKR4_Full' ],\n-\t\t[ 'HAVE_SUPPORTED_40000baseCR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_40000baseCR4_Full' ],\n-\t\t[ 'HAVE_SUPPORTED_40000baseSR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_40000baseSR4_Full' ],\n-\t\t[ 'HAVE_SUPPORTED_40000baseLR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_40000baseLR4_Full' ],\n-\t\t[ 'HAVE_SUPPORTED_56000baseKR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_56000baseKR4_Full' ],\n-\t\t[ 'HAVE_SUPPORTED_56000baseCR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_56000baseCR4_Full' ],\n-\t\t[ 'HAVE_SUPPORTED_56000baseSR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_56000baseSR4_Full' ],\n-\t\t[ 'HAVE_SUPPORTED_56000baseLR4_Full', 'linux/ethtool.h',\n-\t\t'SUPPORTED_56000baseLR4_Full' ],\n-\t\t[ 'HAVE_ETHTOOL_LINK_MODE_25G', 'linux/ethtool.h',\n-\t\t'ETHTOOL_LINK_MODE_25000baseCR_Full_BIT' ],\n-\t\t[ 'HAVE_ETHTOOL_LINK_MODE_50G', 'linux/ethtool.h',\n-\t\t'ETHTOOL_LINK_MODE_50000baseCR2_Full_BIT' ],\n-\t\t[ 'HAVE_ETHTOOL_LINK_MODE_100G', 'linux/ethtool.h',\n-\t\t'ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT' ],\n-\t\t[ 'HAVE_IFLA_NUM_VF', 'linux/if_link.h',\n-\t\t'IFLA_NUM_VF' ],\n-\t\t[ 'HAVE_IFLA_EXT_MASK', 'linux/if_link.h',\n-\t\t'IFLA_EXT_MASK' ],\n-\t\t[ 'HAVE_IFLA_PHYS_SWITCH_ID', 'linux/if_link.h',\n-\t\t'IFLA_PHYS_SWITCH_ID' ],\n-\t\t[ 'HAVE_IFLA_PHYS_PORT_NAME', 'linux/if_link.h',\n-\t\t'IFLA_PHYS_PORT_NAME' ],\n-\t\t[ 'HAVE_RDMA_NL_NLDEV', 'rdma/rdma_netlink.h',\n-\t\t'RDMA_NL_NLDEV' ],\n-\t\t[ 'HAVE_RDMA_NLDEV_CMD_GET', 'rdma/rdma_netlink.h',\n-\t\t'RDMA_NLDEV_CMD_GET' ],\n-\t\t[ 'HAVE_RDMA_NLDEV_CMD_PORT_GET', 'rdma/rdma_netlink.h',\n-\t\t'RDMA_NLDEV_CMD_PORT_GET' ],\n-\t\t[ 'HAVE_RDMA_NLDEV_ATTR_DEV_INDEX', 'rdma/rdma_netlink.h',\n-\t\t'RDMA_NLDEV_ATTR_DEV_INDEX' ],\n-\t\t[ 'HAVE_RDMA_NLDEV_ATTR_DEV_NAME', 'rdma/rdma_netlink.h',\n-\t\t'RDMA_NLDEV_ATTR_DEV_NAME' ],\n-\t\t[ 'HAVE_RDMA_NLDEV_ATTR_PORT_INDEX', 'rdma/rdma_netlink.h',\n-\t\t'RDMA_NLDEV_ATTR_PORT_INDEX' ],\n-\t\t[ 'HAVE_RDMA_NLDEV_ATTR_NDEV_INDEX', 'rdma/rdma_netlink.h',\n-\t\t'RDMA_NLDEV_ATTR_NDEV_INDEX' ],\n-\t\t[ 'HAVE_MLX5_DR_FLOW_DUMP', 'infiniband/mlx5dv.h',\n-\t\t'mlx5dv_dump_dr_domain'],\n-\t\t[ 'HAVE_DEVLINK', 'linux/devlink.h', 'DEVLINK_GENL_NAME' ],\n-\t]\n-\tconfig = configuration_data()\n-\tforeach arg:has_sym_args\n-\t\tconfig.set(arg[0], cc.has_header_symbol(arg[1], arg[2],\n-\t\t\tdependencies: libs))\n-\tendforeach\n-\tforeach arg:has_member_args\n-\t\tfile_prefix = '#include <' + arg[1] + '>'\n-\t\tconfig.set(arg[0], cc.has_member(arg[2], arg[3],\n-\t\t\tprefix : file_prefix, dependencies: libs))\n-\tendforeach\n-\tconfigure_file(output : 'mlx5_autoconf.h', configuration : config)\n+endforeach\n+if get_option('buildtype').contains('debug')\n+\tcflags += [ '-pedantic', '-DPEDANTIC' ]\n+else\n+\tcflags += [ '-UPEDANTIC' ]\n endif\n+# To maintain the compatibility with the make build system\n+# mlx5_autoconf.h file is still generated.\n+# input array for meson member search:\n+# [ \"MACRO to define if found\", \"header for the search\",\n+#   \"symbol to search\", \"struct member to search\" ]\n+has_member_args = [\n+\t[ 'HAVE_IBV_MLX5_MOD_SWP', 'infiniband/mlx5dv.h',\n+\t'struct mlx5dv_sw_parsing_caps', 'sw_parsing_offloads' ],\n+\t[ 'HAVE_IBV_DEVICE_COUNTERS_SET_V42', 'infiniband/verbs.h',\n+\t'struct ibv_counter_set_init_attr', 'counter_set_id' ],\n+\t[ 'HAVE_IBV_DEVICE_COUNTERS_SET_V45', 'infiniband/verbs.h',\n+\t'struct ibv_counters_init_attr', 'comp_mask' ],\n+]\n+# input array for meson symbol search:\n+# [ \"MACRO to define if found\", \"header for the search\",\n+#   \"symbol to search\" ]\n+has_sym_args = [\n+\t[ 'HAVE_IBV_DEVICE_STRIDING_RQ_SUPPORT', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_CQE_RES_FORMAT_CSUM_STRIDX' ],\n+\t[ 'HAVE_IBV_DEVICE_TUNNEL_SUPPORT', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_CONTEXT_MASK_TUNNEL_OFFLOADS' ],\n+\t[ 'HAVE_IBV_MLX5_MOD_MPW', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_CONTEXT_FLAGS_MPW_ALLOWED' ],\n+\t[ 'HAVE_IBV_MLX5_MOD_CQE_128B_COMP', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_CONTEXT_FLAGS_CQE_128B_COMP' ],\n+\t[ 'HAVE_IBV_MLX5_MOD_CQE_128B_PAD', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_CQ_INIT_ATTR_FLAGS_CQE_PAD' ],\n+\t[ 'HAVE_IBV_FLOW_DV_SUPPORT', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_create_flow_action_packet_reformat' ],\n+\t[ 'HAVE_IBV_DEVICE_MPLS_SUPPORT', 'infiniband/verbs.h',\n+\t'IBV_FLOW_SPEC_MPLS' ],\n+\t[ 'HAVE_IBV_WQ_FLAGS_PCI_WRITE_END_PADDING', 'infiniband/verbs.h',\n+\t'IBV_WQ_FLAGS_PCI_WRITE_END_PADDING' ],\n+\t[ 'HAVE_IBV_WQ_FLAG_RX_END_PADDING', 'infiniband/verbs.h',\n+\t'IBV_WQ_FLAG_RX_END_PADDING' ],\n+\t[ 'HAVE_MLX5DV_DR_DEVX_PORT', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_query_devx_port' ],\n+\t[ 'HAVE_IBV_DEVX_OBJ', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_devx_obj_create' ],\n+\t[ 'HAVE_IBV_FLOW_DEVX_COUNTERS', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_FLOW_ACTION_COUNTERS_DEVX' ],\n+\t[ 'HAVE_IBV_DEVX_ASYNC', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_devx_obj_query_async' ],\n+\t[ 'HAVE_MLX5DV_DR_ACTION_DEST_DEVX_TIR', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_dr_action_create_dest_devx_tir' ],\n+\t[ 'HAVE_IBV_DEVX_EVENT', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_devx_get_event' ],\n+\t[ 'HAVE_MLX5_DR_CREATE_ACTION_FLOW_METER', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_dr_action_create_flow_meter' ],\n+\t[ 'HAVE_MLX5DV_MMAP_GET_NC_PAGES_CMD', 'infiniband/mlx5dv.h',\n+\t'MLX5_MMAP_GET_NC_PAGES_CMD' ],\n+\t[ 'HAVE_MLX5DV_DR', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_DR_DOMAIN_TYPE_NIC_RX' ],\n+\t[ 'HAVE_MLX5DV_DR_ESWITCH', 'infiniband/mlx5dv.h',\n+\t'MLX5DV_DR_DOMAIN_TYPE_FDB' ],\n+\t[ 'HAVE_MLX5DV_DR_VLAN', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_dr_action_create_push_vlan' ],\n+\t[ 'HAVE_IBV_VAR', 'infiniband/mlx5dv.h', 'mlx5dv_alloc_var' ],\n+\t[ 'HAVE_SUPPORTED_40000baseKR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_40000baseKR4_Full' ],\n+\t[ 'HAVE_SUPPORTED_40000baseCR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_40000baseCR4_Full' ],\n+\t[ 'HAVE_SUPPORTED_40000baseSR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_40000baseSR4_Full' ],\n+\t[ 'HAVE_SUPPORTED_40000baseLR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_40000baseLR4_Full' ],\n+\t[ 'HAVE_SUPPORTED_56000baseKR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_56000baseKR4_Full' ],\n+\t[ 'HAVE_SUPPORTED_56000baseCR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_56000baseCR4_Full' ],\n+\t[ 'HAVE_SUPPORTED_56000baseSR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_56000baseSR4_Full' ],\n+\t[ 'HAVE_SUPPORTED_56000baseLR4_Full', 'linux/ethtool.h',\n+\t'SUPPORTED_56000baseLR4_Full' ],\n+\t[ 'HAVE_ETHTOOL_LINK_MODE_25G', 'linux/ethtool.h',\n+\t'ETHTOOL_LINK_MODE_25000baseCR_Full_BIT' ],\n+\t[ 'HAVE_ETHTOOL_LINK_MODE_50G', 'linux/ethtool.h',\n+\t'ETHTOOL_LINK_MODE_50000baseCR2_Full_BIT' ],\n+\t[ 'HAVE_ETHTOOL_LINK_MODE_100G', 'linux/ethtool.h',\n+\t'ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT' ],\n+\t[ 'HAVE_IFLA_NUM_VF', 'linux/if_link.h',\n+\t'IFLA_NUM_VF' ],\n+\t[ 'HAVE_IFLA_EXT_MASK', 'linux/if_link.h',\n+\t'IFLA_EXT_MASK' ],\n+\t[ 'HAVE_IFLA_PHYS_SWITCH_ID', 'linux/if_link.h',\n+\t'IFLA_PHYS_SWITCH_ID' ],\n+\t[ 'HAVE_IFLA_PHYS_PORT_NAME', 'linux/if_link.h',\n+\t'IFLA_PHYS_PORT_NAME' ],\n+\t[ 'HAVE_RDMA_NL_NLDEV', 'rdma/rdma_netlink.h',\n+\t'RDMA_NL_NLDEV' ],\n+\t[ 'HAVE_RDMA_NLDEV_CMD_GET', 'rdma/rdma_netlink.h',\n+\t'RDMA_NLDEV_CMD_GET' ],\n+\t[ 'HAVE_RDMA_NLDEV_CMD_PORT_GET', 'rdma/rdma_netlink.h',\n+\t'RDMA_NLDEV_CMD_PORT_GET' ],\n+\t[ 'HAVE_RDMA_NLDEV_ATTR_DEV_INDEX', 'rdma/rdma_netlink.h',\n+\t'RDMA_NLDEV_ATTR_DEV_INDEX' ],\n+\t[ 'HAVE_RDMA_NLDEV_ATTR_DEV_NAME', 'rdma/rdma_netlink.h',\n+\t'RDMA_NLDEV_ATTR_DEV_NAME' ],\n+\t[ 'HAVE_RDMA_NLDEV_ATTR_PORT_INDEX', 'rdma/rdma_netlink.h',\n+\t'RDMA_NLDEV_ATTR_PORT_INDEX' ],\n+\t[ 'HAVE_RDMA_NLDEV_ATTR_NDEV_INDEX', 'rdma/rdma_netlink.h',\n+\t'RDMA_NLDEV_ATTR_NDEV_INDEX' ],\n+\t[ 'HAVE_MLX5_DR_FLOW_DUMP', 'infiniband/mlx5dv.h',\n+\t'mlx5dv_dump_dr_domain'],\n+\t[ 'HAVE_DEVLINK', 'linux/devlink.h', 'DEVLINK_GENL_NAME' ],\n+]\n+config = configuration_data()\n+foreach arg:has_sym_args\n+\tconfig.set(arg[0], cc.has_header_symbol(arg[1], arg[2],\n+\t\tdependencies: libs))\n+endforeach\n+foreach arg:has_member_args\n+\tfile_prefix = '#include <' + arg[1] + '>'\n+\tconfig.set(arg[0], cc.has_member(arg[2], arg[3],\n+\t\tprefix : file_prefix, dependencies: libs))\n+endforeach\n+configure_file(output : 'mlx5_autoconf.h', configuration : config)\n+\n # Build Glue Library\n-if pmd_dlopen and build\n+if pmd_dlopen\n \tdlopen_name = 'mlx5_glue'\n \tdlopen_lib_name = driver_name_fmt.format(dlopen_name)\n \tdlopen_so_version = LIB_GLUE_VERSION\ndiff --git a/drivers/net/ipn3ke/meson.build b/drivers/net/ipn3ke/meson.build\nindex bfec592aba..f19083af15 100644\n--- a/drivers/net/ipn3ke/meson.build\n+++ b/drivers/net/ipn3ke/meson.build\n@@ -16,16 +16,15 @@ endif\n if not dep.found()\n \tbuild = false\n \treason = 'missing dependency, \"libfdt\"'\n+\tsubdir_done()\n endif\n \n-if build\n-\tallow_experimental_apis = true\n+allow_experimental_apis = true\n \n-\tincludes += include_directories('../../raw/ifpga')\n+includes += include_directories('../../raw/ifpga')\n \n-\tsources += files('ipn3ke_ethdev.c',\n-\t\t'ipn3ke_representor.c',\n-\t\t'ipn3ke_tm.c',\n-\t\t'ipn3ke_flow.c')\n-\tdeps += ['bus_ifpga', 'ethdev', 'sched']\n-endif\n+sources += files('ipn3ke_ethdev.c',\n+\t'ipn3ke_representor.c',\n+\t'ipn3ke_tm.c',\n+\t'ipn3ke_flow.c')\n+deps += ['bus_ifpga', 'ethdev', 'sched']\ndiff --git a/drivers/net/mlx4/meson.build b/drivers/net/mlx4/meson.build\nindex 0260c5dc59..6d2397b3cc 100644\n--- a/drivers/net/mlx4/meson.build\n+++ b/drivers/net/mlx4/meson.build\n@@ -7,7 +7,6 @@ if not is_linux\n \treason = 'only supported on Linux'\n \tsubdir_done()\n endif\n-build = true\n \n pmd_dlopen = (get_option('ibverbs_link') == 'dlopen')\n LIB_GLUE_BASE = 'librte_pmd_mlx4_glue.so'\n@@ -33,77 +32,77 @@ foreach libname:libnames\n \telse\n \t\tbuild = false\n \t\treason = 'missing dependency, \"' + libname + '\"'\n+\t\tsubdir_done()\n \tendif\n endforeach\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-\t\t'mlx4_flow.c',\n-\t\t'mlx4_intr.c',\n-\t\t'mlx4_mp.c',\n-\t\t'mlx4_mr.c',\n-\t\t'mlx4_rxq.c',\n-\t\t'mlx4_rxtx.c',\n-\t\t'mlx4_txq.c',\n-\t\t'mlx4_utils.c',\n-\t)\n-\tif not pmd_dlopen\n-\t\tsources += files('mlx4_glue.c')\n-\tendif\n-\tcflags_options = [\n-\t\t'-std=c11',\n-\t\t'-Wno-strict-prototypes',\n-\t\t'-D_BSD_SOURCE',\n-\t\t'-D_DEFAULT_SOURCE',\n-\t\t'-D_XOPEN_SOURCE=600'\n-\t]\n-\tforeach option:cflags_options\n-\t\tif cc.has_argument(option)\n-\t\t\tcflags += option\n-\t\tendif\n-\tendforeach\n-\tif get_option('buildtype').contains('debug')\n-\t\tcflags += [ '-pedantic', '-DPEDANTIC' ]\n-\telse\n-\t\tcflags += [ '-UPEDANTIC' ]\n+allow_experimental_apis = true\n+ext_deps += libs\n+sources = files(\n+\t'mlx4.c',\n+\t'mlx4_ethdev.c',\n+\t'mlx4_flow.c',\n+\t'mlx4_intr.c',\n+\t'mlx4_mp.c',\n+\t'mlx4_mr.c',\n+\t'mlx4_rxq.c',\n+\t'mlx4_rxtx.c',\n+\t'mlx4_txq.c',\n+\t'mlx4_utils.c',\n+)\n+if not pmd_dlopen\n+\tsources += files('mlx4_glue.c')\n+endif\n+cflags_options = [\n+\t'-std=c11',\n+\t'-Wno-strict-prototypes',\n+\t'-D_BSD_SOURCE',\n+\t'-D_DEFAULT_SOURCE',\n+\t'-D_XOPEN_SOURCE=600'\n+]\n+foreach option:cflags_options\n+\tif cc.has_argument(option)\n+\t\tcflags += option\n \tendif\n-\t# To maintain the compatibility with the make build system\n-\t# mlx4_autoconf.h file is still generated.\n-\t# input array for meson member search:\n-\t# [ \"MACRO to define if found\", \"header for the search\",\n-\t#   \"symbol to search\", \"struct member to search\" ]\n-\t#\n-\thas_member_args = [\n-\t\t[ 'HAVE_IBV_MLX4_WQE_LSO_SEG', 'infiniband/mlx4dv.h',\n-\t\t'struct mlx4_wqe_lso_seg', 'mss_hdr_size' ],\n-\t]\n-\t# input array for meson symbol search:\n-\t# [ \"MACRO to define if found\", \"header for the search\",\n-\t#   \"symbol to search\" ]\n-\thas_sym_args = [\n-\t\t[ 'HAVE_IBV_MLX4_BUF_ALLOCATORS', 'infiniband/mlx4dv.h',\n-\t\t'MLX4DV_SET_CTX_ATTR_BUF_ALLOCATORS' ],\n-\t\t[ 'HAVE_IBV_MLX4_UAR_MMAP_OFFSET', 'infiniband/mlx4dv.h',\n-\t\t'MLX4DV_QP_MASK_UAR_MMAP_OFFSET' ],\n-\t]\n-\tconfig = configuration_data()\n-\tforeach arg:has_sym_args\n-\t\tconfig.set(arg[0], cc.has_header_symbol(arg[1], arg[2],\n-\t\t\tdependencies: libs))\n-\tendforeach\n-\tforeach arg:has_member_args\n-\t\tfile_prefix = '#include <' + arg[1] + '>'\n-\t\tconfig.set(arg[0], cc.has_member(arg[2], arg[3],\n-\t\t\tprefix: file_prefix, dependencies: libs))\n-\tendforeach\n-\tconfigure_file(output : 'mlx4_autoconf.h', configuration : config)\n+endforeach\n+if get_option('buildtype').contains('debug')\n+\tcflags += [ '-pedantic', '-DPEDANTIC' ]\n+else\n+\tcflags += [ '-UPEDANTIC' ]\n endif\n+# To maintain the compatibility with the make build system\n+# mlx4_autoconf.h file is still generated.\n+# input array for meson member search:\n+# [ \"MACRO to define if found\", \"header for the search\",\n+#   \"symbol to search\", \"struct member to search\" ]\n+#\n+has_member_args = [\n+\t[ 'HAVE_IBV_MLX4_WQE_LSO_SEG', 'infiniband/mlx4dv.h',\n+\t'struct mlx4_wqe_lso_seg', 'mss_hdr_size' ],\n+]\n+# input array for meson symbol search:\n+# [ \"MACRO to define if found\", \"header for the search\",\n+#   \"symbol to search\" ]\n+has_sym_args = [\n+\t[ 'HAVE_IBV_MLX4_BUF_ALLOCATORS', 'infiniband/mlx4dv.h',\n+\t'MLX4DV_SET_CTX_ATTR_BUF_ALLOCATORS' ],\n+\t[ 'HAVE_IBV_MLX4_UAR_MMAP_OFFSET', 'infiniband/mlx4dv.h',\n+\t'MLX4DV_QP_MASK_UAR_MMAP_OFFSET' ],\n+]\n+config = configuration_data()\n+foreach arg:has_sym_args\n+\tconfig.set(arg[0], cc.has_header_symbol(arg[1], arg[2],\n+\t\tdependencies: libs))\n+endforeach\n+foreach arg:has_member_args\n+\tfile_prefix = '#include <' + arg[1] + '>'\n+\tconfig.set(arg[0], cc.has_member(arg[2], arg[3],\n+\t\tprefix: file_prefix, dependencies: libs))\n+endforeach\n+configure_file(output : 'mlx4_autoconf.h', configuration : config)\n+\n # Build Glue Library\n-if pmd_dlopen and build\n+if pmd_dlopen\n \tdlopen_name = 'mlx4_glue'\n \tdlopen_lib_name = driver_name_fmt.format(dlopen_name)\n \tdlopen_so_version = LIB_GLUE_VERSION\ndiff --git a/drivers/raw/ifpga/meson.build b/drivers/raw/ifpga/meson.build\nindex d4027068d6..e2a4b8cccb 100644\n--- a/drivers/raw/ifpga/meson.build\n+++ b/drivers/raw/ifpga/meson.build\n@@ -8,21 +8,20 @@ endif\n if not dep.found()\n \tbuild = false\n \treason = 'missing dependency, \"libfdt\"'\n+\tsubdir_done()\n endif\n \n-if build\n-\tsubdir('base')\n-\tobjs = [base_objs]\n+subdir('base')\n+objs = [base_objs]\n \n-\tdeps += ['ethdev', 'rawdev', 'pci', 'bus_pci', 'kvargs',\n-\t\t'bus_vdev', 'bus_ifpga', 'net', 'pmd_i40e', 'pmd_ipn3ke']\n-\text_deps += dep\n+deps += ['ethdev', 'rawdev', 'pci', 'bus_pci', 'kvargs',\n+\t'bus_vdev', 'bus_ifpga', 'net', 'pmd_i40e', 'pmd_ipn3ke']\n+ext_deps += dep\n \n-\tsources = files('ifpga_rawdev.c')\n+sources = files('ifpga_rawdev.c')\n \n-\tincludes += include_directories('base')\n-\tincludes += include_directories('../../net/ipn3ke')\n-\tincludes += include_directories('../../net/i40e')\n+includes += include_directories('base')\n+includes += include_directories('../../net/ipn3ke')\n+includes += include_directories('../../net/i40e')\n \n-\tallow_experimental_apis = true\n-endif\n+allow_experimental_apis = true\n",
    "prefixes": [
        "v4",
        "1/6"
    ]
}