From: Thomas Monjalon <thomas@monjalon.net>
To: Ferruh Yigit <ferruh.yigit@intel.com>,
Bruce Richardson <bruce.richardson@intel.com>
Cc: dev@dpdk.org, david.marchand@redhat.com
Subject: Re: [dpdk-dev] [PATCH] devtools: fix 32-bits build
Date: Mon, 09 Nov 2020 14:51:20 +0100 [thread overview]
Message-ID: <107452781.OxjIhUcIOi@thomas> (raw)
In-Reply-To: <20201109133531.GF831@bricha3-MOBL.ger.corp.intel.com>
09/11/2020 14:35, Bruce Richardson:
> On Mon, Nov 09, 2020 at 01:24:28PM +0000, Ferruh Yigit wrote:
> > On 11/9/2020 1:19 PM, Thomas Monjalon wrote:
> > > 09/11/2020 14:00, Ferruh Yigit:
> > > > 32 bit still uses the pkgconfig file for 64-bits libraries, from the
> > > > build log:
> > > >
> > > > "
> > > > Using DPDK_TARGET i386-pc-linux-gnu
> > > > meson -Dexamples=l3fwd --buildtype=debugoptimized --werror
> > > > -Dc_args=-m32 -Dc_link_args=-m32
> > > > /tmp/dpdk_maintain/self/dpdk/devtools/.. ./build-32b
> > > > ...
> > > > Using 'PKG_CONFIG_PATH' from environment with value:
> > > > '/usr/local/lib64/pkgconfig/
> > > > "
> > > >
> > > > This causes build error when linking with the found libraries.
> > > >
> > > > Reproduced with 'librte_bpf' which only has 64 bit installed but still
> > > > enables building 'af_xdp' and link fails.
> > >
> > > I think it is a problem in your configuration.
> > > PKG_CONFIG_PATH is not empty before starting the script, right?
> > >
> > > > To fix updating 'PKG_CONFIG_PATH' and preventing 'load_env' overwrite
> > > > it.
> > > [...]
> > > > 'build-32b' check inside the 'load_env' looks ugly but not sure how to
> > > > be sure 'PKG_CONFIG_PATH' set correct.
> > > [...]
> > > > - export PKG_CONFIG_PATH=$default_pkgpath
> > > > + if [ "$targetdir" != "build-32b" ] ; then
> > > > + export PKG_CONFIG_PATH=$default_pkgpath
> > > > + fi
> > >
> > > You can reset PKG_CONFIG_PATH in your config file.
> > > Something like this:
> > >
> > > if echo $DPDK_TARGET | grep -q '^i[3-6]86' ; then
> > > export PKG_CONFIG_PATH=my32bitlibs/pkgconfig
> > > fi
> > >
> > > We can also discuss why inheriting some default values on script start
> > > instead of just resetting them.
> > >
> >
> > Yes I have 'PKG_CONFIG_PATH' set in my environment before running script, if
> > it expects it to be not set, +1 to reset it at the beginning of the script.
>
> +1 to this, because we can't have a global PKG_CONFIG_PATH for both 32-bit
> and 64-bit builds.
Not sure what is best.
The idea of saving the env vars is to consider what the user set
for one run, not in the config file:
default_path=$PATH
default_pkgpath=$PKG_CONFIG_PATH
default_cppflags=$CPPFLAGS
default_cflags=$CFLAGS
default_ldflags=$LDFLAGS
Do you want to change this assumption to ignore all environment vars?
Should we save PATH at least?
Do we set every variables inside the configuration file?
I tend to think that it may be safer to avoid influence of the env
and have a self-contained config file.
So I would add PATH=/usr/bin at the beginning of my config file.
next prev parent reply other threads:[~2020-11-09 13:51 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-09 13:00 Ferruh Yigit
2020-11-09 13:19 ` Thomas Monjalon
2020-11-09 13:24 ` Ferruh Yigit
2020-11-09 13:35 ` Bruce Richardson
2020-11-09 13:51 ` Thomas Monjalon [this message]
2020-11-09 14:55 ` [dpdk-dev] [PATCH v2] " Ferruh Yigit
2020-11-09 15:28 ` Thomas Monjalon
2020-11-09 15:44 ` Bruce Richardson
2020-11-09 16:14 ` Thomas Monjalon
2020-11-09 16:19 ` Bruce Richardson
2020-11-09 16:48 ` Ferruh Yigit
2020-11-09 17:01 ` Thomas Monjalon
2020-11-09 17:15 ` Ferruh Yigit
2020-11-09 17:20 ` Thomas Monjalon
2020-11-09 17:44 ` Thomas Monjalon
2020-11-09 21:02 ` Thomas Monjalon
2020-11-11 12:34 ` Ferruh Yigit
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=107452781.OxjIhUcIOi@thomas \
--to=thomas@monjalon.net \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).