mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-11-23 13:50:11 +00:00
Revert "build: use find_package(Python3)
if available"
This reverts commit cd84bfb814
. Although
this passed the CI in phabricator, some of the bots are missing python3
packages, revert it temporarily.
This commit is contained in:
parent
825f583c86
commit
be884b7935
@ -8,7 +8,7 @@ config.lit_tools_dir = "@LLVM_LIT_TOOLS_DIR@"
|
||||
config.clang_tools_binary_dir = "@CLANG_TOOLS_BINARY_DIR@"
|
||||
config.clang_tools_dir = "@CLANG_TOOLS_DIR@"
|
||||
config.clang_libs_dir = "@SHLIBDIR@"
|
||||
config.python_executable = "@Python3_EXECUTABLE@"
|
||||
config.python_executable = "@PYTHON_EXECUTABLE@"
|
||||
config.target_triple = "@TARGET_TRIPLE@"
|
||||
config.clang_staticanalyzer = @CLANG_ENABLE_STATIC_ANALYZER@
|
||||
|
||||
|
@ -130,38 +130,16 @@ if( CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR )
|
||||
set( CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX} )
|
||||
|
||||
if(LLVM_INCLUDE_TESTS)
|
||||
if(CMAKE_VERSION VERSION_LESS 3.12)
|
||||
include(FindPythonInterp)
|
||||
if(NOT PYTHONINTERP_FOUND)
|
||||
message(FATAL_ERROR
|
||||
"Unable to find Python interpreter, required for builds and testing.
|
||||
include(FindPythonInterp)
|
||||
if(NOT PYTHONINTERP_FOUND)
|
||||
message(FATAL_ERROR
|
||||
"Unable to find Python interpreter, required for builds and testing.
|
||||
|
||||
Please install Python or specify the PYTHON_EXECUTABLE CMake variable.")
|
||||
endif()
|
||||
Please install Python or specify the PYTHON_EXECUTABLE CMake variable.")
|
||||
endif()
|
||||
|
||||
if( ${PYTHON_VERSION_STRING} VERSION_LESS 2.7 )
|
||||
message(FATAL_ERROR "Python 2.7 or newer is required")
|
||||
endif()
|
||||
|
||||
add_executable(Python3::Interpreter IMPORTED)
|
||||
set_target_properties(Python3::Interpreter PROPERTIES
|
||||
IMPORTED_LOCATION ${PYTHON_EXECUTABLE})
|
||||
set(Python3_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||
else()
|
||||
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()
|
||||
if( ${PYTHON_VERSION_STRING} VERSION_LESS 2.7 )
|
||||
message(FATAL_ERROR "Python 2.7 or newer is required")
|
||||
endif()
|
||||
|
||||
# Check prebuilt llvm/utils.
|
||||
|
@ -3,7 +3,7 @@
|
||||
add_custom_target(check-clang-python
|
||||
COMMAND ${CMAKE_COMMAND} -E env
|
||||
CLANG_LIBRARY_PATH=$<TARGET_FILE_DIR:libclang>
|
||||
"${Python3_EXECUTABLE}" -m unittest discover
|
||||
${PYTHON_EXECUTABLE} -m unittest discover
|
||||
DEPENDS libclang
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..)
|
||||
|
||||
|
@ -27,7 +27,7 @@ config.enable_backtrace = @ENABLE_BACKTRACES@
|
||||
config.enable_experimental_new_pass_manager = @ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER@
|
||||
config.enable_threads = @LLVM_ENABLE_THREADS@
|
||||
config.host_arch = "@HOST_ARCH@"
|
||||
config.python_executable = "@Python3_EXECUTABLE@"
|
||||
config.python_executable = "@PYTHON_EXECUTABLE@"
|
||||
config.use_z3_solver = lit_config.params.get('USE_Z3_SOLVER', "@USE_Z3_SOLVER@")
|
||||
config.has_plugins = @LLVM_ENABLE_PLUGINS@
|
||||
|
||||
|
@ -23,7 +23,7 @@ if(LLVM_BUILD_INSTRUMENTED)
|
||||
)
|
||||
|
||||
add_custom_target(clear-profraw
|
||||
COMMAND "${Python3_EXECUTABLE}" ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py clean ${CMAKE_CURRENT_BINARY_DIR} profraw
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py clean ${CMAKE_CURRENT_BINARY_DIR} profraw
|
||||
COMMENT "Clearing old profraw data")
|
||||
|
||||
if(NOT LLVM_PROFDATA)
|
||||
@ -34,7 +34,7 @@ if(LLVM_BUILD_INSTRUMENTED)
|
||||
message(STATUS "To enable merging PGO data LLVM_PROFDATA has to point to llvm-profdata")
|
||||
else()
|
||||
add_custom_target(generate-profdata
|
||||
COMMAND "${Python3_EXECUTABLE}" ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py merge ${LLVM_PROFDATA} ${CMAKE_CURRENT_BINARY_DIR}/clang.profdata ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py merge ${LLVM_PROFDATA} ${CMAKE_CURRENT_BINARY_DIR}/clang.profdata ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Merging profdata"
|
||||
DEPENDS generate-profraw)
|
||||
endif()
|
||||
@ -55,7 +55,7 @@ if(APPLE AND DTRACE)
|
||||
)
|
||||
|
||||
add_custom_target(clear-dtrace-logs
|
||||
COMMAND "${Python3_EXECUTABLE}" ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py clean ${CMAKE_CURRENT_BINARY_DIR} dtrace
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py clean ${CMAKE_CURRENT_BINARY_DIR} dtrace
|
||||
COMMENT "Clearing old dtrace data")
|
||||
|
||||
if(NOT CLANG_ORDER_FILE)
|
||||
@ -63,7 +63,7 @@ if(APPLE AND DTRACE)
|
||||
endif()
|
||||
|
||||
add_custom_target(generate-order-file
|
||||
COMMAND "${Python3_EXECUTABLE}" ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py gen-order-file --binary $<TARGET_FILE:clang> --output ${CLANG_ORDER_FILE} ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/perf-helper.py gen-order-file --binary $<TARGET_FILE:clang> --output ${CLANG_ORDER_FILE} ${CMAKE_CURRENT_BINARY_DIR}
|
||||
COMMENT "Generating order file"
|
||||
DEPENDS generate-dtrace-logs)
|
||||
endif()
|
||||
|
@ -7,7 +7,7 @@ config.perf_helper_dir = "@CMAKE_CURRENT_SOURCE_DIR@"
|
||||
config.test_exec_root = "@CMAKE_CURRENT_BINARY_DIR@"
|
||||
config.test_source_root = "@CLANG_PGO_TRAINING_DATA@"
|
||||
config.target_triple = "@TARGET_TRIPLE@"
|
||||
config.python_exe = "@Python3_EXECUTABLE@"
|
||||
config.python_exe = "@PYTHON_EXECUTABLE@"
|
||||
|
||||
# Support substitution of the tools and libs dirs with user parameters. This is
|
||||
# used when we can't determine the tool dir at configuration time.
|
||||
|
@ -7,7 +7,7 @@ config.perf_helper_dir = "@CMAKE_CURRENT_SOURCE_DIR@"
|
||||
config.test_exec_root = "@CMAKE_CURRENT_BINARY_DIR@"
|
||||
config.test_source_root = "@CLANG_PGO_TRAINING_DATA@"
|
||||
config.target_triple = "@TARGET_TRIPLE@"
|
||||
config.python_exe = "@Python3_EXECUTABLE@"
|
||||
config.python_exe = "@PYTHON_EXECUTABLE@"
|
||||
|
||||
# Support substitution of the tools and libs dirs with user parameters. This is
|
||||
# used when we can't determine the tool dir at configuration time.
|
||||
|
@ -672,38 +672,16 @@ option(LLVM_ENABLE_PLUGINS "Enable plugin support" ${LLVM_ENABLE_PLUGINS_default
|
||||
|
||||
include(HandleLLVMOptions)
|
||||
|
||||
if(CMAKE_VERSION VERSION_LESS 3.12)
|
||||
include(FindPythonInterp)
|
||||
if( NOT PYTHONINTERP_FOUND )
|
||||
message(FATAL_ERROR
|
||||
"Unable to find Python interpreter, required for builds and testing.
|
||||
include(FindPythonInterp)
|
||||
if( NOT PYTHONINTERP_FOUND )
|
||||
message(FATAL_ERROR
|
||||
"Unable to find Python interpreter, required for builds and testing.
|
||||
|
||||
Please install Python or specify the PYTHON_EXECUTABLE CMake variable.")
|
||||
endif()
|
||||
Please install Python or specify the PYTHON_EXECUTABLE CMake variable.")
|
||||
endif()
|
||||
|
||||
if( ${PYTHON_VERSION_STRING} VERSION_LESS 2.7 )
|
||||
message(FATAL_ERROR "Python 2.7 or newer is required")
|
||||
endif()
|
||||
|
||||
add_executable(Python3::Interpreter IMPORTED)
|
||||
set_target_properties(Python3::Interpreter PROPERTIES
|
||||
IMPORTED_LOCATION ${PYTHON_EXECUTABLE})
|
||||
set(Python3_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||
else()
|
||||
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()
|
||||
if( ${PYTHON_VERSION_STRING} VERSION_LESS 2.7 )
|
||||
message(FATAL_ERROR "Python 2.7 or newer is required")
|
||||
endif()
|
||||
|
||||
######
|
||||
@ -739,7 +717,7 @@ endif (LLVM_USE_PERF)
|
||||
|
||||
message(STATUS "Constructing LLVMBuild project information")
|
||||
execute_process(
|
||||
COMMAND "${Python3_EXECUTABLE}" -B ${LLVMBUILDTOOL}
|
||||
COMMAND ${PYTHON_EXECUTABLE} -B ${LLVMBUILDTOOL}
|
||||
--native-target "${LLVM_NATIVE_ARCH}"
|
||||
--enable-targets "${LLVM_TARGETS_TO_BUILD}"
|
||||
--enable-optional-components "${LLVMOPTIONALCOMPONENTS}"
|
||||
|
@ -639,7 +639,7 @@ function(find_python_module module)
|
||||
return()
|
||||
endif()
|
||||
|
||||
execute_process(COMMAND "${Python3_EXECUTABLE}" "-c" "import ${module}"
|
||||
execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "import ${module}"
|
||||
RESULT_VARIABLE status
|
||||
ERROR_QUIET)
|
||||
|
||||
|
@ -117,7 +117,7 @@ function(add_llvm_symbol_exports target_name export_file)
|
||||
set(native_export_file "${target_name}.def")
|
||||
|
||||
add_custom_command(OUTPUT ${native_export_file}
|
||||
COMMAND "${Python3_EXECUTABLE}" -c "import sys;print(''.join(['EXPORTS\\n']+sys.stdin.readlines(),))"
|
||||
COMMAND ${PYTHON_EXECUTABLE} -c "import sys;print(''.join(['EXPORTS\\n']+sys.stdin.readlines(),))"
|
||||
< ${export_file} > ${native_export_file}
|
||||
DEPENDS ${export_file}
|
||||
VERBATIM
|
||||
@ -1046,7 +1046,7 @@ function(export_executable_symbols target)
|
||||
set(mangling itanium)
|
||||
endif()
|
||||
add_custom_command(OUTPUT ${exported_symbol_file}
|
||||
COMMAND "${Python3_EXECUTABLE}" ${LLVM_MAIN_SRC_DIR}/utils/extract_symbols.py --mangling=${mangling} ${static_libs} -o ${exported_symbol_file}
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${LLVM_MAIN_SRC_DIR}/utils/extract_symbols.py --mangling=${mangling} ${static_libs} -o ${exported_symbol_file}
|
||||
WORKING_DIRECTORY ${LLVM_LIBRARY_OUTPUT_INTDIR}
|
||||
DEPENDS ${LLVM_MAIN_SRC_DIR}/utils/extract_symbols.py ${static_libs}
|
||||
VERBATIM
|
||||
@ -1447,7 +1447,7 @@ function(make_paths_relative out_pathlist basedir pathlist)
|
||||
# empty list entries. So escape the ;s in the list and do the splitting
|
||||
# ourselves. cmake has no relpath function, so use Python for that.
|
||||
string(REPLACE ";" "\\;" pathlist_escaped "${pathlist}")
|
||||
execute_process(COMMAND "${Python3_EXECUTABLE}" "-c" "\n
|
||||
execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "\n
|
||||
import os, sys\n
|
||||
base = sys.argv[1]
|
||||
def haslink(p):\n
|
||||
@ -1522,6 +1522,7 @@ function(configure_lit_site_cfg site_in site_out)
|
||||
# SHLIBDIR points the build tree.
|
||||
string(REPLACE "${CMAKE_CFG_INTDIR}" "${LLVM_BUILD_MODE}" SHLIBDIR "${LLVM_SHLIB_OUTPUT_INTDIR}")
|
||||
|
||||
set(PYTHON_EXECUTABLE ${PYTHON_EXECUTABLE})
|
||||
# FIXME: "ENABLE_SHARED" doesn't make sense, since it is used just for
|
||||
# plugins. We may rename it.
|
||||
if(LLVM_ENABLE_PLUGINS)
|
||||
@ -1679,7 +1680,7 @@ function(add_lit_target target comment)
|
||||
ALLOW_EXTERNAL
|
||||
)
|
||||
|
||||
set(LIT_COMMAND "${Python3_EXECUTABLE};${lit_base_dir}/${lit_file_name}")
|
||||
set(LIT_COMMAND "${PYTHON_EXECUTABLE};${lit_base_dir}/${lit_file_name}")
|
||||
list(APPEND LIT_COMMAND ${LIT_ARGS})
|
||||
foreach(param ${ARG_PARAMS})
|
||||
list(APPEND LIT_COMMAND --param ${param})
|
||||
|
@ -12,7 +12,7 @@ config.llvm_shlib_dir = path(r"@SHLIBDIR@")
|
||||
config.llvm_shlib_ext = "@SHLIBEXT@"
|
||||
config.llvm_exe_ext = "@EXEEXT@"
|
||||
config.lit_tools_dir = path(r"@LLVM_LIT_TOOLS_DIR@")
|
||||
config.python_executable = "@Python3_EXECUTABLE@"
|
||||
config.python_executable = "@PYTHON_EXECUTABLE@"
|
||||
config.gold_executable = "@GOLD_EXECUTABLE@"
|
||||
config.ld64_executable = "@LD64_EXECUTABLE@"
|
||||
config.ocamlfind_executable = "@OCAMLFIND@"
|
||||
|
@ -164,7 +164,7 @@ if(LLVM_BUILD_LLVM_C_DYLIB AND MSVC)
|
||||
endif()
|
||||
|
||||
add_custom_command(OUTPUT ${LLVM_EXPORTED_SYMBOL_FILE}
|
||||
COMMAND "${Python3_EXECUTABLE}" ${GEN_SCRIPT} --libsfile ${LIBSFILE} ${GEN_UNDERSCORE} --nm "${llvm_nm}" -o ${LLVM_EXPORTED_SYMBOL_FILE}
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${GEN_SCRIPT} --libsfile ${LIBSFILE} ${GEN_UNDERSCORE} --nm "${llvm_nm}" -o ${LLVM_EXPORTED_SYMBOL_FILE}
|
||||
DEPENDS ${LIB_NAMES} ${llvm_nm_target}
|
||||
COMMENT "Generating export list for LLVM-C"
|
||||
VERBATIM )
|
||||
|
Loading…
Reference in New Issue
Block a user