[v3,0/5] mlx ibverbs linking in meson

Message ID 20200211011942.1569573-1-thomas@monjalon.net (mailing list archive)


Thomas Monjalon Feb. 11, 2020, 1:19 a.m. UTC
  This is the follow-up of the feature I added one year ago:
static linkage of libibverbs in mlx PMDs.
The first implementation was focused on "make".
This second round does the same with "meson".

With the meson option ibverbs_link, only the mode "shared"
was working correctly.
This patchset adds the mode "static" and fixes the mode "dlopen".

changes in v3:
- get cflags with pkg-config invocation
- drop addition of global variable hidden_deps
- remove overlinking in dlopen mode

changes in v2:
- split mlx patch for normal addition and workarounds
- fix ldflags for ibverbs installed in a standard directory
- fix libs order leading to undefined references
- add doc for hidden_deps
- improve explanations in commit logs

Thomas Monjalon (5):
  net/mlx: add static ibverbs linkage with meson
  buildtools: get static mlx dependencies for meson
  net/mlx: workaround static linkage with meson
  net/mlx: rename meson variable for dlopen option
  net/mlx: fix overlinking with meson and glue dlopen

 buildtools/meson.build               |  2 ++
 buildtools/options-ibverbs-static.sh | 10 ++++++++--
 doc/guides/nics/mlx4.rst             |  4 ++++
 doc/guides/nics/mlx5.rst             |  4 ++++
 drivers/common/mlx5/meson.build      | 27 +++++++++++++++++++-------
 drivers/net/mlx4/meson.build         | 29 ++++++++++++++++++++--------
 meson_options.txt                    |  4 ++--
 7 files changed, 61 insertions(+), 19 deletions(-)