mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-01-10 10:01:42 +00:00
21395f9839
This patch builds on LLVM r279776. In this patch I've done some cleanup and abstracted three common steps runtime components have in their CMakeLists files, and added a fourth. The three steps I abstract are: (1) Add a top-level target (i.e asan, msan, ...) (2) Set the target properties for sorting files in IDE generators (3) Make the compiler-rt target depend on the top-level target The new step is to check if a command named "runtime_register_component" is defined, and to call it with the component name. The runtime_register_component command is defined in llvm/runtimes/CMakeLists.txt, and presently just adds the component to a list of sub-components, which later gets used to generate target mappings. With this patch a new workflow for runtimes builds is supported. The new workflow when building runtimes from the LLVM runtimes directory is: > cmake [...] > ninja runtimes-configure > ninja asan The "runtimes-configure" target builds all the dependencies for configuring the runtimes projects, and runs CMake on the runtimes projects. Running the runtimes CMake generates a list of targets to bind into the top-level CMake so subsequent build invocations will have access to some of Compiler-RT's targets through the top-level build. Note: This patch does exclude some top-level targets from compiler-rt libraries because they either don't install files (sanitizer_common), or don't have a cooresponding `check` target (stats). llvm-svn: 279863 |
||
---|---|---|
.. | ||
tests | ||
.clang-format | ||
CMakeLists.txt | ||
msan_allocator.cc | ||
msan_allocator.h | ||
msan_blacklist.txt | ||
msan_chained_origin_depot.cc | ||
msan_chained_origin_depot.h | ||
msan_flags.h | ||
msan_flags.inc | ||
msan_interceptors.cc | ||
msan_interface_internal.h | ||
msan_linux.cc | ||
msan_new_delete.cc | ||
msan_origin.h | ||
msan_poisoning.cc | ||
msan_poisoning.h | ||
msan_report.cc | ||
msan_thread.cc | ||
msan_thread.h | ||
msan.cc | ||
msan.h | ||
msan.syms.extra |