[Lldb-commits] [lldb] r284041 - Fix lookup path for lldb-mi
Chris Bieneman via lldb-commits
lldb-commits at lists.llvm.org
Wed Oct 12 13:15:46 PDT 2016
Author: cbieneman
Date: Wed Oct 12 15:15:46 2016
New Revision: 284041
URL: http://llvm.org/viewvc/llvm-project?rev=284041&view=rev
Log:
Fix lookup path for lldb-mi
Summary:
The test suite calls realpath on the lldb executable then append "-mi" to it to find the path of the lldb-mi executable. This does not work when using CMake builds on *nix platforms. On *nix platforms when a version number is set on executables CMake generates the binary as ${name}-${version} with a symlink named ${name} pointing to it.
This results in the lldb executable being named lldb-4.0.0, and since lldb-4.0.0-mi doesn't ever match the lldb-mi executable these tests are always disabled.
This patch looks for lldb-mi in the same directory as lldb.
Reviewers: zturner, tfiala
Subscribers: ki.stfu, enlight, lldb-commits
Differential Revision: https://reviews.llvm.org/D25486
Modified:
lldb/trunk/packages/Python/lldbsuite/test/dotest.py
Modified: lldb/trunk/packages/Python/lldbsuite/test/dotest.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/dotest.py?rev=284041&r1=284040&r2=284041&view=diff
==============================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/dotest.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/dotest.py Wed Oct 12 15:15:46 2016
@@ -673,16 +673,17 @@ def setupSysPath():
# Assume lldb-mi is in same place as lldb
# If not found, disable the lldb-mi tests
- lldbMiExec = None
- if lldbtest_config.lldbExec and is_exe(lldbtest_config.lldbExec + "-mi"):
- lldbMiExec = lldbtest_config.lldbExec + "-mi"
- if not lldbMiExec:
+ # TODO: Append .exe on Windows
+ # - this will be in a separate commit in case the mi tests fail horribly
+ lldbDir = os.path.dirname(lldbtest_config.lldbExec)
+ lldbMiExec = os.path.join(lldbDir, "lldb-mi")
+ if is_exe(lldbMiExec):
+ os.environ["LLDBMI_EXEC"] = lldbMiExec
+ else:
if not configuration.shouldSkipBecauseOfCategories(["lldb-mi"]):
print(
"The 'lldb-mi' executable cannot be located. The lldb-mi tests can not be run as a result.")
configuration.skipCategories.append("lldb-mi")
- else:
- os.environ["LLDBMI_EXEC"] = lldbMiExec
lldbPythonDir = None # The directory that contains 'lldb/__init__.py'
if configuration.lldbFrameworkPath:
More information about the lldb-commits
mailing list