From patchwork Tue Sep 16 23:04:11 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joseph Myers X-Patchwork-Id: 390222 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 9CE3C140081 for ; Wed, 17 Sep 2014 09:04:26 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:mime-version :content-type; q=dns; s=default; b=KB+7GNyOokevZvlWTDvZNzAPO/7Bf qmX8NY+HFLpzI3Pc2G/ZD6iXL+AyZX1cvVI+CFrbJ3fpdXrFSF4iEEmBac9B/2/C Ye5nEzr9uzhogXPqEU4VQ/HBzAO3otfj2Ncj1LtRq/X8LN+7QwqC07JQYSuwOpi5 uBrKm1auTW5E28= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:mime-version :content-type; s=default; bh=OmYHomGc1K7VYBlrL6QSUJf5LE0=; b=yh3 mkZXpJNfn2fOJKP+sUOXZIi9VHeTcx3VFJ/FkwzAJtXHsnIT5by7UODEKiswXVrl s4Svo/dndGLHj/gV9dueqxS8+l7vVwwzaKeRt1Vgbad9kixsI2Zsq2/a8hjZ0r0i 7qG8+dWXeQzdVBZa2ML6Rduqxd8JAFIxziAX7r9Q= Received: (qmail 22628 invoked by alias); 16 Sep 2014 23:04:20 -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 22617 invoked by uid 89); 16 Sep 2014 23:04:19 -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: Tue, 16 Sep 2014 23:04:11 +0000 From: "Joseph S. Myers" To: Subject: Remove shlib-versions entries redundant with DEFAULT entries Message-ID: MIME-Version: 1.0 When a shlib-versions file has a DEFAULT line, it's not necessary to specify the same default minimum symbol version on the lines for individual libraries. If those lines otherwise duplicate the default SONAME for the library in question, they can be removed completely. This patch, relative to a tree with (pending review) applied, makes such cleanups: version entries for ld.so are removed (leaving just the definition of the architecture-specific dynamic linker name) and entries for libpthread are removed completely (since the default is libpthread.so.0). Tested for x86_64 that the installed shared libraries are unchanged by this patch. There are various architectures (hppa, ia64, mips, sh, sparc64) that define minimum symbol versions (or in the case of mips, omission of symbol versions) only for particular libraries without a DEFAULT line. None of these are equivalent to something simpler with a DEFAULT line because all have some other libraries, not explicitly mentioned, with symbol versions that would be omitted were such a line used. In the mips case I'm pretty sure it was a mistake not to omit the 2.1 symbols for libthread_db; for the others I don't know if it was a mistake or deliberate that some symbols in various libraries have 2.0 or 2.1 versions despite other libraries having a 2.2 minimum. This concludes the shlib-versions cleanups I'm aware of. 2014-09-16 Joseph Myers * sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions: Do not specify symbol version for ld.so. Do not include entry for libpthread. * sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/shlib-versions: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions: Likewise. diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions b/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions index 1f5493b..bc6deba 100644 --- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions +++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions @@ -1,9 +1,7 @@ %ifdef HAVE_ELFV2_ABI DEFAULT GLIBC_2.17 -ld=ld64.so.2 GLIBC_2.17 -libpthread=0 GLIBC_2.17 +ld=ld64.so.2 %else DEFAULT GLIBC_2.3 -ld=ld64.so.1 GLIBC_2.3 -libpthread=0 GLIBC_2.3 +ld=ld64.so.1 %endif diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions b/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions index 9de0608..669a0c9 100644 --- a/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions +++ b/sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions @@ -1,3 +1,2 @@ DEFAULT GLIBC_2.2 -ld=ld64.so.1 GLIBC_2.2 -libpthread=0 GLIBC_2.2 +ld=ld64.so.1 diff --git a/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions b/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions index 897b7e0..7f87a8b 100644 --- a/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions +++ b/sysdeps/unix/sysv/linux/x86_64/64/shlib-versions @@ -1,5 +1,4 @@ # DEFAULT Earliest symbol set # --------------- ------------------------------ DEFAULT GLIBC_2.2.5 -ld=ld-linux-x86-64.so.2 GLIBC_2.2.5 -libpthread=0 GLIBC_2.2.5 +ld=ld-linux-x86-64.so.2 diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions b/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions index df96afa..0ab2e27 100644 --- a/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions +++ b/sysdeps/unix/sysv/linux/x86_64/x32/shlib-versions @@ -1,5 +1,4 @@ # DEFAULT Earliest symbol set # --------------- ------------------------------ DEFAULT GLIBC_2.16 -ld=ld-linux-x32.so.2 GLIBC_2.16 -libpthread=0 GLIBC_2.16 +ld=ld-linux-x32.so.2