supp: Use a single suppressions file for lib, lib64 and multiarch

In addition to the traditional library directory lib and the 64-bit
multilib directory lib64, this will cover Debian-style multiarch
(lib/x86_64-linux-gnu etc.), Arch Linux 32-bit (lib32), x32 and
various others.

Signed-off-by: Simon McVittie <smcv@debian.org>
This commit is contained in:
Simon McVittie 2020-04-02 09:18:55 +01:00
parent b62860b1b8
commit 8afd623989
4 changed files with 35 additions and 303 deletions

View File

@ -29,8 +29,7 @@ EXTRA_DIST += \
po-properties/meson.build \
build-aux/meson/post-install.py \
config.h.meson \
gtk.supp \
gtk64.supp
gtk.supp
MAINTAINERCLEANFILES = \
$(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
@ -44,7 +43,7 @@ MAINTAINERCLEANFILES = \
if OS_UNIX
valgrinddir = $(datadir)/gtk-3.0/valgrind
valgrind_DATA = gtk.supp gtk64.supp
valgrind_DATA = gtk.supp
endif
## Copy .pc files to target-specific names

View File

@ -57,55 +57,55 @@
Memcheck:Leak
fun:calloc
...
obj:/usr/lib/dri/radeonsi_dri.so
obj:/usr/lib*/dri/radeonsi_dri.so
}
# mesa driver stuff
{
i965 addr4
Memcheck:Addr4
obj:/usr/lib/dri/i965_dri.so*
obj:/usr/lib*/dri/i965_dri.so*
}
{
i965 addr8
Memcheck:Addr8
obj:/usr/lib/dri/i965_dri.so*
obj:/usr/lib*/dri/i965_dri.so*
}
{
i965 memcpy
Memcheck:Addr8
fun:memcpy*
obj:/usr/lib/dri/i965_dri.so*
obj:/usr/lib*/dri/i965_dri.so*
}
{
i965 memcpy
Memcheck:Addr2
fun:memcpy*
obj:/usr/lib/dri/i965_dri.so*
obj:/usr/lib*/dri/i965_dri.so*
}
{
mesa memcmp 8
Memcheck:Addr8
fun:*memcmp*
obj:/usr/lib/dri/i965_dri.so*
obj:/usr/lib*/dri/i965_dri.so*
}
{
mesa memcmp 1
Memcheck:Addr1
fun:*memcmp*
obj:/usr/lib/dri/i965_dri.so*
obj:/usr/lib*/dri/i965_dri.so*
}
{
mesa memset 8
Memcheck:Addr8
fun:*memset*
obj:/usr/lib/dri/i965_dri.so
obj:/usr/lib*/dri/i965_dri.so
}
{
@ -147,7 +147,7 @@
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
obj:/usr/lib/dri/i965_dri.so*
obj:/usr/lib*/dri/i965_dri.so*
}
{
@ -211,8 +211,8 @@
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
fun:FcFontSetList
}
@ -221,8 +221,8 @@
Memcheck:Leak
match-leak-kinds: definite
fun:realloc
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
fun:FcFontRenderPrepare
}
@ -231,8 +231,8 @@
Memcheck:Leak
match-leak-kinds: definite
fun:realloc
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
fun:FcDefaultSubstitute
}
@ -240,8 +240,8 @@
{
pixman_image_composite32
Memcheck:Cond
obj:/usr/lib/libpixman-1.so*
obj:/usr/lib/libpixman-1.so*
obj:/usr/lib*/libpixman-1.so*
obj:/usr/lib*/libpixman-1.so*
fun:pixman_image_composite32
}
@ -251,9 +251,9 @@
Memcheck:Leak
match-leak-kinds: definite
fun:realloc
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib/libcairo.so*
obj:/usr/lib*/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
obj:/usr/lib*/libcairo.so*
fun:pango_cairo_fc_font_map_fontset_key_substitute
}
@ -261,7 +261,17 @@
pango 2
Memcheck:Leak
fun:realloc
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
obj:/usr/lib*/libfontconfig.so*
fun:_cairo_ft_font_options_substitute
}
# GLib
{
glib 1
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
fun:g_malloc
fun:g_quark_init
}

View File

