CMakeLists.txt 1011 B

12345678910111213141516171819202122
  1. cmake_minimum_required(VERSION 3.1)
  2. project(TestNumPy C)
  3. find_package (Python2 REQUIRED COMPONENTS Interpreter Development NumPy)
  4. find_package (Python3 REQUIRED COMPONENTS Interpreter Development NumPy)
  5. Python2_add_library (arraytest2 MODULE arraytest.c)
  6. target_compile_definitions (arraytest2 PRIVATE PYTHON2)
  7. target_link_libraries (arraytest2 PRIVATE Python2::NumPy)
  8. Python3_add_library (arraytest3 MODULE arraytest.c)
  9. target_compile_definitions (arraytest3 PRIVATE PYTHON3)
  10. target_link_libraries (arraytest3 PRIVATE Python3::NumPy)
  11. add_test (NAME python2_arraytest
  12. COMMAND "${CMAKE_COMMAND}" -E env "PYTHONPATH=$<TARGET_FILE_DIR:arraytest2>"
  13. "${Python2_EXECUTABLE}" -c "import numpy; import arraytest2; arraytest2.vecsq(numpy.array([1, 2, 3]));")
  14. add_test (NAME python3_arraytest
  15. COMMAND "${CMAKE_COMMAND}" -E env "PYTHONPATH=$<TARGET_FILE_DIR:arraytest3>"
  16. "${Python3_EXECUTABLE}" -c "import numpy; import arraytest3; arraytest3.vecsq(numpy.array([1, 2, 3]));")