]> sigrok.org Git - libsigrok.git/blobdiff - configure.ac
build: Match up Python headers with interpreter version
[libsigrok.git] / configure.ac
index 0ffb23c8578e16d97bc41b91f8d11f83326ab9d6..af7db0dbbec2aa95e8d406cc1c385f88e3b13725 100644 (file)
@@ -239,6 +239,7 @@ SR_DRIVER([Ikalogic Scanalogic-2], [ikalogic-scanalogic2], [libusb])
 SR_DRIVER([Ikalogic Scanaplus], [ikalogic-scanaplus], [libftdi])
 SR_DRIVER([Kecheng KC-330B], [kecheng-kc-330b], [libusb])
 SR_DRIVER([KERN scale], [kern-scale], [libserialport])
+SR_DRIVER([Korad KDxxxxP], [korad-kdxxxxp], [libserialport])
 SR_DRIVER([Lascar EL-USB], [lascar-el-usb], [libusb])
 SR_DRIVER([Manson HCS-3xxx], [manson-hcs-3xxx], [libserialport])
 SR_DRIVER([maynuo-m97], [maynuo-m97])
@@ -334,9 +335,18 @@ AS_IF([test "x$BINDINGS_CXX" = xyes],
        [sr_python_missing=],
        [sr_python_missing='C++ bindings'])
 
-# The Python bindings need Python development files.
+# Extract major and minor version number of the Python interpreter.
+sr_pymajor=${PYTHON_VERSION%%.*}
+sr_pyminor=${PYTHON_VERSION#*.}
+
+# The Python bindings need Python development files. Check for either
+# Python 3 or Python 2 headers depending on the interpreter version.
 SR_PKG_CHECK([python_dev], [SR_PKGLIBS_PYTHON],
-       [python >= 2.7], [python2 >= 2.7], [python27 >= 2.7])
+       [python = $PYTHON_VERSION],
+       [python$sr_pymajor = $PYTHON_VERSION],
+       [python$sr_pymajor$sr_pyminor = $PYTHON_VERSION],
+       [python-$PYTHON_VERSION = $PYTHON_VERSION])
+
 AS_IF([test "x$sr_have_python_dev" != xyes],
        [SR_APPEND([sr_python_missing], [', '], [Headers])])
 
@@ -448,11 +458,16 @@ AM_COND_IF([BINDINGS_CXX], [
 # Check for specific libusb features, now that we know the CFLAGS.
 AC_LANG([C])
 sr_save_cflags=$CFLAGS
+sr_save_libs=$LIBS
 CFLAGS="$LIBSIGROK_CFLAGS $CFLAGS"
+LIBS="$LIBSIGROK_LIBS $LIBS"
 AC_CHECK_TYPES([libusb_os_handle],
        [sr_have_libusb_os_handle=yes], [sr_have_libusb_os_handle=no],
        [[#include <libusb.h>]])
+AC_CHECK_FUNCS([zip_discard])
+LIBS=$sr_save_libs
 CFLAGS=$sr_save_cflags
+
 AM_COND_IF([NEED_USB], [AS_CASE([$sr_have_libusb_os_handle:$host_os], [no:mingw*],
        [AC_MSG_ERROR([Windows builds require the event-abstraction branch of libusb])])])