diff --git a/acinclude.m4 b/acinclude.m4 index 79064539c9..a5d9642364 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -131,6 +131,9 @@ AC_DEFUN([AC_WIRESHARK_PCAP_BREAKLOOP_TRY_LINK], # AC_DEFUN([AC_WIRESHARK_PCAP_CHECK], [ + AC_WIRESHARK_PUSH_FLAGS + ws_ac_save_LIBS="$LIBS" + if test -z "$pcap_dir" then # Pcap header checks @@ -174,7 +177,17 @@ AC_DEFUN([AC_WIRESHARK_PCAP_CHECK], # Found it, and it's usable; use it to get the include flags # for libpcap. # - CPPFLAGS="$CPPFLAGS `\"$PCAP_CONFIG\" --cflags`" + PCAP_CFLAGS=`\"$PCAP_CONFIG\" --cflags` + # + # We have pcap-config; we assume that means we have libpcap + # installed and that pcap-config will tell us whatever + # libraries libpcap needs. + # + if test x$enable_static = xyes; then + PCAP_LIBS="`\"$PCAP_CONFIG\" --libs --static`" + else + PCAP_LIBS="`\"$PCAP_CONFIG\" --libs`" + fi else # # Didn't find it; we have to look for libpcap ourselves. @@ -196,7 +209,7 @@ AC_DEFUN([AC_WIRESHARK_PCAP_CHECK], do if test -d $pcap_dir ; then if test x$pcap_dir != x/usr/include -a x$pcap_dir != x/usr/local/include ; then - CPPFLAGS="$CPPFLAGS -I$pcap_dir" + PCAP_CFLAGS="-I$pcap_dir" fi found_pcap_dir=" $found_pcap_dir -I$pcap_dir" break @@ -222,85 +235,79 @@ AC_DEFUN([AC_WIRESHARK_PCAP_CHECK], # and/or linker will search that other directory before it # searches the specified directory. # - CPPFLAGS="$CPPFLAGS -I$pcap_dir/include" - AC_WIRESHARK_ADD_DASH_L(LDFLAGS, $pcap_dir/lib) + PCAP_CFLAGS="-I$pcap_dir/include" + # + # XXX - This doesn't use AC_WIRESHARK_ADD_DASH_L + # + PCAP_LIBS="-L$pcap_dir/lib -lpcap" fi + CFLAGS="$PCAP_CFLAGS $CFLAGS" + LIBS="$PCAP_LIBS $LIBS" + # Pcap header check - AC_CHECK_HEADER(pcap.h,, - AC_MSG_ERROR([[Header file pcap.h not found; if you installed libpcap + AC_CHECK_HEADER(pcap.h, + [ + AC_DEFINE(HAVE_LIBPCAP, 1, [Define to use libpcap library]) + ], + [ + AC_MSG_ERROR([[Header file pcap.h not found; if you installed libpcap from source, did you also do \"make install-incl\", and if you installed a binary package of libpcap, is there also a developer's package of libpcap, -and did you also install that package?]])) +and did you also install that package?]]) + ]) - if test -n "$PCAP_CONFIG" ; then - # - # We have pcap-config; we assume that means we have libpcap - # installed and that pcap-config will tell us whatever - # libraries libpcap needs. - # - if test x$enable_static = xyes; then - PCAP_LIBS="`\"$PCAP_CONFIG\" --libs --static`" - else - PCAP_LIBS="`\"$PCAP_CONFIG\" --libs`" - fi - AC_DEFINE(HAVE_LIBPCAP, 1, [Define to use libpcap library]) - else - # - # Check to see if we find "pcap_open_live" in "-lpcap". - # Also check for various additional libraries that libpcap might - # require. - # - AC_CHECK_LIB(pcap, pcap_open_live, - [ - PCAP_LIBS=-lpcap - AC_DEFINE(HAVE_LIBPCAP, 1, [Define to use libpcap library]) - ], [ - ac_wireshark_extras_found=no - ac_save_LIBS="$LIBS" - for extras in "-lcfg -lodm" "-lpfring" - do - AC_MSG_CHECKING([for pcap_open_live in -lpcap with $extras]) - LIBS="-lpcap $extras $ac_save_LIBS" - # - # XXX - can't we use AC_CHECK_LIB here? - # - AC_TRY_LINK( - [ + # + # Check to see if we find "pcap_open_live" in "-lpcap". + # Also check for various additional libraries that libpcap might + # require. + # + AC_CHECK_LIB(pcap, pcap_open_live, + [ + ], + [ + ac_wireshark_extras_found=no + ac_save_LIBS="$LIBS" + for extras in "-lcfg -lodm" "-lpfring" + do + AC_MSG_CHECKING([for pcap_open_live in -lpcap with $extras]) + LIBS="-lpcap $extras $ac_save_LIBS" + # + # XXX - can't we use AC_CHECK_LIB here? + # + AC_TRY_LINK( + [ # include - ], - [ + ], + [ pcap_open_live(NULL, 0, 0, 0, NULL); - ], - [ - ac_wireshark_extras_found=yes - AC_MSG_RESULT([yes]) - PCAP_LIBS="-lpcap $extras" - AC_DEFINE(HAVE_LIBPCAP, 1, [Define to use libpcap library]) - ], - [ - AC_MSG_RESULT([no]) - ]) + ], + [ + ac_wireshark_extras_found=yes + AC_MSG_RESULT([yes]) + PCAP_LIBS="$PCAP_LIBS $extras" + ], + [ + AC_MSG_RESULT([no]) + ]) if test x$ac_wireshark_extras_found = xyes then - break + break fi - done - if test x$ac_wireshark_extras_found = xno - then - AC_MSG_ERROR([Can't link with library libpcap.]) - fi - LIBS=$ac_save_LIBS - ]) - fi + done + if test x$ac_wireshark_extras_found = xno + then + AC_MSG_ERROR([Can't link with library libpcap.]) + fi + LIBS=$ac_save_LIBS + ]) + AC_SUBST(PCAP_CFLAGS) AC_SUBST(PCAP_LIBS) # # Check whether various variables and functions are defined by # libpcap. # - ac_save_LIBS="$LIBS" - LIBS="$PCAP_LIBS $LIBS" AC_CHECK_FUNCS(pcap_open_dead pcap_freecode) # # pcap_breakloop may be present in the library but not declared @@ -413,7 +420,8 @@ install a newer version of the header file.]) AC_CHECK_FUNCS(bpf_image pcap_set_tstamp_precision pcap_set_tstamp_type) fi - LIBS="$ac_save_LIBS" + AC_WIRESHARK_POP_FLAGS + LIBS="$ws_ac_save_LIBS" ]) AC_DEFUN([AC_WIRESHARK_PCAP_REMOTE_CHECK], diff --git a/capchild/Makefile.am b/capchild/Makefile.am index 5a50b68eea..fc916214e5 100644 --- a/capchild/Makefile.am +++ b/capchild/Makefile.am @@ -21,7 +21,7 @@ include $(top_srcdir)/Makefile.am.inc -AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) $(GLIB_CFLAGS) +AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) $(GLIB_CFLAGS) $(PCAP_CFLAGS) noinst_LIBRARIES = libcapchild.a diff --git a/caputils/Makefile.am b/caputils/Makefile.am index ebd311aaf6..a67a2685d0 100644 --- a/caputils/Makefile.am +++ b/caputils/Makefile.am @@ -21,7 +21,8 @@ include $(top_srcdir)/Makefile.am.inc -AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) $(GLIB_CFLAGS) $(LIBNL_CFLAGS) +AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) $(GLIB_CFLAGS) $(PCAP_CFLAGS) \ + $(LIBNL_CFLAGS) noinst_LIBRARIES = libcaputils.a diff --git a/epan/Makefile.am b/epan/Makefile.am index d782b03f1f..58c41447f0 100644 --- a/epan/Makefile.am +++ b/epan/Makefile.am @@ -38,7 +38,7 @@ SUBDIRS = compress crypt ftypes dfilter dissectors wmem $(wslua_dir) DIST_SUBDIRS = $(SUBDIRS) $(wslua_dist_dir) AM_CPPFLAGS = $(INCLUDEDIRS) -I$(builddir)/wslua $(WS_CPPFLAGS) \ - $(GLIB_CFLAGS) $(LUA_CFLAGS) $(LIBGNUTLS_CFLAGS) \ + $(GLIB_CFLAGS) $(PCAP_CFLAGS) $(LUA_CFLAGS) $(LIBGNUTLS_CFLAGS) \ $(LIBGCRYPT_CFLAGS) $(LIBSMI_CFLAGS) $(LIBGEOIP_CFLAGS) \ $(LZ4_CFLAGS) $(KRB5_CFLAGS) $(SNAPPY_CFLAGS) $(LIBXML2_CFLAGS) diff --git a/extcap/Makefile.am b/extcap/Makefile.am index 89f5399853..938946c31a 100644 --- a/extcap/Makefile.am +++ b/extcap/Makefile.am @@ -21,7 +21,7 @@ include ../Makefile.am.inc -AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) $(GLIB_CFLAGS) +AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) $(GLIB_CFLAGS) $(PCAP_CFLAGS) MAINTAINERCLEANFILES = \ Makefile.in diff --git a/ui/Makefile.am b/ui/Makefile.am index 9f26d78610..55094edb3e 100644 --- a/ui/Makefile.am +++ b/ui/Makefile.am @@ -23,7 +23,7 @@ include $(top_srcdir)/Makefile.am.inc AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) -DDOC_DIR=\"$(docdir)\" \ - $(GLIB_CFLAGS) $(LIBGCRYPT_CFLAGS) $(LIBGNUTLS_CFLAGS) $(PORTAUDIO_INCLUDES) + $(GLIB_CFLAGS) $(PCAP_CFLAGS) $(LIBGCRYPT_CFLAGS) $(LIBGNUTLS_CFLAGS) $(PORTAUDIO_INCLUDES) noinst_LIBRARIES = libui.a libui_dirty.a diff --git a/wiretap/Makefile.am b/wiretap/Makefile.am index cad0353e0a..1b67cb3adb 100644 --- a/wiretap/Makefile.am +++ b/wiretap/Makefile.am @@ -21,7 +21,8 @@ include $(top_srcdir)/Makefile.am.inc -AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) -DWS_BUILD_DLL $(GLIB_CFLAGS) +AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) -DWS_BUILD_DLL $(GLIB_CFLAGS) \ + $(PCAP_CFLAGS) noinst_LTLIBRARIES = libwiretap_generated.la lib_LTLIBRARIES = libwiretap.la diff --git a/wsutil/Makefile.am b/wsutil/Makefile.am index e6698ea4fb..00ec19d632 100644 --- a/wsutil/Makefile.am +++ b/wsutil/Makefile.am @@ -26,7 +26,9 @@ AM_CPPFLAGS = $(INCLUDEDIRS) $(WS_CPPFLAGS) -DWS_BUILD_DLL \ -DEXTCAP_DIR=\"$(extcapdir)\" \ -DPLUGIN_DIR=\"$(pkglibdir)/plugins\" \ -DJSMN_STRICT \ - $(GLIB_CFLAGS) $(LIBGCRYPT_CFLAGS) \ + $(GLIB_CFLAGS) \ + $(PCAP_CFLAGS) \ + $(LIBGCRYPT_CFLAGS) \ $(LIBGNUTLS_CFLAGS) # Optional headers for ABI checking