# to apply on matching configurations when the matching entry for a particular
# library has no third column. The defaults must precede the entries they
# apply to.
-
+#
# Configuration DEFAULT Earliest symbol set
# ------------- --------------- ------------------------------
s390x-.*-linux.* DEFAULT GLIBC_2.2
-cris-.*-linux.* DEFAULT GLIBC_2.2
-x86_64-.*-linux.* DEFAULT GLIBC_2.2.5
-%if defined(USE_IN_LIBIO) && !defined(GLIBC_OLDEST_ABI)
-// If you use configure --enable-libio --enable-oldest-abi=2.0 then we
-// won't rename the old version sets and all the libraries except libc
-// itself ought to be binary compatible with the libc.so.0.2 ABI.
+powerpc64-.*-linux.* DEFAULT GLIBC_2.3
.*-.*-gnu-gnu.* DEFAULT GLIBC_2.2.6
-%endif
+
+# Configuration ABI Identifier for ABI data files
+# ------------- ---------- -----------------------------
+sparc64.*-.*-.* ABI sparc64-@OS@
+sparc.*-.*-.* ABI sparc-@OS@
# Configuration Library=version Earliest symbol set (optional)
# ------------- --------------- ------------------------------
# The interface to -lm depends mostly only on cpu, not on operating system.
-sparc64-.*-linux.* libm=6 GLIBC_2.2
-alpha.*-.*-linux.* libm=6.1
-mips.*-.*-linux.* libm=6 GLIBC_2.0 GLIBC_2.2
-ia64-.*-linux.* libm=6.1 GLIBC_2.2
+sparc64.*-.*-linux.* libm=6 GLIBC_2.2
sh.*-.*-linux.* libm=6 GLIBC_2.2
-hppa.*-.*-.* libm=6 GLIBC_2.2
.*-.*-linux.* libm=6
.*-.*-gnu-gnu.* libm=6
# We provide libc.so.6 for Linux kernel versions 2.0 and later.
-alpha.*-.*-linux.* libc=6.1
-# Working mips versions were never released between 2.0 and 2.2.
-mips.*-.*-linux.* libc=6 GLIBC_2.0 GLIBC_2.2
-ia64-.*-linux.* libc=6.1 GLIBC_2.2
sh.*-.*-linux.* libc=6 GLIBC_2.2
-sparc64-.*-linux.* libc=6 GLIBC_2.2
-hppa.*-.*-.* libc=6 GLIBC_2.2
+sparc64.*-.*-linux.* libc=6 GLIBC_2.2
.*-.*-linux.* libc=6
# libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
.*-.*-gnu-gnu.* libmachuser=1
-# libhurduser.so.0.0 corresponds to hurd/*.defs as of 7 May 1996.
-.*-.*-gnu-gnu.* libhurduser=0.0
+# libhurduser.so.0.3 corresponds to hurd/*.defs as of 11 June 2002.
+.*-.*-gnu-gnu.* libhurduser=0.3
-%ifndef USE_IN_LIBIO
-# libc.so.0.2 is for the Hurd alpha release 0.2.
-.*-.*-gnu-gnu.* libc=0.2
-%else
# libc.so.0.3 is the first Hurd libc using libio.
.*-.*-gnu-gnu.* libc=0.3
-%endif
# The dynamic loader also requires different names.
-i.86-.*-linux.* ld=ld-linux.so.2
-sparc64-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
+sparc64.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
sparc.*-.*-linux.* ld=ld-linux.so.2
-alpha.*-.*-linux.* ld=ld-linux.so.2
-arm.*-.*-linux.* ld=ld-linux.so.2
sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
-ia64-.*-linux.* ld=ld-linux-ia64.so.2 GLIBC_2.2
-mips.*-.*-linux.* ld=ld.so.1 GLIBC_2.0 GLIBC_2.2
-hppa.*-.*-.* ld=ld.so.1 GLIBC_2.2
-s390x-.*-linux.* ld=ld64.so.1 GLIBC_2.2
-cris-.*-linux.* ld=ld.so.1 GLIBC_2.2
-x86_64-.*-linux.* ld=ld-linux-x86-64.so.2 GLIBC_2.2.5
# We use the ELF ABI standard name for the default.
.*-.*-.* ld=ld.so.1
# The -ldl interface (see <dlfcn.h>) is the same on all platforms.
-alpha.*-.*-linux.* libdl=2.1
-mips.*-.*-linux.* libdl=2 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libdl=2
# So far the -lutil interface is the same on all platforms, except for the
# `struct utmp' format, which depends on libc.
-alpha.*-.*-linux.* libutil=1.1
.*-.*-.* libutil=1
# Version number 2 is used on other systems for the BIND 4.9.5 resolver
# interface.
-alpha.*-.*-linux.* libresolv=2.1
-mips.*-.*-linux.* libresolv=2 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libresolv=2
# Interface revision of nss_* modules. This must match NSS_SHLIB_REVISION
# in nss/nsswitch.h, which determines the library names used for service
# names given in /etc/nsswitch.conf.
-mips.*-.*-linux.* libnss_files=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libnss_dns=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libnss_compat=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libnss_nis=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libnss_nisplus=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libnss_ldap=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libnss_hesiod=2 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libnss_files=2
.*-.*-.* libnss_dns=2
.*-.*-.* libnss_compat=2
.*-.*-.* libnss_nisplus=2
.*-.*-.* libnss_ldap=2
.*-.*-.* libnss_hesiod=2
+.*-.*-.* libnss_db=2
+
+# Tests for NSS. They must have the same NSS_SHLIB_REVISION number as
+# the rest.
+.*-.*-.* libnss_test1=2
# Version for libnsl with YP and NIS+ functions.
-alpha.*-.*-linux.* libnsl=1.1
-mips.*-.*-linux.* libnsl=1 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libnsl=1
# This defines the shared library version numbers we will install.
-alpha.*-.*-linux.* libcrypt=1.1
.*-.*-.* libcrypt=1
# The gross patch for programs assuming broken locale implementations.
-alpha.*-.*-linux.* libBrokenLocale=1.1
-ia64-.*-.* libBrokenLocale=1 GLIBC_2.2
sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2
-sparc64-.*-.* libBrokenLocale=1 GLIBC_2.2
-hppa-.*-.* libBrokenLocale=1 GLIBC_2.2
+sparc64.*-.*-.* libBrokenLocale=1 GLIBC_2.2
.*-.*-.* libBrokenLocale=1
# The real-time library from POSIX.1b.
-mips.*-.*-linux.* librt=1 GLIBC_2.0 GLIBC_2.2
.*-.*-.* librt=1
# The asynchronous name lookup library.
.*-.*-.* libanl=1
+
+# This defines the libgcc soname version this glibc is to load for
+# asynchronous cancellation to work correctly.
+.*-.*-.* libgcc_s=1