[dpdk-dev] [PATCH v3] meson: remove unnecessary explicit link to libpcap

Thomas Monjalon thomas at monjalon.net
Fri Apr 9 00:38:59 CEST 2021


Thank you, the fix looks good.
I would like to improve the explanation.

If I understand the issue, the title should be
"build: remove redundant libpcap link"

26/03/2021 09:22, Gabriel Ganne:
> libpcap is already found and registered as a dependency by meson, and
> the dependency is already correctly used in librte_port. This line is
> just unnecessary.

To be precise, the pcap PMD and the librte_port both declare their
dependency to libpcap with a line "ext_deps += pcap_dep"
and meson automatically adds this dependency to the pkg-config file
in the private section for static builds.
That's why it is not needed to add the dependency explicitly
in dpdk_extra_ldflags (involved in static build with pkg-config).

> It also has the side effect of messing with the meson link line: dpdk

Which "link line"?

> link will be declared twice: manually and then through pkg-config. If

What is "manually"?

> you configure meson to prefer static linking over dynamic, this will

No need to configure meson for that. Static linking can be tested with
make in an example. Please avoid messing with meson explanation
for application linking, it is already complicate enough :)

> cause the build to fail on librte_port, since the pcap deps are not yet
> seen by the linker.

Sorry it is not clear to me.
I think it would help to see a before/after effect on the link command.
Something like:

before:
	Libs.private: -lpcap
	Requires.private: libpcap
after:
	Libs.private:
	Requires.private: libpcap

[...]
> -	dpdk_extra_ldflags += '-lpcap'





More information about the dev mailing list