summaryrefslogtreecommitdiffstats
path: root/Configurations/shared-info.pl
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2019-05-07 10:48:30 +0200
committerRichard Levitte <levitte@openssl.org>2019-05-09 06:41:42 +0200
commitad37edce684f97ce87868c121e39743b99580d7a (patch)
tree879b926b992b9469959c2ad4620b2d98bc0459c5 /Configurations/shared-info.pl
parent99592c73e7167990082626a46ea9286c152f85fd (diff)
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 <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/8892)
Diffstat (limited to 'Configurations/shared-info.pl')
-rw-r--r--Configurations/shared-info.pl6
1 files 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'}; },