From owner-svn-src-all@FreeBSD.ORG Thu Sep 12 15:59:59 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id B145F4AF; Thu, 12 Sep 2013 15:59:59 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 812B82CAB; Thu, 12 Sep 2013 15:59:59 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 7F2F8B962; Thu, 12 Sep 2013 11:59:58 -0400 (EDT) From: John Baldwin To: Baptiste Daroussin Subject: Re: svn commit: r255457 - head/usr.sbin/pkg Date: Thu, 12 Sep 2013 10:09:05 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.4-CBSD-20130906; KDE/4.5.5; amd64; ; ) References: <201309102056.r8AKu1rQ000442@svn.freebsd.org> <201309110956.11782.jhb@freebsd.org> <20130912060348.GB33103@ithaqua.etoilebsd.net> In-Reply-To: <20130912060348.GB33103@ithaqua.etoilebsd.net> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201309121009.05749.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Thu, 12 Sep 2013 11:59:58 -0400 (EDT) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Nathan Whitehorn X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Sep 2013 15:59:59 -0000 On Thursday, September 12, 2013 2:03:49 am Baptiste Daroussin wrote: > On Wed, Sep 11, 2013 at 09:56:11AM -0400, John Baldwin wrote: > > On Wednesday, September 11, 2013 1:49:07 am Baptiste Daroussin wrote: > > > On Tue, Sep 10, 2013 at 10:29:38PM -0500, Nathan Whitehorn wrote: > > > > On 09/10/13 15:56, Baptiste Daroussin wrote: > > > > > Author: bapt > > > > > Date: Tue Sep 10 20:56:01 2013 > > > > > New Revision: 255457 > > > > > URL: http://svnweb.freebsd.org/changeset/base/255457 > > > > > > > > > > Log: > > > > > Add support to detect arm vs armv6 > > > > > > > > > > There are two different versions of the ARM ABI depending on the > > > > > TARGET_ARCH. As these are sligntly different a package built for > > > > > one may not work on another. We need to detect which one we are on > > > > > by parsing the .ARM.attributes section. > > > > > > > > > > This will only work on the ARM EABI as this section is part of the > > > > > ABI definition. As armv6 only supports the ARM EABI this is not a > > > > > problem for the oabi. > > > > > > > > > > Older versions of libelf in FreeBSD fail to read the > > > > > .ARM.attributes section needed. As armv6 is unsupported on these > > > > > versions we can assume we are running on arm. > > > > > > > > > > > > > Picking a random commit: I don't suppose we can just use MACHINE_ARCH > > > > for these identifiers? It encapsulates everything needed for compatibility. > > > > -Nathan > > > > > > Yes we probably can, it encapsulates everything since recently! It wasn't the > > > case when ABI string was defined, and it lacks an important part of why the ABI > > > string has been designed on pkgng: making a package match multiple arch via > > > simple glob on the ABI line. > > > > > > So as I already said to Warner, Yes now that it properly works on all arches we > > > could use it but that is not that easy. > > > > > > People wanting to go that way should: > > > 1. provide a way for pkgng to extract MARCHE_ARCH out of a binary (/bin/ls) > > > (dynamic cross installation ABI detection) > > > 2. provide a way to create multiarch ABI out of MACHINE_ARCH > > > 3. provide an upgrade path with compatibility for the current string (pkgng is > > > already largely deployed) > > > 4. have time to do it > > > > > > There is so much work pending on pkgng, in particular for 10.0 that I just have > > > no time to work on it. > > > > We actually had a thread about this on arch@ a while back where I think we did > > largely satisfy your concerns. However, one of the open items is to convert > > amd64, i386, and pc98 to set MACHINE_CPUARCH to x86 instead of amd64/i386 (this > > would clean up several other things as well). I do think it would be helpful > > if pkgng used arch strings that were consistent with MACHINE_ARCH so that the > > transition is easier (e.g. x86:i386 and x86:amd64 instead of x86:32 and > > x86:64). > > > > I had followed the discussion but I have missed the commit reflecting that. So I > wasn't aware this has been done. I will have a look to integrate it and use it > in pkgng, won't be for 10.0 packages, but I'll make it for 11.* packages and > probably 10.1. It is an open item, meaning not done yet. :( I think you would have to special case amd64/i386/pc98 for now as a hack knowing you can eventually remove it. -- John Baldwin