[Lldb-commits] [PATCH] D62472: [CMake] LLDB.framework tools handling

2019-05-26 Thread Stefan Gränitz via Phabricator via lldb-commits
sgraenitz created this revision.
sgraenitz added reviewers: xiaobai, compnerd, JDevlieghere.
Herald added subscribers: mgorny, ki.stfu.
Herald added a project: LLDB.

Modify the way LLDB.framework tools are collected. This allows for better 
fine-tuning of the install behavior downstream. Each target calls 
`lldb_add_to_framework()` individually. When entering the function, the target 
exists and we can tweak its very own post-build and install steps. This was not 
possible with the old `LLDB_FRAMEWORK_TOOLS` approach.

No function change otherwise.
This is a reduced follow-up from the proposal in D61952 
.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D62472

Files:
  lldb/CMakeLists.txt
  lldb/cmake/modules/AddLLDB.cmake
  lldb/cmake/modules/LLDBConfig.cmake
  lldb/cmake/modules/LLDBFramework.cmake
  lldb/tools/argdumper/CMakeLists.txt
  lldb/tools/darwin-debug/CMakeLists.txt
  lldb/tools/debugserver/source/CMakeLists.txt
  lldb/tools/driver/CMakeLists.txt
  lldb/tools/lldb-mi/CMakeLists.txt
  lldb/tools/lldb-server/CMakeLists.txt
  lldb/tools/lldb-vscode/CMakeLists.txt

Index: lldb/tools/lldb-vscode/CMakeLists.txt
===
--- lldb/tools/lldb-vscode/CMakeLists.txt
+++ lldb/tools/lldb-vscode/CMakeLists.txt
@@ -31,5 +31,5 @@
   )
 
 if(LLDB_BUILD_FRAMEWORK)
-  lldb_setup_framework_rpaths_in_tool(lldb-vscode)
+  lldb_add_to_framework(lldb-vscode)
 endif()
Index: lldb/tools/lldb-server/CMakeLists.txt
===
--- lldb/tools/lldb-server/CMakeLists.txt
+++ lldb/tools/lldb-server/CMakeLists.txt
@@ -77,3 +77,7 @@
 )
 
 target_link_libraries(lldb-server PRIVATE ${LLDB_SYSTEM_LIBS})
+
+if(LLDB_BUILD_FRAMEWORK)
+  lldb_add_to_framework(lldb-server)
+endif()
Index: lldb/tools/lldb-mi/CMakeLists.txt
===
--- lldb/tools/lldb-mi/CMakeLists.txt
+++ lldb/tools/lldb-mi/CMakeLists.txt
@@ -95,5 +95,15 @@
   )
 
 if(LLDB_BUILD_FRAMEWORK)
-  lldb_setup_framework_rpaths_in_tool(lldb-mi)
+  # In the build-tree, we know the exact path to the framework directory.
+  # The installed framework can be in different locations.
+  get_target_property(framework_build_dir liblldb LIBRARY_OUTPUT_DIRECTORY)
+  lldb_setup_rpaths(lldb-mi
+BUILD_RPATH
+  "${framework_build_dir}"
+INSTALL_RPATH
+  "@loader_path/../../../SharedFrameworks"
+  "@loader_path/../../System/Library/PrivateFrameworks"
+  "@loader_path/../../Library/PrivateFrameworks"
+  )
 endif()
Index: lldb/tools/driver/CMakeLists.txt
===
--- lldb/tools/driver/CMakeLists.txt
+++ lldb/tools/driver/CMakeLists.txt
@@ -29,5 +29,15 @@
 )
 
 if(LLDB_BUILD_FRAMEWORK)
-  lldb_setup_framework_rpaths_in_tool(lldb)
+  # In the build-tree, we know the exact path to the framework directory.
+  # The installed framework can be in different locations.
+  get_target_property(framework_build_dir liblldb LIBRARY_OUTPUT_DIRECTORY)
+  lldb_setup_rpaths(lldb
+BUILD_RPATH
+  "${framework_build_dir}"
+INSTALL_RPATH
+  "@loader_path/../../../SharedFrameworks"
+  "@loader_path/../../System/Library/PrivateFrameworks"
+  "@loader_path/../../Library/PrivateFrameworks"
+  )
 endif()
