[Lldb-commits] [PATCH] D36620: Fix crash on parsing gdb remote packets

2017-08-21 Thread Greg Clayton via Phabricator via lldb-commits
clayborg added a comment.

We need a test for this to ensure we don't regress.


https://reviews.llvm.org/D36620



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r311354 - [cmake] Explicitly link dependency libraries in the Host library

2017-08-21 Thread Michal Gorny via lldb-commits
Author: mgorny
Date: Mon Aug 21 10:41:33 2017
New Revision: 311354

URL: http://llvm.org/viewvc/llvm-project?rev=311354&view=rev
Log:
[cmake] Explicitly link dependency libraries in the Host library

Add explicit linkage to the necessary system libraries in the Host
library. Otherwise, the library fails to build with -Wl,--as-needed.
The system libraries ended up being listed on the linker command-line
before the static libraries needing them, resulting in --as-needed
stripping them.

Listing the dependent libraries explicitly is the canonical way of
declaring libraries in CMake. It guarantees that the system library
dependencies will be correctly propagated to reverse dependencies.

The code used to link libraries reuses existing EXTRA_LIBS variable,
copying code from other parts of LLDB. We might eventually remove
the direct use of system libraries in the programs; however, I would
prefer if we focused on fixing the build regressions in 5.0 branch
first, and went further after the release.

Differential Revision: https://reviews.llvm.org/D36885

Modified:
lldb/trunk/source/Host/CMakeLists.txt

Modified: lldb/trunk/source/Host/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Host/CMakeLists.txt?rev=311354&r1=311353&r2=311354&view=diff
==
--- lldb/trunk/source/Host/CMakeLists.txt (original)
+++ lldb/trunk/source/Host/CMakeLists.txt Mon Aug 21 10:41:33 2017
@@ -156,9 +156,23 @@ if (${get_python_libdir})
   endif()
 endif()
 
+set(EXTRA_LIBS)
 if (CMAKE_SYSTEM_NAME MATCHES "NetBSD")
- set(EXTRA_LIBS kvm)
+  list(APPEND EXTRA_LIBS kvm)
 endif ()
