Index: clang/CMakeLists.txt =================================================================== --- clang/CMakeLists.txt +++ clang/CMakeLists.txt @@ -135,20 +135,7 @@ set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} ) if(LLVM_INCLUDE_TESTS) - find_package(Python3 COMPONENTS Interpreter) - if(NOT Python3_Interpreter_FOUND) - message(WARNING "Python3 not found, using python2 as a fallback") - find_package(Python2 COMPONENTS Interpreter REQUIRED) - if(Python2_VERSION VERSION_LESS 2.7) - message(SEND_ERROR "Python 2.7 or newer is required") - endif() - - # Treat python2 as python3 - add_executable(Python3::Interpreter IMPORTED) - set_target_properties(Python3::Interpreter PROPERTIES - IMPORTED_LOCATION ${Python2_EXECUTABLE}) - set(Python3_EXECUTABLE ${Python2_EXECUTABLE}) - endif() + find_package(Python3 REQUIRED COMPONENTS Interpreter) # Check prebuilt llvm/utils. if(EXISTS ${LLVM_TOOLS_BINARY_DIR}/FileCheck${CMAKE_EXECUTABLE_SUFFIX} Index: clang/tools/scan-build-py/README.md =================================================================== --- clang/tools/scan-build-py/README.md +++ clang/tools/scan-build-py/README.md @@ -19,7 +19,7 @@ Prerequisites ------------- -1. **python** interpreter (version 2.7, 3.2, 3.3, 3.4, 3.5). +1. **python** interpreter (version 3.6 or later). How to use Index: clang/tools/scan-build/bin/set-xcode-analyzer =================================================================== --- clang/tools/scan-build/bin/set-xcode-analyzer +++ clang/tools/scan-build/bin/set-xcode-analyzer @@ -5,8 +5,8 @@ # This one has the scripting bridge enabled. import sys -if sys.version_info < (2, 7): - print "set-xcode-analyzer requires Python 2.7 or later" +if sys.version_info < (3, 6): + print "set-xcode-analyzer requires Python 3.6 or later" sys.exit(1) import os Index: lld/CMakeLists.txt =================================================================== --- lld/CMakeLists.txt +++ lld/CMakeLists.txt @@ -57,20 +57,7 @@ include(CheckAtomic) if(LLVM_INCLUDE_TESTS) - find_package(Python3 COMPONENTS Interpreter) - if(NOT Python3_Interpreter_FOUND) - message(WARNING "Python3 not found, using python2 as a fallback") - find_package(Python2 COMPONENTS Interpreter REQUIRED) - if(Python2_VERSION VERSION_LESS 2.7) - message(SEND_ERROR "Python 2.7 or newer is required") - endif() - - # Treat python2 as python3 - add_executable(Python3::Interpreter IMPORTED) - set_target_properties(Python3::Interpreter PROPERTIES - IMPORTED_LOCATION ${Python2_EXECUTABLE}) - set(Python3_EXECUTABLE ${Python2_EXECUTABLE}) - endif() + find_package(Python3 REQUIRED COMPONENTS Interpreter) # Check prebuilt llvm/utils. if(EXISTS ${LLVM_TOOLS_BINARY_DIR}/FileCheck${CMAKE_EXECUTABLE_SUFFIX} Index: lldb/docs/resources/build.rst =================================================================== --- lldb/docs/resources/build.rst +++ lldb/docs/resources/build.rst @@ -73,7 +73,7 @@ > yum install libedit-devel libxml2-devel ncurses-devel python-devel swig > sudo apt-get install build-essential subversion swig python3-dev libedit-dev libncurses5-dev > pkg install swig python - > pkgin install swig python27 cmake ninja-build + > pkgin install swig python36 cmake ninja-build > brew install swig cmake ninja Note that there's an `incompatibility Index: llvm/CMakeLists.txt =================================================================== --- llvm/CMakeLists.txt +++ llvm/CMakeLists.txt @@ -708,20 +708,7 @@ include(HandleLLVMOptions) -find_package(Python3 COMPONENTS Interpreter) -if(NOT Python3_Interpreter_FOUND) - message(WARNING "Python3 not found, using python2 as a fallback") - find_package(Python2 COMPONENTS Interpreter REQUIRED) - if(Python2_VERSION VERSION_LESS 2.7) - message(SEND_ERROR "Python 2.7 or newer is required") - endif() - - # Treat python2 as python3 - add_executable(Python3::Interpreter IMPORTED) - set_target_properties(Python3::Interpreter PROPERTIES - IMPORTED_LOCATION ${Python2_EXECUTABLE}) - set(Python3_EXECUTABLE ${Python2_EXECUTABLE}) -endif() +find_package(Python3 REQUIRED COMPONENTS Interpreter) ###### Index: llvm/docs/GettingStarted.rst =================================================================== --- llvm/docs/GettingStarted.rst +++ llvm/docs/GettingStarted.rst @@ -169,7 +169,7 @@ =========================================================== ============ ========================================== `CMake `__ >=3.13.4 Makefile/workspace generator `GCC `_ >=5.1.0 C/C++ compiler\ :sup:`1` -`python `_ >=2.7 Automated test suite\ :sup:`2` +`python `_ >=3.6 Automated test suite\ :sup:`2` `zlib `_ >=1.2.3.4 Compression library\ :sup:`3` `GNU Make `_ 3.79, 3.79.1 Makefile/build processor\ :sup:`4` =========================================================== ============ ========================================== Index: llvm/docs/GettingStartedVS.rst =================================================================== --- llvm/docs/GettingStartedVS.rst +++ llvm/docs/GettingStartedVS.rst @@ -51,7 +51,7 @@ generates the project files you will use to build with. If you would like to run the LLVM tests you will need `Python -`_. Version 2.7 and newer are known to work. You will +`_. Version 3.6 and newer are known to work. You will need `GnuWin32 `_ tools, too. Do not install the LLVM directory tree into a path containing spaces (e.g. Index: llvm/docs/HowToBuildOnARM.rst =================================================================== --- llvm/docs/HowToBuildOnARM.rst +++ llvm/docs/HowToBuildOnARM.rst @@ -41,7 +41,6 @@ Use Ninja instead of Make: "-G Ninja" Build with assertions on: "-DLLVM_ENABLE_ASSERTIONS=True" - Force Python2: "-DPYTHON_EXECUTABLE=/usr/bin/python2" Local (non-sudo) install path: "-DCMAKE_INSTALL_PREFIX=$HOME/llvm/install" CPU flags: "DCMAKE_C_FLAGS=-mcpu=cortex-a15" (same for CXX_FLAGS) Index: llvm/docs/TestingGuide.rst =================================================================== --- llvm/docs/TestingGuide.rst +++ llvm/docs/TestingGuide.rst @@ -23,7 +23,7 @@ ============ In order to use the LLVM testing infrastructure, you will need all of the -software required to build LLVM, as well as `Python `_ 2.7 or +software required to build LLVM, as well as `Python `_ 3.6 or later. LLVM Testing Infrastructure Organization