Index: lldb/tools/debugserver/source/CMakeLists.txt
===
--- lldb/tools/debugserver/source/CMakeLists.txt
+++ lldb/tools/debugserver/source/CMakeLists.txt
@@ -264,6 +264,10 @@
   ${entitlements}
 )
 
+  if(LLDB_BUILD_FRAMEWORK)
+lldb_add_to_framework(lldb-argdumper)
+  endif()
+
   if(IOS)
 set_property(TARGET lldbDebugserverCommon APPEND PROPERTY COMPILE_DEFINITIONS
   WITH_LOCKDOWN
Index: lldb/tools/darwin-debug/CMakeLists.txt
===
--- lldb/tools/darwin-debug/CMakeLists.txt
+++ lldb/tools/darwin-debug/CMakeLists.txt
@@ -1,3 +1,7 @@
 add_lldb_tool(darwin-debug
   darwin-debug.cpp
   )
+
+if(LLDB_BUILD_FRAMEWORK)
+  lldb_add_to_framework(lldb-argdumper)
+endif()
Index: lldb/tools/argdumper/CMakeLists.txt
===
--- lldb/tools/argdumper/CMakeLists.txt
+++ lldb/tools/argdumper/CMakeLists.txt
@@ -4,3 +4,7 @@
   LINK_LIBS
 lldbUtility
   )
+
+if(LLDB_BUILD_FRAMEWORK)
+  lldb_add_to_framework(lldb-argdumper)
+endif()
Index: lldb/cmake/modules/LLDBFramework.cmake
===
--- lldb/cmake/modules/LLDBFramework.cmake
+++ lldb/cmake/modules/LLDBFramework.cmake
@@ -36,22 +36,9 @@
 endif()
 
 # Target to capture extra steps for a fully functional framework bundle.
-add_custom_target(lldb-framework)
+add_custom_target(lldb-framework ALL)
 add_dependencies(lldb-framework liblldb)
 
-# Dependencies are defined once tools are added (see AddLLD

[Lldb-commits] [PATCH] D62473: [zorg] Add lldb-aarch64-ubuntu builder

2019-05-26 Thread Muhammad Omair Javaid via Phabricator via lldb-commits
omjavaid created this revision.
omjavaid added reviewers: jankratochvil, gkistanova, labath.
Herald added subscribers: kristof.beyls, javed.absar.

This patch adds lldb aarch64 linux builder. It ll run on staging master until 
tests become stable.


https://reviews.llvm.org/D62473

Files:
  buildbot/osuosl/master/config/builders.py
  buildbot/osuosl/master/config/slaves.py
  buildbot/osuosl/master/config/status.py


Index: buildbot/osuosl/master/config/status.py
===
--- buildbot/osuosl/master/config/status.py
+++ buildbot/osuosl/master/config/status.py
@@ -275,6 +275,14 @@
 addLogs=False),
 InformativeMailNotifier(
 fromaddr = "llvm.buildmas...@lab.llvm.org",
+sendToInterestedUsers = True,
+extraRecipients = ["omair.jav...@linaro.org"],
+subject="Build %(builder)s Failure",
+mode = "failing",
+builders = ["lldb-x86_64-debian"],
+addLogs=False),
+InformativeMailNotifier(
+fromaddr = "llvm.buildmas...@lab.llvm.org",
 sendToInterestedUsers= False,
 extraRecipients = ["vitalyb...@google.com", "euge...@google.com"],
 subject="Build %(builder)s Failure",
Index: buildbot/osuosl/master/config/slaves.py
===
--- buildbot/osuosl/master/config/slaves.py
+++ buildbot/osuosl/master/config/slaves.py
@@ -43,6 +43,8 @@
 # sure we have plenty CPU cycle to satisfy timing assumptions.
 create_slave("linaro-armv8-01-arm-libcxx", properties={'jobs' : 1}, 
max_builds=1),
 create_slave("linaro-armv8-01-arm-libcxx-noeh", properties={'jobs' : 
1}, max_builds=1),
+# Packet.Net ThunderX1 for LLDB buildbot - Ubuntu Xenial 16.04 arm64 
container
+create_slave("linaro-thx1-lldb-aarch64", properties={'jobs': 16}, 
max_builds=1),
 
 # AArch64 Linaro slaves
 create_slave("linaro-armv8-01-aarch64-quick", properties={'jobs' : 
64}, max_builds=1),
Index: buildbot/osuosl/master/config/builders.py
===
--- buildbot/osuosl/master/config/builders.py
+++ buildbot/osuosl/master/config/builders.py
@@ -964,6 +964,17 @@
   '-DLLVM_USE_LINKER=gold',
   '-DCMAKE_C_COMPILER=clang',
   '-DCMAKE_CXX_COMPILER=clang++'])},
