@@ -20,16 +20,17 @@ RPM_BUILDREQ=
2020
2121AC_CONFIG_MACRO_DIR ( [ m4] )
2222# Must be checked before default -g -O2 is set:
23+ CXXFLAGS=" -std=gnu++17 "
2324AC_ARG_ENABLE ( [ debug] ,
2425 AC_HELP_STRING ( [ --enable-debug] ,
2526 [ Enable build with debug symbols and without optimizations.] ) ,
2627 [ if test "$enableval" = "yes"; then
27- CXXFLAGS="-Wall -g -O0 $CXXFLAGS"
28+ CXXFLAGS+ ="-Wall -g -O0 $CXXFLAGS"
2829 CFLAGS="-Wall -g -O0 $CFLAGS"
2930 else
30- CXXFLAGS="-Wall -g -O3 $CXXFLAGS"
31+ CXXFLAGS+ ="-Wall -g -O3 $CXXFLAGS"
3132 CFLAGS="-Wall -g -O3 $CFLAGS"
32- fi] , [ CXXFLAGS="-Wall -g -O3 $CXXFLAGS"
33+ fi] , [ CXXFLAGS+ ="-Wall -g -O3 $CXXFLAGS"
3334 CPPFLAGS="-DNDEBUG=1 $CPPFLAGS"
3435 CFLAGS="-Wall -g -O3"] )
3536AM_CONDITIONAL(DEBUG, test x"$debug" = x"true")
@@ -81,6 +82,9 @@ AC_ARG_WITH([defaultsocketdir],
8182AC_SUBST ( [ defaultsocketdir] , [ $with_defaultsocketdir] )
8283AC_DEFINE_DIR([ DEFAULTSOCKETDIR] , [ defaultsocketdir] , [ Default path to socket directory] )
8384
85+ pkglibdir=$libdir/ipfixprobe
86+ AC_DEFINE_DIR([ PLUGINDIR] , [ pkglibdir] , [ Path to loadable plugins] )
87+
8488AC_CHECK_LIB ( atomic , __atomic_store , [ libatomic=yes] , AC_MSG_ERROR ( [ libatomic not found] ) )
8589
8690PKG_CHECK_MODULES([ LIBLZ4] , [ liblz4] )
@@ -217,7 +221,7 @@ if test x${withndp} = xyes; then
217221 ) , AC_MSG_ERROR ( [ nfb/nfb.h not found. Try installing netcope-common-devel] ) )
218222fi
219223
220- AM_CONDITIONAL(WITH_NDP, test x${libnfb} = xyes && test x${withndp} = xyes)
224+ AM_CONDITIONAL(WITH_NDP, test x${libnfb} = xyes -a x${withndp} = xyes)
221225if [ [ -z "$WITH_NDP_TRUE" ] ] ; then
222226 AC_DEFINE ( [ WITH_NDP] , [ 1] , [ Define to 1 if the ndp is available] )
223227 CPPFLAGS="$CPPFLAGS -DIPXP_FLOW_CACHE_SIZE=19 -DIPXP_FLOW_LINE_SIZE=2" # 524288 cache records, 4 record per line
@@ -236,31 +240,47 @@ AC_ARG_WITH([pcap],
236240 fi
237241 ] , [ withpcap="no"]
238242)
239-
240- if test x${withpcap} = xyes; then
241- AC_CHECK_HEADER ( pcap.h ,
242- AC_CHECK_LIB ( pcap , pcap_open_live , [ libpcap=yes] ,
243- AC_CHECK_LIB ( wpcap , pcap_open_live , [ libwpcap=yes] , AC_MSG_ERROR ( [ libpcap not found. Try installing libpcap] ) ) ) ,
244- AC_MSG_ERROR ( [ pcap.h not found. Try installing libpcap-devel or libwpcap-devel] ) )
243+ AC_ARG_ENABLE ( [ pcap-plugin] ,
244+ AC_HELP_STRING ( [ --disable-pcap-plugin] ,
245+ [ Disable build of input-pcap plugin.] ) ,
246+ [ if test "$enableval" = "yes"; then
247+ disablepcapplugin=no
248+ else
249+ disablepcapplugin=yes
250+ fi] , [ disablepcapplugin=no] )
251+ AM_CONDITIONAL(DISABLE_PCAP_MODULE, test x"$disablepcapplugin" = x"yes")
252+
253+ BACKUPLIBS=$LIBS
254+ AC_CHECK_HEADER ( pcap.h ,
255+ AC_CHECK_LIB ( pcap , pcap_open_live , [ libpcap=yes
256+ have_pcap=yes] ,
257+ AC_CHECK_LIB ( wpcap , pcap_open_live , [ libwpcap=yes
258+ have_pcap=yes] , [ AC_MSG_WARN ( [ libpcap not found. Try installing libpcap] )
259+ have_pcap=no] ) ) ,
260+ [ AC_MSG_WARN ( [ pcap.h not found. Try installing libpcap-devel or libwpcap-devel] )
261+ have_pcap=no] )
262+
263+ if test x${withpcap} = xyes -a x${have_pcap} = xno; then
264+ AC_MSG_ERROR ( [ Cannot compile pcap plugin that was enabled by --with-pcap.] )
245265fi
246266
247- AM_CONDITIONAL(WITH_PCAP, test x${withpcap} && (test x${libpcap} = xyes || test x${libwpcap} = xyes))
248- if [ [ -z "$WITH_PCAP_TRUE" ] ] ; then
267+ AM_CONDITIONAL(ENABLE_PCAP, test x${have_pcap} = xyes -a x${disablepcapplugin} = xno)
268+ AM_CONDITIONAL(WITH_PCAP, test x${withpcap} = xyes -a x${have_pcap} = xyes)
269+ if test x${withpcap} = xyes -a x${have_pcap} = xyes; then
249270 AC_DEFINE ( [ WITH_PCAP] , [ 1] , [ Define to 1 if the libpcap is available] )
250- if [ [ -z "$WITH_PCAP_TRUE" ] ] ; then
251- if test x${libpcap} = xyes; then
252- LIBS="-lpcap $LIBS"
253- RPM_REQUIRES+=" libpcap"
254- RPM_BUILDREQ+=" libpcap-devel"
255- else
256- LIBS="-lwpcap $LIBS"
257- RPM_REQUIRES+=" libwpcap"
258- RPM_BUILDREQ+=" libwpcap-devel"
259- fi
271+ if test x${libpcap} = xyes; then
272+ LIBS="-lpcap $LIBS"
273+ RPM_REQUIRES+=" libpcap"
274+ RPM_BUILDREQ+=" libpcap-devel"
275+ else
276+ LIBS="-lwpcap $LIBS"
277+ RPM_REQUIRES+=" libwpcap"
278+ RPM_BUILDREQ+=" libwpcap-devel"
260279 fi
280+ else
281+ LIBS=$BACKUPLIBS
261282fi
262283
263-
264284AC_ARG_WITH ( [ unwind] ,
265285 AC_HELP_STRING ( [ --with-unwind] ,[ Compile ipfixprobe with libunwind to print stack on crash] ) ,
266286 [
@@ -400,7 +420,7 @@ AM_CONDITIONAL(WITH_STEM, test x${withstem} = xyes)
400420if [ [ -z "$WITH_STEM_TRUE" ] ] ; then
401421 AC_DEFINE ( [ WITH_STEM] , [ 1] , [ Define to 1 to use flexprobe testing interface] )
402422 CFLAGS="-I/usr/local/include/Stem $CFLAGS"
403- CXXFLAGS="-I/usr/local/include/Stem -std=gnu++17 - g -Wno-write-strings $CXXFLAGS"
423+ CXXFLAGS="-I/usr/local/include/Stem -g -Wno-write-strings $CXXFLAGS"
404424 LIBS="-lstem $LIBS"
405425fi
406426
463483
464484AC_CONFIG_FILES ( [ Makefile
465485 ipfixprobe.spec
486+ ipfixprobe-dpdk.spec
487+ ipfixprobe-ndp.spec
466488 ipfixprobe.bash
467489 input/nfbCInterface/Makefile
468490 init/Makefile
@@ -499,6 +521,12 @@ echo " LIBS...................: $LIBS"
499521echo "Enforced NEMEA (for copr): $COPRRPM"
500522echo "FlexProbe Data Interface.: $withflexprobe"
501523echo "DPDK Interface...........: $withdpdk"
524+ echo "pcap Interface...........: $withpcap"
525+ if test -n "$ENABLE_PCAP_TRUE"; then
526+ echo " pcap module...........: no"
527+ else
528+ echo " pcap module...........: yes"
529+ fi
502530echo
503531echo "Installation.............: make install (as root if needed, with 'su' or 'sudo')"
504532echo " prefix.................: $prefix"
0 commit comments