]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
scripts/versions.awk: Add local: * to all version nodes
authorFlorian Weimer <fweimer@redhat.com>
Wed, 2 Jun 2021 05:32:19 +0000 (07:32 +0200)
committerFlorian Weimer <fweimer@redhat.com>
Wed, 2 Jun 2021 05:32:44 +0000 (07:32 +0200)
This requires that all exported symbol versions are listed in
Versions files.  It results in more consistent behavior across
architectures because previously, symbols could be exported
via explicit versioned_symbol and compat_symbol macros if the
version node existed in some Versions file (without listing the
symbol), and it was not the base version for the library (which
already had the local: * directive).

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
scripts/versions.awk

index 3291123666c8e773197f176c6270794ec67ff0ac..a7154480e321ae7d7025a51860d9d346598ab5ac 100644 (file)
@@ -95,10 +95,7 @@ function ord(c) {
 
 
 function closeversion(name, oldname) {
-  if (firstinfile) {
-    printf("  local:\n    *;\n") > outfile;
-    firstinfile = 0;
-  }
+  printf("  local:\n    *;\n") > outfile;
   # This version inherits from the last one only if they
   # have the same nonnumeric prefix, i.e. GLIBC_x.y and GLIBC_x.z
   # or FOO_x and FOO_y but not GLIBC_x and FOO_y.
@@ -157,7 +154,6 @@ END {
       oldlib = $1;
       real_outfile = buildroot oldlib ".map";
       outfile = real_outfile "T";
-      firstinfile = 1;
       veryoldver = "";
       printf(" %s.map", oldlib);
     }