summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt3
-rw-r--r--utils/CMakeLists.txt1
-rw-r--r--utils/llvm-symbolizer/CMakeLists.txt17
-rw-r--r--utils/llvm-symbolizer/llvm-symbolizer.cpp2
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;