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