@ -1,277 +0,0 @@
# Actual GTK things
{
GtkWidgetClass action GPtrArray
Memcheck:Leak
fun:malloc
fun:g_malloc
fun:g_slice_alloc
fun:g_ptr_array_sized_new
fun:g_ptr_array_new
fun:gtk_widget_class_add_action
}
{
GTK media extension gio modules
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
fun:g_malloc
fun:g_slice_alloc
fun:g_slice_alloc0
fun:g_type_create_instance
fun:g_object_new_internal
fun:g_object_new_with_properties
fun:g_object_new
fun:g_io_module_new
fun:g_io_modules_scan_all_in_directory_with_scope
fun:gtk_media_file_extension_init
}
{
gtk-style-context
Memcheck:Leak
match-leak-kinds: possible
fun:malloc
fun:g_malloc
...
fun:gtk_css_node_declaration_make_writable
...
fun:gtk_style_constructed
}
{
gtk-style-context2
Memcheck:Leak
match-leak-kinds: possible
fun:malloc
fun:g_malloc
...
fun:gtk_css_node_declaration_make_writable_resize
...
fun:gtk_style_constructed
}
# AMD driver
{
radeonsi_dri general
Memcheck:Leak
fun:calloc
...
obj:/usr/lib64/dri/radeonsi_dri.so
}
# mesa driver stuff
{
i965 addr4
Memcheck:Addr4
obj:/usr/lib64/dri/i965_dri.so*
}
{
i965 addr8
Memcheck:Addr8
obj:/usr/lib64/dri/i965_dri.so*
}
{
i965 memcpy
Memcheck:Addr8
fun:memcpy*
obj:/usr/lib64/dri/i965_dri.so*
}
{
i965 memcpy
Memcheck:Addr2
fun:memcpy*
obj:/usr/lib64/dri/i965_dri.so*
}
{
mesa memcmp 8
Memcheck:Addr8
fun:*memcmp*
obj:/usr/lib64/dri/i965_dri.so*
}
{
mesa memcmp 1
Memcheck:Addr1
fun:*memcmp*
obj:/usr/lib64/dri/i965_dri.so*
}
{
mesa memset 8
Memcheck:Addr8
fun:*memset*
obj:/usr/lib64/dri/i965_dri.so
}
{
mesa realpath
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
fun:realpath@@GLIBC_2.3
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
fun:epoxy_eglInitialize_global_rewrite_ptr
}
{
mesa calloc
Memcheck:Leak
match-leak-kinds: definite
fun:calloc
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
fun:epoxy_eglInitialize_global_rewrite_ptr
}
{
mesa malloc
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
obj:/usr/lib64/dri/i965_dri.so*
}
{
mesa glReadPixels
Memcheck:Addr16
obj:*
obj:*
obj:*
obj:*
obj:*
fun:epoxy_glReadPixels_global_rewrite_ptr
}
{
epoxy glxQueryServerString 1
Memcheck:Leak
fun:malloc
fun:XextAddDisplay
obj:*
obj:*
obj:*
obj:*
obj:*
fun:epoxy_glXQueryServerString_global_rewrite_ptr
}
{
epoxy glxQueryServerString 2
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
fun:realpath*
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
obj:*
fun:epoxy_glXQueryServerString_global_rewrite_ptr
}
{
epoxy glGetTexImage
Memcheck:Addr16
obj:*
obj:*
obj:*
obj:*
obj:*
fun:epoxy_glGetTexImage_global_rewrite_ptr
}
# Fontconfig
{
FcFontSetList
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
obj:/usr/lib64/libfontconfig.so*
obj:/usr/lib64/libfontconfig.so*
fun:FcFontSetList
}
{
FcFontRenderPrepare
Memcheck:Leak
match-leak-kinds: definite
fun:realloc
obj:/usr/lib64/libfontconfig.so*
obj:/usr/lib64/libfontconfig.so*
fun:FcFontRenderPrepare
}
{
FcDefaultSubstitute
Memcheck:Leak
match-leak-kinds: definite
fun:realloc
obj:/usr/lib64/libfontconfig.so*
obj:/usr/lib64/libfontconfig.so*
fun:FcDefaultSubstitute
}
# Pixman
{
pixman_image_composite32
Memcheck:Cond
obj:/usr/lib64/libpixman-1.so*
obj:/usr/lib64/libpixman-1.so*
fun:pixman_image_composite32
}
# Pango
{
pango 1
Memcheck:Leak
match-leak-kinds: definite
fun:realloc
obj:/usr/lib64/libfontconfig.so*
obj:/usr/lib64/libfontconfig.so*
obj:/usr/lib64/libcairo.so*
fun:pango_cairo_fc_font_map_fontset_key_substitute
}
{
pango 2
Memcheck:Leak
fun:realloc
obj:/usr/lib64/libfontconfig.so*
obj:/usr/lib64/libfontconfig.so*
fun:_cairo_ft_font_options_substitute
}
# GLib
{
glib 1
Memcheck:Leak
match-leak-kinds: definite
fun:malloc
fun:g_malloc
fun:g_quark_init
}

View File

@ -983,7 +983,7 @@ meson.add_install_script('build-aux/meson/post-install.py',
if host_machine.system() != 'windows'
# Install Valgrind suppression files (except on Windows,
# as Valgrind is currently not supported on Windows)
install_data('gtk.supp', 'gtk64.supp',
install_data('gtk.supp',
install_dir : join_paths(gtk_datadir, 'gtk-3.0', 'valgrind'))
endif