summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2014-09-11 15:18:29 +0200
committerStephan Bergmann <sbergman@redhat.com>2014-09-11 15:21:23 +0200
commite9778073e37fb75f1b65a8d38b41feb584060705 (patch)
tree185d4943a69ee02fedf07d82f5e7c460523dd4a4 /external
parent22ff143b1c26ec6bfcf6dbb52da43c26ee4e4edd (diff)
For ASAN __cxa_throw interception to work, link python.bin to libstdc++
...where the intercepted __cxa_throw is found, as otherwise PythonTest_sw_python fails with AddressSanitizer CHECK failed: projects/compiler-rt/lib/asan/asan_interceptors.cc:293 "((IndirectExternCall(__interception::real___cxa_throw))) != (0)" (0x0, 0x0) #0 in __asan::AsanCheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) projects/compiler-rt/lib/asan/asan_rtl.cc:70:3 #1 in __sanitizer::CheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) projects/compiler-rt/lib/sanitizer_common/sanitizer_common.cc:76:5 #2 0x48c3ac in __cxa_throw projects/compiler-rt/lib/asan/asan_interceptors.cc:293:3 #3 0x7f67faec0ef5 in pyuno::createClass(rtl::OUString const&, pyuno::Runtime const&) pyuno/source/module/pyuno_except.cxx:92:9 ... Change-Id: I0cb364eacab49644b426fb62f49bf9d7c8b5090c
Diffstat (limited to 'external')
-rw-r--r--external/python3/ExternalProject_python3.mk1
1 files changed, 1 insertions, 0 deletions
diff --git a/external/python3/ExternalProject_python3.mk b/external/python3/ExternalProject_python3.mk
index 21a3f110a747..b0548f6d33d8 100644
--- a/external/python3/ExternalProject_python3.mk
+++ b/external/python3/ExternalProject_python3.mk
@@ -83,6 +83,7 @@ $(call gb_ExternalProject_get_state_target,python3,build) :
$(if $(SYSBASE), -I$(SYSBASE)/usr/include) \
)" \
$(if $(python3_cflags),CFLAGS='$(python3_cflags)') \
+ $(if $(filter -fsanitize=address,$(CC)),LINKCC="$(CXX)") \
LDFLAGS="$(strip $(LDFLAGS) \
$(if $(SYSTEM_OPENSSL),,-L$(call gb_UnpackedTarball_get_dir,openssl)) \
$(if $(SYSTEM_EXPAT),,-L$(gb_StaticLibrary_WORKDIR)) \