From owner-svn-src-all@FreeBSD.ORG Wed Sep 11 19:38:11 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 0B4E74E3; Wed, 11 Sep 2013 19:38:11 +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 D42B122D5; Wed, 11 Sep 2013 19:38:10 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id 6C8A2B958; Wed, 11 Sep 2013 15:38:07 -0400 (EDT) From: John Baldwin To: Baptiste Daroussin Subject: Re: svn commit: r255457 - head/usr.sbin/pkg Date: Wed, 11 Sep 2013 09:56:11 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.4-CBSD-20130906; KDE/4.5.5; amd64; ; ) References: <201309102056.r8AKu1rQ000442@svn.freebsd.org> <522FE3A2.2090405@freebsd.org> <20130911054907.GK40186@ithaqua.etoilebsd.net> In-Reply-To: <20130911054907.GK40186@ithaqua.etoilebsd.net> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201309110956.11782.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Wed, 11 Sep 2013 15:38:07 -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: Wed, 11 Sep 2013 19:38:11 -0000 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). -- John Baldwin