summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2014-09-12 12:28:47 +0000
committerJoseph Myers <joseph@codesourcery.com>2014-09-12 12:28:47 +0000
commitba90e05052ce57db51e3cb18978614fd0db5c7ef (patch)
tree513e8a0d4bf6d7a8b0a0f4794c59ec61126d58b7
parent73a391126d500653bf3cd4c0f67826e75ecc95bf (diff)
Remove configuration name patterns from shlib-versions.
This patch removes the first column (patterns matching configuration names) from shlib-versions, leaving shlib-versions entry selection based purely on sysdeps directories. An implication of this removal is that the default for any non-Linux ports using NPTL will be the same SONAMEs for NPTL libraries as for Linux (as those defaults, previously limited to .*-.*-linux.*, are left in nptl/shlib-versions and nptl_db/shlib-versions). Special host_os handling in configure.ac that was purely for shlib-versions is removed. (The host_os setting is still used for libc-abis - see <https://sourceware.org/ml/libc-alpha/2014-01/msg00375.html> regarding that - but no entries there are affected by this change.) Tested on x86_64 and x86 that the installed shared libraries are unchanged by this patch. * scripts/soversions.awk: Do not handle configuration names. * Makeconfig ($(common-objpfx)soversions.i): Do not pass cpu, vendor and os variables to soversions.awk. * configure.ac: Do not modify gnu-* host_os. * configure: Regenerated * shlib-versions: Remove first column with configuration names. * nptl/shlib-versions: Likewise. * nptl_db/shlib-versions: Likewise. * sysdeps/hppa/shlib-versions: Likewise. * sysdeps/m68k/shlib-versions: Likewise. * sysdeps/mach/hurd/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/aarch64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/alpha/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/arm/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/hppa/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/ia64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/microblaze/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/mips/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/sh/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/tile/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions: Likewise. libidn/ChangeLog: * shlib-versions: Remove first column with configuration names.
-rw-r--r--ChangeLog30
-rw-r--r--Makeconfig3
-rwxr-xr-xconfigure13
-rw-r--r--configure.ac13
-rw-r--r--libidn/ChangeLog4
-rw-r--r--libidn/shlib-versions2
-rw-r--r--nptl/shlib-versions2
-rw-r--r--nptl_db/shlib-versions2
-rw-r--r--scripts/soversions.awk64
-rw-r--r--shlib-versions61
-rw-r--r--sysdeps/hppa/shlib-versions2
-rw-r--r--sysdeps/m68k/shlib-versions2
-rw-r--r--sysdeps/mach/hurd/shlib-versions10
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/shlib-versions6
-rw-r--r--sysdeps/unix/sysv/linux/alpha/shlib-versions18
-rw-r--r--sysdeps/unix/sysv/linux/arm/shlib-versions6
-rw-r--r--sysdeps/unix/sysv/linux/hppa/shlib-versions10
-rw-r--r--sysdeps/unix/sysv/linux/ia64/shlib-versions10
-rw-r--r--sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions2
-rw-r--r--sysdeps/unix/sysv/linux/microblaze/shlib-versions2
-rw-r--r--sysdeps/unix/sysv/linux/mips/shlib-versions32
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions8
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions4
-rw-r--r--sysdeps/unix/sysv/linux/sh/shlib-versions10
-rw-r--r--sysdeps/unix/sysv/linux/shlib-versions4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions2
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions10
-rw-r--r--sysdeps/unix/sysv/linux/tile/shlib-versions2
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/shlib-versions8
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions8
30 files changed, 169 insertions, 181 deletions
diff --git a/ChangeLog b/ChangeLog
index fbd013b39c..d02d8b6c1b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,35 @@
2014-09-12 Joseph Myers <joseph@codesourcery.com>
+ * scripts/soversions.awk: Do not handle configuration names.
+ * Makeconfig ($(common-objpfx)soversions.i): Do not pass cpu,
+ vendor and os variables to soversions.awk.
+ * configure.ac: Do not modify gnu-* host_os.
+ * configure: Regenerated
+ * shlib-versions: Remove first column with configuration names.
+ * nptl/shlib-versions: Likewise.
+ * nptl_db/shlib-versions: Likewise.
+ * sysdeps/hppa/shlib-versions: Likewise.
+ * sysdeps/m68k/shlib-versions: Likewise.
+ * sysdeps/mach/hurd/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/aarch64/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/alpha/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/arm/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/hppa/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/ia64/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/microblaze/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/mips/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions:
+ Likewise.
+ * sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/sh/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/tile/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/64/shlib-versions: Likewise.
+ * sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions: Likewise.
+
* sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
(HAVE_ELFV2_ABI): AC_DEFINE in ELFv2 case.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/configure:
diff --git a/Makeconfig b/Makeconfig
index 0f8069b82a..07807880fb 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -964,9 +964,6 @@ soversions-default-setname = $(patsubst %, %,\
$(common-objpfx)soversions.i: $(..)scripts/soversions.awk \
$(common-objpfx)shlib-versions.v
$(AWK) -v default_setname='$(soversions-default-setname)' \
- -v cpu='$(config-machine)' \
- -v vendor='$(config-vendor)' \
- -v os='$(config-os)' \
-f $^ > $@T
mv -f $@T $@
$(common-objpfx)soversions.mk: $(common-objpfx)soversions.i $(..)Makeconfig
diff --git a/configure b/configure
index 86ba30774b..ff5c730a02 100755
--- a/configure
+++ b/configure
@@ -3728,19 +3728,6 @@ if test "$build_pt_chown" = yes; then
fi
-# The way shlib-versions is used to generate soversions.mk uses a
-# fairly simplistic model for name recognition that can't distinguish
-# i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
-# of `gnu*' here to be `gnu-gnu*' just so that shlib-versions can
-# tell. This doesn't get used much beyond that, so it's fairly safe.
-case "$host_os" in
-linux*)
- ;;
-gnu*)
- host_os=`echo $host_os | sed -e 's/gnu/gnu-gnu/'`
- ;;
-esac
-
# We keep the original values in `$config_*' and never modify them, so we
# can write them unchanged into config.make. Everything else uses
# $machine, $vendor, and $os, and changes them whenever convenient.
diff --git a/configure.ac b/configure.ac
index 255339983a..794ffc2f1d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -365,19 +365,6 @@ if test "$build_pt_chown" = yes; then
AC_DEFINE(HAVE_PT_CHOWN)
fi
-# The way shlib-versions is used to generate soversions.mk uses a
-# fairly simplistic model for name recognition that can't distinguish
-# i486-pc-linux-gnu fully from i486-pc-gnu. So we mutate a $host_os
-# of `gnu*' here to be `gnu-gnu*' just so that shlib-versions can
-# tell. This doesn't get used much beyond that, so it's fairly safe.
-case "$host_os" in
-linux*)
- ;;
-gnu*)
- host_os=`echo $host_os | sed -e 's/gnu/gnu-gnu/'`
- ;;
-esac
-
# We keep the original values in `$config_*' and never modify them, so we
# can write them unchanged into config.make. Everything else uses
# $machine, $vendor, and $os, and changes them whenever convenient.
diff --git a/libidn/ChangeLog b/libidn/ChangeLog
index 7a48fd5c6d..740340fde3 100644
--- a/libidn/ChangeLog
+++ b/libidn/ChangeLog
@@ -1,3 +1,7 @@
+2014-09-12 Joseph Myers <joseph@codesourcery.com>
+
+ * shlib-versions: Remove first column with configuration names.
+
2014-02-26 Joseph Myers <joseph@codesourcery.com>
* Makefile: Include Makeconfig immediately after defining subdir.
diff --git a/libidn/shlib-versions b/libidn/shlib-versions
index 9b27e5196b..0aa1a59db4 100644
--- a/libidn/shlib-versions
+++ b/libidn/shlib-versions
@@ -1 +1 @@
-.*-.*-.* libcidn=1
+libcidn=1
diff --git a/nptl/shlib-versions b/nptl/shlib-versions
index f2cc32d235..e08931af1a 100644
--- a/nptl/shlib-versions
+++ b/nptl/shlib-versions
@@ -1 +1 @@
-.*-.*-linux.* libpthread=0
+libpthread=0
diff --git a/nptl_db/shlib-versions b/nptl_db/shlib-versions
index 592f7fa284..cf5a9e9694 100644
--- a/nptl_db/shlib-versions
+++ b/nptl_db/shlib-versions
@@ -1,2 +1,2 @@
# The thread debug library
-.*-.*-linux.* libthread_db=1
+libthread_db=1
diff --git a/scripts/soversions.awk b/scripts/soversions.awk
index adba1556f0..dbc90590e8 100644
--- a/scripts/soversions.awk
+++ b/scripts/soversions.awk
@@ -1,59 +1,41 @@
# awk script for shlib-versions.v -> soversions.i; see Makeconfig.
-BEGIN {
- config = cpu "-" vendor "-" os;
- configs[config] = "DEFAULT";
-}
-
-{ thiscf = $1 }
-
# Obey the first matching DEFAULT line.
-$2 == "DEFAULT" {
- $1 = $2 = "";
- default_set[++ndefault_set] = thiscf "\n" $0;
+$1 == "DEFAULT" {
+ $1 = "";
+ default_set[++ndefault_set] = $0;
next
}
# Collect all lib lines before emitting anything, so DEFAULT
# can be interspersed.
{
- lib = number = $2;
+ lib = number = $1;
sub(/=.*$/, "", lib);
sub(/^.*=/, "", number);
- if ((thiscf FS lib) in numbers) next;
- numbers[thiscf FS lib] = number;
- order[thiscf FS lib] = ++order_n;
- if (NF > 2) {
- $1 = $2 = "";
- versions[thiscf FS lib] = $0
+ if (lib in numbers) next;
+ numbers[lib] = number;
+ order[lib] = ++order_n;
+ if (NF > 1) {
+ $1 = "";
+ versions[lib] = $0
}
}
END {
- for (elt in numbers) {
- split(elt, x);
- cf = x[1];
- lib = x[2];
- for (c in configs)
- if (c ~ cf) {
- if (elt in versions)
- set = versions[elt];
- else {
- set = (c == config) ? default_setname : "";
- for (i = 1; i <= ndefault_set; ++i) {
- split(default_set[i], x, "\n");
- if (c ~ x[1]) {
- set = x[2];
- break;
- }
- }
- }
- line = set ? (lib FS numbers[elt] FS set) : (lib FS numbers[elt]);
- if (!((c FS lib) in lineorder) || order[elt] < lineorder[c FS lib]) {
- lineorder[c FS lib] = order[elt];
- lines[c FS lib] = configs[c] FS line;
- }
- }
+ for (lib in numbers) {
+ if (lib in versions)
+ set = versions[lib];
+ else {
+ set = default_setname;
+ if (ndefault_set >= 1)
+ set = default_set[1];
+ }
+ line = set ? (lib FS numbers[lib] FS set) : (lib FS numbers[lib]);
+ if (!(lib in lineorder) || order[lib] < lineorder[lib]) {
+ lineorder[lib] = order[lib];
+ lines[lib] = "DEFAULT" FS line;
+ }
}
for (c in lines) {
print lines[c]
diff --git a/shlib-versions b/shlib-versions
index d34dea8e42..e05b248e8d 100644
--- a/shlib-versions
+++ b/shlib-versions
@@ -1,72 +1,73 @@
# This file (and shlib-versions files in sysdeps directories) defines
# the shared library version numbers we will install.
-# The following lines list filename patterns matching canonical configurations,
-# and the associated versions to use for various libraries. The entire
-# list is processed, with earlier entries taking precedence over later
-# entries. So loose patterns at the end of the list can give defaults.
+# The following lines list the associated versions to use for various
+# libraries. The entire list is processed, with earlier entries
+# taking precedence over later entries (and the files from sysdeps
+# directories coming before those from other subdirectories, which
+# come before this file).
# This file can use cpp-style conditionals starting with % instead of #
# to test the symbols defined in config.h by configure.
-# In the optional third column, there can one or more symbol set names
+# In the optional second column, there can one or more symbol set names
# listed, which must be in ascending version order reading left to right
# and must appear in this same order in the Versions.def file. Each listed
# version subsumes all prior versions back to the previous listed version.
#
-# An entry with DEFAULT in the second column gives a default third column
-# 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.
+# An entry with DEFAULT in the first column gives a default second
+# column to apply when the matching entry for a particular library has
+# no second column. The defaults must precede the entries they apply
+# to.
-# Configuration Library=version Earliest symbol set (optional)
-# ------------- --------------- ------------------------------
+# Library=version Earliest symbol set (optional)
+# --------------- ------------------------------
# We use the ELF ABI standard name for the default.
-.*-.*-.* ld=ld.so.1
+ld=ld.so.1
# The -ldl interface (see <dlfcn.h>) is the same on all platforms.
-.*-.*-.* libdl=2
+libdl=2
# So far the -lutil interface is the same on all platforms, except for the
# `struct utmp' format, which depends on libc.
-.*-.*-.* libutil=1
+libutil=1
# Version number 2 is used on other systems for the BIND 4.9.5 resolver
# interface.
-.*-.*-.* libresolv=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.
-.*-.*-.* libnss_files=2
-.*-.*-.* libnss_dns=2
-.*-.*-.* libnss_compat=2
-.*-.*-.* libnss_nis=2
-.*-.*-.* libnss_nisplus=2
-.*-.*-.* libnss_ldap=2
-.*-.*-.* libnss_hesiod=2
-.*-.*-.* libnss_db=2
+libnss_files=2
+libnss_dns=2
+libnss_compat=2
+libnss_nis=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
+libnss_test1=2
# Version for libnsl with YP and NIS+ functions.
-.*-.*-.* libnsl=1
+libnsl=1
# This defines the shared library version numbers we will install.
-.*-.*-.* libcrypt=1
+libcrypt=1
# The gross patch for programs assuming broken locale implementations.
-.*-.*-.* libBrokenLocale=1
+libBrokenLocale=1
# The real-time library from POSIX.1b.
-.*-.*-.* librt=1
+librt=1
# The asynchronous name lookup library.
-.*-.*-.* libanl=1
+libanl=1
# This defines the libgcc soname version this glibc is to load for
# asynchronous cancellation to work correctly.
-.*-.*-.* libgcc_s=1
+libgcc_s=1
diff --git a/sysdeps/hppa/shlib-versions b/sysdeps/hppa/shlib-versions
index ae3a3f195f..34e9347125 100644
--- a/sysdeps/hppa/shlib-versions
+++ b/sysdeps/hppa/shlib-versions
@@ -1 +1 @@
-hppa.*-.*-.* libgcc_s=4
+libgcc_s=4
diff --git a/sysdeps/m68k/shlib-versions b/sysdeps/m68k/shlib-versions
index b65b00b212..c8db251c22 100644
--- a/sysdeps/m68k/shlib-versions
+++ b/sysdeps/m68k/shlib-versions
@@ -1 +1 @@
-m68k-.*-linux.* libgcc_s=2
+libgcc_s=2
diff --git a/sysdeps/mach/hurd/shlib-versions b/sysdeps/mach/hurd/shlib-versions
index f79c6331b5..edbc3014a6 100644
--- a/sysdeps/mach/hurd/shlib-versions
+++ b/sysdeps/mach/hurd/shlib-versions
@@ -1,12 +1,12 @@
-.*-.*-gnu-gnu.* DEFAULT GLIBC_2.2.6
+DEFAULT GLIBC_2.2.6
-.*-.*-gnu-gnu.* libm=6
+libm=6
# libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
-.*-.*-gnu-gnu.* libmachuser=1
+libmachuser=1
# libhurduser.so.0.3 corresponds to hurd/*.defs as of 11 June 2002.
-.*-.*-gnu-gnu.* libhurduser=0.3
+libhurduser=0.3
# libc.so.0.3 is the first Hurd libc using libio.
-.*-.*-gnu-gnu.* libc=0.3
+libc=0.3
diff --git a/sysdeps/unix/sysv/linux/aarch64/shlib-versions b/sysdeps/unix/sysv/linux/aarch64/shlib-versions
index 67f19119aa..e1768a7361 100644
--- a/sysdeps/unix/sysv/linux/aarch64/shlib-versions
+++ b/sysdeps/unix/sysv/linux/aarch64/shlib-versions
@@ -1,7 +1,7 @@
-aarch64.*-.*-linux.* DEFAULT GLIBC_2.17
+DEFAULT GLIBC_2.17
%ifdef HAVE_AARCH64_BE
-aarch64.*-.*-linux.* ld=ld-linux-aarch64_be.so.1
+ld=ld-linux-aarch64_be.so.1
%else
-aarch64.*-.*-linux.* ld=ld-linux-aarch64.so.1
+ld=ld-linux-aarch64.so.1
%endif
diff --git a/sysdeps/unix/sysv/linux/alpha/shlib-versions b/sysdeps/unix/sysv/linux/alpha/shlib-versions
index cd4b9af78d..cd913c257c 100644
--- a/sysdeps/unix/sysv/linux/alpha/shlib-versions
+++ b/sysdeps/unix/sysv/linux/alpha/shlib-versions
@@ -1,14 +1,14 @@
-alpha.*-.*-linux.* libm=6.1
-alpha.*-.*-linux.* libc=6.1
+libm=6.1
+libc=6.1
-alpha.*-.*-linux.* ld=ld-linux.so.2
+ld=ld-linux.so.2
-alpha.*-.*-linux.* libdl=2.1
+libdl=2.1
-alpha.*-.*-linux.* libutil=1.1
+libutil=1.1
-alpha.*-.*-linux.* libresolv=2.1
+libresolv=2.1
-alpha.*-.*-linux.* libnsl=1.1
-alpha.*-.*-linux.* libcrypt=1.1
-alpha.*-.*-linux.* libBrokenLocale=1.1
+libnsl=1.1
+libcrypt=1.1
+libBrokenLocale=1.1
diff --git a/sysdeps/unix/sysv/linux/arm/shlib-versions b/sysdeps/unix/sysv/linux/arm/shlib-versions
index 1ac597abbb..9b169530d4 100644
--- a/sysdeps/unix/sysv/linux/arm/shlib-versions
+++ b/sysdeps/unix/sysv/linux/arm/shlib-versions
@@ -1,9 +1,9 @@
-arm.*-.*-linux-gnueabi.* DEFAULT GLIBC_2.4
+DEFAULT GLIBC_2.4
%ifdef HAVE_ARM_PCS_VFP
# The EABI-derived hard-float ABI uses a new dynamic linker.
-arm.*-.*-linux-gnueabi.* ld=ld-linux-armhf.so.3
+ld=ld-linux-armhf.so.3
%else
# The EABI-derived soft-float ABI continues to use ld-linux.so.3.
-arm.*-.*-linux-gnueabi.* ld=ld-linux.so.3
+ld=ld-linux.so.3
%endif
diff --git a/sysdeps/unix/sysv/linux/hppa/shlib-versions b/sysdeps/unix/sysv/linux/hppa/shlib-versions
index ee46e4ab00..3a2d496220 100644
--- a/sysdeps/unix/sysv/linux/hppa/shlib-versions
+++ b/sysdeps/unix/sysv/linux/hppa/shlib-versions
@@ -1,9 +1,9 @@
-hppa.*-.*-.* libm=6 GLIBC_2.2
+libm=6 GLIBC_2.2
-hppa.*-.*-.* libc=6 GLIBC_2.2
+libc=6 GLIBC_2.2
-hppa.*-.*-.* ld=ld.so.1 GLIBC_2.2
+ld=ld.so.1 GLIBC_2.2
-hppa-.*-.* libBrokenLocale=1 GLIBC_2.2
+libBrokenLocale=1 GLIBC_2.2
-hppa.*-.*-linux.* libpthread=0 GLIBC_2.2
+libpthread=0 GLIBC_2.2
diff --git a/sysdeps/unix/sysv/linux/ia64/shlib-versions b/sysdeps/unix/sysv/linux/ia64/shlib-versions
index c8e1482892..37374c0e20 100644
--- a/sysdeps/unix/sysv/linux/ia64/shlib-versions
+++ b/sysdeps/unix/sysv/linux/ia64/shlib-versions
@@ -1,8 +1,8 @@
-ia64-.*-linux.* libc=6.1 GLIBC_2.2
-ia64-.*-linux.* libm=6.1 GLIBC_2.2
+libc=6.1 GLIBC_2.2
+libm=6.1 GLIBC_2.2
-ia64-.*-linux.* ld=ld-linux-ia64.so.2 GLIBC_2.2
+ld=ld-linux-ia64.so.2 GLIBC_2.2
-ia64-.*-.* libBrokenLocale=1 GLIBC_2.2
+libBrokenLocale=1 GLIBC_2.2
-ia64.*-.*-linux.* libpthread=0 GLIBC_2.2
+libpthread=0 GLIBC_2.2
diff --git a/sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions b/sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions
index f4c68b2a51..4309e4a368 100644
--- a/sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions
+++ b/sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions
@@ -1 +1 @@
-m68k-.*-linux.* DEFAULT GLIBC_2.4
+DEFAULT GLIBC_2.4
diff --git a/sysdeps/unix/sysv/linux/microblaze/shlib-versions b/sysdeps/unix/sysv/linux/microblaze/shlib-versions
index 6ec43db15b..eaf37a118e 100644
--- a/sysdeps/unix/sysv/linux/microblaze/shlib-versions
+++ b/sysdeps/unix/sysv/linux/microblaze/shlib-versions
@@ -1 +1 @@
-microblaze.*-.*-linux.* DEFAULT GLIBC_2.18
+DEFAULT GLIBC_2.18
diff --git a/sysdeps/unix/sysv/linux/mips/shlib-versions b/sysdeps/unix/sysv/linux/mips/shlib-versions
index d1414ede64..c5bd7db098 100644
--- a/sysdeps/unix/sysv/linux/mips/shlib-versions
+++ b/sysdeps/unix/sysv/linux/mips/shlib-versions
@@ -1,27 +1,27 @@
-mips.*-.*-linux.* libm=6 GLIBC_2.0 GLIBC_2.2
+libm=6 GLIBC_2.0 GLIBC_2.2
# Working mips versions were never released between 2.0 and 2.2.
-mips.*-.*-linux.* libc=6 GLIBC_2.0 GLIBC_2.2
+libc=6 GLIBC_2.0 GLIBC_2.2
%ifdef HAVE_MIPS_NAN2008
-mips.*-.*-linux.* ld=ld-linux-mipsn8.so.1 GLIBC_2.0 GLIBC_2.2
+ld=ld-linux-mipsn8.so.1 GLIBC_2.0 GLIBC_2.2
%else
-mips.*-.*-linux.* ld=ld.so.1 GLIBC_2.0 GLIBC_2.2
+ld=ld.so.1 GLIBC_2.0 GLIBC_2.2
%endif
-mips.*-.*-linux.* libdl=2 GLIBC_2.0 GLIBC_2.2
+libdl=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libresolv=2 GLIBC_2.0 GLIBC_2.2
+libresolv=2 GLIBC_2.0 GLIBC_2.2
-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 GLIBC_2.0 GLIBC_2.2
+libnss_dns=2 GLIBC_2.0 GLIBC_2.2
+libnss_compat=2 GLIBC_2.0 GLIBC_2.2
+libnss_nis=2 GLIBC_2.0 GLIBC_2.2
+libnss_nisplus=2 GLIBC_2.0 GLIBC_2.2
+libnss_ldap=2 GLIBC_2.0 GLIBC_2.2
+libnss_hesiod=2 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libnsl=1 GLIBC_2.0 GLIBC_2.2
+libnsl=1 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* librt=1 GLIBC_2.0 GLIBC_2.2
+librt=1 GLIBC_2.0 GLIBC_2.2
-mips.*-.*-linux.* libpthread=0 GLIBC_2.0 GLIBC_2.2
+libpthread=0 GLIBC_2.0 GLIBC_2.2
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions b/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions
index 1febda46d0..0b83af114e 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions
@@ -1,7 +1,7 @@
%ifdef HAVE_ELFV2_ABI
-powerpc.*le-.*-linux.* DEFAULT GLIBC_2.17
-powerpc.*le-.*-linux.* libpthread=0 GLIBC_2.17
+DEFAULT GLIBC_2.17
+libpthread=0 GLIBC_2.17
%else
-powerpc64-.*-linux.* DEFAULT GLIBC_2.3
-powerpc64-.*-linux.* libpthread=0 GLIBC_2.3
+DEFAULT GLIBC_2.3
+libpthread=0 GLIBC_2.3
%endif
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions b/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions
index cab0c0b2fa..31edcfc4e1 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions
@@ -1,2 +1,2 @@
-s390x-.*-linux.* DEFAULT GLIBC_2.2
-s390x-.*-linux.* libpthread=0 GLIBC_2.2
+DEFAULT GLIBC_2.2
+libpthread=0 GLIBC_2.2
diff --git a/sysdeps/unix/sysv/linux/sh/shlib-versions b/sysdeps/unix/sysv/linux/sh/shlib-versions
index c376fe8011..9333bbd7a3 100644
--- a/sysdeps/unix/sysv/linux/sh/shlib-versions
+++ b/sysdeps/unix/sysv/linux/sh/shlib-versions
@@ -1,5 +1,5 @@
-sh.*-.*-linux.* libm=6 GLIBC_2.2
-sh.*-.*-linux.* libc=6 GLIBC_2.2
-sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
-sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2
-sh.*-.*-linux.* libpthread=0 GLIBC_2.2
+libm=6 GLIBC_2.2
+libc=6 GLIBC_2.2
+ld=ld-linux.so.2 GLIBC_2.2
+libBrokenLocale=1 GLIBC_2.2
+libpthread=0 GLIBC_2.2
diff --git a/sysdeps/unix/sysv/linux/shlib-versions b/sysdeps/unix/sysv/linux/shlib-versions
index 2c06a8e40c..9160557733 100644
--- a/sysdeps/unix/sysv/linux/shlib-versions
+++ b/sysdeps/unix/sysv/linux/shlib-versions
@@ -1,2 +1,2 @@
-.*-.*-linux.* libm=6
-.*-.*-linux.* libc=6
+libm=6
+libc=6
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions b/sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions
index 26ca1f4858..ca5d15b1df 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions
@@ -1 +1 @@
-sparc.*-.*-linux.* ld=ld-linux.so.2
+ld=ld-linux.so.2
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions b/sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions
index 58d2c241ed..9333bbd7a3 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions
@@ -1,5 +1,5 @@
-sparc64.*-.*-linux.* libm=6 GLIBC_2.2
-sparc64.*-.*-linux.* libc=6 GLIBC_2.2
-sparc64.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
-sparc64.*-.*-.* libBrokenLocale=1 GLIBC_2.2
-sparc64.*-.*-linux.* libpthread=0 GLIBC_2.2
+libm=6 GLIBC_2.2
+libc=6 GLIBC_2.2
+ld=ld-linux.so.2 GLIBC_2.2
+libBrokenLocale=1 GLIBC_2.2
+libpthread=0 GLIBC_2.2
diff --git a/sysdeps/unix/sysv/linux/tile/shlib-versions b/sysdeps/unix/sysv/linux/tile/shlib-versions
index f50868ff64..b4360d35e1 100644
--- a/sysdeps/unix/sysv/linux/tile/shlib-versions
+++ b/sysdeps/unix/sysv/linux/tile/shlib-versions
@@ -1,2 +1,2 @@
# glibc 2.12 was released to customers; 2.15 was the first community version.
-tile.*-.*-linux-gnu DEFAULT GLIBC_2.12 GLIBC_2.15
+DEFAULT GLIBC_2.12 GLIBC_2.15
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions b/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions
index 90ea1b79af..3d28722178 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions
+++ b/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions
@@ -1,4 +1,4 @@
-# Configuration DEFAULT Earliest symbol set
-# ------------- --------------- ------------------------------
-x86_64-.*-linux.* DEFAULT GLIBC_2.2.5
-x86_64-.*-linux.* libpthread=0 GLIBC_2.2.5
+# DEFAULT Earliest symbol set
+# --------------- ------------------------------
+DEFAULT GLIBC_2.2.5
+libpthread=0 GLIBC_2.2.5
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions b/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions
index 8dd73e487d..e4db8b92ef 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions
@@ -1,4 +1,4 @@
-# Configuration DEFAULT Earliest symbol set
-# ------------- --------------- ------------------------------
-x86_64-.*-linux.* DEFAULT GLIBC_2.16
-x86_64-.*-linux.* libpthread=0 GLIBC_2.16
+# DEFAULT Earliest symbol set
+# --------------- ------------------------------
+DEFAULT GLIBC_2.16
+libpthread=0 GLIBC_2.16