1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00

* scripts/firstversions.awk: When encountering a version newer than

the specified earliest version, be sure to emit the specified earliest
	version first if any renaming of an older version to that has been.
This commit is contained in:
Roland McGrath
2002-08-22 07:22:03 +00:00
parent 90d1d40b27
commit 5015cde4c8
2 changed files with 27 additions and 6 deletions

View File

@ -27,20 +27,35 @@ $1 == "}" {
if ((thislib, idx[thislib]) in firstversion) {
# XXX relative string comparison loses if we ever have multiple digits
# between dots in GLIBC_x.y[.z] names.
f = firstversion[thislib, idx[thislib]];
v = f;
f = v = firstversion[thislib, idx[thislib]];
while ($1 >= v) {
firstversion[thislib, idx[thislib]] = 0;
delete firstversion[thislib, idx[thislib]];
idx[thislib]++;
if ((thislib, idx[thislib]) in firstversion)
v = firstversion[thislib, idx[thislib]];
else
break;
}
if ($1 >= v || $1 == f)
if ($1 == v || $1 == f)
# This version was the specified earliest version itself.
print;
else
print $1, "=", v;
else if ($1 < v) {
# This version is older than the specified earliest version.
print " " $1, "=", v;
# Record that V has been referred to, so we will be sure to emit it
# if we hit a later one without hitting V itself.
usedversion[thislib, v] = 1;
}
else {
# This version is newer than the specified earliest version.
# We haven't seen that version itself or else we wouldn't be here
# because we would have removed it from the firstversion array.
# If there were any earlier versions that used that one, emit it now.
if ((thislib, v) in usedversion) {
print " " v;
}
print " " $1;
}
}
else
print;