From 177d20dbe83b188e707c354c267d836b2de5cff8 Mon Sep 17 00:00:00 2001 From: Eli Schwartz Date: Fri, 5 Apr 2024 00:42:29 -0400 Subject: [PATCH] configure.ac: bashism: fix critical existence failure on systems with dash Remove the consistent use of bashisms. An autoconf generated script is designed to work with POSIX sh, and contains a /bin/sh shebang. As a result, it *cannot* assume it will be run with bash, as it won't be. The bashism in question is the double equals (`==`) operator for the test command. It is actually a bash-specific alias for the single equals operator. It behaves exactly the same, except more confusing. It contains no added functionality and no behavior changes, it is merely an additional alternate spelling. In exchange for doing nothing whatsoever, even in bash, it breaks muscle memory when writing POSIX sh scripts and tricks developers into writing the wrong thing. It is terrible and should never be used under any circumstances. Ideally it would be removed altogether from GNU bash. Fixes the following warnings when running configure: ``` ./configure: 5011: test: x: unexpected operator ./configure: 5014: test: x: unexpected operator ./configure: 5017: test: x: unexpected operator ./configure: 8056: test: nox: unexpected operator ./configure: 8109: test: yesx: unexpected operator ./configure: 8120: test: 3: unexpected operator ./configure: 8144: test: unexpected operator ./configure: 9089: test: stdc++x: unexpected operator ./configure: 9937: test: 0: unexpected operator ./configure: 10084: test: 0: unexpected operator ./configure: 10207: test: 0: unexpected operator ./configure: 10283: test: 0: unexpected operator ./configure: 11363: test: x: unexpected operator ./configure: 11561: test: x: unexpected operator ./configure: 11634: test: xno: unexpected operator ./configure: 11663: test: xno: unexpected operator ./configure: 12490: test: 3: unexpected operator ./configure: 13150: test: no: unexpected operator ./configure: 13167: test: no: unexpected operator ``` And the following fatal errors when trying to compile, since the resulting conditionals failed to define $(PROTOCBIN): ``` make -j8 cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/kismet.proto cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/http.proto /bin/sh: 1: -I: not found make: [Makefile:808: protobuf_cpp/kismet.pb.h] Error 127 (ignored) cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/datasource.proto cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/linuxbluetooth.proto /bin/sh: 1: -I: not found make: [Makefile:808: protobuf_cpp/http.pb.h] Error 127 (ignored) cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/eventbus.proto /bin/sh: 1: -I: not found make: [Makefile:808: protobuf_cpp/linuxbluetooth.pb.h] Error 127 (ignored) cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/kismet.proto /bin/sh: 1: -I: not found cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/http.proto /bin/sh: 1: -I: not found /bin/sh: 1: -I: not found make: [Makefile:808: protobuf_cpp/datasource.pb.h] Error 127 (ignored) make: [Makefile:808: protobuf_cpp/eventbus.pb.h] Error 127 (ignored) make: [Makefile:806: protobuf_cpp/kismet.pb.cc] Error 127 (ignored) cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/datasource.proto cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/linuxbluetooth.proto cpp_out=./protobuf_cpp/ -I protobuf_definitions/ protobuf_definitions/eventbus.proto /bin/sh: 1: -I: not found ``` For extra interest, the failing command begins with `--flag` i.e. a flag passed to protoc, which Make then interprets as "ignore errors for this command", which means output files are not created but the build then continues and produces significantly more confusing errors such as: ``` kis_external.h:51:10: fatal error: protobuf_cpp/kismet.pb.h: No such file or directory ``` --- configure.ac | 182 +++++++++++++++++++++++++-------------------------- 1 file changed, 90 insertions(+), 92 deletions(-) diff --git a/configure.ac b/configure.ac index cf2f6d5f4..7facf1a0a 100644 --- a/configure.ac +++ b/configure.ac @@ -184,13 +184,13 @@ else GCC_MINOR=$(echo $GCC_VERSION | cut -s -d'.' -f2) GCC_PATCH=$(echo $GCC_VERSION | cut -s -d'.' -f3) - if test "$GCC_MAJOR"x == x; then + if test "$GCC_MAJOR"x = x; then GCC_MAJOR=$GCC_VERSION fi - if test "$GCC_MINOR"x == x; then + if test "$GCC_MINOR"x = x; then GCC_MINOR=0 fi - if test "$GCC_PATCH"x == x; then + if test "$GCC_PATCH"x = x; then GCC_PATCH=0 fi @@ -329,7 +329,7 @@ AC_ARG_ENABLE([element-typesafety], esac], [want_te_typesafety=no] ) -if test "$want_te_typesafety"x == "yes"x; then +if test "$want_te_typesafety"x = "yes"x; then AC_DEFINE(TE_TYPE_SAFETY, 1, Enforce runtime type safety) else AC_DEFINE(TE_TYPE_SAFETY, 0, Do not enforce runtime type safety) @@ -364,11 +364,11 @@ AC_ARG_WITH([python-interpreter], AS_IF([test "x$with_python_interpreter" != "x"], [ PYTHON=$with_python_interpreter - ], + ], [] ) -if test "$want_python"x == "no"x; then +if test "$want_python"x = "no"x; then BUILD_PYTHON_MODULES=0 BUILD_CAPTURE_SDR_RTL433=0 BUILD_CAPTURE_SDR_RTLAMR=0 @@ -378,11 +378,11 @@ if test "$want_python"x == "no"x; then BUILD_CAPTURE_PROXY_ADSB=0 AC_MSG_WARN([Disabling Python and Python-related tools]) else - if test "$PYTHON_VERSION" == 3; then + if test "$PYTHON_VERSION" = 3; then AC_PYTHON3_MODULE(setuptools) fi - if test "$HAVE_PYMOD_SETUPTOOLS" == "no"; then + if test "$HAVE_PYMOD_SETUPTOOLS" = "no"; then AC_MSG_ERROR([Missing python setuptools, if you would like to build without python entirely, use --disable-python-tools, otherwise install python setuptools for your python version]) else DATASOURCE_BINS="$DATASOURCE_BINS \$(CAPTURE_SDR_RTL433) \$(CAPTURE_SDR_RTLAMR) \$(CAPTURE_SDR_RTLADSB) \$(CAPTURE_FREAKLABS_ZIGBEE)" @@ -399,14 +399,14 @@ AC_SUBST(BUILD_PYTHON_MODULES) # HAVE_FFTW3_H=0 # BUILD_CAPTURE_HACKRF_SWEEP=0 # HACKRF_MISSING_REASON="Missing required libhack/libfftw3 libraries" -# +# # AC_CHECK_HEADERS([libhackrf/hackrf.h], # HAVE_HACKRF_H=1, # AC_MSG_WARN("Missing hackrf.h from libhackrf")) # AC_CHECK_HEADERS([fftw3.h], # HAVE_FFTW3_H=1, # AC_MSG_WARN("Missing fftw3.h from libfftw")) -# +# # if test "$HAVE_HACKRF_H" = 1; then # AC_CHECK_LIB([hackrf], [hackrf_init], # HAVE_LIBHACKRF=1, @@ -414,7 +414,7 @@ AC_SUBST(BUILD_PYTHON_MODULES) # else # HACKRF_MISSING_REASON="Missing libhackrf/hackrf.h" # fi -# +# # if test "$HAVE_FFTW3_H" = 1; then # AC_CHECK_LIB([fftw3], [fftw_malloc], # HAVE_LIBFFTW3=1, @@ -422,7 +422,7 @@ AC_SUBST(BUILD_PYTHON_MODULES) # else # HACKRF_MISSING_REASON="missing libfftw3.h" # fi -# +# # if test "$HAVE_LIBHACKRF" = 1 && test "$HAVE_LIBFFTW3" = 1; then # AC_LINK_IFELSE([AC_LANG_PROGRAM([[ # #include @@ -459,23 +459,23 @@ AC_ARG_ENABLE(debuglibs, if test "$wantdebuglibs" = 1; then AC_CHECK_LIB([dw], [dwarf_begin], HAVE_LIBDW=1) AC_CHECK_LIB([bfd], [bfd_alloc], HAVE_LIBBFD=1) - + if test "$HAVE_LIBDW" = 1; then AC_CHECK_HEADERS([elfutils/libdw.h elfutils/libdwfl.h dwarf.h], DEF_BW_HAS_LIBDW=1) fi - + if test "$HAVE_LIBBFD" = 1; then AC_CHECK_HEADERS([bfd.h], DEF_BW_HAS_BFD=1) fi - + DEF_BW_HAS_UNWIND=0 DEF_BW_HAS_BACKTRACE=0 - + BACKTRACE_OK=0 - + AC_CHECK_HEADERS([unwind.h], DEF_BW_HAS_UNWIND=1) AC_CHECK_HEADERS([execinfo.h], DEF_BW_HAS_BACKTRACE=1) - + if test "$DEF_BW_HAS_UNWIND" = 1; then BACKTRACE_WARNING="yes - Full debug info available on crash, using unwind" AC_DEFINE(BACKWARD_HAS_UNWIND, 1, unwind stack support) @@ -490,7 +490,7 @@ if test "$wantdebuglibs" = 1; then BACKTRACE_WARNING="no - Backtraces will not be available on crashes" AC_DEFINE(DISABLE_BACKWARD, 1, cannot support backtrace dumping) fi - + if test "$BACKTRACE_OK" = 1; then # Libdw is the best support if test "$DEF_BW_HAS_LIBDW" = 1; then @@ -645,7 +645,7 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[ ]], [[ pthread_mutex_timedlock(NULL, NULL); return 0; - ]])], [have_timedlock=yes], + ]])], [have_timedlock=yes], [have_timedlock=no]) if test "$have_timedlock" = "yes"; then AC_MSG_RESULT([yes]) @@ -686,7 +686,7 @@ CC="$CXX" AC_CHECK_LIB([stdc++], [main], foundcxxl="stdc++" CXXLIBS="$CXXLIBS -lstdc++") -if test "$foundcxxl"x == "x" -a "$caponly" != 1; then +if test "$foundcxxl"x = "x" -a "$caponly" != 1; then AC_MSG_ERROR(No standard stdc++ libraries found.) fi CC="$oCC" @@ -910,7 +910,7 @@ if test "$wantlibcap" = "yes"; then AC_CHECK_LIB([cap], [cap_init],,havecap=no) AC_CHECK_HEADER([sys/prctl.h],, havecap=no) AC_CHECK_HEADER([sys/capability.h],, havecap=no) - + if test "$havecap" = "yes"; then AC_DEFINE(HAVE_CAPABILITY, 1, kernel capability support) caplibs="-lcap" @@ -950,7 +950,7 @@ if test "${wantpcre}x" = "nox" -a "${needpcre2}x" = "yesx"; then AC_MSG_ERROR([Can not combine --disable-pcre and --enable-require-pcre2]) fi -if test "$caponly" == 0; then +if test "$caponly" = 0; then if test "$HAVE_CXX17" = "1"; then AC_MSG_CHECKING([Checking C++17 parallel functions]) @@ -1028,10 +1028,10 @@ if test "$caponly" == 0; then fi # Dont' check pcre if we're only building datasources -if test "$caponly" == 0; then +if test "$caponly" = 0; then if test "$wantpcre" = "yes"; then # Check for pcre2 first - + pcre2=no pcre1=no @@ -1042,7 +1042,7 @@ if test "$caponly" == 0; then #define PCRE2_CODE_UNIT_WIDTH 8 #include ]], [[ - + pcre2_compile(NULL, PCRE2_ZERO_TERMINATED, 0, NULL, NULL, NULL); @@ -1057,22 +1057,22 @@ if test "$caponly" == 0; then LIBS="$OLIBS" if test "$pcre2" != "yes"; then - if test "${needpcre2}x" == "yesx"; then + if test "${needpcre2}x" = "yesx"; then AC_MSG_ERROR([Could not find libpcre2 and --enable-require-pcre2 selected]) fi AC_CHECK_LIB([pcre], [pcre_compile], pcre1=yes, pcre1=no) - if test "$pcre1" == "yes"; then + if test "$pcre1" = "yes"; then AC_CHECK_HEADER([pcre.h], pcre1=yes, pcre1=no) fi fi - if test "$pcre2" == "yes"; then + if test "$pcre2" = "yes"; then AC_DEFINE(HAVE_LIBPCRE2, 1, libpcre2 regex support) LIBS="$LIBS -lpcre2-8" - elif test "$pcre1" == "yes"; then + elif test "$pcre1" = "yes"; then AC_DEFINE(HAVE_LIBPCRE, 1, libpcre1 regex support) LIBS="$LIBS -lpcre" else @@ -1082,23 +1082,23 @@ if test "$caponly" == 0; then fi # Don't check for sqlite3 if we're only building datasources -if test "$caponly" == 0; then +if test "$caponly" = 0; then # Check for sqlite3 sql3l=no AC_CHECK_LIB([sqlite3], [sqlite3_libversion], sql3l=yes, sql3l=no) - + if test "$sql3l" != "yes"; then AC_MSG_ERROR(Failed to find libsqlite3) fi - - + + sql3h=no AC_CHECK_HEADER([sqlite3.h], sql3h=yes, sql3h=no) - + if test "$sql3h" != "yes"; then AC_MSG_ERROR(Failed to find sqlite3 headers check that the libsqlite3-devel package is installed if your distribution provides separate packages) fi - + if test "$sql3h" = "yes" -a "$sql3l" = "yes"; then AC_DEFINE(HAVE_LIBSQLITE3, 1, libsqlite3 database support) LIBS="$LIBS -lsqlite3" @@ -1108,8 +1108,8 @@ if test "$caponly" == 0; then fi # caponly -# don't check for openssl if we're only building datasources -if test "$caponly" == 0; then +# don't check for openssl if we're only building datasources +if test "$caponly" = 0; then AX_CHECK_OPENSSL(AC_DEFINE(HAVE_OPENSSL, 1, openssl library present), AC_MSG_ERROR(Failed to find OpenSSL library)) fi # caponly @@ -1179,7 +1179,7 @@ if test "$have_libpcap"x != "yesx"; then AC_CHECK_LIB([pcap], [pcap_open_live], AC_DEFINE(HAVE_LIBPCAP, 1, libpcap packet capture lib) foundsyspcap=yes, AC_MSG_ERROR(Libpcap required for proper operation)) - + if test "$foundsyspcap" = yes; then ## if we don't have a pcap.h, do a search for pcap/pcap.h AC_CHECK_HEADER([pcap.h], @@ -1189,7 +1189,7 @@ if test "$have_libpcap"x != "yesx"; then AC_DEFINE(HAVE_PCAP_H, 1, libpcap header) AC_DEFINE(HAVE_PCAPPCAP_H, 1, pcap/pcap.h), AC_MSG_ERROR([found libpcap but unable to find pcap.h])) fi - + PCAPLIBS="-lpcap" PCAPCFLAGS="" pcap=yes @@ -1227,12 +1227,12 @@ if test "$caponly" = 0 || test "$want_python" = "yes"; then if test x"$have_protobuf_pkg" != "xyes"; then AC_MSG_ERROR([missing google libprotobuf]) fi - + AC_ARG_WITH(protoc, [ --with-protoc[=PATH] Custom location of the protoc protobuf compiler], [ ]) - - if test x"$with_protoc" == "x"; then + + if test x"$with_protoc" = "x"; then PROTOCBIN=protoc AC_CHECK_PROG(protoc, [protoc], yes) if test x"$protoc" != x"yes"; then @@ -1241,7 +1241,7 @@ if test "$caponly" = 0 || test "$want_python" = "yes"; then else PROTOCBIN=$with_protoc fi - + PROTOLIBS=`pkg-config --libs ${PROTOBUF}` PROTOCFLAGS=`pkg-config --cflags ${PROTOBUF}` @@ -1254,7 +1254,7 @@ fi # caponly PKG_CHECK_MODULES([libprotobufc], [libprotobuf-c], have_protobufc_pkg=yes, have_protobufc_pkg=no) if test x"$have_protobufc_pkg" != "xyes"; then # Look for the old version (old ubuntu, maybe others) - AC_CHECK_HEADER([google/protobuf-c/protobuf-c.h], + AC_CHECK_HEADER([google/protobuf-c/protobuf-c.h], have_protobufc_hdr=yes) AC_CHECK_LIB([protobuf-c], [protobuf_c_message_pack_to_buffer], have_protobufc_lib=yes) @@ -1285,12 +1285,12 @@ AS_IF([test "x$with_protocc" = "x"], [ ]) # As of 2024-04, protobufs-26.1 (and possibly protobufs-26) changed the default versioning, leading to conflicts with -# protobufs-c and making it impossible to run protoc-c to compile protobufs into .c/.h pairs. +# protobufs-c and making it impossible to run protoc-c to compile protobufs into .c/.h pairs. # -# Fortunately, the protobufs-c implementation is quite generous in ways the C++ implemetnation is not, which -# lets us package a precompiled protobufs-c-1.5.0 output of the protobufs files. This compiles fine +# Fortunately, the protobufs-c implementation is quite generous in ways the C++ implemetnation is not, which +# lets us package a precompiled protobufs-c-1.5.0 output of the protobufs files. This compiles fine # cross-platform and with protobufs-c runtimes from 1.3.0 to 1.5.0 (tested) and 1.0.0 to 1.5.0 (by definition) -# which should cover every platform. +# which should cover every platform. # # Perform a compile test with the same restrictions as the 1.5.0 definitions to be sure, and allow an override to # always compile protobufs-c definitions, even when they might fail. @@ -1307,7 +1307,7 @@ AC_ARG_ENABLE([force-protoc-c], AS_IF([test "$force_protocc" = "no"], [ PROTOBUF_C_DIR="protobuf_c_1005000" - + AC_MSG_CHECKING([protobufs-c 1.5.0 compatibility]) OCFL="$CFLAGS" CFLAGS="-Werror $CFLAGS $PROTOCCFLAGS" @@ -1367,10 +1367,10 @@ AC_ARG_ENABLE(bladerf, [want_bladerf=no] ) -AS_IF([test "x$want_bladerf" == "xyes"], [ - PKG_CHECK_MODULES([libbladeRF], [libbladeRF], +AS_IF([test "x$want_bladerf" = "xyes"], [ + PKG_CHECK_MODULES([libbladeRF], [libbladeRF], [ - ], + ], [ AC_MSG_ERROR([missing libbladeRF package]) ]) @@ -1554,8 +1554,8 @@ if test "$havenetlink" = "yes"; then if test $netlink_force = "tiny"; then picked_nl="tiny" - AC_CHECK_HEADER([netlink/netlink.h], - AC_DEFINE(HAVE_LIBNLTINY_HEADERS, 1, [libnltiny headers present]), + AC_CHECK_HEADER([netlink/netlink.h], + AC_DEFINE(HAVE_LIBNLTINY_HEADERS, 1, [libnltiny headers present]), AC_MSG_ERROR([libnl-tiny requested but could not find headers])) AC_DEFINE(HAVE_LIBNL, 1, libnl netlink library) @@ -1595,7 +1595,7 @@ if test "$havenetlink" = "yes"; then fi if test "$nlname" != ""; then - if test "$picked_nl" == "tiny"; then + if test "$picked_nl" = "tiny"; then NLLIBS="-lnl-tiny" else NLLIBS=`pkg-config --libs $nlname` @@ -1719,10 +1719,10 @@ AS_IF([test "xwant_ubertooth" != "xno"], [ AC_MSG_WARN([missing libusb, ubertooth-one support will not be built]) CANT_BUILD_UBERTOOTH=1 else - AC_CHECK_HEADERS([btbb.h], - HAVE_BTBB_H=yes, + AC_CHECK_HEADERS([btbb.h], + HAVE_BTBB_H=yes, AC_MSG_WARN("btbb.h is missing")) - AC_CHECK_LIB([btbb], [btbb_init], + AC_CHECK_LIB([btbb], [btbb_init], HAVE_LIBBTBB=yes, AC_MSG_WARN("libbtbb is missing")) @@ -1734,15 +1734,15 @@ AS_IF([test "xwant_ubertooth" != "xno"], [ LIBBTBBLIBS="-lbtbb" LDFLAGS="$LDFLAGS -lbtbb" - AC_CHECK_HEADERS([ubertooth/ubertooth.h], - [HAVE_UBERTOOTH_H=yes - AC_DEFINE(HAVE_UBERTOOTH_UBERTOOTH_H, 1, ubertooth.h in ubertooth dir)], + AC_CHECK_HEADERS([ubertooth/ubertooth.h], + [HAVE_UBERTOOTH_H=yes + AC_DEFINE(HAVE_UBERTOOTH_UBERTOOTH_H, 1, ubertooth.h in ubertooth dir)], []) - AC_CHECK_HEADERS([ubertooth.h], + AC_CHECK_HEADERS([ubertooth.h], HAVE_UBERTOOTH_H=yes, []) - AC_CHECK_LIB([ubertooth], [ubertooth_init], + AC_CHECK_LIB([ubertooth], [ubertooth_init], HAVE_LIBUBERTOOTH=yes, []) if test x"$HAVE_UBERTOOTH_H" != "xyes" -o x"$HAVE_LIBUBERTOOTH" != "xyes"; then @@ -1761,7 +1761,7 @@ AS_IF([test "xwant_ubertooth" != "xno"], [ else have_ubertooth="yes" - AC_CHECK_LIB([ubertooth], [ubertooth_count], + AC_CHECK_LIB([ubertooth], [ubertooth_count], AC_DEFINE(HAVE_LIBUBERTOOTH_UBERTOOTH_COUNT, 1, libubertooth has ubertooth_count), HAVE_UBERTOOTH_COUNT=0) @@ -1864,7 +1864,7 @@ AS_IF([test "x$want_mosquitto" != "xno"], [ LIBS="$LIBS `pkg-config --libs libmosquitto`" CPPFLAGS="$CPPFLAGS `pkg-config --cflags libmosquitto`" CFLAGS="$CFLAGS `pkg-config --cflags libmosquitto`" - + have_mosquitto="yes" AC_DEFINE(HAVE_LIBMOSQUITTO, 1, libmosquitto) ], @@ -1893,7 +1893,7 @@ AS_IF([test "x$want_lmsensors" != "xno"], [ AC_CHECK_HEADERS([sensors/sensors.h], HAVE_LMSENSORS_H=1, HAVE_LMSENSORS_H=0) - + if test "$HAVE_LMSENSORS_H" = 1; then AC_CHECK_LIB([sensors], [sensors_init], HAVE_LIBLMSENSORS=1, @@ -1902,9 +1902,9 @@ AS_IF([test "x$want_lmsensors" != "xno"], [ if test "$HAVE_LIBLMSENSORS" = 1; then LIBS="$LIBS -lsensors" have_lmsensors=yes - else + else AC_MSG_ERROR([required libsensors lm-sensors missing, configure with --disable-lmsensors to compile without thermal information]) - fi + fi else AC_MSG_ERROR([required libsensors lm-sensors missing, configure with --disable-lmsensors to compile without thermal information]) fi @@ -1951,7 +1951,7 @@ AC_ARG_ENABLE(asan, esac], [want_asan=no] ) -if test "$want_asan" == "yes"; then +if test "$want_asan" = "yes"; then CPPFLAGS="$CPPFLAGS -fsanitize=address -fno-omit-frame-pointer" LDFLAGS="$LDFLAGS -fsanitize=address" fi @@ -1964,7 +1964,7 @@ AC_ARG_ENABLE(tsan, esac], [want_tsan=no] ) -if test "$want_tsan" == "yes"; then +if test "$want_tsan" = "yes"; then CPPFLAGS="$CPPFLAGS -fsanitize=thread -fno-omit-frame-pointer" LDFLAGS="$LDFLAGS -fsanitize=thread" fi @@ -2012,25 +2012,25 @@ AC_SUBST(BUILD_CAPTURE_ANTSDR_DRONEID) #AC_SUBST(CXXFLAGS) AC_CONFIG_FILES([ - Makefile - Makefile.inc - packaging/kismet.pc - packaging/systemd/kismet.service - packaging/systemd/debug/kismet-debug.service - capture_linux_bluetooth/Makefile - capture_linux_wifi/Makefile + Makefile + Makefile.inc + packaging/kismet.pc + packaging/systemd/kismet.service + packaging/systemd/debug/kismet-debug.service + capture_linux_bluetooth/Makefile + capture_linux_wifi/Makefile capture_openbsd_wifi/Makefile - capture_osx_corewlan_wifi/Makefile - capture_sdr_rtl433/Makefile - capture_sdr_rtlamr/Makefile - capture_sdr_rtladsb/Makefile - capture_bt_geiger/Makefile - capture_freaklabs_zigbee/Makefile - capture_nrf_mousejack/Makefile - capture_ti_cc_2540/Makefile - capture_ti_cc_2531/Makefile - capture_ubertooth_one/Makefile - capture_nrf_51822/Makefile + capture_osx_corewlan_wifi/Makefile + capture_sdr_rtl433/Makefile + capture_sdr_rtlamr/Makefile + capture_sdr_rtladsb/Makefile + capture_bt_geiger/Makefile + capture_freaklabs_zigbee/Makefile + capture_nrf_mousejack/Makefile + capture_ti_cc_2540/Makefile + capture_ti_cc_2531/Makefile + capture_ubertooth_one/Makefile + capture_nrf_51822/Makefile capture_nxp_kw41z/Makefile capture_rz_killerbee/Makefile capture_bladerf_wiphy/Makefile @@ -2356,11 +2356,9 @@ if test "$want_asan" = "yes" -a "$want_tsan" = "yes"; then echo "binary differences. Likely, the compiler will reject this, " echo "but you can try." elif test "$want_asan" = "yes" -o "$want_tsan" = "yes"; then - echo + echo echo "*** NOTICE ***" echo "Compiling with ASAN or TSAN debugging can greatly increase the " echo "amount of RAM Kismet needs; you may see degraded performance or " echo "increased system load." fi - -