+{'name': "lldb-aarch64-ubuntu",
+ 'slavenames': ["linaro-thx1-lldb-aarch64"],
+ 'builddir': "lldb-cmake-aarch64",
+ 'category' : 'lldb',
+ 'factory': LLDBBuilder.getLLDBCMakeBuildFactory(
+test=True,
+extra_cmake_args=['-DLLVM_ENABLE_ASSERTIONS=True',
+  '-DLLVM_LIT_ARGS="-sv --threads=8"',
+  '-DLLVM_USE_LINKER=gold',
+  '-DCMAKE_C_COMPILER=clang',
+  '-DCMAKE_CXX_COMPILER=clang++'])},
 {'name': "lldb-x64-windows-ninja",
  'slavenames': ["win-py3-buildbot"],
  'builddir': "lldb-x64-windows-ninja",


Index: buildbot/osuosl/master/config/status.py
===
--- buildbot/osuosl/master/config/status.py
+++ buildbot/osuosl/master/config/status.py
@@ -275,6 +275,14 @@
 addLogs=False),
 InformativeMailNotifier(
 fromaddr = "llvm.buildmas...@lab.llvm.org",
+sendToInterestedUsers = True,
+extraRecipients = ["omair.jav...@linaro.org"],
+subject="Build %(builder)s Failure",
+mode = "failing",
+builders = ["lldb-x86_64-debian"],
+addLogs=False),
+InformativeMailNotifier(
+fromaddr = "llvm.buildmas...@lab.llvm.org",
 sendToInterestedUsers= False,
 extraRecipients = ["vitalyb...@google.com", "euge...@google.com"],
 subject="Build %(builder)s Failure",
Index: buildbot/osuosl/master/config/slaves.py
===
--- buildbot/osuosl/master/config/slaves.py
+++ buildbot/osuosl/master/config/slaves.py
@@ -43,6 +43,8 @@
 # sure we have plenty CPU cycle to satisfy timing assumptions.
 create_slave("linaro-armv8-01-arm-libcxx", properties={'jobs' : 1}, max_builds=1),
 create_slave("linaro-armv8-01-arm-libcxx-noeh", properties={'jobs' : 1}, max_builds=1),
+# Packet.Net ThunderX1 for LLDB buildbot - Ubuntu Xenial 16.04 arm64 container
+create_slave("linaro-thx1-lldb-aarch64", properties={'jobs': 16}, max_builds=1),
 
 # AArch64 Linaro slaves
 create_slave("linaro-armv8-01-aarch64-quick", properties={'jobs' : 64}, max_builds=1),
Index: buildbot/osuosl/master/config/builders.py
==

[Lldb-commits] [PATCH] D61952: [CMake] Stabilize install process for LLDB.framework

2019-05-26 Thread Stefan Gränitz via Phabricator via lldb-commits
sgraenitz abandoned this revision.
sgraenitz added a comment.

Closing this in favor of the reduced proposal


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D61952/new/

https://reviews.llvm.org/D61952



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


[Lldb-commits] [PATCH] D62472: [CMake] LLDB.framework tools handling

2019-05-26 Thread Stefan Gränitz via Phabricator via lldb-commits
sgraenitz updated this revision to Diff 201479.
sgraenitz added a comment.

lldb-vscode is no fremwork tool, but instead it needs the RPATHs


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D62472/new/

https://reviews.llvm.org/D62472

Files:
  lldb/CMakeLists.txt
  lldb/cmake/modules/AddLLDB.cmake
  lldb/cmake/modules/LLDBConfig.cmake
  lldb/cmake/modules/LLDBFramework.cmake
  lldb/tools/argdumper/CMakeLists.txt
  lldb/tools/darwin-debug/CMakeLists.txt
  lldb/tools/debugserver/source/CMakeLists.txt
  lldb/tools/driver/CMakeLists.txt
  lldb/tools/lldb-mi/CMakeLists.txt
  lldb/tools/lldb-server/CMakeLists.txt
  lldb/tools/lldb-vscode/CMakeLists.txt

Index: lldb/tools/lldb-vscode/CMakeLists.txt
===
--- lldb/tools/lldb-vscode/CMakeLists.txt
+++ lldb/tools/lldb-vscode/CMakeLists.txt
@@ -31,5 +31,15 @@
   )
 
 if(LLDB_BUILD_FRAMEWORK)
