From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 95739A09D9; Wed, 11 Nov 2020 12:01:09 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 511E8137D; Wed, 11 Nov 2020 12:01:08 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id A8CB5F90; Wed, 11 Nov 2020 12:01:05 +0100 (CET) IronPort-SDR: rqkdm7Qwsi4cFU5y0Ptcc8LR2njTLQkiuoYHbA/RkY+7vS0jlYDpV6eCGsJAgurOr/eBJdTa2C h7CcpZpWeUYQ== X-IronPort-AV: E=McAfee;i="6000,8403,9801"; a="231753546" X-IronPort-AV: E=Sophos;i="5.77,469,1596524400"; d="scan'208";a="231753546" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Nov 2020 03:00:57 -0800 IronPort-SDR: WUJOWvbuQpir63KEeCz5xo6XymQPnQVn9nU3nV8Kso9w4ZKHk3iI9Qw6NA9LZ054C9ELQCASDy JwbVKCnmMTbQ== X-IronPort-AV: E=Sophos;i="5.77,469,1596524400"; d="scan'208";a="541739346" Received: from bricha3-mobl.ger.corp.intel.com ([10.249.32.180]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-SHA; 11 Nov 2020 03:00:55 -0800 Date: Wed, 11 Nov 2020 11:00:49 +0000 From: Bruce Richardson To: Thomas Monjalon Cc: Ferruh Yigit , dev@dpdk.org, david.marchand@redhat.com, stable@dpdk.org, Luca Boccassi Message-ID: <20201111110049.GB1500@bricha3-MOBL.ger.corp.intel.com> References: <20201109210009.919129-1-thomas@monjalon.net> <20201111091843.GA1500@bricha3-MOBL.ger.corp.intel.com> <2317352.zR0qdTapYh@thomas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2317352.zR0qdTapYh@thomas> Subject: Re: [dpdk-dev] [PATCH 1/1] devtools: fix build test config inheritance from env X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 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 Wed, Nov 11, 2020 at 11:37:41AM +0100, Thomas Monjalon wrote: > 11/11/2020 10:18, Bruce Richardson: > > On Tue, Nov 10, 2020 at 06:09:45PM +0000, Ferruh Yigit wrote: > > > On 11/10/2020 5:55 PM, Thomas Monjalon wrote: > > > > 10/11/2020 18:18, Ferruh Yigit: > > > > > On 11/9/2020 9:00 PM, Thomas Monjalon wrote: > > > > > > PKG_CONFIG_PATH is specific to each target, so it must be empty > > > > > > before configuring each build from the file according to DPDK_TARGET. > > > > > > Inheriting a default PKG_CONFIG_PATH for all targets does not make sense > > > > > > and is prone to confusion. > > > > [...] > > > > > In same run both 64bit and 32bit builds are done, > > > > > > > > Multiple targets can be built yes. > > > > > > > > > At least for my environment, > > > > > for 64bit, PKG_CONFIG_PATH should be '/usr/local/lib64/pkgconfig/' > > > > > for 32bit, PKG_CONFIG_PATH should be '/usr/lib/pkgconfig/' > > > > > > > > Not sure you need to set these values in PKG_CONFIG_PATH. > > > > At least /usr/lib/pkgconfig/ is already set in PKG_CONFIG_LIBDIR. > > > > > > > > Let me rephrase the man page of pkg-config: > > > > PKG_CONFIG_LIBDIR is the primary paths list > > > > PKG_CONFIG_PATH is the secondary paths list > > > > > > > > > What should I set in the config file to support both? > > > > > > > > The standard paths for your 64-bit machine should be built-in > > > > in your pkg-config. > > > > The standard path for 32-bit is already set automatically > > > > in devtools/test-meson-builds.sh. > > > > Only additional specific paths should be set in a config file. > > > > > > > > What is a config file? It is loaded by devtools/load-devel-config: > > > > - /etc/dpdk/devel.config (system-wide) > > > > - or ~/.config/dpdk/devel.config (user config) > > > > - or .develconfig (project directory config) > > > > Personally I set all my configs in ~/.config/dpdk/devel.config. > > > > Note that the same file is used to configure multiple tools. > > > > > > > > For each build, some variables are reset the variable DPDK_TARGET is set, > > > > and the config file is sourced. > > > > The typical values of DPDK_TARGET are: > > > > - i386-pc-linux-gnu > > > > - x86_64-pc-linux-gnu > > > > - x86_64-w64-mingw32 > > > > - aarch64-linux-gnu > > > > - powerpc64le-linux-gcc > > > > > > > > TLDR, I assume you just want to set an additional 64-bit path, > > > > so the config file should look like: > > > > > > > > if [ "$DPDK_TARGET" = x86_64-pc-linux-gnu ] ; then > > > > export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib64/pkgconfig > > > > fi > > > > > > > > > > > > > > Thanks for the clarification. > > > > > > Standard paths seems should be covered already in current script, which I > > > was trying to do with "export PKG_CONFIG_PATH=$CUSTOM_PKG_CONFIG_PATH" line > > > in my patch, > > > > > > I may be mixed 'PKG_CONFIG_LIBDIR' vs 'PKG_CONFIG_PATH' usage, let me check > > > it in my environment. > > > > > > > For just adding a new custom path for pkg-config using PKG_CONFIG_PATH. For > > building anything other than a native 64-bit build you need to override > > PKG_CONFIG_LIBDIR and clear PKG_CONFIG_PATH, otherwise the 64-bit packages > > will be found from the standard paths if not found in a 32-bit one. > > Yes, this is what is done in this patch (clearing PKG_CONFIG_PATH). > May I assume you are all OK with this patch now? > Yes, I previously acked it, I believe.