This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Don't check ABI for _nl_default_dirname


From: Andi Kleen <ak@linux.intel.com>

As discussed in http://comments.gmane.org/gmane.comp.lib.glibc.alpha/24671

The ABI of _nl_default_dirname depends on the prefix glibc is compiled with.
For glibcs with non standard prefix _nl_default_dirname changes,
which causes the ABI check in make check to fail.

The workaround of always configuring with --prefix=/usr didn't really
work for me because I would have needed to reconfigured/recompiled
glibc to do any testing outside the test suite.

I used to just change to symbol locally, but when I want to test
both 32bit and 64bit glibcs in different locations this doesn't
work either because they need different values.

This patch fixes this problem once for all.
Simply don't check this symbol by filtering it out before any checks.

This also requires removing it from the reference files. This is what
makes the patch relatively large because there are so many copies.
But essentially it's a awk one liner.

2012-12-06  Andi Kleen <ak@linux.intel.com>

        * scripts/abilist.awk: Filter out _nl_default_dirname
        * ports/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist: Remove _nl_default_dirname.
        * ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist: dito.
        * ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/i386/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/sh/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist: dito.
        * sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist: dito.
---
 .../unix/sysv/linux/aarch64/nptl/libc.abilist      |    1 -
 .../unix/sysv/linux/alpha/nptl/libc.abilist        |    1 -
 .../sysdeps/unix/sysv/linux/arm/nptl/libc.abilist  |    1 -
 .../sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist |    1 -
 .../sysv/linux/m68k/coldfire/nptl/libc.abilist     |    1 -
 .../unix/sysv/linux/m68k/m680x0/nptl/libc.abilist  |    1 -
 .../unix/sysv/linux/mips/mips32/nptl/libc.abilist  |    1 -
 .../sysv/linux/mips/mips64/n32/nptl/libc.abilist   |    1 -
 .../sysv/linux/mips/mips64/n64/nptl/libc.abilist   |    1 -
 .../powerpc/powerpc32/nofpu/nptl/libc.abilist      |    1 -
 .../linux/tile/tilegx/tilegx32/nptl/libc.abilist   |    1 -
 .../linux/tile/tilegx/tilegx64/nptl/libc.abilist   |    1 -
 .../unix/sysv/linux/tile/tilepro/nptl/libc.abilist |    1 -
 scripts/abilist.awk                                |    3 +++
 sysdeps/unix/sysv/linux/i386/nptl/libc.abilist     |    1 -
 .../linux/powerpc/powerpc32/fpu/nptl/libc.abilist  |    1 -
 .../sysv/linux/powerpc/powerpc64/nptl/libc.abilist |    1 -
 .../unix/sysv/linux/s390/s390-32/nptl/libc.abilist |    1 -
 .../unix/sysv/linux/s390/s390-64/nptl/libc.abilist |    1 -
 sysdeps/unix/sysv/linux/sh/nptl/libc.abilist       |    1 -
 .../sysv/linux/sparc/sparc32/nptl/libc.abilist     |    1 -
 .../sysv/linux/sparc/sparc64/nptl/libc.abilist     |    1 -
 .../unix/sysv/linux/x86_64/64/nptl/libc.abilist    |    1 -
 .../unix/sysv/linux/x86_64/x32/nptl/libc.abilist   |    1 -
 24 files changed, 3 insertions(+), 23 deletions(-)

diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist
index f83e880..e8f20fd 100644
--- a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/aarch64/nptl/libc.abilist
@@ -529,7 +529,6 @@ GLIBC_2.17
  _libc_intl_domainname D 0x5
  _longjmp F
  _mcleanup F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist
