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 _______________________________________________ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"