GCC with Xenix Include files
pgd at bbt.se
pgd at bbt.se
Fri Oct 19 21:01:30 AEST 1990
In article <8279 at scolex.sco.COM> seanf (Sean Fagan) writes:
>
>In article <1990Oct16.081629.106 at bbt.se> pgd at bbt.se writes:
>>If you update to 2.3.3 you will find that the include files, if
>>possible, are even more screwed up.
>
>I think that the 2.3.1 DS update has this fix; the unix DS certainly
>does (and many, many of the header files are protected against multiple
>inclusion).
>
>> #ifndef SIZE_T_DEFINED
>
>That, btw, is illegal, according to ANSI. We use
>
> #ifndef _SIZE_T
> typedef unsigned int size_t;
> # define _SIZE_T
> #endif /* _SIZE_T */
>
>which is legal (namespace problems).
>
>> #ifndef STDIO_INCLUDED
>
>For these, it's of the format
>
> #ifndef _STDIO_H
> # define _STDIO_H
> /* stdio.h stuff */
> #endif /* _STDIO_H */
>
>As I said, most of the header files in 3.2 have this already.
Ok, i had the 2.3.0 dev sys, and the 2.3.2 for the rest. Then I
upgraded to 2.3.2 with xnx155, and the result had name clashes in the
.h-files. The worst one was size_t, that is defined in
stdio.h, stdlib.h, string.h and time.h
I don't know the logic for that, but there result is that you cannot
include any if those files together. Maybe cc ignores equal multiple
typedefs of the same type?
There were a few other symbols also, but since i very soon fixed the
include files, i have forgot which ones, and as i don't have the
original ones on-line, i cannot say what i have made, and sco have made.
As for the names chosen, i just picked any that i felt were quite
unique, inspired by header files from another system (where this is
consistenly done). I don't feel it like my job to make xenix
ANSI-conformant.
All in all, i am happy that i could get xnx155, without guarantees,
even if it meant i had to do some hand hacking of the include files.
If SCO now (maybe)have fixed that problem, it means that all future
buyers will not have it.
Another point:
In sys/types.h you can find definitions for uchar_t, ulong_t and ushort.
Why this inconsistency. Why not uchar and ulong, or ushort_t?
This means that i constantly have to comment out/define typedefs in
programs that i try to compile on xenix.
More information about the Comp.unix.xenix.sco
mailing list