diff --git a/configure.ac b/configure.ac index c8c2a4b..5b933d6 100644 --- a/configure.ac +++ b/configure.ac @@ -127,6 +127,9 @@ if test "x$HAVE_WINSOCK2_H" = "xyes"; then AC_SUBST(LIBS) fi +# Check for RS485 support (recent Linux kernels) +AC_CHECK_DECLS([TIOCSRS485], [], [], [[#include ]]) + AC_CONFIG_FILES([ Makefile src/Makefile diff --git a/src/modbus-rtu.c b/src/modbus-rtu.c index 2cbff02..8b912fe 100644 --- a/src/modbus-rtu.c +++ b/src/modbus-rtu.c @@ -30,7 +30,7 @@ #include "modbus-rtu.h" #include "modbus-rtu-private.h" -#if defined(linux) +#if defined(HAVE_TIOCSRS485) #include #include #endif @@ -704,7 +704,8 @@ static int _modbus_rtu_connect(modbus_t *ctx) return 0; } -#if defined(linux) +#if defined(HAVE_TIOCSRS485) +d int modbus_rtu_set_serial_mode(modbus_t *ctx, int mode) { if (ctx->backend->backend_type == _MODBUS_BACKEND_TYPE_RTU) {