summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Samsonov <vonosmas@gmail.com>2015-06-22 23:30:28 +0000
committerAlexey Samsonov <vonosmas@gmail.com>2015-06-22 23:30:28 +0000
commitc25e44b9735b139f4724096a5df53b34c98583ff (patch)
treeb9a7625eca6dba321d2753ebd9dacaa8d60e4086
parentce07e7534bbff44f7d63603564d836cdef75f4be (diff)
downloadcompiler-rt-c25e44b9735b139f4724096a5df53b34c98583ff.tar.gz
[CMake] Respect the value of -mmacosx-version-min flag.
Make sure that sanitizer runtimes target OS X version provided in -mmacosx-version-min= flag. Enforce that it should be at least 10.7. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@240356 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--CMakeLists.txt17
1 files changed, 12 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7daee7ce8..4932ac221 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -292,14 +292,21 @@ if(APPLE)
find_darwin_sdk_dir(OSX_SDK_DIR macosx)
find_darwin_sdk_dir(IOSSIM_SDK_DIR iphonesimulator)
- string(REGEX MATCH "-mmacosx-version-min="
- MACOSX_VERSION_MIN_FLAG "${CMAKE_CXX_FLAGS}")
set(SANITIZER_COMMON_SUPPORTED_OS osx)
- if (IOSSIM_SDK_DIR AND NOT MACOSX_VERSION_MIN_FLAG)
- list(APPEND SANITIZER_COMMON_SUPPORTED_OS iossim)
+ string(REGEX MATCH "-mmacosx-version-min=([.0-9]+)"
+ MACOSX_VERSION_MIN_FLAG "${CMAKE_CXX_FLAGS}")
+ if(MACOSX_VERSION_MIN_FLAG)
+ set(SANITIZER_MIN_OSX_VERSION "${CMAKE_MATCH_1}")
+ if(SANITIZER_MIN_OSX_VERSION VERSION_LESS "10.7")
+ message(FATAL_ERROR "Too old OS X version: ${SANITIZER_MIN_OSX_VERSION}")
+ endif()
+ else()
+ set(SANITIZER_MIN_OSX_VERSION 10.7)
+ if(IOSSIM_SDK_DIR)
+ list(APPEND SANITIZER_COMMON_SUPPORTED_OS iossim)
+ endif()
endif()
- set(SANITIZER_MIN_OSX_VERSION 10.7)
set(CMAKE_OSX_DEPLOYMENT_TARGET "") # We're setting the flag manually below.
set(DARWIN_osx_CFLAGS -mmacosx-version-min=${SANITIZER_MIN_OSX_VERSION}
-stdlib=libc++)