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

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Fabrice Fontaine 2018-01-07 15:30:30 +01:00 committed by Thomas Petazzoni
parent 505ae63b60
commit fadd4a9f1c
2 changed files with 10 additions and 2 deletions

View file

@ -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.

View file

@ -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