svn commit: r204309 - in head/sys: amd64/amd64 amd64/isa conf i386/bios i386/cpufreq i386/i386 i386/isa i386/xen isa modules/bios/smbios modules/bios/vpd modules/cpufreq pc98/pc98 x86 x86/bios x86/...

Peter Jeremy peterjeremy at acm.org
Mon Mar 1 09:18:05 UTC 2010


On 2010-Feb-28 16:07:32 -0700, "M. Warner Losh" <imp at bsdimp.com> wrote:
>In message: <4B8AF55C.6040103 at freebsd.org>
>            Nathan Whitehorn <nwhitehorn at FreeBSD.org> writes:
>: M. Warner Losh wrote:
>: > In message: <20100228195041.GA68446 at server.vk2pj.dyndns.org>
>: >             Peter Jeremy <peterjeremy at acm.org> writes:
>: > : On 2010-Feb-26 14:57:36 +0100, Attilio Rao <attilio at freebsd.org>
>: > wrote:
>: > : >For the future, however, probabilly we would need to do something
>: > like
>: > : >pc98 already does wrt i386 (i386/include/ pc98/include/
>: > amd64/include/
>: > : >just have files wrappers to the generic one under x86/include/ when
>: > : >necessary).
>: > : : Not that something like this is also critical for getting
>: > i386/amd64
>: > : cross compilation to work - one of the blocking issues is that the
>: > : correct machine/ includes are not available in cross-compilatio
>: > mode.
>: >
>: > Huh?
>: >
>: > I cross build all the time, and the machine/ includes are always
>: > right, with or without this patch.  Maybe you could explain what you
>: > mean here...
>: >   
>: I'm guessing what was meant is that one benefit of a merged tree (like
>: we will have with powerpc) is that you can do cc -m32 on a 64-bit host
>: to get a 32-bit binary, which is less than trivial now.

Yep.

>True enough.  But we don't have anywhere close to a merged tree on
>x86, and won't for the foreseeable future.  I don't really want to see
>an include32, when all the cross building tools exist in the tree
>already (see XDEV in Makefile.inc1)...

I agree that we don't want an include32 - all that we need is the
machine-dependent directory (i386, amd64, ...).

>  If you are cross building, you
>really need a full cross building environment.  The -m32 hacks we have
>now are, as you describe, insufficient to the task...

For building i386 executables in an amd64 world, we already have
almost everything needed - the toolchain is present, the libraries are
present, most of the headers are present.  The only parts of the
environment that aren't installed in default are the machine-dependent
headers (and some glue to include the appropriate architecture).

I'm not saying that installing the i386 headers will magically make
'-m32' work but it's a necessary prerequisite.

-- 
Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/svn-src-all/attachments/20100301/cfef16a4/attachment.pgp


More information about the svn-src-all mailing list