DPDK patches and discussions
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [dpdk-dev] [Bug 836] DPDK doesn't build under meson 0.60
Date: Mon, 25 Oct 2021 10:46:28 +0000	[thread overview]
Message-ID: <bug-836-3@http.bugs.dpdk.org/> (raw)

https://bugs.dpdk.org/show_bug.cgi?id=836

            Bug ID: 836
           Summary: DPDK doesn't build under meson 0.60
           Product: DPDK
           Version: 21.08
          Hardware: x86
                OS: Linux
            Status: UNCONFIRMED
          Severity: major
          Priority: Normal
         Component: meson
          Assignee: dev@dpdk.org
          Reporter: michallinuxstuff@gmail.com
  Target Milestone: ---

Due to
https://github.com/mesonbuild/meson/commit/0a3a9fa0c3ebf45c94d9009a59cead571cbecf7b
gen-pmdinfo-cfile.py fails to run `ar x` against the .a files which were
created as thin archives. This happens for all the .a files for which meson
generates `LINK_ARGS = csrDT` (note the T option) inside the build.ninja.
Here's a failing trace:

ninja: Entering directory `/git_repos/spdk_repo/spdk/dpdk/build-tmp'
[243/272] Generating drivers/rte_bus_vdev.pmd.c with a custom command
FAILED: drivers/rte_bus_vdev.pmd.c
/usr/bin/python3 ../buildtools/gen-pmdinfo-cfile.py
/git_repos/spdk_repo/spdk/dpdk/build-tmp/buildtools ar
/git_repos/spdk_repo/spdk/dpdk/build-tmp/drivers/libtmp_rte_bus_vdev.a
drivers/rte_bus_vdev.pmd.c /usr/bin/python3 ../buildtools/pmdinfogen.py elf
ar: `x' cannot be used on thin archives.
Traceback (most recent call last):
  File
"/git_repos/spdk_repo/spdk/dpdk/build-tmp/../buildtools/gen-pmdinfo-cfile.py",
line 28, in <module>
    run_ar("x")
  File
"/git_repos/spdk_repo/spdk/dpdk/build-tmp/../buildtools/gen-pmdinfo-cfile.py",
line 23, in <lambda>
    run_ar = lambda command: subprocess.run(
  File "/usr/lib64/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['ar', 'x',
'/git_repos/spdk_repo/spdk/dpdk/build-tmp/drivers/libtmp_rte_bus_vdev.a']'
returned non-zero exit status 1.


If I comment the `run_ar("x")` out the build succeeds (my understanding is that
if the .a is indeed a thin archive it consists of only references to .c.o files
which are already available so we are not missing anything). Skipping the thin
.as also seems to be working. That said, my dpdk-fu in terms of its building
components is not strong enough, hence I am not really sure what would be right
fix here. 

Reverting to meson < 0.60 (e.g. 0.59.2) also does the trick, but any hints,
suggestions as to the right fix would be appreciated.

-- 
You are receiving this mail because:
You are the assignee for the bug.

                 reply	other threads:[~2021-10-25 10:46 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=bug-836-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --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).