summaryrefslogtreecommitdiffstats
path: root/cmake_modules/FindMODBUS.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake_modules/FindMODBUS.cmake')
-rw-r--r--cmake_modules/FindMODBUS.cmake56
1 files changed, 56 insertions, 0 deletions
diff --git a/cmake_modules/FindMODBUS.cmake b/cmake_modules/FindMODBUS.cmake
new file mode 100644
index 0000000..42e8c47
--- /dev/null
+++ b/cmake_modules/FindMODBUS.cmake
@@ -0,0 +1,56 @@
+# - Try to find libmodbus
+# Once done this will define
+#
+# MODBUS_FOUND - system has MODBUS
+# MODBUS_INCLUDE_DIR - the MODBUS include directory
+# MODBUS_LIBRARIES - Link these to use MODBUS
+
+# Copyright (c) 2006, Jasem Mutlaq <mutlaqja@ikarustech.com>
+# Based on FindLibfacile by Carsten Niehaus, <cniehaus@gmx.de>
+#
+# Redistribution and use is allowed according to the terms of the BSD license.
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+
+if (MODBUS_INCLUDE_DIR AND MODBUS_LIBRARIES)
+
+ # in cache already
+ set(MODBUS_FOUND TRUE)
+ message(STATUS "Found libmodbus: ${MODBUS_LIBRARIES}")
+
+else (MODBUS_INCLUDE_DIR AND MODBUS_LIBRARIES)
+
+ find_path(MODBUS_INCLUDE_DIR modbus.h
+ PATH_SUFFIXES modbus
+ ${_obIncDir}
+ ${GNUWIN32_DIR}/include
+ )
+
+ find_library(MODBUS_LIBRARIES NAMES modbus
+ PATHS
+ ${_obLinkDir}
+ ${GNUWIN32_DIR}/lib
+ )
+
+ set(CMAKE_REQUIRED_INCLUDES ${MODBUS_INCLUDE_DIR})
+ set(CMAKE_REQUIRED_LIBRARIES ${MODBUS_LIBRARIES})
+
+ if(MODBUS_INCLUDE_DIR AND MODBUS_LIBRARIES)
+ set(MODBUS_FOUND TRUE)
+ else (MODBUS_INCLUDE_DIR AND MODBUS_LIBRARIES)
+ set(MODBUS_FOUND FALSE)
+ endif(MODBUS_INCLUDE_DIR AND MODBUS_LIBRARIES)
+
+ if (MODBUS_FOUND)
+ if (NOT MODBUS_FIND_QUIETLY)
+ message(STATUS "Found libmodbus: ${MODBUS_LIBRARIES}")
+ endif (NOT MODBUS_FIND_QUIETLY)
+ else (MODBUS_FOUND)
+ if (MODBUS_FIND_REQUIRED)
+ message(FATAL_ERROR "libmodbus not found. Please install libmodbus-devel. https://launchpad.net/libmodbus/")
+ endif (MODBUS_FIND_REQUIRED)
+ endif (MODBUS_FOUND)
+
+ mark_as_advanced(MODBUS_INCLUDE_DIR MODBUS_LIBRARIES)
+
+endif (MODBUS_INCLUDE_DIR AND MODBUS_LIBRARIES)
+