From patchwork Mon Jun 30 17:34:29 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 1821 Received: (qmail 7994 invoked by alias); 30 Jun 2014 17:34:47 -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 7941 invoked by uid 89); 30 Jun 2014 17:34:41 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL, BAYES_00 autolearn=ham version=3.3.2 X-HELO: relay1.mentorg.com Date: Mon, 30 Jun 2014 17:34:29 +0000 From: "Joseph S. Myers" To: Subject: Move architecture shlib-versions files to Linux-specific directories Message-ID: MIME-Version: 1.0 Various architectures have files such as sysdeps//shlib-versions whose contents are in fact entirely Linux-specific, relating only to the symbol / shared library versions for the port to Linux on that architecture, when any future port to a different OS on that architecture would use the symbol version of the glibc release it goes in, as standard for new ports. This patch moves such files under sysdeps/unix/sysv/linux/, merging in the contents of sysdeps//nptl/shlib-versions in the process. The only bits not moved are those relating to libgcc_s versions, which don't appear OS-specific in the same way that glibc's symbol versions so. It deliberately does not change the regular expressions given for matching configurations in each file; some match only Linux although not Linux-specific, or match other OSes although Linux-specific. It is with a view to at least the following further cleanups: * Move architecture-specific content from the toplevel shlib-versions and nptl/shlib-versions into sysdeps shlib-versions files, so eliminating another difference between ex-ports and non-ex-ports architectures. * Likewise, for OS-specific content in shlib-versions files. * At that point, the first field in shlib-versions files (the regular expression matching a configuration triplet) should be redundant, so eliminate that field and leave shlib-versions selection working purely on a sysdeps basis (with limited use of %ifdef in shlib-versions files when needed) rather than having its own separate mechanism to select what configuration information is relevant. * Move the build of gnu/lib-names.h to a similar mechanism to that used for gnu/stubs.h (each library build installing a version of the header specifically for that build), so we can eliminate the duplication of soname information in the makefiles and get it purely from shlib-versions files again. There may be other cleanups possible as well (in particular, I'm not sure that all cases where the same "Earliest symbol set" information is repeated for many different libraries actually should need to repeat it rather than specifying it just once for DEFAULT for the given configuration, and separately specifying any non-default choices of soname). Tested x86_64 that the installed shared libraries are unchanged by this patch. 2014-06-30 Joseph Myers * sysdeps/aarch64/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/aarch64/shlib-versions: ... here. * sysdeps/alpha/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/alpha/shlib-versions: ... here. * sysdeps/arm/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/arm/shlib-versions: ... here. * sysdeps/hppa/shlib-versions: Move all contents except for libgcc_s entry to ... * sysdeps/unix/sysv/linux/hppa/shlib-versions: ... here. Merge in entry from ... * sysdeps/hppa/nptl/shlib-versions: ... here. Remove file. * sysdeps/ia64/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/ia64/shlib-versions: ... here. Merge in entry from ... * sysdeps/ia64/nptl/shlib-versions: ... here. Remove file. * sysdeps/m68k/coldfire/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions: ... here. * sysdeps/microblaze/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/microblaze/shlib-versions: ... here. * sysdeps/mips/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/mips/shlib-versions: ... here. Merge in entry from ... * sysdeps/mips/nptl/shlib-versions: ... here. Remove file. * sysdeps/tile/shlib-versions: Move to ... * sysdeps/unix/sysv/linux/tile/shlib-versions: ... here. * sysdeps/unix/sysv/linux/x86_64/64/shlib-versions: Merge in entry from ... * sysdeps/x86_64/64/shlib-versions: ... here. Remove file. * sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions: Merge in entry from ... * sysdeps/x86_64/x32/shlib-versions: ... here. Remove file. diff --git a/sysdeps/hppa/nptl/shlib-versions b/sysdeps/hppa/nptl/shlib-versions deleted file mode 100644 index adc2636..0000000 --- a/sysdeps/hppa/nptl/shlib-versions +++ /dev/null @@ -1 +0,0 @@ -hppa.*-.*-linux.* libpthread=0 GLIBC_2.2 diff --git a/sysdeps/hppa/shlib-versions b/sysdeps/hppa/shlib-versions index 6b9225c..ae3a3f1 100644 --- a/sysdeps/hppa/shlib-versions +++ b/sysdeps/hppa/shlib-versions @@ -1,9 +1 @@ -hppa.*-.*-.* libm=6 GLIBC_2.2 - -hppa.*-.*-.* libc=6 GLIBC_2.2 - -hppa.*-.*-.* ld=ld.so.1 GLIBC_2.2 - -hppa-.*-.* libBrokenLocale=1 GLIBC_2.2 - hppa.*-.*-.* libgcc_s=4 diff --git a/sysdeps/ia64/nptl/shlib-versions b/sysdeps/ia64/nptl/shlib-versions deleted file mode 100644 index 90015eb..0000000 --- a/sysdeps/ia64/nptl/shlib-versions +++ /dev/null @@ -1 +0,0 @@ -ia64.*-.*-linux.* libpthread=0 GLIBC_2.2 diff --git a/sysdeps/mips/nptl/shlib-versions b/sysdeps/mips/nptl/shlib-versions deleted file mode 100644 index 97e41aa..0000000 --- a/sysdeps/mips/nptl/shlib-versions +++ /dev/null @@ -1 +0,0 @@ -mips.*-.*-linux.* libpthread=0 GLIBC_2.0 GLIBC_2.2 diff --git a/sysdeps/aarch64/shlib-versions b/sysdeps/unix/sysv/linux/aarch64/shlib-versions similarity index 100% rename from sysdeps/aarch64/shlib-versions rename to sysdeps/unix/sysv/linux/aarch64/shlib-versions diff --git a/sysdeps/alpha/shlib-versions b/sysdeps/unix/sysv/linux/alpha/shlib-versions similarity index 100% rename from sysdeps/alpha/shlib-versions rename to sysdeps/unix/sysv/linux/alpha/shlib-versions diff --git a/sysdeps/arm/shlib-versions b/sysdeps/unix/sysv/linux/arm/shlib-versions similarity index 100% rename from sysdeps/arm/shlib-versions rename to sysdeps/unix/sysv/linux/arm/shlib-versions diff --git a/sysdeps/unix/sysv/linux/hppa/shlib-versions b/sysdeps/unix/sysv/linux/hppa/shlib-versions new file mode 100644 index 0000000..ee46e4a --- /dev/null +++ b/sysdeps/unix/sysv/linux/hppa/shlib-versions @@ -0,0 +1,9 @@ +hppa.*-.*-.* libm=6 GLIBC_2.2 + +hppa.*-.*-.* libc=6 GLIBC_2.2 + +hppa.*-.*-.* ld=ld.so.1 GLIBC_2.2 + +hppa-.*-.* libBrokenLocale=1 GLIBC_2.2 + +hppa.*-.*-linux.* libpthread=0 GLIBC_2.2 diff --git a/sysdeps/ia64/shlib-versions b/sysdeps/unix/sysv/linux/ia64/shlib-versions similarity index 79% rename from sysdeps/ia64/shlib-versions rename to sysdeps/unix/sysv/linux/ia64/shlib-versions index b41f6c2..c8e1482 100644 --- a/sysdeps/ia64/shlib-versions +++ b/sysdeps/unix/sysv/linux/ia64/shlib-versions @@ -4,3 +4,5 @@ ia64-.*-linux.* libm=6.1 GLIBC_2.2 ia64-.*-linux.* ld=ld-linux-ia64.so.2 GLIBC_2.2 ia64-.*-.* libBrokenLocale=1 GLIBC_2.2 + +ia64.*-.*-linux.* libpthread=0 GLIBC_2.2 diff --git a/sysdeps/m68k/coldfire/shlib-versions b/sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions similarity index 100% rename from sysdeps/m68k/coldfire/shlib-versions rename to sysdeps/unix/sysv/linux/m68k/coldfire/shlib-versions diff --git a/sysdeps/microblaze/shlib-versions b/sysdeps/unix/sysv/linux/microblaze/shlib-versions similarity index 100% rename from sysdeps/microblaze/shlib-versions rename to sysdeps/unix/sysv/linux/microblaze/shlib-versions diff --git a/sysdeps/mips/shlib-versions b/sysdeps/unix/sysv/linux/mips/shlib-versions similarity index 94% rename from sysdeps/mips/shlib-versions rename to sysdeps/unix/sysv/linux/mips/shlib-versions index b153732..d1414ed 100644 --- a/sysdeps/mips/shlib-versions +++ b/sysdeps/unix/sysv/linux/mips/shlib-versions @@ -23,3 +23,5 @@ mips.*-.*-linux.* libnss_hesiod=2 GLIBC_2.0 GLIBC_2.2 mips.*-.*-linux.* libnsl=1 GLIBC_2.0 GLIBC_2.2 mips.*-.*-linux.* librt=1 GLIBC_2.0 GLIBC_2.2 + +mips.*-.*-linux.* libpthread=0 GLIBC_2.0 GLIBC_2.2 diff --git a/sysdeps/tile/shlib-versions b/sysdeps/unix/sysv/linux/tile/shlib-versions similarity index 100% rename from sysdeps/tile/shlib-versions rename to sysdeps/unix/sysv/linux/tile/shlib-versions diff --git a/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions b/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions index 5093c4c..90ea1b7 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions +++ b/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions @@ -1,3 +1,4 @@ # Configuration DEFAULT Earliest symbol set # ------------- --------------- ------------------------------ +x86_64-.*-linux.* DEFAULT GLIBC_2.2.5 x86_64-.*-linux.* libpthread=0 GLIBC_2.2.5 diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions b/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions index 8fcad2e..8dd73e4 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions +++ b/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions @@ -1,3 +1,4 @@ # Configuration DEFAULT Earliest symbol set # ------------- --------------- ------------------------------ +x86_64-.*-linux.* DEFAULT GLIBC_2.16 x86_64-.*-linux.* libpthread=0 GLIBC_2.16 diff --git a/sysdeps/x86_64/64/shlib-versions b/sysdeps/x86_64/64/shlib-versions deleted file mode 100644 index 50dd908..0000000 --- a/sysdeps/x86_64/64/shlib-versions +++ /dev/null @@ -1,3 +0,0 @@ -# Configuration DEFAULT Earliest symbol set -# ------------- --------------- ------------------------------ -x86_64-.*-linux.* DEFAULT GLIBC_2.2.5 diff --git a/sysdeps/x86_64/x32/shlib-versions b/sysdeps/x86_64/x32/shlib-versions deleted file mode 100644 index 223dfb6..0000000 --- a/sysdeps/x86_64/x32/shlib-versions +++ /dev/null @@ -1,3 +0,0 @@ -# Configuration DEFAULT Earliest symbol set -# ------------- --------------- ------------------------------ -x86_64-.*-linux.* DEFAULT GLIBC_2.16