Source: daq Version: 2.0.4-3 Tags: patch upstream User: debian-cr...@lists.debian.org Usertags: ftcbfs
daq fails to cross build from source, because it checks for the pcap version using AC_RUN_IFELSE. Doing so does not work at all during cross compilation. A better approach here is using AC_COMPUTE_INT to compute the major and minor version of pcap independently and then perform the comparison in shell. AC_COMPUTE_INT is implemented such that it does not require running code for compile time constants. Please consider applying the attached patch. Helmut
--- daq-2.0.4.orig/m4/sf.m4 +++ daq-2.0.4/m4/sf.m4 @@ -130,30 +130,22 @@ AC_CHECK_LIB([pcap],[pcap_lib_version],[LIBS="-lpcap ${LIBS}"],[have_pcap_lib_version="no"],[]) if test "x$have_pcap_lib_version" = "xno"; then echo - echo " ERROR! Libpcap library version >= $1 not found." + echo " ERROR! Libpcap library version >= $1.$2 not found." echo " Get it from http://www.tcpdump.org" echo exit 1 fi - AC_CACHE_CHECK([for libpcap version >= $1], [daq_cv_libpcap_version_1x], [ - AC_RUN_IFELSE( - [AC_LANG_PROGRAM( - [[ - #include <pcap.h> - #include <string.h> - extern char pcap_version[]; - ]], - [[ - if (strcmp(pcap_version, $1) < 0) - return 1; - ]])], - [daq_cv_libpcap_version_1x="yes"], - [daq_cv_libpcap_version_1x="no"])]) - if test "x$daq_cv_libpcap_version_1x" = "xno"; then + AC_MSG_CHECKING([for libpcap version >= $1.$2]) + AC_COMPUTE_INT([PCAP_VERSION_MAJOR],[PCAP_VERSION_MAJOR],[#include <pcap.h>],[ + AC_MSG_FAILURE([failed to compute PCAP_VERSION_MAJOR from pcap.h])]) + AC_COMPUTE_INT([PCAP_VERSION_MINOR],[PCAP_VERSION_MINOR],[#include <pcap.h>],[ + AC_MSG_FAILURE([failed to compute PCAP_VERSION_MINOR from pcap.h])]) + AS_IF([test "$1" -gt "$PCAP_VERSION_MAJOR" -o "$1" -eq "$PCAP_VERSION_MAJOR" -a "$2" -gt "$PCAP_VERSION_MINOR"],[ echo - echo " ERROR! Libpcap library version >= $1 not found." + echo " ERROR! Libpcap library version >= $1.$2 not found." echo " Get it from http://www.tcpdump.org" echo exit 1 - fi + ]) + AC_MSG_RESULT([$PCAP_VERSION_MAJOR.$PCAP_VERSION_MAJOR]) ]) --- daq-2.0.4.orig/configure.ac +++ daq-2.0.4/configure.ac @@ -188,7 +188,7 @@ [enable_pcap_module="$enableval"], [enable_pcap_module="$DEFAULT_ENABLE"]) if test "$enable_pcap_module" = yes; then AC_CHECK_HEADER([pcap.h], [], [enable_pcap_module=no]) - AC_CHECK_PCAP_VER("1.0.0") + AC_CHECK_PCAP_VER(1,0) if test "$enable_pcap_module" = yes; then STATIC_LIBS="${STATIC_LIBS} -lpcap" fi