]> sigrok.org Git - libsigrok.git/blobdiff - configure.ac
strcasecmp() is defined in strings.h.
[libsigrok.git] / configure.ac
index 0d589ee843d309182be58bcd7ccd199dc745293a..bc9ce7128aaab2c50e4a3cd3fa98b39cb964ea4a 100644 (file)
@@ -106,6 +106,7 @@ DRIVER([Agilent DMM], [agilent-dmm])
 DRIVER([Appa 55II], [appa-55ii])
 DRIVER([ASIX SIGMA/SIGMA2], [asix-sigma])
 DRIVER([Atten PPS3xxx], [atten-pps3xxx])
+DRIVER([BayLibre ACME], [baylibre-acme])
 DRIVER([BeagleLogic], [beaglelogic])
 DRIVER([Brymen BM86x], [brymen-bm86x])
 DRIVER([Brymen DMM], [brymen-dmm])
@@ -114,6 +115,7 @@ DRIVER([Center 3xx], [center-3xx])
 DRIVER([ChronoVu LA], [chronovu-la])
 DRIVER([Colead SLM], [colead-slm])
 DRIVER([Conrad DIGI 35 CPU], [conrad-digi-35-cpu])
+DRIVER([DER EE DE-5000], [deree-de5000])
 DRIVER([demo], [demo])
 DRIVER([Fluke DMM], [fluke-dmm])
 DRIVER([fx2lafw], [fx2lafw])
@@ -199,10 +201,8 @@ if test "x$HAVE_DOXYGEN" != "xyes"; then
 fi
 
 # Python is needed for the C++ bindings.
