From patchwork Mon Sep 8 17:48:39 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 2694 Received: (qmail 27217 invoked by alias); 8 Sep 2014 17:48:50 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 27198 invoked by uid 89); 8 Sep 2014 17:48:48 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.0 required=5.0 tests=AWL, BAYES_40 autolearn=ham version=3.3.2 X-HELO: relay1.mentorg.com Date: Mon, 8 Sep 2014 17:48:39 +0000 From: "Joseph S. Myers" To: CC: Adhemerval Zanella , Stefan Liebler , Kaz Kojima , "David S. Miller" Subject: Move architecture-specific shlib-versions entries to sysdeps files Message-ID: MIME-Version: 1.0 This patch eliminates another way in which ex-ports and non-ex-ports architectures differ, by moving architecture-specific entries from the top-level shlib-versions file and that in nptl/ to appropriate sysdeps directories. As with my previous patch , I do not change the regular expressions used; even where the present expressions seem more general, I believe they are in fact specific to the chosen sysdeps directory, because any port that matches the expression but not the sysdeps directory does not currently exist, and so would use different symbol versions if added in future (and an intended goal of these changes is to eliminate the first column in shlib-versions completely rather than having two different mechanisms in use for system-specific configuration). Tested on x86_64 that this does not change the installed shared libraries. (x86_64 of course does not provide much test coverage for this patch - what should be architecture-specific contents in shlib-versions for x86_64 is currently abi-*-ld-soname Makefile settings, until gnu/lib-names.h is generated more like gnu/stubs.h so those can move back to shlib-versions - so it would be useful for architecture maintainers for at least one affected architecture to confirm it does not change installed shared libraries there.) 2014-09-08 Joseph Myers * nptl/shlib-versions: Remove architecture-specific entries. Moved to files in sysdeps. * shlib-versions: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions: New file. * sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/sh/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions: Likewise. diff --git a/nptl/shlib-versions b/nptl/shlib-versions index f6b9b9a..f2cc32d 100644 --- a/nptl/shlib-versions +++ b/nptl/shlib-versions @@ -1,6 +1 @@ -sparc64.*-.*-linux.* libpthread=0 GLIBC_2.2 -sh.*-.*-linux.* libpthread=0 GLIBC_2.2 -s390x-.*-linux.* libpthread=0 GLIBC_2.2 -powerpc64-.*-linux.* libpthread=0 GLIBC_2.3 -powerpc.*le-.*-linux.* libpthread=0 GLIBC_2.17 .*-.*-linux.* libpthread=0 diff --git a/shlib-versions b/shlib-versions index 40469bd..860fb94 100644 --- a/shlib-versions +++ b/shlib-versions @@ -21,23 +21,16 @@ # Configuration DEFAULT Earliest symbol set # ------------- --------------- ------------------------------ -s390x-.*-linux.* DEFAULT GLIBC_2.2 -powerpc64-.*-linux.* DEFAULT GLIBC_2.3 -powerpc.*le-.*-linux.* DEFAULT GLIBC_2.17 .*-.*-gnu-gnu.* DEFAULT GLIBC_2.2.6 # Configuration Library=version Earliest symbol set (optional) # ------------- --------------- ------------------------------ # The interface to -lm depends mostly only on cpu, not on operating system. -sparc64.*-.*-linux.* libm=6 GLIBC_2.2 -sh.*-.*-linux.* libm=6 GLIBC_2.2 .*-.*-linux.* libm=6 .*-.*-gnu-gnu.* libm=6 # We provide libc.so.6 for Linux kernel versions 2.0 and later. -sh.*-.*-linux.* libc=6 GLIBC_2.2 -sparc64.*-.*-linux.* libc=6 GLIBC_2.2 .*-.*-linux.* libc=6 # libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release. @@ -49,10 +42,6 @@ sparc64.*-.*-linux.* libc=6 GLIBC_2.2 # libc.so.0.3 is the first Hurd libc using libio. .*-.*-gnu-gnu.* libc=0.3 -# The dynamic loader also requires different names. -sparc64.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2 -sparc.*-.*-linux.* ld=ld-linux.so.2 -sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2 # We use the ELF ABI standard name for the default. .*-.*-.* ld=ld.so.1 @@ -90,8 +79,6 @@ sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2 .*-.*-.* libcrypt=1 # The gross patch for programs assuming broken locale implementations. -sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2 -sparc64.*-.*-.* libBrokenLocale=1 GLIBC_2.2 .*-.*-.* libBrokenLocale=1 # The real-time library from POSIX.1b. diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions b/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions new file mode 100644 index 0000000..f648023 --- /dev/null +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions @@ -0,0 +1,4 @@ +powerpc64-.*-linux.* DEFAULT GLIBC_2.3 +powerpc.*le-.*-linux.* DEFAULT GLIBC_2.17 +powerpc64-.*-linux.* libpthread=0 GLIBC_2.3 +powerpc.*le-.*-linux.* libpthread=0 GLIBC_2.17 diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions b/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions new file mode 100644 index 0000000..cab0c0b --- /dev/null +++ b/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions @@ -0,0 +1,2 @@ +s390x-.*-linux.* DEFAULT GLIBC_2.2 +s390x-.*-linux.* libpthread=0 GLIBC_2.2 diff --git a/sysdeps/unix/sysv/linux/sh/shlib-versions b/sysdeps/unix/sysv/linux/sh/shlib-versions new file mode 100644 index 0000000..c376fe8 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sh/shlib-versions @@ -0,0 +1,5 @@ +sh.*-.*-linux.* libm=6 GLIBC_2.2 +sh.*-.*-linux.* libc=6 GLIBC_2.2 +sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2 +sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2 +sh.*-.*-linux.* libpthread=0 GLIBC_2.2 diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions b/sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions new file mode 100644 index 0000000..26ca1f4 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions @@ -0,0 +1 @@ +sparc.*-.*-linux.* ld=ld-linux.so.2 diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions b/sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions new file mode 100644 index 0000000..58d2c24 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions @@ -0,0 +1,5 @@ +sparc64.*-.*-linux.* libm=6 GLIBC_2.2 +sparc64.*-.*-linux.* libc=6 GLIBC_2.2 +sparc64.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2 +sparc64.*-.*-.* libBrokenLocale=1 GLIBC_2.2 +sparc64.*-.*-linux.* libpthread=0 GLIBC_2.2