]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Fix enable-asan with C++ buildtest
authorBernd Edlinger <bernd.edlinger@hotmail.de>
Thu, 26 Aug 2021 18:10:16 +0000 (20:10 +0200)
committerBernd Edlinger <bernd.edlinger@hotmail.de>
Sat, 28 Aug 2021 05:22:46 +0000 (07:22 +0200)
the following config:

./config no-shared enable-asan enable-buildtest-c++ enable-external-tests

fails to build with unresolved asan symbols when linking
test/ossl_shim/ossl_shim

Fixed by passing all sanitizer-flags to cxxflags.

Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/16434)

Configure

index b286dd0678bbb5f5a7a94adfda7469849db528fc..faf57b155a1cb6e24ec930dcae6ed6d42596478b 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1304,16 +1304,19 @@ if ($disabled{"dynamic-engine"}) {
 
 unless ($disabled{asan}) {
     push @{$config{cflags}}, "-fsanitize=address";
+    push @{$config{cxxflags}}, "-fsanitize=address" if $config{CXX};
 }
 
 unless ($disabled{ubsan}) {
     # -DPEDANTIC or -fnosanitize=alignment may also be required on some
     # platforms.
     push @{$config{cflags}}, "-fsanitize=undefined", "-fno-sanitize-recover=all";
+    push @{$config{cxxflags}}, "-fsanitize=undefined", "-fno-sanitize-recover=all" if $config{CXX};
 }
 
 unless ($disabled{msan}) {
   push @{$config{cflags}}, "-fsanitize=memory";
+  push @{$config{cxxflags}}, "-fsanitize=memory" if $config{CXX};
 }
 
 unless ($disabled{"fuzz-libfuzzer"} && $disabled{"fuzz-afl"}