-AC_CHECK_PROG([HAVE_PYTHON], [python], [yes])
-if test "x$HAVE_PYTHON" != "xyes"; then
-       BINDINGS_CXX="no"; cxx_msg="Python required"
-fi
+AM_PATH_PYTHON([2.7], [HAVE_PYTHON="yes"],
+       [HAVE_PYTHON="no"; BINDINGS_CXX="no"; cxx_msg="Python required"])
 
 # The Python bindings need Python development files.
 PKG_CHECK_MODULES([python], [python >= 2.7],
@@ -273,7 +273,7 @@ PKG_CHECK_MODULES([libzip], [libzip >= 0.10],
 # libserialport is only needed for some hardware drivers. Disable the
 # respective drivers if it is not found.
 if test "x$enable_libserialport" != "xno"; then
-       PKG_CHECK_MODULES([libserialport], [libserialport >= 0.2.0],
+       PKG_CHECK_MODULES([libserialport], [libserialport >= 0.1.1],
                [have_libserialport="yes"; LIB_CFLAGS="$LIB_CFLAGS $libserialport_CFLAGS";
                LIBS="$LIBS $libserialport_LIBS";
                SR_PKGLIBS="$SR_PKGLIBS libserialport"],
@@ -288,9 +288,10 @@ if test "x$have_libserialport" = "xno"; then
        HW_AGILENT_DMM="no"; HW_APPA_55II="no";
        HW_ATTEN_PPS3XXX="no"; HW_BRYMEN_DMM="no"; HW_CEM_DT_885X="no";
        HW_CENTER_3XX="no"; HW_COLEAD_SLM="no"; HW_CONRAD_DIGI_35_CPU="no";
-       HW_FLUKE_DMM="no"; HW_GMC_MH_1X_2X="no"; HW_HAMEG_HMO="no";
-       HW_MANSON_HCS_3XXX="no"; HW_MIC_985XX="no"; HW_MOTECH_LPS_30X="no";
-       HW_NORMA_DMM="no"; HW_OPENBENCH_LOGIC_SNIFFER="no"; HW_SERIAL_DMM="no";
+       HW_DEREE_DE5000="no"; HW_FLUKE_DMM="no"; HW_GMC_MH_1X_2X="no";
+       HW_HAMEG_HMO="no"; HW_MANSON_HCS_3XXX="no"; HW_MIC_985XX="no";
+       HW_MOTECH_LPS_30X="no"; HW_NORMA_DMM="no";
+       HW_OPENBENCH_LOGIC_SNIFFER="no"; HW_SERIAL_DMM="no";
        HW_TELEINFO="no"; HW_TONDAJ_SL_814="no";
 else
        # Define HAVE_LIBSERIALPORT in config.h if we found libserialport.
@@ -302,7 +303,7 @@ fi
 AM_CONDITIONAL(NEED_SERIAL, test "x$have_libserialport" != xno)
 
 # The VISA SCPI backend is only compiled in if librevisa was found.
-PKG_CHECK_MODULES([librevisa], [librevisa >= 0.0.20130812],
+PKG_CHECK_MODULES([librevisa], [librevisa >= 0.0.20130412],
        [have_librevisa="yes"; LIB_CFLAGS="$LIB_CFLAGS $librevisa_CFLAGS";
        LIBS="$LIBS $librevisa_LIBS";
        SR_PKGLIBS="$SR_PKGLIBS librevisa"],
@@ -396,7 +397,7 @@ PKG_CHECK_MODULES([glibmm], [glibmm-2.4 >= 2.32.0],
        [BINDINGS_CXX="no"; cxx_msg="glibmm required"])
 
 # C++ bindings want stoi and stod.
-if test "x$BINDINGS_CXX" == "xyes"; then
+if test "x$BINDINGS_CXX" = "xyes"; then
        AC_LANG_PUSH([C++])
        AC_MSG_CHECKING([for stoi and stod])
        AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <string>],
@@ -423,26 +424,24 @@ PKG_CHECK_MODULES([check], [check >= 0.9.4],
        [have_check="yes"], [have_check="no"])
 AM_CONDITIONAL(HAVE_CHECK, test x"$have_check" = "xyes")
 
-# The OLS driver uses serial port file descriptors directly, and therefore
-# will not currently work on Windows.
-case "$host" in
-*mingw*)
-       HW_OPENBENCH_LOGIC_SNIFFER="no"
-       ;;
-esac
-
 # The BeagleLogic driver needs sys/mman.h and sys/ioctl.h. Don't try to
 # build it if these headers aren't available.
 AC_CHECK_HEADERS([sys/mman.h sys/ioctl.h], [], [HW_BEAGLELOGIC="no"])
 
+# The ACME driver can only be built for Linux.
+case "$host" in
+       *linux*) ;;
+       *) HW_BAYLIBRE_ACME="no" ;;
+esac
+
 AC_SUBST(SR_PKGLIBS)
 
 CFLAGS="$CFLAGS -Iinclude/libsigrok -I${srcdir}/include/libsigrok $LIB_CFLAGS"
-CXXFLAGS="$CXXFLAGS -Iinclude/libsigrok -I${srcdir}/include -Ibindings/cxx -Ibindings/cxx/include/libsigrok -I${srcdir}/bindings/cxx/include $LIB_CFLAGS"
+CXXFLAGS="$CXXFLAGS -Iinclude/libsigrok -I${srcdir}/include -Ibindings/cxx -Ibindings/cxx/include/libsigrokcxx -I${srcdir}/bindings/cxx/include $LIB_CFLAGS"
 
 # Find Java compiler and JNI includes for Java bindings.
 AC_CHECK_PROG([HAVE_JAVAC], [javac], [yes], [no])
-if test "x$HAVE_JAVAC" = "xyes"; then
+if test "x$HAVE_JAVAC" = "xyes" && test "x$BINDINGS_JAVA" = "xyes"; then
        AX_PROG_JAVAC
        if test "x$JNI_INCLUDE_DIRS" = "xauto"; then
                if test "x$cross_compiling" = "xyes"; then
@@ -478,6 +477,7 @@ DRIVER2([HW_AGILENT_DMM], [$HW_AGILENT_DMM], [HAVE_HW_AGILENT_DMM])
 DRIVER2([HW_APPA_55II], [$HW_APPA_55II], [HAVE_HW_APPA_55II])
 DRIVER2([HW_ASIX_SIGMA], [$HW_ASIX_SIGMA], [HAVE_HW_ASIX_SIGMA])
 DRIVER2([HW_ATTEN_PPS3XXX], [$HW_ATTEN_PPS3XXX], [HAVE_HW_ATTEN_PPS3XXX])
+DRIVER2([HW_BAYLIBRE_ACME], [$HW_BAYLIBRE_ACME], [HAVE_HW_BAYLIBRE_ACME])
 DRIVER2([HW_BEAGLELOGIC], [$HW_BEAGLELOGIC], [HAVE_HW_BEAGLELOGIC])
 DRIVER2([HW_BRYMEN_BM86X], [$HW_BRYMEN_BM86X], [HAVE_HW_BRYMEN_BM86X])
 DRIVER2([HW_BRYMEN_DMM], [$HW_BRYMEN_DMM], [HAVE_HW_BRYMEN_DMM])
@@ -487,6 +487,7 @@ DRIVER2([HW_CHRONOVU_LA], [$HW_CHRONOVU_LA], [HAVE_HW_CHRONOVU_LA])
 DRIVER2([HW_COLEAD_SLM], [$HW_COLEAD_SLM], [HAVE_HW_COLEAD_SLM])
 DRIVER2([HW_CONRAD_DIGI_35_CPU], [$HW_CONRAD_DIGI_35_CPU], [HAVE_HW_CONRAD_DIGI_35_CPU])
 DRIVER2([HW_DEMO], [$HW_DEMO], [HAVE_HW_DEMO])
+DRIVER2([HW_DEREE_DE5000], [$HW_DEREE_DE5000], [HAVE_HW_DEREE_DE5000])
 DRIVER2([HW_FLUKE_DMM], [$HW_FLUKE_DMM], [HAVE_HW_FLUKE_DMM])
 DRIVER2([HW_FX2LAFW], [$HW_FX2LAFW], [HAVE_HW_FX2LAFW])
 DRIVER2([HW_GMC_MH_1X_2X], [$HW_GMC_MH_1X_2X], [HAVE_HW_GMC_MH_1X_2X])
@@ -544,7 +545,7 @@ AC_SUBST(SR_PACKAGE_VERSION_MICRO)
 AC_SUBST(SR_PACKAGE_VERSION)
 
 AC_CONFIG_FILES([Makefile include/libsigrok/version.h libsigrok.pc
-       bindings/cxx/libsigrokxx.pc])
+       bindings/cxx/libsigrokcxx.pc])
 
 AC_OUTPUT
 
@@ -561,8 +562,8 @@ echo "Detected libraries:"
 echo
 
 # Note: This only works for libs with pkg-config integration.
-for lib in "glib-2.0 >= 2.32.0" "libzip >= 0.10" "libserialport >= 0.2.0" \
-       "librevisa >= 0.0.20130812" "libusb-1.0 >= 1.0.16" "libftdi >= 0.16" \
+for lib in "glib-2.0 >= 2.32.0" "libzip >= 0.10" "libserialport >= 0.1.1" \
+       "librevisa >= 0.0.20130412" "libusb-1.0 >= 1.0.16" "libftdi >= 0.16" \
        "libftdi1 >= 1.0" "libgpib" "glibmm-2.4 >= 2.32.0" \
        "pygobject-3.0 >= 3.0.0" "check >= 0.9.4"
 do