mirror of
https://github.com/intel/llvm.git
synced 2026-01-26 21:53:12 +08:00
When no FileCheck binary is specified, look in the llvm/clang bin
dirs relative to the source directory (Xcode build style) to find one, use it if found. llvm-svn: 345912
This commit is contained in:
@@ -313,6 +313,13 @@ def parseOptionsAndInitTestdirs():
|
||||
# target. However, when invoking dotest.py directly, a valid --filecheck
|
||||
# option needs to be given.
|
||||
configuration.filecheck = os.path.abspath(args.filecheck)
|
||||
else:
|
||||
outputPaths = get_llvm_bin_dirs()
|
||||
for outputPath in outputPaths:
|
||||
candidatePath = os.path.join(outputPath, 'FileCheck')
|
||||
if is_exe(candidatePath):
|
||||
configuration.filecheck = candidatePath
|
||||
break
|
||||
|
||||
if not configuration.get_filecheck_path():
|
||||
logging.warning('No valid FileCheck executable; some tests may fail...')
|
||||
@@ -627,6 +634,31 @@ def getOutputPaths(lldbRootDirectory):
|
||||
|
||||
return result
|
||||
|
||||
def get_llvm_bin_dirs():
|
||||
"""
|
||||
Returns an array of paths that may have the llvm/clang/etc binaries
|
||||
in them, relative to this current file.
|
||||
Returns an empty array if none are found.
|
||||
"""
|
||||
result = []
|
||||
|
||||
lldb_root_path = os.path.join(
|
||||
os.path.dirname(__file__), "..", "..", "..", "..")
|
||||
paths_to_try = [
|
||||
"llvm-build/Release+Asserts/x86_64/bin",
|
||||
"llvm-build/Debug+Asserts/x86_64/bin",
|
||||
"llvm-build/Release/x86_64/bin",
|
||||
"llvm-build/Debug/x86_64/bin",
|
||||
"llvm-build/Ninja-DebugAssert/llvm-macosx-x86_64/bin",
|
||||
"llvm-build/Ninja-ReleaseAssert/llvm-macosx-x86_64/bin",
|
||||
"llvm-build/Ninja-RelWithDebInfoAssert/llvm-macosx-x86_64/bin",
|
||||
]
|
||||
for p in paths_to_try:
|
||||
path = os.path.join(lldb_root_path, p)
|
||||
if os.path.exists(path):
|
||||
result.append(path)
|
||||
|
||||
return result
|
||||
|
||||
def setupSysPath():
|
||||
"""
|
||||
|
||||
Reference in New Issue
Block a user