mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-25 00:26:06 +00:00
[lit] Set __COMPAT_LAYER=RunAsInvoker when running tests on Windows
Windows heuristics try to detect old installer programs and run them as elevated. These heuristics include checking for certain substrings in file names, e.g. "patch", "update", "setup". When lit tries to run affected executables, it produces "[WinError 740] The requested operation requires elevation" instead. Several tests have been affected by this issue (see https://reviews.llvm.org/D137772, https://reviews.llvm.org/D148988, https://reviews.llvm.org/D149004). We should set this environment variable to disable this heuristic once and for all, instead of setting it in inidividual test suites. There should be no lit tests that legitimately want to run as elevated. Differential Revision: https://reviews.llvm.org/D149064
This commit is contained in:
parent
61be935896
commit
f1431bbfb1
@ -75,6 +75,14 @@ class TestingConfig(object):
|
||||
'USERPROFILE',
|
||||
]
|
||||
environment['PYTHONBUFFERED'] = '1'
|
||||
# Avoid Windows heuristics which try to detect potential installer
|
||||
# programs (which may need to run with elevated privileges) and ask
|
||||
# if the user wants to run them in that way. This heuristic may
|
||||
# match for executables containing the substrings "patch" (which is
|
||||
# a substring of "dispatch"), "update", "setup", etc. Set this
|
||||
# environment variable indicating that we want to execute them with
|
||||
# the current user.
|
||||
environment['__COMPAT_LAYER'] = 'RunAsInvoker'
|
||||
|
||||
for var in pass_vars:
|
||||
val = os.environ.get(var, '')
|
||||
|
Loading…
x
Reference in New Issue
Block a user