SR_ARG_OPT_PKG([libbluez], [LIBBLUEZ], , [bluez >= 4.0])
+SR_ARG_OPT_PKG([libnettle], [LIBNETTLE], , [nettle])
+
# FreeBSD comes with an "integrated" libusb-1.0-style USB API.
# This means libusb-1.0 is always available; no need to check for it.
# On Windows, require the latest version we can get our hands on,
SR_SEARCH_LIBS([SR_EXTRA_LIBS], [pow], [m])
# RPC is only needed for VXI support.
-AC_CACHE_CHECK([for RPC support], [sr_cv_have_rpc],
+AC_CACHE_CHECK([for SunRPC support], [sr_cv_have_sunrpc],
[AC_LINK_IFELSE([AC_LANG_PROGRAM(
[[#include <rpc/rpc.h>]m4_newline[CLIENT *rpc_test(void);]],
[[(void) clnt_create("", 0, 0, "");]])],
- [sr_cv_have_rpc=yes], [sr_cv_have_rpc=no])])
+ [RPC_CFLAGS=""; RPC_LIBS=""; sr_cv_have_sunrpc=yes],
+ [sr_cv_have_sunrpc=no])])
+PKG_CHECK_MODULES([TIRPC],
+ [libtirpc],
+ [RPC_CFLAGS=$TIRPC_CFLAGS; SR_PREPEND([SR_EXTRA_LIBS], [$TIRPC_LIBS]); sr_cv_have_tirpc=yes],
+ [sr_cv_have_tirpc=no])
+AS_IF([test "x$sr_cv_have_sunrpc" = xyes -o "x$sr_cv_have_tirpc" = xyes],
+ [sr_cv_have_rpc=yes], [sr_cv_have_rpc=no])
+
+AC_SUBST(RPC_CFLAGS)
+AC_SUBST(RPC_LIBS)
+
AS_IF([test "x$sr_cv_have_rpc" = xyes],
- [AC_DEFINE([HAVE_RPC], [1], [Specifies whether we have RPC support.])])
+ [AC_DEFINE([HAVE_RPC], [1], [Specifies whether we have RPC support (either by SunRPC or libtirpc).])])
+
# VXI support is only compiled if RPC support was found.
AM_CONDITIONAL([NEED_RPC], [test "x$sr_cv_have_rpc" = xyes])
# Check for compiler support of 128 bit integers
AC_CHECK_TYPES([__int128_t, __uint128_t], [], [], [])
-# Availability of bt_put_le16() depends on the bluez library version.
-AC_CACHE_CHECK([for bt_put_le16], [sr_cv_have_btputle16],
- [AC_LINK_IFELSE([AC_LANG_PROGRAM(
- [[#include <bluetooth/bluetooth.h>]],
- [[bt_put_le16(0, (void *)0);]])],
- [sr_cv_have_btputle16=yes], [sr_cv_have_btputle16=no])])
-AS_IF([test "x$sr_cv_have_btputle16" = xyes],
- [AC_DEFINE([HAVE_BT_PUT_LE16], [1], [Specifies whether we have bt_put_le16().])])
-
########################
## Hardware drivers ##
########################
SR_DRIVER([Ikalogic Scanalogic-2], [ikalogic-scanalogic2], [libusb])
SR_DRIVER([Ikalogic Scanaplus], [ikalogic-scanaplus], [libftdi])
SR_DRIVER([IPDBG LA], [ipdbg-la])
+SR_DRIVER([ITECH IT8500], [itech-it8500], [serial_comm])
SR_DRIVER([Kecheng KC-330B], [kecheng-kc-330b], [libusb])
SR_DRIVER([KERN scale], [kern-scale], [serial_comm])
+SR_DRIVER([Kingst LA2016], [kingst-la2016], [libusb])
SR_DRIVER([Korad KAxxxxP], [korad-kaxxxxp], [serial_comm])
SR_DRIVER([Lascar EL-USB], [lascar-el-usb], [libusb])
SR_DRIVER([LeCroy LogicStudio], [lecroy-logicstudio], [libusb])
SR_DRIVER([PCE PCE-322A], [pce-322a], [serial_comm])
SR_DRIVER([Pipistrello-OLS], [pipistrello-ols], [libftdi])
SR_DRIVER([RDTech DPSxxxx/DPHxxxx], [rdtech-dps], [serial_comm])
+SR_DRIVER([RDTech UMXX], [rdtech-um], [serial_comm])
+SR_DRIVER([RDTech TCXX], [rdtech-tc], [serial_comm libnettle])
SR_DRIVER([Rigol DS], [rigol-ds])
+SR_DRIVER([Rigol DG], [rigol-dg])
SR_DRIVER([Rohde&Schwarz SME-0x], [rohde-schwarz-sme-0x], [serial_comm])
SR_DRIVER([Saleae Logic16], [saleae-logic16], [libusb])
SR_DRIVER([Saleae Logic Pro], [saleae-logic-pro], [libusb])
[], [enable_python=$enable_bindings])
AC_ARG_ENABLE([ruby],
- [AS_HELP_STRING([--enable-ruby], [build Ruby bindings [default=no]])],
- [], [enable_ruby=no])
+ [AS_HELP_STRING([--enable-ruby], [build Ruby bindings [default=yes]])],
+ [], [enable_ruby=$enable_bindings])
AC_ARG_ENABLE([java],
[AS_HELP_STRING([--enable-java], [build Java bindings [default=yes]])],
# The Ruby bindings need Ruby development files.
SR_PKG_CHECK([ruby_dev], [SR_PKGLIBS_RUBY],
- [ruby],
- [ruby-$sr_rbmajor.$sr_rbminor])
+ [ruby >= 2.5.0],
+ [ruby-$sr_rbmajor.$sr_rbminor >= 2.5.0])
AS_IF([test "x$sr_have_ruby_dev" != xyes],
[SR_APPEND([sr_ruby_missing], [', '], [Headers])])
Enabled SCPI backends:
- TCP............................. yes
+ - SunRPC ......................... $sr_cv_have_sunrpc
+ - TI-RPC ......................... $sr_cv_have_tirpc
- RPC............................. $sr_cv_have_rpc
- serial.......................... $sr_have_serial_comm
- VISA............................ $sr_have_librevisa