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"

Reply via email to