diff options
-rw-r--r-- | CMakeLists.txt | 3 | ||||
-rw-r--r-- | utils/CMakeLists.txt | 1 | ||||
-rw-r--r-- | utils/llvm-symbolizer/CMakeLists.txt | 17 | ||||
-rw-r--r-- | utils/llvm-symbolizer/llvm-symbolizer.cpp | 2 |
4 files changed, 22 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 844660fef..17268c8b6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -103,6 +103,9 @@ endfunction() # Add the public header's directory to the includes for all of compiler-rt. include_directories(include) +# Build utils before building compiler-rt library. +add_subdirectory(utils) + add_subdirectory(lib) if(LLVM_INCLUDE_TESTS) diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt new file mode 100644 index 000000000..cb75012a6 --- /dev/null +++ b/utils/CMakeLists.txt @@ -0,0 +1 @@ +add_subdirectory(llvm-symbolizer) diff --git a/utils/llvm-symbolizer/CMakeLists.txt b/utils/llvm-symbolizer/CMakeLists.txt new file mode 100644 index 000000000..a01ed53a0 --- /dev/null +++ b/utils/llvm-symbolizer/CMakeLists.txt @@ -0,0 +1,17 @@ +# FIXME: As we plan to execute llvm-symbolizer binary from Sanitizer +# runtime, it has to be compiled for all supported targets (x86_64, i386 etc). +# This means that we need LLVM libraries to be compiled for these +# targets as well. Currently, there is no support for such a build strategy. + +set(LLVM_LINK_COMPONENTS + DebugInfo + Object + ) + +add_llvm_tool(llvm-symbolizer + llvm-symbolizer.cpp + ) + +# FIXME: Set sane output directory for llvm-symbolizer +set_target_properties(llvm-symbolizer PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) diff --git a/utils/llvm-symbolizer/llvm-symbolizer.cpp b/utils/llvm-symbolizer/llvm-symbolizer.cpp index da96e4308..af634b1b2 100644 --- a/utils/llvm-symbolizer/llvm-symbolizer.cpp +++ b/utils/llvm-symbolizer/llvm-symbolizer.cpp @@ -47,7 +47,7 @@ PrintFunctions("functions", cl::init(true), "information for a given address")); static cl::opt<bool> -PrintInlining("inlining", cl::init(false), +PrintInlining("inlining", cl::init(true), cl::desc("Print all inlined frames for a given address")); static StringRef ToolInvocationPath; |