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 35A6EA09E4; Thu, 28 Jan 2021 12:24:12 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A9D894067A; Thu, 28 Jan 2021 12:24:11 +0100 (CET) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mails.dpdk.org (Postfix) with ESMTP id B15B540395 for ; Thu, 28 Jan 2021 12:24:09 +0100 (CET) IronPort-SDR: CAtglA6ElOQpi25oRBM8rZwoHTK/gyVS6OcsXRHGk7yHNfngdUDNaQ0thG18jjuMtRK0TN/qVO wiltJ7GSsj8A== X-IronPort-AV: E=McAfee;i="6000,8403,9877"; a="265050049" X-IronPort-AV: E=Sophos;i="5.79,382,1602572400"; d="scan'208";a="265050049" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Jan 2021 03:24:08 -0800 IronPort-SDR: +yTb4+7/4GBeXN6k+n5KEGIwntpu4wxuyIlFLz1RjCptAyAU2oNrc9pUehg/v+e7IhI9Lpb2Mp zjhcLD7lL6Ag== X-IronPort-AV: E=Sophos;i="5.79,382,1602572400"; d="scan'208";a="473508852" Received: from bricha3-mobl.ger.corp.intel.com ([10.252.11.53]) by fmsmga001-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 28 Jan 2021 03:24:06 -0800 Date: Thu, 28 Jan 2021 11:23:59 +0000 From: Bruce Richardson To: Thomas Monjalon Cc: dev@dpdk.org, david.marchand@redhat.com, Konstantin Ananyev , Ferruh Yigit , Andrew Rybchenko , Yipeng Wang , Sameh Gobriel , Bernard Iremonger , Vladimir Medvedkin , Ori Kam , Honnappa Nagarahalli , Olivier Matz , Cristian Dumitrescu Message-ID: <20210128112359.GC899@bricha3-MOBL.ger.corp.intel.com> References: <20210114110606.21142-1-bruce.richardson@intel.com> <20210127173330.1671341-1-bruce.richardson@intel.com> <20210127173330.1671341-6-bruce.richardson@intel.com> <5799103.kSYvdEDt4n@thomas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5799103.kSYvdEDt4n@thomas> Subject: Re: [dpdk-dev] [PATCH v6 5/8] build: separate out headers for include checking 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" On Thu, Jan 28, 2021 at 12:07:11PM +0100, Thomas Monjalon wrote: > 27/01/2021 18:33, Bruce Richardson: > > For some libraries, there may be some header files which are not for direct > > inclusion, but rather are to be included via other header files. To allow > > later checking of these files for missing includes, we separate out the > > indirect include files from the direct ones. > > > > Signed-off-by: Bruce Richardson > > [...] > > + When ``check_includes`` build option is set to ``true``, each header file > > + has additional checks performed on it, for example to ensure that it is > > + not missing any include statements for dependent headers. > > + For header files which are public, but only included indirectly in > > + applications, these checks can be skipped by using the ``headers_no_chkincs`` > > + variable rather than ``headers``. > > + > > +headers_no_chkincs > > + **Default Value = []**. > > + As with ``headers`` option above, except that the files are not checked > > + for all needed include files as part of a DPDK build when > > + ``check_includes`` is set to ``true``. > > If all such headers are included directly, I would prefer naming this group > "indirect_headers" because maybe we will want to do other kind of processing > on indirect headers. > Sure. The current naming was chosen so that a grep of the code for on receiving errors about "chkincs" would show this up, but I think your suggestion is better. > [...] > > --- a/meson_options.txt > > +++ b/meson_options.txt > > @@ -1,5 +1,7 @@ > > # Please keep these options sorted alphabetically. > > > > +option('check_includes', type: 'boolean', value: false, > > + description: 'build "chkincs" to verify each header file can compile alone') > > This should in the patch introducing the check? > It was originally, but then we hit an issue with wanting/needing to refer to this option in the documentation about splitting the header file lists. Therefore, I decided to add the option in this patch. Alternatively, this patch and the next can be merged into one.