Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Aug 2012 11:49:30 +0300
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Dan McGregor <dan.mcgregor@usask.ca>
Cc:        freebsd-hackers@freebsd.org, tijl@freebsd.org
Subject:   Re: Build 32 bit binaries on amd64
Message-ID:  <20120821084930.GM33100@deviant.kiev.zoral.com.ua>
In-Reply-To: <CACS%2B7ZQSSoxqY8cNDa=uM-o5NJmXBb3WYTZ7iNDK_nNjjughUg@mail.gmail.com>
References:  <CACS%2B7ZQSSoxqY8cNDa=uM-o5NJmXBb3WYTZ7iNDK_nNjjughUg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--7AfkfStYJxYILZKr
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Aug 20, 2012 at 08:32:41PM -0600, Dan McGregor wrote:
> Hi.
>=20
> I've been working on porting compiler-rt/clang's support for address
> sanitization (asan) to FreeBSD.  So far I have it building and it
> appears to work properly, however the build system expects to be able
> to build 32 bit binaries on amd64.
>=20
> amd64 doesn't include i386's machine/foo headers.  The included patch
> is my proposed solution:
>=20
> Add i386 headers to /usr/include/i386, and in machine/foo.h, check if
> it's a 32 bit build and include the appropriate header from i386.
>=20
> For example machine/ucontext.h will include i386/ucontext.h if
> compiled with -m32.
>=20
> Thoughts?
>=20
> If anyone's curious about the compiler_rt port, I have it at
> github.com/dannomac/compiler-rt on the branch named freebsd.

There was a work by Tijl Coosemans in the similar, but somewhat less hacky
direction. The headers are moved into sys/x86/include and unified as much
as possible, while machine/ counterpart includes corresponding header
from x86/include.

I even lost track of how much more headers is left to convert. In fact,
not all headers are equal, some are only useful for kernel or base system.
Also, parts of the critically important headers do not live in machine/
at all, e.g. the headers from libm.

The work seems to be stale, do you want to cooperate with Tijl or continue ?

--7AfkfStYJxYILZKr
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (FreeBSD)

iEYEARECAAYFAlAzS5oACgkQC3+MBN1Mb4hWrgCgsCOsNwhlsZcSYp1G106H+BXw
QxUAn3qLfkvdz5dxtwQ/Cd9xqNaEnhJ3
=3lf8
-----END PGP SIGNATURE-----

--7AfkfStYJxYILZKr--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120821084930.GM33100>