-  lldb_setup_framework_rpaths_in_tool(lldb-vscode)
+  # In the build-tree, we know the exact path to the framework directory.
+  # The installed framework can be in different locations.
+  get_target_property(framework_build_dir liblldb LIBRARY_OUTPUT_DIRECTORY)
+  lldb_setup_rpaths(lldb-vscode
+BUILD_RPATH
+  "${framework_build_dir}"
+INSTALL_RPATH
+  "@loader_path/../../../SharedFrameworks"
+  "@loader_path/../../System/Library/PrivateFrameworks"
+  "@loader_path/../../Library/PrivateFrameworks"
+  )
 endif()
Index: lldb/tools/lldb-server/CMakeLists.txt
===
--- lldb/tools/lldb-server/CMakeLists.txt
+++ lldb/tools/lldb-server/CMakeLists.txt
@@ -77,3 +77,7 @@
 )
 
 target_link_libraries(lldb-server PRIVATE ${LLDB_SYSTEM_LIBS})
+
+if(LLDB_BUILD_FRAMEWORK)
+  lldb_add_to_framework(lldb-server)
+endif()
Index: lldb/tools/lldb-mi/CMakeLists.txt
===
--- lldb/tools/lldb-mi/CMakeLists.txt
+++ lldb/tools/lldb-mi/CMakeLists.txt
@@ -95,5 +95,15 @@
   )
 
 if(LLDB_BUILD_FRAMEWORK)
-  lldb_setup_framework_rpaths_in_tool(lldb-mi)
+  # In the build-tree, we know the exact path to the framework directory.
+  # The installed framework can be in different locations.
+  get_target_property(framework_build_dir liblldb LIBRARY_OUTPUT_DIRECTORY)
+  lldb_setup_rpaths(lldb-mi
+BUILD_RPATH
+  "${framework_build_dir}"
+INSTALL_RPATH
+  "@loader_path/../../../SharedFrameworks"
+  "@loader_path/../../System/Library/PrivateFrameworks"
+  "@loader_path/../../Library/PrivateFrameworks"
+  )
 endif()
Index: lldb/tools/driver/CMakeLists.txt
===
--- lldb/tools/driver/CMakeLists.txt
+++ lldb/tools/driver/CMakeLists.txt
@@ -29,5 +29,15 @@
 )
 
 if(LLDB_BUILD_FRAMEWORK)
-  lldb_setup_framework_rpaths_in_tool(lldb)
+  # In the build-tree, we know the exact path to the framework directory.
+  # The installed framework can be in different locations.
+  get_target_property(framework_build_dir liblldb LIBRARY_OUTPUT_DIRECTORY)
+  lldb_setup_rpaths(lldb
+BUILD_RPATH
+  "${framework_build_dir}"
+INSTALL_RPATH
+  "@loader_path/../../../SharedFrameworks"
+  "@loader_path/../../System/Library/PrivateFrameworks"
+  "@loader_path/../../Library/PrivateFrameworks"
+  )
 endif()
