mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-23 03:10:05 +00:00
ba90e05052
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.
44 lines
922 B
Awk
44 lines
922 B
Awk
# awk script for shlib-versions.v -> soversions.i; see Makeconfig.
|
|
|
|
# Obey the first matching DEFAULT line.
|
|
$1 == "DEFAULT" {
|
|
$1 = "";
|
|
default_set[++ndefault_set] = $0;
|
|
next
|
|
}
|
|
|
|
# Collect all lib lines before emitting anything, so DEFAULT
|
|
# can be interspersed.
|
|
{
|
|
lib = number = $1;
|
|
sub(/=.*$/, "", lib);
|
|
sub(/^.*=/, "", number);
|
|
if (lib in numbers) next;
|
|
numbers[lib] = number;
|
|
order[lib] = ++order_n;
|
|
if (NF > 1) {
|
|
$1 = "";
|
|
versions[lib] = $0
|
|
}
|
|
}
|
|
|
|
END {
|
|
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]
|
|
}
|
|
}
|