index 1d0cc7e..7b1725f 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/alpha/nptl/libc.abilist
@@ -267,7 +267,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist
index ceab6b2..fbf16a1 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/arm/nptl/libc.abilist
@@ -601,7 +601,6 @@ GLIBC_2.4
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist
index b3510fe..615a1b8 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/ia64/nptl/libc.abilist
@@ -516,7 +516,6 @@ GLIBC_2.2
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist
index 3c40379..ca52a73 100644
--- a/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/m68k/coldfire/nptl/libc.abilist
@@ -589,7 +589,6 @@ GLIBC_2.4
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist
index f998b1b..d9b7d67 100644
--- a/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/m68k/m680x0/nptl/libc.abilist
@@ -258,7 +258,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
index 7378869..ebe6527 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
@@ -255,7 +255,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
index df2e637..ca014e7 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
@@ -255,7 +255,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist
index 22b3068..2ecc931 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/n64/nptl/libc.abilist
@@ -253,7 +253,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
index 0efc6b5..5dc50af 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
@@ -268,7 +268,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist
index d79b2df..d0d01f2 100644
--- a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/nptl/libc.abilist
@@ -524,7 +524,6 @@ GLIBC_2.12
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist
index f617405..b68ca20 100644
--- a/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/nptl/libc.abilist
@@ -524,7 +524,6 @@ GLIBC_2.12
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist
index d79b2df..d0d01f2 100644
--- a/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/tile/tilepro/nptl/libc.abilist
@@ -524,7 +524,6 @@ GLIBC_2.12
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/scripts/abilist.awk b/scripts/abilist.awk
index 6d58f66..e98852e 100644
--- a/scripts/abilist.awk
+++ b/scripts/abilist.awk
@@ -37,6 +37,9 @@ $4 == "*UND*" { next }
 # Skip locals.
 $2 == "l" { next }
 
+# ignore _nl_default_dirname which changes with prefix changes
+/_nl_default_dirname/ { next }
+
 # If the target uses ST_OTHER, it will be output before the symbol name.
 $2 == "g" || $2 == "w" && (NF == 7 || NF == 8) {
   weak = $2;
diff --git a/sysdeps/unix/sysv/linux/i386/nptl/libc.abilist b/sysdeps/unix/sysv/linux/i386/nptl/libc.abilist
index 67d5929..3968181 100644
--- a/sysdeps/unix/sysv/linux/i386/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/nptl/libc.abilist
@@ -258,7 +258,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
index 8e45958..7efe1e4 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/nptl/libc.abilist
@@ -268,7 +268,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist
index 8eaaccd..77a3be8 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/nptl/libc.abilist
@@ -512,7 +512,6 @@ GLIBC_2.3
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist
index d9914ff..9348252 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/nptl/libc.abilist
@@ -258,7 +258,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist
index ef1ead3..fd54884 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/nptl/libc.abilist
@@ -518,7 +518,6 @@ GLIBC_2.2
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/sysdeps/unix/sysv/linux/sh/nptl/libc.abilist b/sysdeps/unix/sysv/linux/sh/nptl/libc.abilist
index 733b550..e3ab68c 100644
--- a/sysdeps/unix/sysv/linux/sh/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sh/nptl/libc.abilist
@@ -512,7 +512,6 @@ GLIBC_2.2
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist
index 3a96ea8..91f0121 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/nptl/libc.abilist
@@ -260,7 +260,6 @@ GLIBC_2.0
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist
index aa892b8..eebc6c1 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/nptl/libc.abilist
@@ -554,7 +554,6 @@ GLIBC_2.2
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist
index a42d424..606a161 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/nptl/libc.abilist
@@ -513,7 +513,6 @@ GLIBC_2.2.5
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x8
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0x18
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist
index 108b80f..f622c59 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/nptl/libc.abilist
@@ -533,7 +533,6 @@ GLIBC_2.16
  _longjmp F
  _mcleanup F
  _mcount F
- _nl_default_dirname D 0x12
  _nl_domain_bindings D 0x4
  _nl_msg_cat_cntr D 0x4
  _null_auth D 0xc
-- 
1.7.7.6


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]