mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-14 07:31:53 +00:00
[CMake] Detecting python modules should be cached
Summary: This requres exec-ing python, which in a trace I ran of the CMake re-configure time took ~2% of the reconfigure time. Reviewers: phosek, smeenai, compnerd Subscribers: mgorny, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61402 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@360196 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
7fdae47df1
commit
83eff7af92
@ -606,16 +606,19 @@ function(find_python_module module)
|
|||||||
string(REPLACE "." "_" module_name ${module})
|
string(REPLACE "." "_" module_name ${module})
|
||||||
string(TOUPPER ${module_name} module_upper)
|
string(TOUPPER ${module_name} module_upper)
|
||||||
set(FOUND_VAR PY_${module_upper}_FOUND)
|
set(FOUND_VAR PY_${module_upper}_FOUND)
|
||||||
|
if (DEFINED ${FOUND_VAR})
|
||||||
|
return()
|
||||||
|
endif()
|
||||||
|
|
||||||
execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "import ${module}"
|
execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" "import ${module}"
|
||||||
RESULT_VARIABLE status
|
RESULT_VARIABLE status
|
||||||
ERROR_QUIET)
|
ERROR_QUIET)
|
||||||
|
|
||||||
if(status)
|
if(status)
|
||||||
set(${FOUND_VAR} 0 PARENT_SCOPE)
|
set(${FOUND_VAR} OFF CACHE BOOL "Failed to find python module '${module}'")
|
||||||
message(STATUS "Could NOT find Python module ${module}")
|
message(STATUS "Could NOT find Python module ${module}")
|
||||||
else()
|
else()
|
||||||
set(${FOUND_VAR} 1 PARENT_SCOPE)
|
set(${FOUND_VAR} ON CACHE BOOL "Found python module '${module}'")
|
||||||
message(STATUS "Found Python module ${module}")
|
message(STATUS "Found Python module ${module}")
|
||||||
endif()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
Loading…
Reference in New Issue
Block a user