diff --git a/DeviceAdapters/Makefile.am b/DeviceAdapters/Makefile.am index c12e814559..8e4a61aa73 100644 --- a/DeviceAdapters/Makefile.am +++ b/DeviceAdapters/Makefile.am @@ -26,6 +26,9 @@ endif if BUILD_ITC ITC = ITC18 endif +if BUILD_MODBUS + MODBUS = Modbus +endif if BUILD_OPENCV OPENCVGRABBER = OpenCVgrabber endif @@ -69,6 +72,7 @@ SUBDIRS = \ $(ITC) \ $(NIDAQ) \ $(OPENCVGRABBER) \ + $(MODBUS) \ $(PVCAM) \ $(QCAM) \ $(SCION) \ diff --git a/DeviceAdapters/configure.ac b/DeviceAdapters/configure.ac index 6f963dc4f8..2b796c361f 100644 --- a/DeviceAdapters/configure.ac +++ b/DeviceAdapters/configure.ac @@ -82,6 +82,25 @@ AS_IF([test "x$want_hidapi" != xno], AM_CONDITIONAL([BUILD_HID], [test "x$use_hidapi" = xyes]) +# Check for libmodbus +MM_ARG_WITH_OPTIONAL_LIB([libmodbus], [modbus], [MODBUS]) +AS_IF([test "x$want_modbus" != xno], +[ + MM_LIB_MODBUS([$MODBUS_PREFIX], + [ + use_modbus=yes + ], + [ + use_modbus=no + AS_IF([test "x$want_modbus" = xyes], + [MM_MSG_OPTIONAL_LIB_FAILURE([libmodbus], [modbus])]) + ]) +], +[use_modbus=no]) + +AM_CONDITIONAL([BUILD_MODBUS], [test "x$use_modbus" = xyes]) + + # Only build PVCAM if header files present. AC_MSG_CHECKING(for Pvcam) for dir in /usr/include/pvcam /Library/Frameworks/PVCAM.framework/Headers @@ -441,6 +460,7 @@ m4_define([device_adapter_dirs], [m4_strip([ Marzhauser-LStep MarzhauserLStepOld MicroPoint + MODBUS Motic_mac Neos NewportCONEX @@ -526,6 +546,9 @@ echo "m4_text_wrap([$use_freeimageplus], echo "m4_text_wrap([$use_hidapi], [ ], [ Build with HIDAPI: ])" +echo "m4_text_wrap([$use_modbus], + [ ], + [ Build with Modbus: ])" echo "m4_text_wrap([$use_libdc1394], [ ], [ Build with libdc1394: ])" diff --git a/m4/mm_libs.m4 b/m4/mm_libs.m4 index f6be52a321..37eb8a96d9 100644 --- a/m4/mm_libs.m4 +++ b/m4/mm_libs.m4 @@ -39,6 +39,18 @@ AC_DEFUN([MM_LIB_GPHOTO2], [ [$2], [$3]) ]) +# Check for Modbus library +# +# MM_LIB_MODBUS([MODBUS prefix], [action-if-found], [action-if-not-found]) +# +# Defines precious variables MODBUS_CPPFLAGS, MODBUS_CFLAGS, MODBUS_LDFLAGS, +# MODBUS_LIS. +AC_DEFUN([MM_LIB_MODBUS], [ + MM_LIB_WITH_PKG_CONFIG([MODBUS], [libmodbus], [libmodbus >= 3.1.4], [], + [$1], [-lmodbus], [modbus/modbus.h], [modbus_connect], + [$2], [$3]) +]) + # Check for HIDAPI library #