summaryrefslogtreecommitdiff
path: root/packages/net/libpcap/libpcap.mk
diff options
context:
space:
mode:
Diffstat (limited to 'packages/net/libpcap/libpcap.mk')
-rw-r--r--packages/net/libpcap/libpcap.mk18
1 files changed, 18 insertions, 0 deletions
diff --git a/packages/net/libpcap/libpcap.mk b/packages/net/libpcap/libpcap.mk
index 3405447..0ef6bd0 100644
--- a/packages/net/libpcap/libpcap.mk
+++ b/packages/net/libpcap/libpcap.mk
@@ -36,3 +36,21 @@ LIBPCAP_SHARES := $(foreach m,1 3 5 7,man/man${m}/pcap*)
LIBPCAP_INCLUDES := pcap*
LIBPCAP_CONFIGURE_OPTS := --with-pcap=linux
+LIBPCAP_CONFIGURE_OPTS += $(if $(CONFIG_EMBTK_LIBPCAP_HAVE_LIBNL),--with-libnl,--without-libnl)
+
+LIBPCAP_DEPS-y :=
+LIBPCAP_DEPS-$(CONFIG_EMBTK_LIBPCAP_HAVE_LIBNL) += libnl_install
+
+#
+# Fixup wrong libnl headers in configure script
+#
+pembtk_libpcap_configure := $(call embtk_pkg_srcdir,libpcap)/configure
+pembtk_libpcap_incdir_nl := incdir=-I/usr/include/libnl3
+pembtk_libpcap_xincdir_nl := incdir=-I$(embtk_sysroot)/usr/include/libnl3
+define embtk_beforeinstall_libpcap
+ sed -e 's;$(pembtk_libpcap_incdir_nl);$(pembtk_libpcap_xincdir_nl);' \
+ -e 's;incdir=-I$${withval}/include;$(pembtk_libpcap_xincdir_nl);' \
+ < $(pembtk_libpcap_configure) > $(pembtk_libpcap_configure).tmp
+ cp $(pembtk_libpcap_configure).tmp $(pembtk_libpcap_configure)
+ chmod +x $(pembtk_libpcap_configure)
+endef