llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-lldb Author: David Spickett (DavidSpickett) <details> <summary>Changes</summary> Fixes #<!-- -->199035 lldb-server's platform mode works on Apple platforms but the gdbserver mode does not. Users should use debugserver instead, and platform mode knows to spawn debugserver instead of lldb-server. I'm adding an error to state this, because until now it would maybe appear to work, or crash in strange ways. None of which can be fixed by a user and are a waste of our time dealing with the bug reports. --- Full diff: https://github.com/llvm/llvm-project/pull/199654.diff 3 Files Affected: - (added) lldb/test/Shell/lldb-server/TestGdbserverErrorDarwin.test (+4) - (modified) lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test (+3) - (modified) lldb/tools/lldb-server/lldb-server.cpp (+6) ``````````diff diff --git a/lldb/test/Shell/lldb-server/TestGdbserverErrorDarwin.test b/lldb/test/Shell/lldb-server/TestGdbserverErrorDarwin.test new file mode 100644 index 0000000000000..534927148bc56 --- /dev/null +++ b/lldb/test/Shell/lldb-server/TestGdbserverErrorDarwin.test @@ -0,0 +1,4 @@ +REQUIRES: system-darwin + +RUN: not %lldb-server gdbserver 2>&1 | FileCheck %s +CHECK: gdbserver mode is not supported on Apple platforms. Use debugserver instead. diff --git a/lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test b/lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test index c7e0c5cbac6dd..d0bcbcfb2eb37 100644 --- a/lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test +++ b/lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test @@ -1,3 +1,6 @@ +# gdbserver mode is not supported on Apple platforms. +UNSUPPORTED: system-darwin + RUN: not %lldb-server gdbserver --fd 2>&1 | FileCheck --check-prefixes=FD1,ALL %s FD1: error: --fd: missing argument diff --git a/lldb/tools/lldb-server/lldb-server.cpp b/lldb/tools/lldb-server/lldb-server.cpp index 62255c708eac0..992dfed1e60ec 100644 --- a/lldb/tools/lldb-server/lldb-server.cpp +++ b/lldb/tools/lldb-server/lldb-server.cpp @@ -61,9 +61,15 @@ int main(int argc, char *argv[]) { switch (argv[1][0]) { case 'g': { +#if defined(__APPLE__) + fprintf(stderr, "gdbserver mode is not supported on Apple platforms. " + "Use debugserver instead.\n"); + return EXIT_FAILURE; +#else llgs::Initialize(); auto terminate = llvm::scope_exit([]() { llgs::Terminate(); }); return main_gdbserver(argc, argv); +#endif } case 'p': { llgs::Initialize(); `````````` </details> https://github.com/llvm/llvm-project/pull/199654 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
