summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2003-03-30 22:17:05 +0000
committerRoland McGrath <roland@gnu.org>2003-03-30 22:17:05 +0000
commitd692f3f8c33e90f1f8255b20ef2ad0abb8c8e9bd (patch)
tree26e9c81ae6d6afc484c2a0eca17f6d090607888f /scripts
parent9ec8bbb113a7634e7ee2bad7090348c88a60d74b (diff)
* scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
Diffstat (limited to 'scripts')
-rw-r--r--scripts/abilist.awk10
1 files changed, 9 insertions, 1 deletions
diff --git a/scripts/abilist.awk b/scripts/abilist.awk
index c0b123f528..efadc1cbf8 100644
--- a/scripts/abilist.awk
+++ b/scripts/abilist.awk
@@ -12,6 +12,8 @@ BEGIN {
/[^ :]+\.so\.[0-9]+:[ ]+.file format .*$/ {
emit(0);
+ seen_opd = 0;
+
sofullname = $1;
sub(/:$/, "", sofullname);
soname = sofullname;
@@ -52,8 +54,11 @@ $2 == "g" || $2 == "w" && NF == 7 {
type = "T";
}
else if (type == "D" && $4 == ".opd") {
- type = "O";
+ type = "F";
size = "";
+ if (seen_opd < 0)
+ type = "O";
+ seen_opd = 1;
}
else if ($4 == "*ABS*") {
type = "A";
@@ -63,6 +68,9 @@ $2 == "g" || $2 == "w" && NF == 7 {
type = "D";
}
else if (type == "DF") {
+ if (symbol ~ /^\./ && seen_opd >= 0)
+ next;
+ seen_opd = -1;
type = "F";
size = "";
}