summaryrefslogtreecommitdiffstats
path: root/contrib
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2017-07-13 23:15:57 (GMT)
committerGitHub <noreply@github.com>2017-07-13 23:15:57 (GMT)
commit4a9b4978eca21c01e45bdea56ee97285b8ca11a7 (patch)
tree40a8f92a0abd081f59a8aacc4b726dabf3c8f2f5 /contrib
parentf5198b3027a9a1d1de0aa92b2e62e13d0dc6f47d (diff)
parent04b04aa6624caf73ffe4fc33f918e7f48b27da37 (diff)
downloaduscxml-4a9b4978eca21c01e45bdea56ee97285b8ca11a7.zip
uscxml-4a9b4978eca21c01e45bdea56ee97285b8ca11a7.tar.gz
uscxml-4a9b4978eca21c01e45bdea56ee97285b8ca11a7.tar.bz2
Merge pull request #162 from tklab-tud/sradomski
LambdaMonitors and prepared use-case examples
Diffstat (limited to 'contrib')
-rw-r--r--contrib/cmake/CPackUSCXML.cmake5
-rw-r--r--contrib/cmake/FindUSCXML.cmake84
2 files changed, 89 insertions, 0 deletions
diff --git a/contrib/cmake/CPackUSCXML.cmake b/contrib/cmake/CPackUSCXML.cmake
index 2a6f88b..e9bc5ec 100644
--- a/contrib/cmake/CPackUSCXML.cmake
+++ b/contrib/cmake/CPackUSCXML.cmake
@@ -146,6 +146,11 @@ set(CPACK_DEBIAN_PACKAGE_NAME "uscxml")
set(CPACK_RPM_PACKAGE_NAME "uscxml")
set(CPACK_RPM_PACKAGE_LICENSE "Simplified BSD")
+########################################
+# CMake Modules for clients
+########################################
+
+install(FILES ${PROJECT_SOURCE_DIR}/contrib/cmake/FindUSCXML.cmake DESTINATION share/uscxml/cmake COMPONENT library)
########################################
# Describe layout of package
diff --git a/contrib/cmake/FindUSCXML.cmake b/contrib/cmake/FindUSCXML.cmake
new file mode 100644
index 0000000..bf3605d
--- /dev/null
+++ b/contrib/cmake/FindUSCXML.cmake
@@ -0,0 +1,84 @@
+# - Find USCXML
+# This module checks if uSCXML is installed and determines where the
+# include files and libraries are. This code sets the following
+# variables:
+#
+# USCXML_INCLUDE_DIR = The full path to the uscxml headers
+# USCXML_LIBRARIES = All uscxml libraries for release and debug builds
+#
+# Example:
+# find_package(USCXML REQUIRED)
+# include_directories(${USCXML_INCLUDE_DIR})
+#
+
+###################################################
+# where to search for uscxml headers and libraries
+###################################################
+set(_USCXML_LIB_SEARCHPATH
+ ${USCXML_LIBRARY_ROOT}
+ "/usr/local"
+ "/opt/local"
+ "C:/Program Files (x86)/uSCXML"
+ "C:/Program Files/uSCXML"
+)
+
+###################################################
+# find the uSCXML header files
+###################################################
+FIND_PATH(USCXML_INCLUDE_DIR uscxml/uscxml.h
+ PATH_SUFFIXES include
+ PATHS ${_USCXML_LIB_SEARCHPATH} ${USCXML_HEADER_ROOT}
+ ENV USCXML_INCLUDE_DIR
+)
+
+
+set(USCXML_LIBRARIES)
+# prefer MinSizeRel libraries
+FIND_LIBRARY(USCXML_LIBRARY_RELEASE
+ PATH_SUFFIXES lib
+ NAMES uscxml_s
+ PATHS ${_USCXML_LIB_SEARCHPATH}
+ ENV USCXML_LIB_DIR
+)
+if (USCXML_LIBRARY_RELEASE)
+ list(APPEND USCXML_LIBRARIES optimized ${USCXML_LIBRARY_RELEASE})
+else()
+ # if no minsize libraries were found try normal release
+ FIND_LIBRARY(USCXML_LIBRARY_RELEASE
+ PATH_SUFFIXES lib
+ NAMES uscxml
+ PATHS ${_USCXML_LIB_SEARCHPATH}
+ ENV USCXML_LIB_DIR
+ )
+ if (USCXML_LIBRARY_RELEASE)
+ list(APPEND USCXML_LIBRARIES optimized USCXML_LIBRARY_RELEASE)
+ endif()
+endif()
+
+# prefer release with debug libraries
+FIND_LIBRARY(USCXML_LIBRARY_DEBUG
+ PATH_SUFFIXES lib
+ NAMES uscxml_rd
+ PATHS ${_USCXML_LIB_SEARCHPATH}
+ ENV USCXML_LIB_DIR
+)
+if ("${USCXML_LIBRARY_DEBUG}")
+ list(APPEND USCXML_LIBRARIES debug ${USCXML_LIBRARY_DEBUG})
+else()
+ # go for normal debug libraries insteaf
+ FIND_LIBRARY(USCXML_LIBRARY_DEBUG
+ PATH_SUFFIXES lib
+ NAMES uscxml_d
+ PATHS ${_USCXML_LIB_SEARCHPATH}
+ ENV USCXML_LIB_DIR
+ )
+ if ("${USCXML_LIBRARY_DEBUG}")
+ list(APPEND USCXML_LIBRARIES debug USCXML_LIBRARY_DEBUG)
+ endif()
+endif()
+
+
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(USCXML DEFAULT_MSG USCXML_LIBRARIES USCXML_INCLUDE_DIR)
+MARK_AS_ADVANCED(USCXML_INCLUDE_DIR USCXML_LIBRARIES)