From 3c5bc3128f8ade4e52069204df2da6c00ffb3806 Mon Sep 17 00:00:00 2001 From: Markus Mohrhard Date: Tue, 13 May 2014 02:12:17 +0200 Subject: [PATCH] -fsanitize=address does not like -z defs Change-Id: Id2a5c3009b46f9f91706b433411ca9f9c3cb7e39 Reviewed-on: https://gerrit.libreoffice.org/9334 Reviewed-by: Stephan Bergmann Tested-by: Stephan Bergmann --- external/nss/UnpackedTarball_nss.mk | 6 ++++++ external/nss/asan.patch.1 | 12 ++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 external/nss/asan.patch.1 diff --git a/external/nss/UnpackedTarball_nss.mk b/external/nss/UnpackedTarball_nss.mk index 17eb436d3282..9ac824188df6 100644 --- a/external/nss/UnpackedTarball_nss.mk +++ b/external/nss/UnpackedTarball_nss.mk @@ -23,4 +23,10 @@ $(eval $(call gb_UnpackedTarball_add_patches,nss,\ external/nss/nss.mingw.patch.3) \ )) +ifeq ($(COM_GCC_IS_CLANG)$(filter -fsanitize=address,$(CC)),TRUE-fsanitize=address) +$(eval $(call gb_UnpackedTarball_add_patches,nss,\ + external/nss/asan.patch.1 \ +)) +endif + # vim: set noet sw=4 ts=4: diff --git a/external/nss/asan.patch.1 b/external/nss/asan.patch.1 new file mode 100644 index 000000000000..3b64aa6f3045 --- /dev/null +++ b/external/nss/asan.patch.1 @@ -0,0 +1,12 @@ +diff -ur nss.org/nss/coreconf/Linux.mk nss/nss/coreconf/Linux.mk +--- nss.org/nss/coreconf/Linux.mk 2014-05-06 04:36:01.817838877 +0200 ++++ nss/nss/coreconf/Linux.mk 2014-05-06 04:37:25.387835456 +0200 +@@ -145,7 +145,7 @@ + # The linker on Red Hat Linux 7.2 and RHEL 2.1 (GNU ld version 2.11.90.0.8) + # incorrectly reports undefined references in the libraries we link with, so + # we don't use -z defs there. +-ZDEFS_FLAG = -Wl,-z,defs ++ZDEFS_FLAG = + DSO_LDOPTS += $(if $(findstring 2.11.90.0.8,$(shell ld -v)),,$(ZDEFS_FLAG)) -Wl,-z,origin '-Wl,-rpath,$$ORIGIN' + LDFLAGS += $(ARCHFLAG) +