summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2018-07-05 09:47:26 +0200
committerStephan Bergmann <sbergman@redhat.com>2018-07-05 09:47:26 +0200
commit7b101fc549593e2ad8c54f4e53d23fcdf683a4bb (patch)
treea8c068755d415fe9b15c301009df5b8d2180af9b
parent44c0d38a06cd5ab765facef3242e2c0e3e7944b4 (diff)
UBSan apparently still needs --dynamic-list-cpp-typeinfo
...(presumably due to it using -fvisibility-ms-compat, cf. solenv/gbuild/platform/com_GCC_defs.mk), or else things start to fail like <https://ci.libreoffice.org/job/lo_ubsan/962/console>'s CustomTarget_testtools/uno_test: > /cpputools/source/unoexe/unoexe.cxx:502:24: runtime error: member call on address 0x60600000c288 which does not point to an object of type 'com::sun::star::lang::XMain' > 0x60600000c260: note: object is base class subobject at offset 40 within object of type 'bridge_test::TestBridgeImpl' > #0 0x50dc0b in sal_main() /cpputools/source/unoexe/unoexe.cxx:502:24 > #1 0x507762 in main /cpputools/source/unoexe/unoexe.cxx:348:1 > #2 0x2b2ede591444 in __libc_start_main (/lib64/libc.so.6+0x22444) > #3 0x429425 in _start (/instdir/program/uno.bin+0x429425) Change-Id: I7f2c38ef2f3cedae07d71246980ad1f21220db72
-rw-r--r--solenv/gbuild/platform/unxgcc.mk5
1 files changed, 5 insertions, 0 deletions
diff --git a/solenv/gbuild/platform/unxgcc.mk b/solenv/gbuild/platform/unxgcc.mk
index 79144b19763b..a84c095721ff 100644
--- a/solenv/gbuild/platform/unxgcc.mk
+++ b/solenv/gbuild/platform/unxgcc.mk
@@ -76,6 +76,11 @@ endif
ifneq ($(HAVE_LD_BSYMBOLIC_FUNCTIONS),)
gb_LinkTarget_LDFLAGS += -Wl,-Bsymbolic-functions
+ifeq ($(COM_IS_CLANG),TRUE)
+ifneq ($(filter -fsanitize=%,$(CC)),)
+gb_LinkTarget_LDFLAGS += -Wl,--dynamic-list-cpp-typeinfo
+endif
+endif
endif
ifneq ($(gb_DEBUGLEVEL),0)