[lit] Report tool path from use_llvm_tool if found via env variable

Previously, if the search_env argument was specified, and the tool was
found at that location, the path was not reported, unlike other
situations when this function was called. Adding the reporting makes the
function consistent.

Reviewed by: thopre

Differential Revision: https://reviews.llvm.org/D101896
This commit is contained in:
James Henderson 2021-05-05 11:56:46 +01:00
parent ab5932ffbd
commit abe2c906ad
5 changed files with 23 additions and 4 deletions

View File

@ -407,13 +407,13 @@ class LLVMConfig(object):
configuration's PATH."""
# If the override is specified in the environment, use it without
# validation.
tool = None
if search_env:
tool = self.config.environment.get(search_env)
if tool:
return tool
# Otherwise look in the path.
tool = lit.util.which(name, self.config.environment['PATH'])
if not tool:
# Otherwise look in the path.
tool = lit.util.which(name, self.config.environment['PATH'])
if required and not tool:
message = "couldn't find '{}' program".format(name)

View File

@ -0,0 +1,11 @@
import lit.formats
config.name = 'search-env'
config.suffixes = ['.txt']
config.test_format = lit.formats.ShTest()
config.test_source_root = None
config.test_exec_root = None
import lit.llvm
lit.llvm.initialize(lit_config, config)
import os.path
lit.llvm.llvm_config.with_environment('TOOL_LOCATION', os.path.dirname(__file__) + '/test.tool')
lit.llvm.llvm_config.use_llvm_tool('test-tool', search_env='TOOL_LOCATION')

View File

@ -0,0 +1 @@
# RUN: true

View File

@ -0,0 +1,7 @@
## Show that lit reports the path to tools picked up via the use_llvm_tool
## function when the tool is found via an environment variable.
# RUN: %{lit} %{inputs}/use-tool-search-env 2>&1 | \
# RUN: FileCheck %s -DDIR=%p
# CHECK: note: using test-tool: [[DIR]]{{[\\/]}}Inputs{{[\\/]}}use-tool-search-env{{[\\/]}}test.tool