[openbeos] Re: stddef.h [was: sys/stat.h and related commits]

  • From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
  • To: openbeos@xxxxxxxxxxxxx
  • Date: Mon, 04 Aug 2003 18:29:19 +0200 CEST

Hi Andrew,

"Andrew Bachmann" <shatty@xxxxxxxxxxxxx> wrote:
> > "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx> wrote:
> > Update: at least the part of the glibc that already compiles as 
> > part of 
> > my tree works with these changes.
> > But I am not sure if we want to replace gcc's stddef.h with our own 
> > at 
> > all.
> This is an interesting patch actually.  I needed to make this change
> in order to configure and compile libiconv properly when using
> our headers.  AFAIK stddef.h is not part of the gcc distribution.  It
> is a posix header.  It is included as part of gcc anyway because the
> beos version of this header is broken, I think.  If you look in the
> /boot/develop/tools/gnupro/lib/gcc-lib/i586-pc-beos/.../include 
> directory you'll find these headers, along with a README that
> says that these headers were generated from a script called
> fixincludes.  I couldn't find the fixincludes script but I did find
> a script called fixproto which I may try to run against the OBOS
> headers.  It uses the "include_next" mechanism to patch headers -
> sound familiar?  Anyway, because I am sadistic, I may try to
> compile 2.95.3 against the OBOS headers as well.  That should be
> enlightening.

Yeah, do that.
As I understand those fixing scripts, they are there to install GCC 
support on the host platform :-)
And GCC seems to come with: stddef.h, stdarg.h, varargs.h, stdbool.h, 
and float.h. At least that's what I found in their current repository 
(at gcc/ginclude).

But in the README-fixinc file, there is this paragraph:
"Many of the files in this directory were automatically edited from the 
standard system header files by the fixincludes process.  They are 
system-specific, and will not work on any other kind of system.  They 
are also not part of GCC.  The reason we have to do this is because 
GCC requires ANSI C headers and many vendors supply ANSI-incompatible 
headers."

But looking in stddef.h I can hardly think that this is one of the 
headers that do not need a fix :-)

Adios...
   Axel.


Other related posts: