|
@@ -0,0 +1,49 @@
|
|
|
+From d89fca062ba966332b573673fdd5c4cf01c3e2f5 Mon Sep 17 00:00:00 2001
|
|
|
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
|
+Date: Mon, 29 Dec 2014 15:32:08 +0100
|
|
|
+Subject: [PATCH 2/2] Add Libs.private field to libnftnl.pc
|
|
|
+
|
|
|
+Static linking userspace programs such as nftables against libnftnl
|
|
|
+currently doesn't work out of the box, because libnftnl is linked
|
|
|
+against libmnl, but this isn't expressed in libnftnl pkg-config
|
|
|
+file:
|
|
|
+
|
|
|
+ CCLD nft
|
|
|
+[...]/bfin-buildroot-uclinux-uclibc/sysroot/usr/lib/libnftnl.a(table.o): In function `_nft_table_nlmsg_parse':
|
|
|
+table.c:(.text+0x480): undefined reference to `_mnl_attr_parse'
|
|
|
+table.c:(.text+0x492): undefined reference to `_mnl_attr_get_str'
|
|
|
+table.c:(.text+0x4a8): undefined reference to `_mnl_attr_get_u32'
|
|
|
+table.c:(.text+0x4ca): undefined reference to `_mnl_attr_get_u32'
|
|
|
+[...]
|
|
|
+
|
|
|
+The Libs.private field is specifically designed for such usage:
|
|
|
+
|
|
|
+From pkg-config documentation:
|
|
|
+
|
|
|
+ Libs.private:
|
|
|
+
|
|
|
+ This line should list any private libraries in use. Private
|
|
|
+ libraries are libraries which are not exposed through your
|
|
|
+ library, but are needed in the case of static linking.
|
|
|
+
|
|
|
+Therefore, this patch adds a reference to libmnl in the Libs.private
|
|
|
+field of libnftnl pkg-config file.
|
|
|
+
|
|
|
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
|
+---
|
|
|
+ libnftnl.pc.in | 1 +
|
|
|
+ 1 file changed, 1 insertion(+)
|
|
|
+
|
|
|
+diff --git a/libnftnl.pc.in b/libnftnl.pc.in
|
|
|
+index fd5cc6a..7fef921 100644
|
|
|
+--- a/libnftnl.pc.in
|
|
|
++++ b/libnftnl.pc.in
|
|
|
+@@ -12,4 +12,5 @@ Version: @VERSION@
|
|
|
+ Requires:
|
|
|
+ Conflicts:
|
|
|
+ Libs: -L${libdir} -lnftnl
|
|
|
++Libs.private: @LIBMNL_LIBS@
|
|
|
+ Cflags: -I${includedir}
|
|
|
+--
|
|
|
+2.1.0
|
|
|
+
|