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 D0BC8A09D2; Wed, 11 Nov 2020 10:19:02 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id A7F19F90; Wed, 11 Nov 2020 10:19:01 +0100 (CET) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id B6C16DED; Wed, 11 Nov 2020 10:18:58 +0100 (CET) IronPort-SDR: ea+d96E1KJ+rN2pHSZnzVZFOinNhIfqNAmBmnWbeHtCRFWUBLuI49EnLS7ZAg5lyZAwFhTNzo3 TJgDYhTfSxKw== X-IronPort-AV: E=McAfee;i="6000,8403,9801"; a="157129204" X-IronPort-AV: E=Sophos;i="5.77,469,1596524400"; d="scan'208";a="157129204" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Nov 2020 01:18:50 -0800 IronPort-SDR: 2TTtxXqOpaWqXaktPUAeduX/UegCrbz+C6sP+68WaMqiZeHjUi351pFtw0Xg1Fcs7MIBVf3TdD 48QrJWewHDug== X-IronPort-AV: E=Sophos;i="5.77,469,1596524400"; d="scan'208";a="541710064" 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 01:18:48 -0800 Date: Wed, 11 Nov 2020 09:18:43 +0000 From: Bruce Richardson To: Ferruh Yigit Cc: Thomas Monjalon , dev@dpdk.org, david.marchand@redhat.com, stable@dpdk.org, Luca Boccassi Message-ID: <20201111091843.GA1500@bricha3-MOBL.ger.corp.intel.com> References: <20201109210009.919129-1-thomas@monjalon.net> <3123620.zLnPt8Nx3Z@thomas> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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 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. /Bruce