[libvirt PATCH 2/6] meson: Allow undefined symbols when sanitizers are enabled

Tim Wiederhake twiederh at redhat.com
Mon May 3 10:01:42 UTC 2021


When enabling sanitizers, clang adds some function symbols when
instrumenting the code. The exact names of those functions are an
implementation detail and should therefore not be added to any
syms file. This patch prevents build failures due to those symbols
not present in the syms file when building with sanitizers enabled.

Signed-off-by: Tim Wiederhake <twiederh at redhat.com>
---
 meson.build | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/meson.build b/meson.build
index bbdbe4afd8..56c1294e7f 100644
--- a/meson.build
+++ b/meson.build
@@ -497,6 +497,11 @@ libvirt_no_indirect = cc.get_supported_link_arguments([
   '-Wl,--no-copy-dt-needed-entries',
 ])
 
+if get_option('b_sanitize') not in [ '', 'none' ]
+  # sanitizers may add additional symbols
+  libvirt_no_undefined = []
+endif
+
 if host_machine.system() == 'windows'
   version_script_flags = '-Wl,'
 else
-- 
2.26.3




More information about the libvir-list mailing list