summaryrefslogtreecommitdiffstats
path: root/Modules/FindPython.cmake
diff options
context:
space:
mode:
authorMarc Chevrier <marc.chevrier@sap.com>2018-04-02 15:16:36 (GMT)
committerMarc Chevrier <marc.chevrier@sap.com>2018-04-03 07:41:19 (GMT)
commitb1fd2bbe75bac249ce19f5a89ac06ff0bd38741c (patch)
treef11d24e019041642d8108ec5c3d049250f3518f2 /Modules/FindPython.cmake
parente3ce4d7a282ba75a4d34aefb0176535bdbe55c36 (diff)
downloadCMake-b1fd2bbe75bac249ce19f5a89ac06ff0bd38741c.zip
CMake-b1fd2bbe75bac249ce19f5a89ac06ff0bd38741c.tar.gz
CMake-b1fd2bbe75bac249ce19f5a89ac06ff0bd38741c.tar.bz2
FindPython: enhance multiple major versions lookup
Diffstat (limited to 'Modules/FindPython.cmake')
-rw-r--r--Modules/FindPython.cmake15
1 files changed, 8 insertions, 7 deletions
diff --git a/Modules/FindPython.cmake b/Modules/FindPython.cmake
index c87f784..8139e53 100644
--- a/Modules/FindPython.cmake
+++ b/Modules/FindPython.cmake
@@ -144,18 +144,19 @@ else()
set (Python_FIND_QUIETLY TRUE)
set (Python_FIND_REQUIRED FALSE)
- foreach (_Python_REQUIRED_VERSION_MAJOR IN ITEMS 3 2)
+ set (_Python_REQUIRED_VERSIONS 3 2)
+ set (_Python_REQUIRED_VERSION_LAST 2)
+
+ foreach (_Python_REQUIRED_VERSION_MAJOR IN LISTS _Python_REQUIRED_VERSIONS)
set (Python_FIND_VERSION ${_Python_REQUIRED_VERSION_MAJOR})
include (${CMAKE_CURRENT_LIST_DIR}/FindPython/Support.cmake)
- if (Python_FOUND)
+ if (Python_FOUND OR
+ _Python_REQUIRED_VERSION_MAJOR EQUAL _Python_REQUIRED_VERSION_LAST)
break()
endif()
# clean-up some CACHE variables to ensure look-up restart from scratch
- foreach (_Python_ITEM IN ITEMS EXECUTABLE COMPILER
- LIBRARY_RELEASE RUNTIME_LIBRARY_RELEASE
- LIBRARY_DEBUG RUNTIME_LIBRARY_DEBUG
- INCLUDE_DIR)
- unset (Python_${_Python_ITEM} CACHE)
+ foreach (_Python_ITEM IN LISTS _Python_CACHED_VARS)
+ unset (${_Python_ITEM} CACHE)
endforeach()
endforeach()