This will ease llgs development a bit by not requiring an lldb/lldb.py build to launch the tests. Also, we can now use LLDB_DEBUGSERVER_PATH to point to a debug server to use to run the tests. I used that to point to a ds2 build and run llgs tests against ds2.
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
test/dotest.py | ||
---|---|---|
950 ↗ | (On Diff #17000) | Whats the point of running tests if they are going to fail since you don't have the necessary dependencies? |
1102 ↗ | (On Diff #17000) | Not your change, but this is equivalent to: if frameWithVersion: lldbPath = before + "LLDB.framework" + after |
test/tools/lldb-gdbserver/lldbgdbserverutils.py | ||
60 ↗ | (On Diff #17000) | Might be nice to do a check similar to the one below to ensure that the DebugServer is present. |
66 ↗ | (On Diff #17000) | This might be simpler to read: for var in ("LLDB_DEBUGSERVER_PATH", "LLDB_EXEC"): if os.environ.get(var, None): return _get_debug_monitor_from_lldb(os.environ[var], "lldb-gdbserver") return None |
86 ↗ | (On Diff #17000) | Similar to above. This might be simpler to read: for var in ("LLDB_DEBUGSERVER_PATH", "LLDB_EXEC"): if os.environ.get(var, None): return _get_debug_monitor_from_lldb(os.environ[var], "debugserver") return None |
87 ↗ | (On Diff #17000) | In fact, I think you can probably collapse both of these functions into a single one that takes a second parameter which is the debug monitor name and pass that along to the _get_debug_monitor_from_lldb. |
Thanks for the review Saleem. See comments inline.
test/dotest.py | ||
---|---|---|
950 ↗ | (On Diff #17000) | Because you can run other tests (not lldb) with this tool. Only the lldb tests will fail if you choose to run them. |
test/tools/lldb-gdbserver/lldbgdbserverutils.py | ||
60 ↗ | (On Diff #17000) | The existence of the debug server is checked elsewhere in the test suite (in lldbgdbserverutils.py). |
66 ↗ | (On Diff #17000) | Not really, because when the user specifies LLDB_DEBUGSERVER_PATH, we don't want to go through _gert_debug_monitor_from_lldb again, we just want to use the path directly. |
86 ↗ | (On Diff #17000) | Ditto. |
test/dotest.py | ||
---|---|---|
950 ↗ | (On Diff #17000) | lldb-mi and llgs for instance. |
test/tools/lldb-gdbserver/lldbgdbserverutils.py | ||
66 ↗ | (On Diff #17000) | The function name is pretty explicit: _get_debug_monitor_from_lldb gets the debug monitor path by using the lldb path provided. If the user already specified a path to a debug monitor, why would we go through a function that tries to apply intelligence to guess it? |