• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
2#
3# This file contains default system-wide suppression specifications to
4# be used by Abigail tools[1] to filter out specific ABI change
5# reports when comparing the ABI of some core system binaries.
6#
7# To learn about the syntax of Abigail suppression specifications,
8# please refer to the relevant section of the online manual[2].
9#
10# If you feel like some suppression specifications should be added to
11# this file so that they can be applied system-wide each time an
12# Abigail tool is invoked to compare a given core system binary,
13# please file an enhance request to
14# https://sourceware.org/bugzilla/enter_bug.cgi?product=libabigail.
15#
16# Or, consider just adding those suppression specification to your
17# ~/.abignore file.
18#
19# [1]: https://sourceware.org/libabigail/manual/libabigail-overview.html
20# [2]: https://sourceware.org/libabigail/manual/libabigail-concepts.html#suppression-specifications.
21#
22
23#############################################
24# Below are glibc suppression specifications
25############################################
26
27# The idea is to suppress ABI change reports on functions and variable
28# which symbol version is "GLIBC_PRIVATE".  The SONAMEs of the
29# libraries these suppression specification are to be applied to are:
30#
31#      ld-linux-x86-64.so.2
32#      libanl.so.1
33#      libcidn.so.1
34#      libcrypt.so.1
35#      libc.so.6
36#      libdl.so.2
37#      libm.so.6
38#      libmvec.so.1
39#      libnsl.so.1
40#      libnss_compat.so.2
41#      libnss_db.so.2
42#      libnss_dns.so.2
43#      libnss_files.so.2
44#      libnss_hesiod.so.2
45#      libnss_nisplus.so.2
46#      libnss_nis.so.2
47#      libpthread.so.0
48#      libresolv.so.2
49#      librt.so.1
50#      libthread_db.so.1
51#      libutil.so.1
52#
53# The SONAMEs above can be derived from
54#  https://sourceware.org/glibc/wiki/ABIList.
55
56[suppress_function]
57  # Suppress ABI change reports about functions which symbol version
58  # is "GLIBC_PRIVATE"
59  symbol_version = GLIBC_PRIVATE
60
61  # And we want to restrict this suppression specification only to
62  # libraries with these SONAMEs:
63  soname_regexp = (libanl|libcidn|libcrypt|libc|libdl|libm|libmvec|libnsl|libnss_compat|libnss_db|libnss_dns|libnss_files|libnss_hesiod|libnss_nisplus|libnss_nis|libpthread|libresolv|librt|libthread_db|libutil|ld\[a-z0-9-\]*)\\.so\\.\[0-9\]*
64
65[suppress_variable]
66  # Suppress ABI change reports about functions which symbol version
67  # is "GLIBC_PRIVATE"
68  symbol_version = GLIBC_PRIVATE
69
70  # And we want to restrict this suppression specification only to
71  # libraries with these SONAMEs:
72  soname_regexp = (libanl|libcidn|libcrypt|libc|libdl|libm|libmvec|libnsl|libnss_compat|libnss_db|libnss_dns|libnss_files|libnss_hesiod|libnss_nisplus|libnss_nis|libpthread|libresolv|librt|libthread_db|libutil|ld\[a-z0-9-\]*)\\.so\\.\[0-9\]*
73
74#############################################
75# End of glibc suppression specifications
76############################################
77
78###########################################################
79# Below are  suppression specifications for webkitgtk
80###########################################################
81
82[suppress_function]
83  soname_regexp = libwebkit2?gtk-.*\\.so.*
84  name_not_regexp = ^webkit_.*
85  drop = true
86
87[suppress_variable]
88  soname_regexp = libwebkit2?gtk-.*\\.so.*
89  name_regexp = (^std::.*|WebCore::.*|WebKit::.*)
90  drop = true
91
92[suppress_type]
93  soname_regexp = libwebkit2?gtk-.*\\.so.*
94  name_regexp = (^std::.*|WebCore::.*|WebKit::.*)
95  drop = true
96
97#######################################################
98# End of webkitgtk suppression specifications
99#######################################################
100
101########################################################
102# Suppression specification for C++ libraries
103# that are not libstdc++.so
104########################################################
105
106[suppress_function]
107  soname_not_regexp = libstdc\\+\\+\\.so.*
108  name_regexp = std::.*
109  drop = true
110
111[suppress_variable]
112  soname_not_regexp = libstdc\\+\\+\\.so.*
113  name_regexp = std::.*
114  drop = true
115
116########################################################
117# End of suppression specification for C++ libraries
118# that are not libstdc++.so
119########################################################
120
121########################################################
122# Suppression specification for C++ libraries
123# that are not Boost.
124########################################################
125
126[suppress_function]
127  soname_not_regexp = libboost_.*\\.so.*
128  name_regexp = boost::.*
129  drop = true
130
131[suppress_variable]
132  soname_not_regexp = libboost_.*\\.so.*
133  name_regexp = boost::.*
134  drop = true
135
136########################################################
137# End of suppression specification for C++ libraries
138# that are not Boost.
139########################################################
140
141###########################################################
142# Do not compare the kernel.img file from the grub2 package
143###########################################################
144
145[suppress_file]
146  file_name_regexp = kernel\\.img
147
148#####################################################################
149# End of "Do not compare the kernel.img file from the grub2 package"
150#####################################################################
151
152
153##########################################
154# krb5 default suppression specifications
155#########################################
156[suppress_function]
157  # Suppress ABI change reports about functions starting with the name
158  # krb5int_* in libraries named libkrb5<something>.so
159  soname_regexp = libkrb5.*\\.so.*
160  name_regexp = ^krb5int_.*
161##########################################
162# End of krb5 suppression specifications
163#########################################
164
165
166#############################################
167# libvirt default suppression specifications
168#############################################
169[suppress_function]
170  # Suppress ABI change reports about functions with symbol version
171  # LIBVIRT_PRIVATE
172  symbol_version = LIBVIRT_PRIVATE
173  soname_regexp = libvirt\\.so.*
174####################################################
175# End of libvirt default suppression specifications
176####################################################
177