From c5fee8e40d369e93ab91011c18347395167ff132 Mon Sep 17 00:00:00 2001 From: Alexey Samsonov Date: Tue, 4 Sep 2012 14:52:21 +0000 Subject: [compiler-rt] Recurse into 'utils' directory in CMake build of compiler-rt, enable build of llvm-symbolizer binary (currently for one target only) git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163138 91177308-0d34-0410-b5e6-96231b3b80d8 --- CMakeLists.txt | 3 +++ utils/CMakeLists.txt | 1 + utils/llvm-symbolizer/CMakeLists.txt | 17 +++++++++++++++++ utils/llvm-symbolizer/llvm-symbolizer.cpp | 2 +- 4 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 utils/CMakeLists.txt create mode 100644 utils/llvm-symbolizer/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 844660fe..17268c8b 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 00000000..cb75012a --- /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 00000000..a01ed53a --- /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 da96e430..af634b1b 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 -PrintInlining("inlining", cl::init(false), +PrintInlining("inlining", cl::init(true), cl::desc("Print all inlined frames for a given address")); static StringRef ToolInvocationPath; -- cgit v1.2.3