From ad37edce684f97ce87868c121e39743b99580d7a Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Tue, 7 May 2019 10:48:30 +0200 Subject: [PATCH] Don't use '-z defs' if sanitizers are used There are quite a number of sanitizers for clang that aren't documented in the clang user documentation. This makes it impossible to be selective about what sanitizers to look at to determine if '-z defs' should be used of not. Under these circumstances, the sane thing to do is to just look for any sanitizer specification and not use '-z defs' if there's one present. Fixes #8735 Reviewed-by: Paul Dale (Merged from https://github.com/openssl/openssl/pull/8892) --- Configurations/shared-info.pl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Configurations/shared-info.pl b/Configurations/shared-info.pl index 83f28bd367..2e2d28d95e 100644 --- a/Configurations/shared-info.pl +++ b/Configurations/shared-info.pl @@ -33,9 +33,9 @@ my %shared_info; %{$shared_info{'gnu-shared'}}, shared_defflag => '-Wl,--version-script=', dso_ldflags => - $disabled{asan} && $disabled{msan} && $disabled{ubsan} - ? '-z defs' - : '', + (grep /(?:^|\s)-fsanitize/, @{$config{CFLAGS}}) + ? '' + : '-z defs', }; }, 'bsd-gcc-shared' => sub { return $shared_info{'linux-shared'}; }, -- 2.40.0