From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id D1326A0A0A; Fri, 22 Jan 2021 00:21:03 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5A4DF140D0B; Fri, 22 Jan 2021 00:21:03 +0100 (CET) Received: from wout5-smtp.messagingengine.com (wout5-smtp.messagingengine.com [64.147.123.21]) by mails.dpdk.org (Postfix) with ESMTP id B20C9140D0A for ; Fri, 22 Jan 2021 00:21:02 +0100 (CET) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id F1560171B; Thu, 21 Jan 2021 18:20:58 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Thu, 21 Jan 2021 18:20:59 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=fm3; bh= /X60MfF/Fnc1FmTiR1JhIaqkh4dXn6wRASlfDxCvl98=; b=A5EP5BhXkhofWtyp HCBlC45f6CCDPEO6WPUyRby5mHA8F/FA4biA328t0pJlf1yTg4mF8KVB6W+b5Ozm FYCJ9FBeiWBSTiLc3T43wXmzCHGKcWauUmIE0wIomkgAMWZBwi6w3pz7iVHAP9M3 YnxlvZg5XDrgG0jxQkxtzOhDc/BdBTIGuzDLQZw1o2NzlY9CTEnlyejTd+x9R9RM SoAJ4dIAdqO5p+JEmXmd0eB3XLuAWYl44yw08LWVrSMbk5DZMlS5seqwA8BbB9Dp RGqB8w5x1Iv8/g+Kc+nrEnw7pqK2Xs2tKDmyBvFn2ujqlk1er8sdLOeTOirW1aVA 4NJ3QQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; bh=/X60MfF/Fnc1FmTiR1JhIaqkh4dXn6wRASlfDxCvl 98=; b=fsP/t2MZ5YeiVqWEURBict6c9rKFemNIizcNPCSdTIUNZgGGfy8qV7wtT P/VLAjG8ZRr3oUvvVaQ1kLF8Sn1xh/t8Ua+xW2nWAGL3v46aHr48I0u2Hk77QlM1 7vOstRzwNdGq/hhHEywmmnWo9i9lnXIZmvROc8uVGt9+vawbaLX+l6Mo4naz3T9t Is+zOE/Zi5cxyogUKAsN5G4TvMEwT7cf8Q3aL5NIoVTxY1b8E3ypeasRUNl0+NSu ufBXk2KExw/afzq2AI3POgiUuDJlvRJ/0qRBauFcMSA9TTp8eNVcFmUj325lf+Ef MGZXqYcA2oykdZ2vzkRg/G6gHyzew== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrudehgddtkecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucggtf frrghtthgvrhhnpedugefgvdefudfftdefgeelgffhueekgfffhfeujedtteeutdejueei iedvffegheenucfkphepjeejrddufeegrddvtdefrddukeegnecuvehluhhsthgvrhfuih iivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhho nhdrnhgvth X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id D4F6424005E; Thu, 21 Jan 2021 18:20:57 -0500 (EST) From: Thomas Monjalon To: Bruce Richardson Cc: David Marchand , dev Date: Fri, 22 Jan 2021 00:20:55 +0100 Message-ID: <5714838.ECoWWY6ARZ@thomas> In-Reply-To: <20210121151537.GC258@bricha3-MOBL.ger.corp.intel.com> References: <20210114110606.21142-1-bruce.richardson@intel.com> <4726085.tz9yOLTjxq@thomas> <20210121151537.GC258@bricha3-MOBL.ger.corp.intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH v2 00/19] ensure headers have correct includes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 21/01/2021 16:15, Bruce Richardson: > On Thu, Jan 21, 2021 at 10:36:18AM +0100, Thomas Monjalon wrote: > > 21/01/2021 10:33, Bruce Richardson: > > > On Thu, Jan 21, 2021 at 10:25:07AM +0100, David Marchand wrote: > > > > Is rte_byteorder.h inclusion in rte_mbuf.h still necessary? > > > > > > > Good question. The checks I was doing were only for missing headers. > > > Checking for superfluous headers is more complicated and not something I've > > > looked at. I know it was previously suggested to use the > > > "include-what-you-use" tool on DPDK, if anyone wants to attempt that. > > > > I would love having an integration of include-what-you-use in our build system. > > I don't know whether it's trivial or difficult with meson. > > > > Did some initial investigation here, and here are some basic instructions > based on how I got it running on my Ubuntu 20.10 system. The positive is > that "iwyu_tool" can run on DPDK build dirs without any extra work on our > part. I had looked at it recently but didn't try thinking meson was not compatible. Thank you, it works :) > 1. Install iwyu from Ubuntu packaging. > 2. Install clang-9 package: > * This is not a dependency of iwyu, but probably should be > * The version of clang installed *must* match that used to build iwyu > [I had clang-10 installed which didn't work for this] > * If you get errors about missing standard headers e.g. stddef.h, > the version mismatch is likely the issue. > 3. Configure a clang build of DPDK: > * CC=clang meson build-clang > 4. "iwyu_tool" supports the build database format used by meson, so just > run: "iwyu_tool -p build-clang" > > Be warned, this runs really slowly and produces lots of output! We need to filter only reports of useless includes and do the cleaning... The difficult part is that some includes may be useless on Linux but required on FreeBSD.