From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.org/gmane.linux.lib.musl.general/3746 Path: news.gmane.org!not-for-mail From: Rich Felker Newsgroups: gmane.linux.lib.musl.general Subject: Re: Preparing to release 0.9.12 Date: Thu, 25 Jul 2013 12:39:15 -0400 Message-ID: <20130725163915.GI4284@brightrain.aerifal.cx> References: <20130724200221.GA4256@brightrain.aerifal.cx> <20130725104459.3c29fc34@vostro> <20130725150522.GJ15323@port70.net> <20130725184551.58d83b40@vostro> Reply-To: musl@lists.openwall.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1374770367 18993 80.91.229.3 (25 Jul 2013 16:39:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 25 Jul 2013 16:39:27 +0000 (UTC) Cc: nsz@port70.net To: musl@lists.openwall.com Original-X-From: musl-return-3750-gllmg-musl=m.gmane.org@lists.openwall.com Thu Jul 25 18:39:30 2013 Return-path: Envelope-to: gllmg-musl@plane.gmane.org Original-Received: from mother.openwall.net ([195.42.179.200]) by plane.gmane.org with smtp (Exim 4.69) (envelope-from ) id 1V2OZd-0002Zc-AQ for gllmg-musl@plane.gmane.org; Thu, 25 Jul 2013 18:39:29 +0200 Original-Received: (qmail 9336 invoked by uid 550); 25 Jul 2013 16:39:28 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Original-Received: (qmail 9325 invoked from network); 25 Jul 2013 16:39:27 -0000 Content-Disposition: inline In-Reply-To: <20130725184551.58d83b40@vostro> User-Agent: Mutt/1.5.21 (2010-09-15) Xref: news.gmane.org gmane.linux.lib.musl.general:3746 Archived-At: On Thu, Jul 25, 2013 at 06:45:51PM +0300, Timo Teras wrote: > > > Which would then make LDSO_ARCH, and SONAME accordingly. And with > > > the soname version set, we could do proper binary ugprades (even > > > when not everything is yet rebuilt). > > > > why do you care about the name of the loader? > > > > musl could use a random string, the only requirement > > is that each abi has a unique identifier so there is > > no collision > > > > if the name changes between distros then a simple > > binary that only depends on libc becomes non-portable > > Well, when we have native tool chain, the loader name will have musl in > it, and it's not portable to non-musl systems. The binaries won't work without musl anyway. > I can probably live with the default LDSO_ARCH name as long as so > versioning is done properly. But I think it would still be useful to We should figure out what "properly" means then. I think arranging for the soname to contain the version for package management purposes, but no other use, would probably meet your needs. Unlike glibc, musl aims not to force you to update libc.so just because an application was compiled against a newer version, but only if it actually needs a feature in the newer version. (This is similar to how versioning works with the kernel, BTW.) But distros often will want to impose this requirement just to make sure a sufficiently new version is available to have all features any of their packages might need. > let it be overriden, in case distro decides to add patches that break > ABI. If the distro is doing this, the patch could (and should) change the dynamic linker name at the same time it makes the other changes. However I think you really over-estimate the need for breaking ABI. It should not happen. glibc has not broken ABI in over a decade, and aside from the C++ ABI (which is not part of the app-to-libc ABI), musl has not broken ABI at all except to fix some types that were defined so wrong that the associated interfaces didn't work. If ABI changes were needed, moving to a new verison number for the dynamic linker would be the right approach, I think. But I don't see that happening anytime soon. Rich