summaryrefslogtreecommitdiff
path: root/cpp/bindings/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/bindings/CMakeLists.txt')
-rw-r--r--cpp/bindings/CMakeLists.txt67
1 files changed, 67 insertions, 0 deletions
diff --git a/cpp/bindings/CMakeLists.txt b/cpp/bindings/CMakeLists.txt
new file mode 100644
index 0000000000..3d44ef01cd
--- /dev/null
+++ b/cpp/bindings/CMakeLists.txt
@@ -0,0 +1,67 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+
+include(FindSWIG)
+include(UseSWIG)
+include(FindRuby)
+include(FindPythonLibs)
+include(FindPerlLibs)
+
+set (SWIG_MINIMUM_VERSION "1.3.32")
+
+if (SWIG_FOUND)
+ if (${SWIG_VERSION} VERSION_LESS ${SWIG_MINIMUM_VERSION})
+ message("Found Swig < ${SWIG_MINIMUM_VERSION} - skipping language bindings")
+ else()
+ set(CMAKE_SWIG_FLAGS "-w361,362,401,467,503")
+
+ if (PYTHONLIBS_FOUND)
+ execute_process(COMMAND ${PYTHON_EXECUTABLE}
+ -c "from distutils.sysconfig import get_python_lib; print get_python_lib(True, prefix='${CMAKE_INSTALL_PREFIX}')"
+ OUTPUT_VARIABLE PYTHON_SITEARCH_PACKAGES
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+ add_subdirectory(qpid/python)
+ add_subdirectory(qmf2/python)
+ add_subdirectory(qmf/python)
+ endif (PYTHONLIBS_FOUND)
+
+ if (RUBY_FOUND)
+ execute_process(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts RbConfig::CONFIG['prefix']"
+ OUTPUT_VARIABLE RUBY_PREFIX
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+ string(REPLACE ${RUBY_PREFIX} ${CMAKE_INSTALL_PREFIX} RUBY_PFX_ARCH_DIR ${RUBY_ARCH_DIR})
+
+ add_subdirectory(qpid/ruby)
+ add_subdirectory(qmf2/ruby)
+ add_subdirectory(qmf/ruby)
+ endif (RUBY_FOUND)
+
+ if (PERLLIBS_FOUND)
+ execute_process(COMMAND ${PERL_EXECUTABLE} "-V::prefix:"
+ OUTPUT_VARIABLE QPERL_PREFIX
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+ string(REGEX REPLACE "'(.*)'" "\\1" PERL_PREFIX ${QPERL_PREFIX})
+ string(REPLACE ${PERL_PREFIX} ${CMAKE_INSTALL_PREFIX} PERL_PFX_ARCHLIB ${PERL_ARCHLIB})
+
+ add_subdirectory(qpid/perl)
+ endif (PERLLIBS_FOUND)
+ endif (${SWIG_VERSION} VERSION_LESS ${SWIG_MINIMUM_VERSION})
+endif (SWIG_FOUND)