openlase/python/CMakeLists.txt
2013-01-26 14:48:25 +00:00

25 lines
1.1 KiB
CMake

find_package(PythonLibs)
find_program(CYTHON_EXECUTABLE cython)
if(CYTHON_EXECUTABLE MATCHES "NOTFOUND" OR NOT PYTHONLIBS_FOUND)
message(STATUS "Will NOT build python bindings (python libs or cython missing)")
else()
execute_process(COMMAND
${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
OUTPUT_VARIABLE PYTHON_SITE_PACKAGES OUTPUT_STRIP_TRAILING_WHITESPACE)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.pxi.in ${CMAKE_CURRENT_BINARY_DIR}/config.pxi)
add_custom_command(OUTPUT pylase.c
MAIN_DEPENDENCY pylase.pyx
COMMAND ${CYTHON_EXECUTABLE} -I ${CMAKE_SOURCE_DIR}/include -I ${CMAKE_CURRENT_BINARY_DIR} -o pylase.c "${CMAKE_CURRENT_SOURCE_DIR}/pylase.pyx")
list(APPEND ADDITIONAL_MAKE_CLEAN_FILES pylase.c)
include_directories(${PYTHON_INCLUDE_PATH} ${CMAKE_SOURCE_DIR}/include)
add_library(pylase MODULE pylase.c)
set_target_properties(pylase PROPERTIES
PREFIX ""
OUTPUT_NAME "pylase"
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
target_link_libraries(pylase openlase)
endif()