summaryrefslogtreecommitdiffstats
path: root/src/bindings/CMakeLists.txt
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2016-05-26 10:36:49 (GMT)
committerStefan Radomski <github@mintwerk.de>2016-05-26 10:36:49 (GMT)
commit6e13c7b6e0888323223afd5d2e36e86243df57af (patch)
treef558fd45fa499c8bc95041554ecad6be1bf788c1 /src/bindings/CMakeLists.txt
parentf6714b1484b641ea61053350b7d156d2da760b8b (diff)
downloaduscxml-6e13c7b6e0888323223afd5d2e36e86243df57af.zip
uscxml-6e13c7b6e0888323223afd5d2e36e86243df57af.tar.gz
uscxml-6e13c7b6e0888323223afd5d2e36e86243df57af.tar.bz2
Minor polishing for Java bindings and first draft of JEXL datamodel
Diffstat (limited to 'src/bindings/CMakeLists.txt')
-rw-r--r--src/bindings/CMakeLists.txt46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/bindings/CMakeLists.txt b/src/bindings/CMakeLists.txt
new file mode 100644
index 0000000..57388f2
--- /dev/null
+++ b/src/bindings/CMakeLists.txt
@@ -0,0 +1,46 @@
+# if you build swig from sources on windows, this is where it will end up
+# see also: http://www.swig.org/Doc2.0/Windows.html#Windows_mingw_msys
+if (CMAKE_CROSSCOMPILING)
+ return()
+endif()
+
+if (WIN32)
+ if(EXISTS "${PROJECT_BINARY_DIR}/../swig/")
+ LIST(APPEND CMAKE_PROGRAM_PATH "${PROJECT_BINARY_DIR}/../swig/")
+ elseif(EXISTS "${PROJECT_BINARY_DIR}/../../swig/")
+ LIST(APPEND CMAKE_PROGRAM_PATH "${PROJECT_BINARY_DIR}/../../swig/")
+ endif()
+
+ file(GLOB POTENTIAL_SWIG "C:/Program Files/swig*" "C:/Program Files (x86)/swig*")
+ LIST(APPEND CMAKE_PROGRAM_PATH ${POTENTIAL_SWIG}) # swig.exe
+ # message(FATAL_ERROR "POTENTIAL_SWIG: ${POTENTIAL_SWIG}")
+
+endif()
+LIST(APPEND CMAKE_PROGRAM_PATH $ENV{SWIG_DIR})
+
+find_package(SWIG)
+
+if (SWIG_FOUND)
+ if(SWIG_VERSION VERSION_GREATER 2.0.4)
+ MARK_AS_ADVANCED(SWIG_DIR SWIG_EXECUTABLE SWIG_VERSION)
+ INCLUDE(${SWIG_USE_FILE})
+ if (BUILD_BINDING_JAVA)
+ add_subdirectory(swig/java)
+ endif()
+ # if (BUILD_BINDING_CSHARP)
+ # add_subdirectory(swig/csharp)
+ # endif()
+ # if (BUILD_BINDING_PHP)
+ # add_subdirectory(swig/php)
+ # endif()
+
+ if(SWIG_VERSION VERSION_LESS 3.0.0)
+ message(STATUS "SWIG version > 3.0 is recommended, found ${SWIG_VERSION}")
+ endif()
+ else()
+ message(STATUS "SWIG version 2.0.5 is required, found ${SWIG_VERSION} - skipping wrapper generation")
+ endif()
+else()
+ message(STATUS "SWIG not found - skipping wrapper generation")
+endif()
+set(USCXML_LANGUAGE_BINDINGS ${USCXML_LANGUAGE_BINDINGS} PARENT_SCOPE)