Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Feb 2012 12:12:10 -0500
From:      David Schultz <das@FreeBSD.ORG>
To:        Tijl Coosemans <tijl@coosemans.org>
Cc:        Damjan Jovanovic <damjan.jov@gmail.com>, freebsd-arch@FreeBSD.ORG
Subject:   Re: amd64 cc -m32 support and headers project branch
Message-ID:  <20120223171210.GB79013@zim.MIT.EDU>
In-Reply-To: <201202061916.45998.tijl@coosemans.org>
References:  <201202061916.45998.tijl@coosemans.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Feb 06, 2012, Tijl Coosemans wrote:
> After a hiatus of almost a year I'd like to continue with merging i386
> and amd64 headers to get "cc -m32" working on amd64. Previously I tried
> to fix any problems with the headers first before merging, but this turned
> out to be a long tedious process. So, because lack of -m32 support is
> blocking other development I'd like to just merge a minimal set of
> headers without any macro/type definition changes or other
> reorganisations. The result will be similar to existing powerpc and mips
> headers which already support both 32 and 64 bit.
> 
> When that's done I can create a development branch to work on the
> problems that have come up. Possible goals for such a branch are:
> 
> - Fix inconsistencies such as types defined in sys/ and their limits
>   in machine/. Also, sometimes the limits don't have the correct type.
> - For types/limits defined under machine/ there is a lot of duplication
>   between architectures. Try to move some to sys/.
> - Try to make headers compiler agnostic; limit use of __attribute__,
>   __builtin_* to a single file.
> - Maybe remove support for gcc 2.*. The oldest version in ports is 3.4
>   and I suspect some headers don't compile anymore with gcc 2.*.
> - Add support for new compiler attributes/built-ins.
> - Add missing POSIX prototypes, maybe commented out with /* UNIMPL ... */
>   or similar so they can be grepped.
> - The gcc ports currently patch some system headers where they think
>   something is non-standard. These patched headers override the system
>   headers which means you have to rebuild these ports whenever you do
>   installworld to make sure they contain the latest changes. Some headers
>   are trivial to fix, others less so.
> 
> 
> If there are no objections, I'd like to start with the -m32 work in
> a week or so.

This sounds like it could degenerate into an error-prone ifdef
hell.  Wouldn't it be much easier to just have a /usr/include32
directory?



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