DPDK patches and discussions
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: David Marchand <david.marchand@redhat.com>
Cc: <dev@dpdk.org>
Subject: Re: [PATCH v2 0/4] simplify doing 32-bit DPDK builds
Date: Thu, 19 Sep 2024 09:02:23 +0100	[thread overview]
Message-ID: <Zuvaj2zqEfdw4iBL@bricha3-mobl1.ger.corp.intel.com> (raw)
In-Reply-To: <CAJFAV8yzjSq+0F_sSC0=JAwnGu=Q-mtGDYNS0_=+9OV80W0bsw@mail.gmail.com>

On Thu, Sep 19, 2024 at 09:44:18AM +0200, David Marchand wrote:
> On Fri, Sep 6, 2024 at 6:13 PM Bruce Richardson
> <bruce.richardson@intel.com> wrote:
> >
> > To make it easier to build and test DPDK on 32-bit x86 add a set of
> > cross-compile ini files for a number of common linux distributions.
> > This avoids the user having to remember strange meson incantations
> > with '-m32' in various args values and with the PKG_CONFIG_LIBDIR
> > overridden in the environment.
> >
> > Bruce Richardson (4):
> >   config: add 32-bit x86 debian cross-compilation file
> >   config: add fedora 32-bit x86 cross-compile file
> >   config: add arch 32-bit cross-compilation file
> >   devtools/test-meson-builds: use cross files for 32bit build
> >
> >  config/x86/cross-32bit-arch.ini   | 22 ++++++++++++++++++++++
> >  config/x86/cross-32bit-debian.ini | 22 ++++++++++++++++++++++
> >  config/x86/cross-32bit-fedora.ini | 22 ++++++++++++++++++++++
> >  devtools/test-meson-builds.sh     | 13 +++++--------
> >  4 files changed, 71 insertions(+), 8 deletions(-)
> >  create mode 100644 config/x86/cross-32bit-arch.ini
> >  create mode 100644 config/x86/cross-32bit-debian.ini
> >  create mode 100644 config/x86/cross-32bit-fedora.ini
> 
> I tried to convert the GHA script to use the debian cross file
> introduced in the series:
> 
> diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
> index 15ed51e4c1..cec8742ed1 100755
> --- a/.ci/linux-build.sh
> +++ b/.ci/linux-build.sh
> @@ -54,6 +54,10 @@ if [ "$AARCH64" = "true" ]; then
>      fi
>  fi
> 
> +if [ "$BUILD_32BIT" = "true" ]; then
> +    cross_file=config/x86/cross-32bit-debian.ini
> +fi
> +
>  if [ "$MINGW" = "true" ]; then
>      cross_file=config/x86/cross-mingw
>  fi
> @@ -76,12 +80,6 @@ if [ "$BUILD_DOCS" = "true" ]; then
>      OPTS="$OPTS -Denable_docs=true"
>  fi
> 
> -if [ "$BUILD_32BIT" = "true" ]; then
> -    OPTS="$OPTS -Dc_args=-m32 -Dc_link_args=-m32"
> -    OPTS="$OPTS -Dcpp_args=-m32 -Dcpp_link_args=-m32"
> -    export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig"
> -fi
> -
>  if [ "$MINGW" = "true" ]; then
>      OPTS="$OPTS -Dexamples=helloworld"
>  elif [ "$DEF_LIB" = "static" ]; then
> 
> I was then surprised to read the result:
> ...
> 2024-09-19T07:22:12.6485260Z Checking for size of "void *" : 8
> 2024-09-19T07:22:12.6485592Z Checking for size of "void *" : 8
> ...
> 
> 
> *scratch* *scratch*
> So I retested the series locally on my f39 (the series seemed ok so
> far) but I downgraded meson to 0.53.2 (which is the version forced in
> GHA) and now I observe the same issue.
> 
> I suspect something changed in the cross file handling in more recent
> meson versions.
> Likely, the c_args= or [build-in options] part is not read.
> 
> Am I doing something wrong?
> 
From the docs on cross-files [1], it appears that significant changes to
the cross-file handling was done in 0.56 release. That may be the cause.
I'll have to try some testing myself.

Overall, I think we haven't increased our minimum meson version in some
time. Maybe it's time to consider doing so in this release or the next one?
Need to look through release notes to see how far forward to jump to see
what extra features might be useful for us to leverage.

/Bruce

[1] https://mesonbuild.com/Machine-files.html

  parent reply	other threads:[~2024-09-19  8:02 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-04 13:57 [PATCH] config: add 32-bit cross-compilation x86 target Bruce Richardson
2024-09-06 15:34 ` Medvedkin, Vladimir
2024-09-06 16:12 ` [PATCH v2 0/4] simplify doing 32-bit DPDK builds Bruce Richardson
2024-09-06 16:12   ` [PATCH v2 1/4] config: add 32-bit x86 debian cross-compilation file Bruce Richardson
2024-09-06 16:12   ` [PATCH v2 2/4] config: add fedora 32-bit x86 cross-compile file Bruce Richardson
2024-09-06 16:12   ` [PATCH v2 3/4] config: add arch 32-bit cross-compilation file Bruce Richardson
2024-09-06 16:12   ` [PATCH v2 4/4] devtools/test-meson-builds: use cross files for 32bit build Bruce Richardson
2024-09-19  7:44   ` [PATCH v2 0/4] simplify doing 32-bit DPDK builds David Marchand
2024-09-19  7:52     ` Bruce Richardson
2024-09-19  8:02     ` Bruce Richardson [this message]
2024-09-19  8:08       ` David Marchand
2024-09-19 11:15         ` Bruce Richardson
2024-09-19 11:32           ` David Marchand
2024-09-19 12:09             ` Robin Jarry
2024-09-19 12:57               ` Bruce Richardson

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=Zuvaj2zqEfdw4iBL@bricha3-mobl1.ger.corp.intel.com \
    --to=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    /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).