blob: 4d41033979d989c44aa789fb9b4371bf1e94c3cb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
project(libssh-python CXX)
set(SWIG_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ssh_python.cpp")
find_package(PythonInterp REQUIRED)
execute_process(
COMMAND
${PYTHON_EXECUTABLE} -c "from sys import stdout; from distutils import sysconfig; stdout.write(sysconfig.get_python_lib())"
OUTPUT_VARIABLE
PYTHON_LIB_DIR
)
if (NOT PYTHON_SITEDIR)
set(PYTHON_SITEDIR ${PYTHON_LIB_DIR})
endif (NOT PYTHON_SITEDIR)
include_directories(${LIBSSH_PUBLIC_INCLUDE_DIRS} ${PYTHON_INCLUDE_PATH})
set_source_files_properties(${SWIG_INPUT} PROPERTIES CPLUSPLUS ON)
# Py_True and Py_False are a bit tricky
set_source_files_properties(${swig_generated_file_fullname} PROPERTIES COMPILE_FLAGS "-fno-strict-aliasing")
swig_add_module(ssh python ${SWIG_INPUT})
swig_link_libraries(ssh ${LIBSSH_SHARED_LIBRARY} ${PYTHON_LIBRARIES})
install(TARGETS ${SWIG_MODULE_ssh_REAL_NAME} LIBRARY DESTINATION ${PYTHON_SITEDIR})
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ssh.py DESTINATION ${PYTHON_SITEDIR})
|