[llvm] r350536 - [lit] Respect PYTHONPATH
David Greene via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 7 08:24:37 PST 2019
Author: greened
Date: Mon Jan 7 08:24:37 2019
New Revision: 350536
URL: http://llvm.org/viewvc/llvm-project?rev=350536&view=rev
Log:
[lit] Respect PYTHONPATH
If a user has PYTHONPATH set in the environment, append new entries to
it rather than blindly setting PYTHONPATH to a fixed string. This
allows tests to, for example, find psutil if it is in
PYTHONPATH. Without this change, lit will detect psutil but then
various tests will fail because PYTHONPATH has been overwritten and
psutil cannot be found.
Modified:
llvm/trunk/utils/lit/tests/Inputs/shtest-timeout/lit.cfg
llvm/trunk/utils/lit/tests/lit.cfg
Modified: llvm/trunk/utils/lit/tests/Inputs/shtest-timeout/lit.cfg
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/Inputs/shtest-timeout/lit.cfg?rev=350536&r1=350535&r2=350536&view=diff
==============================================================================
--- llvm/trunk/utils/lit/tests/Inputs/shtest-timeout/lit.cfg (original)
+++ llvm/trunk/utils/lit/tests/Inputs/shtest-timeout/lit.cfg Mon Jan 7 08:24:37 2019
@@ -28,5 +28,13 @@ config.test_source_root = os.path.dirnam
config.test_exec_root = config.test_source_root
config.target_triple = '(unused)'
src_root = os.path.join(config.test_source_root, '..')
-config.environment['PYTHONPATH'] = src_root
+
+pythonpath_list = [src_root]
+# Ensure the user's PYTHONPATH is included.
+if 'PYTHONPATH' in os.environ:
+ pythonpath_list.append(os.environ['PYTHONPATH'])
+if 'PYTHONPATH' in config.environment:
+ pythonpath_list.append(config.environment['PYTHONPATH'])
+config.environment['PYTHONPATH'] = os.pathsep.join(pythonpath_list)
+
config.substitutions.append(('%{python}', '"%s"' % (sys.executable)))
Modified: llvm/trunk/utils/lit/tests/lit.cfg
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/lit.cfg?rev=350536&r1=350535&r2=350536&view=diff
==============================================================================
--- llvm/trunk/utils/lit/tests/lit.cfg (original)
+++ llvm/trunk/utils/lit/tests/lit.cfg Mon Jan 7 08:24:37 2019
@@ -34,7 +34,15 @@ if llvm_src_root != None:
else:
lit_path = src_root
-config.environment['PYTHONPATH'] = lit_path # Required because some tests import the lit module
+pythonpath_list = [lit_path] # Required because some tests import the lit module
+
+# Ensure the user's PYTHONPATH is included.
+if 'PYTHONPATH' in os.environ:
+ pythonpath_list.append(os.environ['PYTHONPATH'])
+if 'PYTHONPATH' in config.environment:
+ pythonpath_list.append(config.environment['PYTHONPATH'])
+config.environment['PYTHONPATH'] = os.pathsep.join(pythonpath_list)
+
config.substitutions.append(('%{src_root}', src_root))
config.substitutions.append(('%{inputs}', os.path.join(
src_root, 'tests', 'Inputs')))
More information about the llvm-commits
mailing list