[Lldb-commits] [PATCH] D55114: [CMake] Add LLVM_EXTERNALIZE_DEBUGINFO_OUTPUT_DIR for custom dSYM target directory on Darwin
Stefan Gränitz via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Fri Nov 30 03:33:26 PST 2018
sgraenitz created this revision.
sgraenitz added a reviewer: beanz.
Herald added subscribers: aprantl, mgorny.
When using `LLVM_EXTERNALIZE_DEBUGINFO` in LLDB, the default dSYM location for the shared library in LLDB.framework is inside the framework bundle. With `LLVM_EXTERNALIZE_DEBUGINFO_OUTPUT_DIR` we can easily fix that. I consider it a useful feature to be able to set a global output directory for external debug info (rather then having a target-specific one). Only implemented for Darwin so far.
Repository:
rL LLVM
https://reviews.llvm.org/D55114
Files:
cmake/modules/AddLLVM.cmake
Index: cmake/modules/AddLLVM.cmake
===================================================================
--- cmake/modules/AddLLVM.cmake
+++ cmake/modules/AddLLVM.cmake
@@ -1597,6 +1597,13 @@
endif()
endif()
+ if(LLVM_EXTERNALIZE_DEBUGINFO_OUTPUT_DIR)
+ if(APPLE)
+ set(output_name "$<TARGET_FILE_NAME:${name}>.dSYM")
+ set(output_path "-o=${LLVM_EXTERNALIZE_DEBUGINFO_OUTPUT_DIR}/${output_name}")
+ endif()
+ endif()
+
if(APPLE)
if(CMAKE_CXX_FLAGS MATCHES "-flto"
OR CMAKE_CXX_FLAGS_${uppercase_CMAKE_BUILD_TYPE} MATCHES "-flto")
@@ -1609,7 +1616,7 @@
set(CMAKE_DSYMUTIL xcrun dsymutil)
endif()
add_custom_command(TARGET ${name} POST_BUILD
- COMMAND ${CMAKE_DSYMUTIL} $<TARGET_FILE:${name}>
+ COMMAND ${CMAKE_DSYMUTIL} ${output_path} $<TARGET_FILE:${name}>
${strip_command}
)
else()
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55114.175957.patch
Type: text/x-patch
Size: 869 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20181130/4a529365/attachment.bin>
More information about the lldb-commits
mailing list