Skip to contentSkip to conversation

daq: libdnet is optional not mandatory

PATCH New Fabrice Fontaine 2 participants 2 messages Jan 7, 2018

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 daq: libdnet is optional not mandatory

libdnet is an optional dependency, it is only needed if nfq or ipq module are enabled.

So, if libdnet and libnetfilter_queue are available, enable nfq module and add a dependency to both packages otherwise disable nfq module.

Moreover, always disable ipq module as libipq is deprecated, it isn't enable in iptables. Even if it was enabled, libipq.h can't be included as it makes a reference to linux/netfilter_ipv4/ip_queue.h which is not available anymore

---
 package/daq/Config.in |  1 -
 package/daq/daq.mk    | 11 ++++++++++-
 2 files changed, 10 insertions(+), 2 deletions(-)
package/daq/Config.in +0 -1
index 1d24c6d11a..ad294abd60 100644
@@ -1,7 +1,6 @@
 config BR2_PACKAGE_DAQ
 	bool "daq"
 	depends on !BR2_STATIC_LIBS # dlfcn.h
-	select BR2_PACKAGE_LIBDNET
 	help
 	  DAQ is a Data Acquisition library for packet I/O from the
 	  Snort project.
package/daq/daq.mk +10 -1
index 4499fb4b68..33c8a1f662 100644
@@ -10,12 +10,21 @@ DAQ_SOURCE = daq-$(DAQ_VERSION).tar.gz
 DAQ_LICENSE = GPL-2.0
 DAQ_LICENSE_FILES = COPYING
 DAQ_INSTALL_STAGING = YES
-DAQ_DEPENDENCIES = libdnet
 
 # package does not build in parallel due to improper make rules
 # related to the generation of the tokdefs.h header file
 DAQ_MAKE = $(MAKE1)
 
+# disable ipq module as libipq is deprecated
+DAQ_CONF_OPTS += --disable-ipq-module
+
+ifeq ($(BR2_PACKAGE_LIBDNET)$(BR2_PACKAGE_LIBNETFILTER_QUEUE),yy)
+DAQ_DEPENDENCIES += libdnet libnetfilter_queue
+DAQ_CONF_OPTS += --enable-nfq-module
+else
+DAQ_CONF_OPTS += --disable-nfq-module
+endif
+
 ifeq ($(BR2_PACKAGE_LIBPCAP),y)
 DAQ_DEPENDENCIES += libpcap
 # assume these flags are available to prevent configure from running
Signature · 1 line
2.14.1
#1 lore raw

PATCH 1/1 daq: libdnet is optional not mandatory

Hello,

Quoted 11 lines · Fabrice Fontaine

libdnet is an optional dependency, it is only needed if nfq or ipq module are enabled.

So, if libdnet and libnetfilter_queue are available, enable nfq module and add a dependency to both packages otherwise disable nfq module.

Moreover, always disable ipq module as libipq is deprecated, it isn't enable in iptables. Even if it was enabled, libipq.h can't be included as it makes a reference to linux/netfilter_ipv4/ip_queue.h which is not available anymore

Quoted 5 lines
---
 package/daq/Config.in |  1 -
 package/daq/daq.mk    | 11 ++++++++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

Applied to master, thanks.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com