From 5e63c240a22c70d928e5c645f913d59074afd329 Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Fri, 30 Nov 2018 16:03:29 +0100 Subject: [PATCH] scripts/abilist.awk: Handle special _end symbol for Hurd Hurd has this in libc.so: 0024db9c g D .bss 00000000 GLIBC_2.2.6 _end This g/D combination was not recognized before. --- ChangeLog | 7 +++++++ scripts/abilist.awk | 11 +++++++++-- sysdeps/mach/hurd/i386/libc.abilist | 2 +- 3 files changed, 17 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index a18691ddf8..bb53b641a8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2018-11-30 Florian Weimer + + * scripts/abilist.awk: Print "0x0" for size 0. Handle "g"/"D". + Extend error logging. + * sysdeps/mach/hurd/i386/libc.abilist (GLIBC_2.2.6): Adjust _end + symbol. + 2018-11-30 Adhemerval Zanella * sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Use diff --git a/scripts/abilist.awk b/scripts/abilist.awk index b40be91f82..a43400d5b4 100644 --- a/scripts/abilist.awk +++ b/scripts/abilist.awk @@ -42,7 +42,11 @@ $2 == "g" || $2 == "w" && (NF == 7 || NF == 8) { type = $3; size = $5; sub(/^0*/, "", size); - size = " 0x" size; + if (size == "") { + size = " 0x0"; + } else { + size = " 0x" size; + } version = $6; symbol = $NF; gsub(/[()]/, "", version); @@ -73,6 +77,9 @@ $2 == "g" || $2 == "w" && (NF == 7 || NF == 8) { else if ($4 == "*ABS*") { next; } + else if (type == "D") { + # Accept unchanged. + } else if (type == "DO") { type = "D"; } @@ -89,7 +96,7 @@ $2 == "g" || $2 == "w" && (NF == 7 || NF == 8) { size = ""; } else { - print "ERROR: Unable to handle this type of symbol." + print "ERROR: Unable to handle this type of symbol:", $0 exit 1 } diff --git a/sysdeps/mach/hurd/i386/libc.abilist b/sysdeps/mach/hurd/i386/libc.abilist index d4c4a91c84..f3993cf994 100644 --- a/sysdeps/mach/hurd/i386/libc.abilist +++ b/sysdeps/mach/hurd/i386/libc.abilist @@ -554,7 +554,7 @@ GLIBC_2.2.6 __xstat64 F GLIBC_2.2.6 _authenticate F GLIBC_2.2.6 _dl_mcount_wrapper F GLIBC_2.2.6 _dl_mcount_wrapper_check F -GLIBC_2.2.6 _end GLIBC_2.2.6 g ? D .bss 00000000 +GLIBC_2.2.6 _end D 0x0 GLIBC_2.2.6 _environ D 0x4 GLIBC_2.2.6 _exit F GLIBC_2.2.6 _flushlbf F