2023-07-02 19:51:09 +02:00
|
|
|
cmake_minimum_required(VERSION 3.5)
|
2018-08-09 18:06:22 +02:00
|
|
|
|
|
|
|
project(TestMultiplePackages C)
|
|
|
|
|
|
|
|
find_package (Python2 REQUIRED COMPONENTS Interpreter Development)
|
|
|
|
find_package (Python3 REQUIRED COMPONENTS Interpreter Development)
|
|
|
|
|
|
|
|
# Must find Python 3
|
|
|
|
find_package (Python REQUIRED)
|
|
|
|
|
|
|
|
if (NOT Python3_EXECUTABLE STREQUAL Python_EXECUTABLE)
|
|
|
|
message (FATAL_ERROR
|
|
|
|
"Python interpreters do not match:\n"
|
|
|
|
" Python_EXECUTABLE='${Python_EXECUTABLE}'\n"
|
|
|
|
" Python3_EXECUTABLE='${Python3_EXECUTABLE}'\n"
|
|
|
|
)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
|
|
Python2_add_library (spam2 MODULE ../spam.c)
|
|
|
|
target_compile_definitions (spam2 PRIVATE PYTHON2)
|
|
|
|
|
|
|
|
Python3_add_library (spam3 MODULE ../spam.c)
|
|
|
|
target_compile_definitions (spam3 PRIVATE PYTHON3)
|
|
|
|
|
|
|
|
|
|
|
|
add_test (NAME python2_spam2
|
|
|
|
COMMAND "${CMAKE_COMMAND}" -E env "PYTHONPATH=$<TARGET_FILE_DIR:spam3>"
|
|
|
|
"${Python2_EXECUTABLE}" -c "import spam2; spam2.system(\"cd\")")
|
|
|
|
|
|
|
|
add_test (NAME python3_spam3
|
|
|
|
COMMAND "${CMAKE_COMMAND}" -E env "PYTHONPATH=$<TARGET_FILE_DIR:spam3>"
|
|
|
|
"${Python3_EXECUTABLE}" -c "import spam3; spam3.system(\"cd\")")
|