summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2012-06-25 08:40:10 +0000
committerChandler Carruth <chandlerc@gmail.com>2012-06-25 08:40:10 +0000
commita765ffcef39dc37bd6d7e597286fd76fbeb1b9fa (patch)
tree5f1d81ef25692244efc402f812facd20511d09f1 /CMakeLists.txt
parent6bae39d1db13f60d3e9b8393e5b9d9eb2ab1b5c0 (diff)
downloadcompiler-rt-a765ffcef39dc37bd6d7e597286fd76fbeb1b9fa.tar.gz
compiler-rt-a765ffcef39dc37bd6d7e597286fd76fbeb1b9fa.tar.bz2
compiler-rt-a765ffcef39dc37bd6d7e597286fd76fbeb1b9fa.tar.xz
Another big step toward a viable CMake build system for CompilerRT,
ASan, and friends. This explicitly switches the CompilerRT CMake build to require CMake version 2.8.8 or newer which provides first-class support for "object" libraries which consist of a pile of '.o' files -- exactly what is desired for composing runtime libraries. I've gone ahead and switched to using this. I've also added the interception library which I missed initially. And I've added proper dependencies between the various libraries. With this, I'm able to build archives for asan that appear to contain all of the necessary .o files. The final tweak here is to start setting up the compile flags and macro defines expected by ASan and its helper libraries. These may not be entirely correct currently, they're based loosely on my reading of the old Makefiles. However, they can be tweaked more easily now that they're wired up properly. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@159129 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt6
1 files changed, 6 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 599ecaa6..1e6a2acb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,6 +9,12 @@
include(LLVMParseArguments)
+# The CompilerRT build system requires CMake version 2.8.8 or higher in order
+# to use its support for building convenience "libraries" as a collection of
+# .o files. This is particularly useful in producing larger, more complex
+# runtime libraries.
+cmake_minimum_required(VERSION 2.8.8)
+
# FIXME: Below we assume that the target build of LLVM/Clang is x86, which is
# not at all valid. Much of this can be fixed just by switching to use
# a just-built-clang binary for the compiles.