mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-24 10:22:41 +08:00
* scripts/abilist.awk: When given -v combine=1, do parse_names and
emit a single output stream with lib name in stanza header lines. * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
This commit is contained in:
parent
c6acf1e304
commit
7e30918b78
@ -1,3 +1,10 @@
|
|||||||
|
2003-03-28 Roland McGrath <roland@redhat.com>
|
||||||
|
|
||||||
|
* scripts/abilist.awk: When given -v combine=1, do parse_names and
|
||||||
|
emit a single output stream with lib name in stanza header lines.
|
||||||
|
|
||||||
|
* scripts/abilist.awk: Emit A for all *ABS* regardless of type.
|
||||||
|
|
||||||
2003-03-27 Roland McGrath <roland@redhat.com>
|
2003-03-27 Roland McGrath <roland@redhat.com>
|
||||||
|
|
||||||
* sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
|
* sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
# into a simple format that should not change when the ABI is not changing.
|
# into a simple format that should not change when the ABI is not changing.
|
||||||
|
|
||||||
BEGIN {
|
BEGIN {
|
||||||
if (parse_names)
|
if (combine_fullname)
|
||||||
defout = "/dev/stderr";
|
combine = 1;
|
||||||
else
|
if (combine)
|
||||||
defout = "/dev/stdout";
|
parse_names = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
# Per-file header.
|
# Per-file header.
|
||||||
@ -43,6 +43,7 @@ $2 == "g" || $2 == "w" && NF == 7 {
|
|||||||
|
|
||||||
if (version == "GLIBC_PRIVATE") next;
|
if (version == "GLIBC_PRIVATE") next;
|
||||||
|
|
||||||
|
desc = "";
|
||||||
if (type == "D" && $4 == ".tbss") {
|
if (type == "D" && $4 == ".tbss") {
|
||||||
type = "T";
|
type = "T";
|
||||||
}
|
}
|
||||||
@ -50,7 +51,7 @@ $2 == "g" || $2 == "w" && NF == 7 {
|
|||||||
type = "O";
|
type = "O";
|
||||||
size = "";
|
size = "";
|
||||||
}
|
}
|
||||||
else if (type == "DO" && $4 == "*ABS*") {
|
else if ($4 == "*ABS*") {
|
||||||
type = "A";
|
type = "A";
|
||||||
size = "";
|
size = "";
|
||||||
}
|
}
|
||||||
@ -62,17 +63,16 @@ $2 == "g" || $2 == "w" && NF == 7 {
|
|||||||
size = "";
|
size = "";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
print symbol, version, weak, "?", type, $4, $5 > defout;
|
desc = symbol " " version " " weak " ? " type " " $4 " " $5;
|
||||||
next;
|
|
||||||
}
|
}
|
||||||
if (size == " 0x") {
|
if (size == " 0x") {
|
||||||
print symbol, version, weak, "?", type, $4, $5 > defout;
|
desc = symbol " " version " " weak " ? " type " " $4 " " $5;
|
||||||
next;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Disabled -- weakness should not matter to shared library ABIs any more.
|
# Disabled -- weakness should not matter to shared library ABIs any more.
|
||||||
#if (weak == "w") type = tolower(type);
|
#if (weak == "w") type = tolower(type);
|
||||||
desc = " " symbol " " type size;
|
if (desc == "")
|
||||||
|
desc = " " symbol " " type size;
|
||||||
|
|
||||||
if (version in versions) {
|
if (version in versions) {
|
||||||
versions[version] = versions[version] "\n" desc;
|
versions[version] = versions[version] "\n" desc;
|
||||||
@ -87,11 +87,11 @@ $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 > defout
|
print "Don't grok this line:", $0
|
||||||
}
|
}
|
||||||
|
|
||||||
function emit(tofile) {
|
function emit(tofile) {
|
||||||
nverlist = 0;
|
nverslist = 0;
|
||||||
for (version in versions) {
|
for (version in versions) {
|
||||||
if (nverslist == 0) {
|
if (nverslist == 0) {
|
||||||
verslist = version;
|
verslist = version;
|
||||||
@ -119,6 +119,9 @@ function emit(tofile) {
|
|||||||
++nverslist;
|
++nverslist;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (combine)
|
||||||
|
tofile = 0;
|
||||||
|
|
||||||
if (tofile) {
|
if (tofile) {
|
||||||
out = prefix soname ".symlist";
|
out = prefix soname ".symlist";
|
||||||
if (soname in outfiles)
|
if (soname in outfiles)
|
||||||
@ -137,8 +140,15 @@ function emit(tofile) {
|
|||||||
close(out);
|
close(out);
|
||||||
outpipe = "sort >> " out;
|
outpipe = "sort >> " out;
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
|
if (combine_fullname)
|
||||||
|
print prefix soname, version, sofullname;
|
||||||
|
else if (combine)
|
||||||
|
print prefix soname, version;
|
||||||
|
else
|
||||||
|
print version;
|
||||||
outpipe = "sort";
|
outpipe = "sort";
|
||||||
|
}
|
||||||
print versions[version] | outpipe;
|
print versions[version] | outpipe;
|
||||||
close(outpipe);
|
close(outpipe);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user