+if (APPLE)
+  list(APPEND EXTRA_LIBS xml2)
+else ()
+  if (LIBXML2_FOUND)
+list(APPEND EXTRA_LIBS ${LIBXML2_LIBRARIES})
+  endif()
+endif ()
+if (HAVE_LIBDL)
+  list(APPEND EXTRA_LIBS ${CMAKE_DL_LIBS})
+endif()
+if (NOT LLDB_DISABLE_LIBEDIT)
+  list(APPEND EXTRA_LIBS edit)
+endif()
 
 add_lldb_library(lldbHost
   ${HOST_SOURCES}


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [lldb] r311355 - [unittests] Build LLVMTestingSupport for out-of-source builds

2017-08-21 Thread Michal Gorny via lldb-commits
Author: mgorny
Date: Mon Aug 21 10:41:39 2017
New Revision: 311355

URL: http://llvm.org/viewvc/llvm-project?rev=311355&view=rev
Log:
[unittests] Build LLVMTestingSupport for out-of-source builds

The Process/gdb-remote test now requires the LLVMTestingSupport library
that is not installed by LLVM. As a result, when doing an out-of-source
build it fails being unable to find the library. To solve that, build
a local copy of the library when building LLDB with unittests and LLVM
sources available. This is based on how we deal with bundled gtest
sources.

Differential Revision: https://reviews.llvm.org/D36886

Modified:
lldb/trunk/unittests/CMakeLists.txt

Modified: lldb/trunk/unittests/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/CMakeLists.txt?rev=311355&r1=311354&r2=311355&view=diff
==
--- lldb/trunk/unittests/CMakeLists.txt (original)
+++ lldb/trunk/unittests/CMakeLists.txt Mon Aug 21 10:41:39 2017
@@ -19,6 +19,12 @@ if (LLDB_BUILT_STANDALONE)
   if (EXISTS ${LLVM_MAIN_SRC_DIR}/utils/unittest AND NOT TARGET gtest)
 add_subdirectory(${LLVM_MAIN_SRC_DIR}/utils/unittest utils/unittest)
   endif()
+  # LLVMTestingSupport library is needed for Process/gdb-remote.
+  if (EXISTS ${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
+  AND NOT TARGET LLVMTestingSupport)
+add_subdirectory(${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
+  lib/Testing/Support)
+  endif()
 endif()
 
 function(add_lldb_unittest test_name)


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D36885: [cmake] Explicitly link dependency libraries in the Host library

2017-08-21 Thread Michał Górny via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL311354: [cmake] Explicitly link dependency libraries in the 
Host library (authored by mgorny).

Changed prior to commit:
  https://reviews.llvm.org/D36885?vs=111708&id=112016#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D36885

Files:
  lldb/trunk/source/Host/CMakeLists.txt


Index: lldb/trunk/source/Host/CMakeLists.txt
===
--- lldb/trunk/source/Host/CMakeLists.txt
+++ lldb/trunk/source/Host/CMakeLists.txt
@@ -156,9 +156,23 @@
   endif()
 endif()
 
+set(EXTRA_LIBS)
 if (CMAKE_SYSTEM_NAME MATCHES "NetBSD")
- set(EXTRA_LIBS kvm)
+  list(APPEND EXTRA_LIBS kvm)
 endif ()
+if (APPLE)
+  list(APPEND EXTRA_LIBS xml2)
+else ()
+  if (LIBXML2_FOUND)
+list(APPEND EXTRA_LIBS ${LIBXML2_LIBRARIES})
+  endif()
+endif ()
+if (HAVE_LIBDL)
+  list(APPEND EXTRA_LIBS ${CMAKE_DL_LIBS})
+endif()
+if (NOT LLDB_DISABLE_LIBEDIT)
+  list(APPEND EXTRA_LIBS edit)
+endif()
 
 add_lldb_library(lldbHost
   ${HOST_SOURCES}


Index: lldb/trunk/source/Host/CMakeLists.txt
===
--- lldb/trunk/source/Host/CMakeLists.txt
+++ lldb/trunk/source/Host/CMakeLists.txt
@@ -156,9 +156,23 @@
   endif()
 endif()
 
+set(EXTRA_LIBS)
 if (CMAKE_SYSTEM_NAME MATCHES "NetBSD")
- set(EXTRA_LIBS kvm)
+  list(APPEND EXTRA_LIBS kvm)
 endif ()
+if (APPLE)
+  list(APPEND EXTRA_LIBS xml2)
+else ()
+  if (LIBXML2_FOUND)
+list(APPEND EXTRA_LIBS ${LIBXML2_LIBRARIES})
+  endif()
+endif ()
+if (HAVE_LIBDL)
+  list(APPEND EXTRA_LIBS ${CMAKE_DL_LIBS})
+endif()
+if (NOT LLDB_DISABLE_LIBEDIT)
+  list(APPEND EXTRA_LIBS edit)
+endif()
 
 add_lldb_library(lldbHost
   ${HOST_SOURCES}
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D36886: [unittests] Build LLVMTestingSupport for out-of-source builds

2017-08-21 Thread Michał Górny via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL311355: [unittests] Build LLVMTestingSupport for 
out-of-source builds (authored by mgorny).

Changed prior to commit:
  https://reviews.llvm.org/D36886?vs=111710&id=112017#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D36886

Files:
  lldb/trunk/unittests/CMakeLists.txt


Index: lldb/trunk/unittests/CMakeLists.txt
===
--- lldb/trunk/unittests/CMakeLists.txt
+++ lldb/trunk/unittests/CMakeLists.txt
@@ -19,6 +19,12 @@
   if (EXISTS ${LLVM_MAIN_SRC_DIR}/utils/unittest AND NOT TARGET gtest)
 add_subdirectory(${LLVM_MAIN_SRC_DIR}/utils/unittest utils/unittest)
   endif()
+  # LLVMTestingSupport library is needed for Process/gdb-remote.
+  if (EXISTS ${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
+  AND NOT TARGET LLVMTestingSupport)
+add_subdirectory(${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
+  lib/Testing/Support)
+  endif()
 endif()
 
 function(add_lldb_unittest test_name)


Index: lldb/trunk/unittests/CMakeLists.txt
===
--- lldb/trunk/unittests/CMakeLists.txt
+++ lldb/trunk/unittests/CMakeLists.txt
@@ -19,6 +19,12 @@
   if (EXISTS ${LLVM_MAIN_SRC_DIR}/utils/unittest AND NOT TARGET gtest)
 add_subdirectory(${LLVM_MAIN_SRC_DIR}/utils/unittest utils/unittest)
   endif()
+  # LLVMTestingSupport library is needed for Process/gdb-remote.
+  if (EXISTS ${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
+  AND NOT TARGET LLVMTestingSupport)
+add_subdirectory(${LLVM_MAIN_SRC_DIR}/lib/Testing/Support
+  lib/Testing/Support)
+  endif()
 endif()
 
 function(add_lldb_unittest test_name)
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D36977: Add 'break' into GDBRemoteClientBase::SendContinuePacketAndWaitForResponse to fix a warning

2017-08-21 Thread Kuba (Brecka) Mracek via Phabricator via lldb-commits
kubamracek created this revision.

Currently, clang complains here about an non-annotated fall-through.


Repository:
  rL LLVM

https://reviews.llvm.org/D36977

Files:
  source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp


Index: source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
===
--- source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
+++ source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
@@ -60,6 +60,7 @@
 continue;
   if (steady_clock::now() >= m_interrupt_time + kInterruptTimeout)
 return eStateInvalid;
+  break;
 }
 case PacketResult::Success:
   break;


Index: source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
===
--- source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
+++ source/Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp
@@ -60,6 +60,7 @@
 continue;
   if (steady_clock::now() >= m_interrupt_time + kInterruptTimeout)
 return eStateInvalid;
+  break;
 }
 case PacketResult::Success:
   break;
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D36598: cmake + xcode: prevent gtests from using includes from project root

2017-08-21 Thread Tim Hammerquist via Phabricator via lldb-commits
penryu updated this revision to Diff 112052.
penryu added a comment.

This patch limits the above include dir to unittests/, and renamed some headers 
to reduce ambiguity about their purpose, as suggested by beanz.


https://reviews.llvm.org/D36598

Files:
  lldb.xcodeproj/project.pbxproj
  unittests/CMakeLists.txt
  unittests/Interpreter/TestCompletion.cpp
  unittests/ObjectFile/ELF/TestObjectFileELF.cpp
  unittests/Process/minidump/MinidumpParserTest.cpp
  unittests/Symbol/TestDWARFCallFrameInfo.cpp
  unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp
  unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp
  unittests/Target/ModuleCacheTest.cpp
  unittests/TestingSupport/CMakeLists.txt
  unittests/TestingSupport/MockTildeExpressionResolver.cpp
  unittests/TestingSupport/MockTildeExpressionResolver.h
  unittests/TestingSupport/TestUtilities.cpp
  unittests/TestingSupport/TestUtilities.h
  unittests/Utility/CMakeLists.txt
  unittests/Utility/Helpers/CMakeLists.txt
  unittests/Utility/Helpers/MockTildeExpressionResolver.cpp
  unittests/Utility/Helpers/MockTildeExpressionResolver.h
  unittests/Utility/Helpers/TestUtilities.cpp
  unittests/Utility/Helpers/TestUtilities.h
  unittests/Utility/StructuredDataTest.cpp
  unittests/Utility/TildeExpressionResolverTest.cpp

Index: unittests/Utility/TildeExpressionResolverTest.cpp
===
--- unittests/Utility/TildeExpressionResolverTest.cpp
+++ unittests/Utility/TildeExpressionResolverTest.cpp
@@ -1,6 +1,6 @@
 #include "gtest/gtest.h"
 
-#include "Helpers/MockTildeExpressionResolver.h"
+#include "TestingSupport/MockTildeExpressionResolver.h"
 #include "lldb/Utility/TildeExpressionResolver.h"
 
 #include "llvm/ADT/SmallString.h"
Index: unittests/Utility/StructuredDataTest.cpp
===
--- unittests/Utility/StructuredDataTest.cpp
+++ unittests/Utility/StructuredDataTest.cpp
@@ -9,7 +9,7 @@
 
 #include "gtest/gtest.h"
 
-#include "Helpers/TestUtilities.h"
+#include "TestingSupport/TestUtilities.h"
 #include "lldb/Utility/Status.h"
 #include "lldb/Utility/StreamString.h"
 #include "lldb/Utility/StructuredData.h"
Index: unittests/Utility/CMakeLists.txt
===
--- unittests/Utility/CMakeLists.txt
+++ unittests/Utility/CMakeLists.txt
@@ -1,5 +1,3 @@
-add_subdirectory(Helpers)
-
 add_lldb_unittest(UtilityTests
   ConstStringTest.cpp
   LogTest.cpp
Index: unittests/Target/ModuleCacheTest.cpp
===
--- unittests/Target/ModuleCacheTest.cpp
+++ unittests/Target/ModuleCacheTest.cpp
@@ -10,7 +10,7 @@
 #include "lldb/Host/HostInfo.h"
 #include "lldb/Symbol/SymbolContext.h"
 #include "lldb/Target/ModuleCache.h"
-#include "unittests/Utility/Helpers/TestUtilities.h"
+#include "TestingSupport/TestUtilities.h"
 
 using namespace lldb_private;
 using namespace lldb;
Index: unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp
===
--- unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp
+++ unittests/SymbolFile/PDB/SymbolFilePDBTests.cpp
@@ -28,7 +28,7 @@
 #include "lldb/Symbol/LineTable.h"
 #include "lldb/Symbol/SymbolVendor.h"
 #include "lldb/Utility/FileSpec.h"
-#include "unittests/Utility/Helpers/TestUtilities.h"
+#include "TestingSupport/TestUtilities.h"
 
 #if defined(_MSC_VER)
 #include "lldb/Host/windows/windows.h"
Index: unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp
===
--- unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp
+++ unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp
@@ -28,7 +28,7 @@
 #include "lldb/Symbol/LineTable.h"
 #include "lldb/Symbol/SymbolVendor.h"
 #include "lldb/Utility/FileSpec.h"
-#include "unittests/Utility/Helpers/TestUtilities.h"
+#include "TestingSupport/TestUtilities.h"
 
 using namespace lldb_private;
 
Index: unittests/Symbol/TestDWARFCallFrameInfo.cpp
===
--- unittests/Symbol/TestDWARFCallFrameInfo.cpp
+++ unittests/Symbol/TestDWARFCallFrameInfo.cpp
@@ -16,7 +16,7 @@
 #include "lldb/Host/HostInfo.h"
 #include "lldb/Symbol/DWARFCallFrameInfo.h"
 #include "lldb/Utility/StreamString.h"
-#include "unittests/Utility/Helpers/TestUtilities.h"
+#include "TestingSupport/TestUtilities.h"
 #include "llvm/Support/FileUtilities.h"
 #include "llvm/Support/Path.h"
 #include "llvm/Support/Program.h"
Index: unittests/Process/minidump/MinidumpParserTest.cpp
===
--- unittests/Process/minidump/MinidumpParserTest.cpp
+++ unittests/Process/minidump/MinidumpParserTest.cpp
@@ -23,7 +23,7 @@
 #include "lldb/Utility/DataBufferLLVM.h"
 #include "lldb/Utility/DataExtractor.h"
 #include "lldb/Utility/FileSpec.h"
-#include "unittests/Utility/Helpers/TestUtilities.h"
+#include "TestingSupport/TestU

[Lldb-commits] [lldb] r311399 - lldb-argdumper doesn't need lldbCore.

2017-08-21 Thread Bruce Mitchener via lldb-commits
Author: brucem
Date: Mon Aug 21 15:54:49 2017
New Revision: 311399

URL: http://llvm.org/viewvc/llvm-project?rev=311399&view=rev
Log:
lldb-argdumper doesn't need lldbCore.

Summary: lldb-argdumper only needs lldbUtility to successfully build and link.

Reviewers: beanz, zturner, labath

Subscribers: mgorny, lldb-commits

Differential Revision: https://reviews.llvm.org/D36948

Modified:
lldb/trunk/tools/argdumper/CMakeLists.txt

Modified: lldb/trunk/tools/argdumper/CMakeLists.txt
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/argdumper/CMakeLists.txt?rev=311399&r1=311398&r2=311399&view=diff
==
--- lldb/trunk/tools/argdumper/CMakeLists.txt (original)
+++ lldb/trunk/tools/argdumper/CMakeLists.txt Mon Aug 21 15:54:49 2017
@@ -4,7 +4,6 @@ add_lldb_tool(lldb-argdumper INCLUDE_IN_
   argdumper.cpp
 
   LINK_LIBS
-lldbCore
 lldbUtility
   )
 


___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D36948: lldb-argdumper doesn't need lldbCore.

2017-08-21 Thread Bruce Mitchener via Phabricator via lldb-commits
This revision was automatically updated to reflect the committed changes.
Closed by commit rL311399: lldb-argdumper doesn't need lldbCore. (authored by 
brucem).

Repository:
  rL LLVM

https://reviews.llvm.org/D36948

Files:
  lldb/trunk/tools/argdumper/CMakeLists.txt


Index: lldb/trunk/tools/argdumper/CMakeLists.txt
===
--- lldb/trunk/tools/argdumper/CMakeLists.txt
+++ lldb/trunk/tools/argdumper/CMakeLists.txt
@@ -4,7 +4,6 @@
   argdumper.cpp
 
   LINK_LIBS
-lldbCore
 lldbUtility
   )
 


Index: lldb/trunk/tools/argdumper/CMakeLists.txt
===
--- lldb/trunk/tools/argdumper/CMakeLists.txt
+++ lldb/trunk/tools/argdumper/CMakeLists.txt
@@ -4,7 +4,6 @@
   argdumper.cpp
 
   LINK_LIBS
-lldbCore
 lldbUtility
   )
 
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits