All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] mlx5: use pkg-config to handle SUSE libmnl
@ 2018-10-25 18:04 Stephen Hemminger
  2018-10-25 18:14 ` Luca Boccassi
  0 siblings, 1 reply; 2+ messages in thread
From: Stephen Hemminger @ 2018-10-25 18:04 UTC (permalink / raw)
  To: adrien.mazarguil; +Cc: dev, Stephen Hemminger

SUSE decided to install the libmnl include file in a non-standard
place: /usr/include/libmnl/libmnl/libmnl.h

This was probably a mistake by the SUSE package maintainer,
but hard to get fixed. Workaround the problem by pkg-config to find
the necessary include directive for libmnl.

Fixes: 20b71e92ef8e ("net/mlx5: lay groundwork for switch offloads")
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
v2 - need --cflags not -cflags

 drivers/net/mlx5/Makefile | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Makefile
index 1e9c0b42ac16..5b0be08ebb81 100644
--- a/drivers/net/mlx5/Makefile
+++ b/drivers/net/mlx5/Makefile
@@ -51,6 +51,7 @@ CFLAGS += -D_DEFAULT_SOURCE
 CFLAGS += -D_XOPEN_SOURCE=600
 CFLAGS += $(WERROR_FLAGS)
 CFLAGS += -Wno-strict-prototypes
+CFLAGS += $(pkg-config --cflags libmnl)
 ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)
 CFLAGS += -DMLX5_GLUE='"$(LIB_GLUE)"'
 CFLAGS += -DMLX5_GLUE_VERSION='"$(LIB_GLUE_VERSION)"'
@@ -59,7 +60,7 @@ LDLIBS += -ldl
 else
 LDLIBS += -libverbs -lmlx5
 endif
-LDLIBS += -lmnl
+LDLIBS += $(pkg-config --libs libmnl)
 LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
 LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs
 LDLIBS += -lrte_bus_pci
-- 
2.19.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2] mlx5: use pkg-config to handle SUSE libmnl
  2018-10-25 18:04 [PATCH v2] mlx5: use pkg-config to handle SUSE libmnl Stephen Hemminger
@ 2018-10-25 18:14 ` Luca Boccassi
  0 siblings, 0 replies; 2+ messages in thread
From: Luca Boccassi @ 2018-10-25 18:14 UTC (permalink / raw)
  To: Stephen Hemminger, adrien.mazarguil; +Cc: dev, shahafs, yskoh, mvarlese

On Thu, 2018-10-25 at 11:04 -0700, Stephen Hemminger wrote:
> SUSE decided to install the libmnl include file in a non-standard
> place: /usr/include/libmnl/libmnl/libmnl.h
> 
> This was probably a mistake by the SUSE package maintainer,
> but hard to get fixed. Workaround the problem by pkg-config to find
> the necessary include directive for libmnl.
> 
> Fixes: 20b71e92ef8e ("net/mlx5: lay groundwork for switch offloads")
> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
> ---
> v2 - need --cflags not -cflags
> 
>  drivers/net/mlx5/Makefile | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Makefile
> index 1e9c0b42ac16..5b0be08ebb81 100644
> --- a/drivers/net/mlx5/Makefile
> +++ b/drivers/net/mlx5/Makefile
> @@ -51,6 +51,7 @@ CFLAGS += -D_DEFAULT_SOURCE
>  CFLAGS += -D_XOPEN_SOURCE=600
>  CFLAGS += $(WERROR_FLAGS)
>  CFLAGS += -Wno-strict-prototypes
> +CFLAGS += $(pkg-config --cflags libmnl)
>  ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)
>  CFLAGS += -DMLX5_GLUE='"$(LIB_GLUE)"'
>  CFLAGS += -DMLX5_GLUE_VERSION='"$(LIB_GLUE_VERSION)"'
> @@ -59,7 +60,7 @@ LDLIBS += -ldl
>  else
>  LDLIBS += -libverbs -lmlx5
>  endif
> -LDLIBS += -lmnl
> +LDLIBS += $(pkg-config --libs libmnl)
>  LDLIBS += -lrte_eal -lrte_mbuf -lrte_mempool -lrte_ring
>  LDLIBS += -lrte_ethdev -lrte_net -lrte_kvargs
>  LDLIBS += -lrte_bus_pci

Acked-by: Luca Boccassi <bluca@debian.org>

Here's the fix for the SUSE package (CC'ing Marco to make sure I got
the process right):

https://build.opensuse.org/request/show/644720

-- 
Kind regards,
Luca Boccassi

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-10-25 18:14 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-25 18:04 [PATCH v2] mlx5: use pkg-config to handle SUSE libmnl Stephen Hemminger
2018-10-25 18:14 ` Luca Boccassi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.