You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.4 KiB

  1. find_package(PythonInterp REQUIRED QUIET)
  2. find_package(PythonLibs REQUIRED QUIET)
  3. message(STATUS "Python executable: ${PYTHON_EXECUTABLE}")
  4. message(STATUS "Python include: ${PYTHON_INCLUDE_DIRS}")
  5. message(STATUS "Python include: ${PYTHON_LIBRARIES}")
  6. set(STORMPY_OUTPUT_DIR "${PROJECT_BINARY_DIR}/stormpy")
  7. set(STORMPY_SOURCE_DIR "${PROJECT_SOURCE_DIR}/stormpy")
  8. if(STORM_HAVE_CLN)
  9. set(STORMPY_USE_CLN 1)
  10. else()
  11. set(STORMPY_USE_CLN 0)
  12. endif()
  13. # Set configuration file
  14. get_directory_property(STORMPY_INCLUDE_DIRS_PROP INCLUDE_DIRECTORIES)
  15. foreach(arg ${STORMPY_INCLUDE_DIRS_PROP})
  16. set(STORMPY_INCLUDE_DIRS "${STORMPY_INCLUDE_DIRS}${sep}${arg}")
  17. set(sep ":")
  18. endforeach()
  19. set(STORMPY_COMPILE_ARGS ${CMAKE_CXX_FLAGS})
  20. set(STORMPY_LIBRARY_DIRS "${PROJECT_BINARY_DIR}/src/storm")
  21. set(STORMPY_RPATH "${PROJECT_BINARY_DIR}/src/storm")
  22. configure_file (
  23. "${PROJECT_SOURCE_DIR}/stormpy/setup.cfg.in"
  24. "${PROJECT_SOURCE_DIR}/stormpy/setup.cfg"
  25. )
  26. # Add targets
  27. add_custom_target(PythonBindingsBuild
  28. COMMAND ${PYTHON_EXECUTABLE} setup.py build
  29. WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
  30. DEPENDS storm
  31. )
  32. add_custom_target(PythonBindingsDevelop
  33. COMMAND ${PYTHON_EXECUTABLE} setup.py develop
  34. WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
  35. DEPENDS storm
  36. )
  37. add_custom_target(PythonBindingsInstall
  38. COMMAND ${PYTHON_EXECUTABLE} setup.py install --user
  39. WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
  40. DEPENDS storm
  41. )