[debuginfo-tests] Don't look for Python 3 if we already have it

LLDB already requires Python 3 on Windows, so I already configure it
that way. For some reason CMake fails to find the one that Visual Studio
automatically installs at this standard location:
  C:/Program Files (x86)/Microsoft Visual Studio/Shared/Python37_64/python.exe

CMake prefers the python on path, which happens to be python 2.7.

Reviewers: aprantl, jmorse

Differential Revision: https://reviews.llvm.org/D69684
This commit is contained in:
Reid Kleckner 2019-10-31 14:00:22 -07:00
parent cb2c4bb0e0
commit 309f9a1c52
1 changed files with 34 additions and 25 deletions

View File

@ -13,7 +13,10 @@ set(DEBUGINFO_TEST_DEPS
not
)
# Wipe, uh, previous results
# If we don't already have Python 3, throw away any previous results and try to
# find it again.
set(DEBUGINFO_UNSET_PYTHON3 OFF)
if (PYTHON_VERSION_MAJOR LESS 3)
unset(PYTHONINTERP_FOUND CACHE)
unset(PYTHON_EXECUTABLE CACHE)
unset(PYTHON_LIBRARY CACHE)
@ -27,6 +30,9 @@ unset(PYTHONLIBS_VERSION_STRING CACHE)
# Try to find python3. If it doesn't exist, dexter tests can't run.
find_package(PythonInterp "3")
set(DEBUGINFO_UNSET_PYTHON3 ON)
endif()
if (NOT DEFINED PYTHON_EXECUTABLE)
message(FATAL_ERROR "Cannot run debuginfo-tests without python")
elseif(PYTHON_VERSION_MAJOR LESS 3)
@ -46,7 +52,9 @@ else()
set_target_properties(check-debuginfo PROPERTIES FOLDER "Debug info tests")
endif()
# Prevent the rest of llvm observing our secret python3-ness
# Prevent the rest of llvm observing our secret python3-ness, if that wasn't
# what was originally found.
if (DEBUGINFO_UNSET_PYTHON3)
unset(PYTHONINTERP_FOUND CACHE)
unset(PYTHON_EXECUTABLE CACHE)
unset(PYTHON_LIBRARY CACHE)
@ -57,3 +65,4 @@ unset(PYTHON_VERSION_MAJOR CACHE)
unset(PYTHON_VERSION_MINOR CACHE)
unset(PYTHON_VERSION_PATCH CACHE)
unset(PYTHONLIBS_VERSION_STRING CACHE)
endif()