summaryrefslogtreecommitdiff
path: root/make
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2012-09-07 19:57:35 +0000
committerDaniel Dunbar <daniel@zuster.org>2012-09-07 19:57:35 +0000
commit5b36c14401009924adc6088e3289effdb7ee6555 (patch)
treecb78c25afb01195947c3932d5f3fef8eae2ff389 /make
parent0d02f1f1a076bd5931309f2cfc0422b477a4e7a2 (diff)
downloadcompiler-rt-5b36c14401009924adc6088e3289effdb7ee6555.tar.gz
compiler-rt-5b36c14401009924adc6088e3289effdb7ee6555.tar.bz2
compiler-rt-5b36c14401009924adc6088e3289effdb7ee6555.tar.xz
build/clang_darwin: Add the ASAN dynamic library.
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163415 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'make')
-rw-r--r--make/platform/clang_darwin.mk13
1 files changed, 13 insertions, 0 deletions
diff --git a/make/platform/clang_darwin.mk b/make/platform/clang_darwin.mk
index d1788c44..9f9327de 100644
--- a/make/platform/clang_darwin.mk
+++ b/make/platform/clang_darwin.mk
@@ -61,6 +61,9 @@ UniversalArchs.profile_osx := $(call CheckArches,i386 x86_64,profile_osx)
Configs += asan_osx
UniversalArchs.asan_osx := $(call CheckArches,i386 x86_64,asan_osx)
+Configs += asan_osx_dynamic
+UniversalArchs.asan_osx_dynamic := $(call CheckArches,i386 x86_64,asan_osx_dynamic)
+
# If RC_SUPPORTED_ARCHS is defined, treat it as a list of the architectures we
# are intended to support and limit what we try to build to that.
#
@@ -95,6 +98,9 @@ CFLAGS.eprintf := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
CFLAGS.10.4 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
# FIXME: We can't build ASAN with our stub SDK yet.
CFLAGS.asan_osx := $(CFLAGS) -mmacosx-version-min=10.5 -fno-builtin
+CFLAGS.asan_osx_dynamic := \
+ $(CFLAGS) -mmacosx-version-min=10.5 -fno-builtin \
+ -DMAC_INTERPOSE_FUNCTIONS=1
CFLAGS.osx.i386 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
CFLAGS.osx.x86_64 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
@@ -103,6 +109,10 @@ CFLAGS.cc_kext.x86_64 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
CFLAGS.profile_osx.i386 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
CFLAGS.profile_osx.x86_64 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
+# Configure the asan_osx_dynamic library to be built shared.
+SHARED_LIBRARY.asan_osx_dynamic := 1
+LDFLAGS.asan_osx_dynamic := -framework Foundation -lc++
+
FUNCTIONS.eprintf := eprintf
FUNCTIONS.10.4 := eprintf floatundidf floatundisf floatundixf
@@ -112,6 +122,9 @@ FUNCTIONS.profile_osx := GCDAProfiling
FUNCTIONS.asan_osx := $(AsanFunctions) $(InterceptionFunctions) \
$(SanitizerCommonFunctions)
+FUNCTIONS.asan_osx_dynamic := $(AsanFunctions) $(InterceptionFunctions) \
+ $(SanitizerCommonFunctions) \
+ $(AsanDynamicFunctions)
CCKEXT_COMMON_FUNCTIONS := \
absvdi2 \