mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-22 23:19:58 -06:00
Merge topic 'FindPython-fix-python-compiler-validation'
f39da773ee FindPython: fix python compiler validation
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4655
This commit is contained in:
@@ -299,9 +299,9 @@ if(CMake_TEST_FindPython_NumPy)
|
||||
--build-project TestNumPyOnly
|
||||
--build-options ${build_options}
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CMake_TEST_FindPython_Conda)
|
||||
if(CMake_TEST_FindPython_Conda)
|
||||
add_test(NAME FindPython.VirtualEnvConda COMMAND
|
||||
${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
@@ -312,4 +312,68 @@ if(CMake_TEST_FindPython_NumPy)
|
||||
--build-options ${build_options}
|
||||
--test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CMake_TEST_FindPython_IronPython)
|
||||
add_test(NAME FindPython.IronPython2.LOCATION COMMAND
|
||||
${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/FindPython/IronPython2"
|
||||
"${CMake_BINARY_DIR}/Tests/FindPython/IronPython2.LOCATION"
|
||||
${build_generator_args}
|
||||
--build-project TestIronPython2
|
||||
--build-options ${build_options} -DPython2_FIND_STRATEGY=LOCATION
|
||||
--test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
|
||||
)
|
||||
add_test(NAME FindPython.IronPython2.VERSION COMMAND
|
||||
${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/FindPython/IronPython2"
|
||||
"${CMake_BINARY_DIR}/Tests/FindPython/IronPython2.VERSION"
|
||||
${build_generator_args}
|
||||
--build-project TestIronPython2
|
||||
--build-options ${build_options} -DPython2_FIND_STRATEGY=VERSION
|
||||
--test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
|
||||
)
|
||||
|
||||
add_test(NAME FindPython.IronPython.LOCATION COMMAND
|
||||
${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/FindPython/IronPython"
|
||||
"${CMake_BINARY_DIR}/Tests/FindPython/IronPython.LOCATION"
|
||||
${build_generator_args}
|
||||
--build-project TestIronPython
|
||||
--build-options ${build_options} -DPython_FIND_STRATEGY=LOCATION
|
||||
--test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
|
||||
)
|
||||
add_test(NAME FindPython.IronPython.VERSION COMMAND
|
||||
${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/FindPython/IronPython"
|
||||
"${CMake_BINARY_DIR}/Tests/FindPython/IronPython.VERSION"
|
||||
${build_generator_args}
|
||||
--build-project TestIronPython
|
||||
--build-options ${build_options} -DPython_FIND_STRATEGY=VERSION
|
||||
--test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
|
||||
)
|
||||
add_test(NAME FindPython.IronPython.V2.LOCATION COMMAND
|
||||
${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/FindPython/IronPython"
|
||||
"${CMake_BINARY_DIR}/Tests/FindPython/IronPython.V2.LOCATION"
|
||||
${build_generator_args}
|
||||
--build-project TestIronPython
|
||||
--build-options ${build_options} -DPython_REQUESTED_VERSION=2 -DPython_FIND_STRATEGY=LOCATION
|
||||
--test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
|
||||
)
|
||||
add_test(NAME FindPython.IronPython.V2.VERSION COMMAND
|
||||
${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/FindPython/IronPython"
|
||||
"${CMake_BINARY_DIR}/Tests/FindPython/IronPython.V2.VERSION"
|
||||
${build_generator_args}
|
||||
--build-project TestIronPython
|
||||
--build-options ${build_options} -DPython_REQUESTED_VERSION=2 -DPython_FIND_STRATEGY=VERSION
|
||||
--test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
|
||||
)
|
||||
endif()
|
||||
|
||||
22
Tests/FindPython/IronPython/CMakeLists.txt
Normal file
22
Tests/FindPython/IronPython/CMakeLists.txt
Normal file
@@ -0,0 +1,22 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
|
||||
project(TestIronPython C)
|
||||
|
||||
find_package(Python ${Python_REQUESTED_VERSION} REQUIRED COMPONENTS Interpreter Compiler)
|
||||
if (NOT Python_FOUND)
|
||||
message (FATAL_ERROR "Fail to found Python ${Python_REQUESTED_VERSION}")
|
||||
endif()
|
||||
|
||||
if (NOT Python_Compiler_FOUND)
|
||||
message (FATAL_ERROR "Fail to found Python Compiler")
|
||||
endif()
|
||||
if (NOT Python_COMPILER_ID STREQUAL "IronPython")
|
||||
message (FATAL_ERROR "Erroneous compiler ID (${Python_COMPILER_ID})")
|
||||
endif()
|
||||
|
||||
if(NOT TARGET Python::Interpreter)
|
||||
message(SEND_ERROR "Python::Interpreter not found")
|
||||
endif()
|
||||
if(NOT TARGET Python::Compiler)
|
||||
message(SEND_ERROR "Python::Interpreter not found")
|
||||
endif()
|
||||
22
Tests/FindPython/IronPython2/CMakeLists.txt
Normal file
22
Tests/FindPython/IronPython2/CMakeLists.txt
Normal file
@@ -0,0 +1,22 @@
|
||||
cmake_minimum_required(VERSION 3.1)
|
||||
|
||||
project(TestIronPython2 C)
|
||||
|
||||
find_package(Python2 REQUIRED COMPONENTS Interpreter Compiler)
|
||||
if (NOT Python2_FOUND)
|
||||
message (FATAL_ERROR "Fail to found Python 2")
|
||||
endif()
|
||||
|
||||
if (NOT Python2_Compiler_FOUND)
|
||||
message (FATAL_ERROR "Fail to found Python 2 Compiler")
|
||||
endif()
|
||||
if (NOT Python2_COMPILER_ID STREQUAL "IronPython")
|
||||
message (FATAL_ERROR "Erroneous compiler ID (${Python2_COMPILER_ID})")
|
||||
endif()
|
||||
|
||||
if(NOT TARGET Python2::Interpreter)
|
||||
message(SEND_ERROR "Python2::Interpreter not found")
|
||||
endif()
|
||||
if(NOT TARGET Python2::Compiler)
|
||||
message(SEND_ERROR "Python2::Compiler not found")
|
||||
endif()
|
||||
Reference in New Issue
Block a user