From: Ferruh Yigit <ferruh.yigit@amd.com>
To: "Mattias Rönnblom" <hofors@lysator.liu.se>,
"Patrick Robb" <probb@iol.unh.edu>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
"Mattias Rönnblom" <mattias.ronnblom@ericsson.com>,
"Richardson, Bruce" <bruce.richardson@intel.com>
Subject: Re: Run unit tests with C++ too
Date: Wed, 1 May 2024 15:38:10 +0100 [thread overview]
Message-ID: <7f3b67df-ffc2-461a-9985-8b42282deb50@amd.com> (raw)
In-Reply-To: <eb32d2f0-053d-408c-ba02-5a8bfd3c7752@lysator.liu.se>
On 5/1/2024 3:14 PM, Mattias Rönnblom wrote:
> On 2024-05-01 11:10, Ferruh Yigit wrote:
>> On 4/30/2024 9:57 PM, Patrick Robb wrote:
>>>
>>>
>>> On Tue, Apr 30, 2024 at 4:13 PM Mattias Rönnblom <hofors@lysator.liu.se
>>> <mailto:hofors@lysator.liu.se>> wrote:
>>>
>>> On 2024-04-30 15:52, Patrick Robb wrote:
>>> >
>>> >
>>> > On Sun, Apr 28, 2024 at 3:46 AM Mattias Rönnblom
>>> <hofors@lysator.liu.se <mailto:hofors@lysator.liu.se>
>>> > <mailto:hofors@lysator.liu.se <mailto:hofors@lysator.liu.se>>>
>>> wrote:
>>> >
>>> > It would be great if the unit test suite (app/test/*) was
>>> compiled (and
>>> > run) using a C++ (C++11) compiler as well. At least, if
>>> such is
>>> > available.
>>> >
>>> >
>>> > Sure, the UNH Lab can try this.
>>> >
>>> >
>>> > With the current state of affairs, header file macros or
>>> functions are
>>> > not verified to be functional (or even valid) C++.
>>> >
>>> > "C is a subset of C++", which was never true, is becoming
>>> less and
>>> > less so.
>>> >
>>> > If all unit tests aren't valid C++, maybe one could start
>>> with
>>> an "opt
>>> > in" model.
>>> >
>>> >
>>> > Okay, so basically run the fast-test suite, record all that don't
>>> pass,
>>> > submit a bugzilla ticket stating which unit tests are not
>>> valid on a
>>> > certain c++ compiler, then bring CI Testing online using the
>>> valid
>>> > subset of fast-tests. This should work.
>>> >
>>>
>>> Sounds good.
>>>
>>> Just to be clear: the above includes extending the DPDK build
>>> system to
>>> build the app/test/dpdk-test binary in two versions: one C and
>>> one C++,
>>> so that anyone can run the C++ tests locally as well. Correct?
>>>
>>>
>>> Okay, so now I am understanding this is not yet available. When I
>>> responded this morning I was figuring that c++ compiler support was
>>> available and I simply wasn't aware, and that we could quite easily set
>>> cc={some c++ compiler}, meson would pick it up, and we would be able to
>>> build DPDK and then run unit tests in this manner in CI testing.
>>>
>>> I didn't mean to suggest we would submit patches extending the build
>>> system to this end. That's probably a little out of scope for what we
>>> try to accomplish at the Community Lab.
>>>
>>> But if the aforementioned build system support is added, of course we
>>> are willing to add that as a build environment for unit tests and report
>>> those respective results.
>>>
>>
>> Does it have to be 'app/test/dpdk-test', why not build examples with C++?
>>
>
> The unit tests have the ability to test DPDK, which is exactly what we
> want to do here. Such testing isn't limited to "compiles yes/no", but to
> detect run-time (behavioral) issues, and properly report them.
>
> This is especially important for cases where there is code only
> exercised in C++ translation units (i.e., in #ifdef __cplusplus).
>
And Bruce highlighted that compile check is already covered.
Than I guess this work needs to be done in two steps,
1. Enable building dpdk-test (or all applications) with C++ in build
system. And fix possible issues.
2. Enable in dpdk-test C++ build and run in CI.
We need a volunteer for 1. before asking CI lab for 2.
next prev parent reply other threads:[~2024-05-01 14:38 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-28 7:46 Mattias Rönnblom
2024-04-29 8:01 ` Ferruh Yigit
2024-04-29 22:49 ` Tyler Retzlaff
2024-04-30 13:52 ` Patrick Robb
2024-04-30 18:01 ` Tyler Retzlaff
2024-04-30 20:13 ` Mattias Rönnblom
2024-04-30 20:57 ` Patrick Robb
2024-05-01 9:10 ` Ferruh Yigit
2024-05-01 10:15 ` Bruce Richardson
2024-05-01 14:14 ` Mattias Rönnblom
2024-05-01 14:38 ` Ferruh Yigit [this message]
2024-05-01 14:45 ` 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=7f3b67df-ffc2-461a-9985-8b42282deb50@amd.com \
--to=ferruh.yigit@amd.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=hofors@lysator.liu.se \
--cc=mattias.ronnblom@ericsson.com \
--cc=probb@iol.unh.edu \
/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).