diff options
| author | Brad King <brad.king@kitware.com> | 2018-10-03 12:06:02 (GMT) |
|---|---|---|
| committer | Kitware Robot <kwrobot@kitware.com> | 2018-10-03 12:06:08 (GMT) |
| commit | cf9f3852ddd9330a18e6f9b46e40a914cd909156 (patch) | |
| tree | 6dee7d6205f091c535941a2e5a96f0d0fc3ba4b2 /Modules/FindPython/Support.cmake | |
| parent | 868ced8619e7a30c79346c38f8ba313686e66844 (diff) | |
| parent | 63c9356544ccd1471e3c428f21662420c0ceb00b (diff) | |
| download | CMake-cf9f3852ddd9330a18e6f9b46e40a914cd909156.zip CMake-cf9f3852ddd9330a18e6f9b46e40a914cd909156.tar.gz CMake-cf9f3852ddd9330a18e6f9b46e40a914cd909156.tar.bz2 | |
Merge topic 'bug-fixes'
63c9356544 FindPython*: fix erroneous handling of virtual environments
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2430
Diffstat (limited to 'Modules/FindPython/Support.cmake')
| -rw-r--r-- | Modules/FindPython/Support.cmake | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/Modules/FindPython/Support.cmake b/Modules/FindPython/Support.cmake index 1834591..a8a73a7 100644 --- a/Modules/FindPython/Support.cmake +++ b/Modules/FindPython/Support.cmake @@ -355,20 +355,23 @@ if ("Interpreter" IN_LIST ${_PYTHON_PREFIX}_FIND_COMPONENTS) ${_${_PYTHON_PREFIX}_IRON_PYTHON_NAMES} NAMES_PER_DIR HINTS ${_${_PYTHON_PREFIX}_HINTS} - PATH_SUFFIXES bin + PATH_SUFFIXES bin ${_${_PYTHON_PREFIX}_IRON_PYTHON_PATH_SUFFIXES} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) # try using standard paths. - # NAMES_PER_DIR is not defined on purpose to have a chance to find - # expected version. - # For example, typical systems have 'python' for version 2.* and 'python3' - # for version 3.*. So looking for names per dir will find, potentially, - # systematically 'python' (i.e. version 2) even if version 3 is searched. - find_program (${_PYTHON_PREFIX}_EXECUTABLE - NAMES python${_${_PYTHON_PREFIX}_VERSION} - python${_${_PYTHON_PREFIX}_REQUIRED_VERSION_MAJOR} - python - ${_${_PYTHON_PREFIX}_IRON_PYTHON_NAMES}) + if (WIN32) + find_program (${_PYTHON_PREFIX}_EXECUTABLE + NAMES python${_${_PYTHON_PREFIX}_VERSION} + python${_${_PYTHON_PREFIX}_REQUIRED_VERSION_MAJOR} + python + ${_${_PYTHON_PREFIX}_IRON_PYTHON_NAMES} + NAMES_PER_DIR) + else() + find_program (${_PYTHON_PREFIX}_EXECUTABLE + NAMES python${_${_PYTHON_PREFIX}_VERSION} + python${_${_PYTHON_PREFIX}_REQUIRED_VERSION_MAJOR} + NAMES_PER_DIR) + endif() # Apple frameworks handling if (APPLE AND _${_PYTHON_PREFIX}_FIND_FRAMEWORK STREQUAL "LAST") @@ -413,6 +416,7 @@ if ("Interpreter" IN_LIST ${_PYTHON_PREFIX}_FIND_COMPONENTS) NAMES python${_${_PYTHON_PREFIX}_REQUIRED_VERSION_MAJOR} python ${_${_PYTHON_PREFIX}_IRON_PYTHON_NAMES} + NAMES_PER_DIR HINTS ${_${_PYTHON_PREFIX}_HINTS} PATH_SUFFIXES bin ${_${_PYTHON_PREFIX}_IRON_PYTHON_PATH_SUFFIXES} NO_SYSTEM_ENVIRONMENT_PATH |
