mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-08 17:42:12 +03:00
Tweak redirection handling in last change.
This commit is contained in:
@@ -3,9 +3,9 @@
|
|||||||
|
|
||||||
BEGIN {
|
BEGIN {
|
||||||
if (parse_names)
|
if (parse_names)
|
||||||
out = "/dev/stderr";
|
defout = "/dev/stderr";
|
||||||
else
|
else
|
||||||
out = "/dev/stdout";
|
defout = "/dev/stdout";
|
||||||
}
|
}
|
||||||
|
|
||||||
# Per-file header.
|
# Per-file header.
|
||||||
@@ -62,11 +62,11 @@ $2 == "g" || $2 == "w" && NF == 7 {
|
|||||||
size = "";
|
size = "";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
print symbol, version, weak, "?", type, $4, $5 >> out;
|
print symbol, version, weak, "?", type, $4, $5 > defout;
|
||||||
next;
|
next;
|
||||||
}
|
}
|
||||||
if (size == " 0x") {
|
if (size == " 0x") {
|
||||||
print symbol, version, weak, "?", type, $4, $5 >> out;
|
print symbol, version, weak, "?", type, $4, $5 > defout;
|
||||||
next;
|
next;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -87,20 +87,10 @@ $2 == "g" || $2 == "w" && NF == 7 {
|
|||||||
NF == 0 || /DYNAMIC SYMBOL TABLE/ || /file format/ { next }
|
NF == 0 || /DYNAMIC SYMBOL TABLE/ || /file format/ { next }
|
||||||
|
|
||||||
{
|
{
|
||||||
print "Don't grok this line:", $0 >> out
|
print "Don't grok this line:", $0 > defout
|
||||||
}
|
}
|
||||||
|
|
||||||
function emit(tofile) {
|
function emit(tofile) {
|
||||||
if (tofile) {
|
|
||||||
out = prefix soname ".symlist";
|
|
||||||
if (soname in outfiles)
|
|
||||||
out = out "." ++outfiles[soname];
|
|
||||||
else
|
|
||||||
outfiles[soname] = 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
out = "/dev/stdout";
|
|
||||||
|
|
||||||
nverlist = 0;
|
nverlist = 0;
|
||||||
for (version in versions) {
|
for (version in versions) {
|
||||||
if (nverslist == 0) {
|
if (nverslist == 0) {
|
||||||
@@ -129,17 +119,33 @@ function emit(tofile) {
|
|||||||
++nverslist;
|
++nverslist;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (tofile) {
|
||||||
|
out = prefix soname ".symlist";
|
||||||
|
if (soname in outfiles)
|
||||||
|
out = out "." ++outfiles[soname];
|
||||||
|
else
|
||||||
|
outfiles[soname] = 1;
|
||||||
|
printf "" > out;
|
||||||
|
}
|
||||||
|
|
||||||
split(verslist, order, "\n");
|
split(verslist, order, "\n");
|
||||||
for (i = 1; i <= nverslist; ++i) {
|
for (i = 1; i <= nverslist; ++i) {
|
||||||
version = order[i];
|
version = order[i];
|
||||||
|
|
||||||
|
if (tofile) {
|
||||||
print version >> out;
|
print version >> out;
|
||||||
|
close(out);
|
||||||
outpipe = "sort >> " out;
|
outpipe = "sort >> " out;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
outpipe = "sort";
|
||||||
print versions[version] | outpipe;
|
print versions[version] | outpipe;
|
||||||
close(outpipe);
|
close(outpipe);
|
||||||
|
|
||||||
delete versions[version];
|
delete versions[version];
|
||||||
}
|
}
|
||||||
|
for (version in versions)
|
||||||
|
delete versions[version];
|
||||||
|
|
||||||
if (tofile)
|
if (tofile)
|
||||||
print "wrote", out, "for", sofullname;
|
print "wrote", out, "for", sofullname;
|
||||||
|
Reference in New Issue
Block a user