Index: lldb/tools/debugserver/source/CMakeLists.txt
===
--- lldb/tools/debugserver/source/CMakeLists.txt
+++ lldb/tools/debugserver/source/CMakeLists.txt
@@ -264,6 +264,10 @@
   ${entitlements}
 )
 
+  if(LLDB_BUILD_FRAMEWORK)
+lldb_add_to_framework(lldb-argdumper)
+  endif()
+
   if(IOS)
 set_property(TARGET lldbDebugserverCommon APPEND PROPERTY COMPILE_DEFINITIONS
   WITH_LOCKDOWN
Index: lldb/tools/darwin-debug/CMakeLists.txt
===
--- lldb/tools/darwin-debug/CMakeLists.txt
+++ lldb/tools/darwin-debug/CMakeLists.txt
@@ -1,3 +1,7 @@
 add_lldb_tool(darwin-debug
   darwin-debug.cpp
   )
+
+if(LLDB_BUILD_FRAMEWORK)
+  lldb_add_to_framework(lldb-argdumper)
+endif()
Index: lldb/tools/argdumper/CMakeLists.txt
===
--- lldb/tools/argdumper/CMakeLists.txt
+++ lldb/tools/argdumper/CMakeLists.txt
@@ -4,3 +4,7 @@
   LINK_LIBS
 lldbUtility
   )
+
+if(LLDB_BUILD_FRAMEWORK)
+  lldb_add_to_framework(lldb-argdumper)
+endif()
Index: lldb/cmake/modules/LLDBFramework.cmake
===
--- lldb/cmake/modules/LLDBFramework.cmake
+++ lldb/cmake/modules/LLDBFramework.cmake
@@ -36,22 +36,9 @@
 endif()
 
 # Target to capture extra steps for a fully functional framework bundle.
-add_custom_target(lldb-framework)
+add_custom_target(lldb-framework ALL)
 add_dependencies(lldb-framework liblldb)
 
-# Dependencies are defined once tools are added (see Add

[Lldb-commits] [PATCH] D62474: [CMake] Remove lldb-server from LLDB.framework

2019-05-26 Thread Stefan Gränitz via Phabricator via lldb-commits
sgraenitz created this revision.
sgraenitz added reviewers: JDevlieghere, jasonmolenda, xiaobai.
Herald added a subscriber: mgorny.
Herald added a project: LLDB.

The LLDB test suite doesn't need lldb-server in the framework bundle anymore.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D62474

Files:
  lldb/tools/lldb-server/CMakeLists.txt


Index: lldb/tools/lldb-server/CMakeLists.txt
===
--- lldb/tools/lldb-server/CMakeLists.txt
+++ lldb/tools/lldb-server/CMakeLists.txt
@@ -77,7 +77,3 @@
 )
 
 target_link_libraries(lldb-server PRIVATE ${LLDB_SYSTEM_LIBS})
-
-if(LLDB_BUILD_FRAMEWORK)
-  lldb_add_to_framework(lldb-server)
-endif()


Index: lldb/tools/lldb-server/CMakeLists.txt
===
--- lldb/tools/lldb-server/CMakeLists.txt
+++ lldb/tools/lldb-server/CMakeLists.txt
@@ -77,7 +77,3 @@
 )
 
 target_link_libraries(lldb-server PRIVATE ${LLDB_SYSTEM_LIBS})
-
-if(LLDB_BUILD_FRAMEWORK)
-  lldb_add_to_framework(lldb-server)
-endif()
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D62473: [zorg] Add lldb-aarch64-ubuntu builder

2019-05-26 Thread Pavel Labath via Phabricator via lldb-commits
labath added a comment.

Great to have an arm buildbot again.




Comment at: buildbot/osuosl/master/config/status.py:282
+mode = "failing",
+builders = ["lldb-x86_64-debian"],
+addLogs=False),

This doesn't look right.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D62473/new/

https://reviews.llvm.org/D62473



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