mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 12:12:47 +01:00
b03521b98d
Add support for generating a dsymutil reproducer. The result is a folder containing all the object files for linking. When --gen-reproducer is passed, dsymutil uses a FileCollectorFileSystem which keeps track of all the files used by dsymutil. These files are copied into a temporary directory when dsymutil exists. When this path is passed to --use-reproducer, dsymutil uses a RedirectingFileSystem that will use the files from the reproducer directory instead of the actual paths. This means you don't need to mess with the OSO path prefix. Differential revision: https://reviews.llvm.org/D79398
44 lines
781 B
CMake
44 lines
781 B
CMake
set(LLVM_TARGET_DEFINITIONS Options.td)
|
|
tablegen(LLVM Options.inc -gen-opt-parser-defs)
|
|
add_public_tablegen_target(DsymutilTableGen)
|
|
|
|
set(LLVM_LINK_COMPONENTS
|
|
AllTargetsCodeGens
|
|
AllTargetsDescs
|
|
AllTargetsInfos
|
|
AsmPrinter
|
|
DebugInfoDWARF
|
|
DWARFLinker
|
|
MC
|
|
Object
|
|
CodeGen
|
|
Option
|
|
Remarks
|
|
Support
|
|
Target
|
|
)
|
|
|
|
add_llvm_tool(dsymutil
|
|
dsymutil.cpp
|
|
BinaryHolder.cpp
|
|
CFBundle.cpp
|
|
DebugMap.cpp
|
|
DwarfLinkerForBinary.cpp
|
|
MachODebugMapParser.cpp
|
|
MachOUtils.cpp
|
|
Reproducer.cpp
|
|
SymbolMap.cpp
|
|
|
|
DEPENDS
|
|
intrinsics_gen
|
|
${tablegen_deps}
|
|
)
|
|
|
|
if(APPLE)
|
|
target_link_libraries(dsymutil PRIVATE "-framework CoreFoundation")
|
|
endif(APPLE)
|
|
|
|
if(HAVE_CXX_ATOMICS_WITH_LIB OR HAVE_CXX_ATOMICS64_WITH_LIB)
|
|
target_link_libraries(dsymutil PRIVATE atomic)
|
|
endif()
|