[PATCH v4 0/7] Verify C++ compatibility of public headers
Bruce Richardson
bruce.richardson at intel.com
Thu Feb 10 16:42:32 CET 2022
This patchset expands upon the exiting chkincs infrastructure to build a
C++ test application as well as the existing C test app, which helps
catch any build errors when the public DPDK headers are included in C++
code. The rest of this patchset fixes the errors caught by this
additional check - mostly missing casts, but also one use of "new" as a
variable name, and one missing closing brace for an 'extern "C"' block.
V4:
* add g++-multilib to packages to install for github checks to ensure 32-bit
builds work
* correct the fixline for patch 1
* add extra cpp_args and cpp_link_args for 32-bit builds in test-meson-builds
so that includes checks can pass there if enabled.
V3:
* update linux-build script to have cpp_args=-m32 for 32-bit builds
V2:
* Changed patch 6 to have a minimally-invasive fix for C++ without
affecting existing C code.
* Added fixlines and Cc stable for all patches which are fixes
*** SUBJECT HERE ***
*** BLURB HERE ***
Bruce Richardson (7):
eal: fix header build with C++
eventdev: fix header build with C++
graph: fix missing explicit cast for C++ build
ipsec: fix missing explicit cast for C++ build
table: fix missing explicit casts for C++ build
vhost: fix incompatible header includes for C++
buildtools/chkincs: test headers for C++ compatibility
.ci/linux-build.sh | 1 +
.github/workflows/build.yml | 2 +-
buildtools/chkincs/main.cpp | 4 +++
buildtools/chkincs/meson.build | 20 +++++++++++++++
devtools/test-meson-builds.sh | 3 ++-
lib/eal/include/generic/rte_ticketlock.h | 14 +++++------
lib/eal/include/rte_trace_point.h | 2 +-
lib/eventdev/rte_event_timer_adapter.h | 3 +++
lib/eventdev/rte_eventdev.h | 2 +-
lib/graph/rte_graph_worker.h | 2 +-
lib/ipsec/rte_ipsec_group.h | 4 +--
lib/table/rte_table_hash_func.h | 32 ++++++++++++------------
lib/vhost/rte_vhost.h | 2 ++
13 files changed, 61 insertions(+), 30 deletions(-)
create mode 100644 buildtools/chkincs/main.cpp
--
2.32.0
More information about the dev
mailing list