file(1) broken on sparc64

David O'Brien obrien at FreeBSD.org
Tue Feb 15 16:58:59 GMT 2005


On Tue, Feb 15, 2005 at 07:28:04AM -0800, Kris Kennaway wrote:
> On Tue, Feb 15, 2005 at 03:37:28PM +0100, Koop Mast wrote:
> > >I wonder if the problem is with worlds cross-built from i386.
> > >Can you try a buildworld on i386 with TARGET_ARCH=sparc64 and see if
> > >it still works?
> > 
> > I did a cross buildworld on a i386 machine, and copied the resulting
> > file binary over to my sparc box. It works just like the native file
> > binary. I even replaced libc.so.6 with the one from the cross build. But
> > that also didn't change anything.
> 
> The problem turns out to be a mis-compiled /usr/share/misc/magic.mgc.
> If you remove it (it is only used for runtime optimization), file(1)
> works fine.  If you recreate it natively using file -C, it also works.

A-HA!
Are all the file(1) problems you've mentioned only occurring for
cross-arch builds?  If this is the case, we can disable building
magic.mgc if TARGET_ARCH != MACHINE_ARCH.
 
> AFAIK, the underlying reason hasn't been tracked down.

To date we've never guaranteed that a cross-arch built world is usable.
We only officially support cross-arch compiles for compile testing.  There
are other things in the tree that aren't size & endian-clean that prevent
usable cross-arch release builds.

-- 
-- David  (obrien at FreeBSD.org)


More information about the freebsd-sparc64 mailing list