[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FreeBSD broken (gcc)
From: |
Richard Frith-Macdonald |
Subject: |
Re: FreeBSD broken (gcc) |
Date: |
Sat, 15 Oct 2011 06:12:40 +0100 |
On 14 Oct 2011, at 23:54, Riccardo Mottola wrote:
> Hi,
>
> in a different place, but a similar mysterious error in base, compiling with
> FreeBSD with gcc.
>
>
> Compiling file GSHTTPURLHandle.m ...
> In file included from GSHTTPURLHandle.m:53:
> /usr/include/sys/file.h:161: error: expected specifier-qualifier-list before
> 'u_int'
> GSHTTPURLHandle.m: In function 'debugRead':
>
> here too putting unistd and/or errno headers back in place did not help
It seems that some BSD systems have bugs in their handling of the
_XOPEN_SOURCE macro (which is supposed to turn on certain POSIX and OPEN UNIX
standard behaviors so we can depend on things like thread-safe/reentrant
behaviors and consistent structure layouts in standard system libraries). I
turned that on to get reliable IPV6 data structure layouts and because Solaris
(and presumably other systems) actually still uses non thead-safe errno by
default, but it' s triggering this BSD bug on your systems.
I've changed gnustep-base to try using _POSIX_C_SOURCE=199506L instead ...
which should give much the same effect for turning on standard conformance, but
might not trigger the BSD bug.
If that also causes problems on your systems, then I guess we'll need to
develop system specific conditional code to handle them :-(
- FreeBSD broken (gcc), Riccardo Mottola, 2011/10/14
- Re: FreeBSD broken (gcc),
Richard Frith-Macdonald <=