| # |
| # 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. |
| # |
| set(CMAKE_SWIG_FLAGS "-threads") |
| |
| swig_add_module(cproton python python.i) |
| include_directories (${PYTHON_INCLUDE_PATH}) |
| swig_link_libraries(cproton ${BINDING_DEPS} ${PYTHON_LIBRARIES}) |
| |
| find_package(PythonInterp REQUIRED) |
| |
| execute_process(COMMAND ${PYTHON_EXECUTABLE} |
| -c "from distutils.sysconfig import get_python_lib; print get_python_lib(True, prefix='')" |
| OUTPUT_VARIABLE PYTHON_SITEARCH_PACKAGES |
| OUTPUT_STRIP_TRAILING_WHITESPACE) |
| |
| install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile cproton.py |
| WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})") |
| install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile cproton.py |
| WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})") |
| install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -m py_compile proton.py |
| WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})") |
| install(CODE "execute_process(COMMAND ${PYTHON_EXECUTABLE} -O -m py_compile proton.py |
| WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})") |
| |
| find_program(EPYDOC_EXE epydoc) |
| if (EPYDOC_EXE) |
| add_custom_target(docs-py COMMAND ${EPYDOC_EXE} --no-private --html |
| -o ${CMAKE_CURRENT_BINARY_DIR}/html |
| ${CMAKE_CURRENT_SOURCE_DIR}/proton.py) |
| add_dependencies(docs docs-py) |
| install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/html/" |
| DESTINATION "${PROTON_SHARE}/docs/api-py" |
| COMPONENT documentation |
| ${OPTIONAL_ARG}) |
| endif (EPYDOC_EXE) |
| |
| install(FILES ${CMAKE_CURRENT_BINARY_DIR}/cproton.py |
| ${CMAKE_CURRENT_BINARY_DIR}/cproton.pyc |
| ${CMAKE_CURRENT_BINARY_DIR}/cproton.pyo |
| ${CMAKE_CURRENT_SOURCE_DIR}/proton.py |
| ${CMAKE_CURRENT_SOURCE_DIR}/proton.pyc |
| ${CMAKE_CURRENT_SOURCE_DIR}/proton.pyo |
| DESTINATION ${PYTHON_SITEARCH_PACKAGES} |
| COMPONENT Python) |
| install(FILES ${CMAKE_CURRENT_BINARY_DIR}/_cproton.so |
| RENAME _cproton.so |
| DESTINATION ${PYTHON_SITEARCH_PACKAGES} |
| COMPONENT Python) |