Some portability issues
kean at armory.com
Thu Oct 19 08:58:42 PDT 2006
> We should be getting rid of them and moving to autoconf functionality
> tests instead, but haven't had time to eradicate all of them. For
> Solaris, we were saved from having to hunt down all the SVR4 #ifdefs
> by this code that's been in Xosdefs.h for a couple of releases to
> help non-Imake-configured programs build correctly with the X headers:
> #ifdef sun
> /* Imake configs define SVR4 on Solaris, but cc & gcc only define __SVR4
> * This check allows non-Imake configured programs to build correctly.
> #if defined(__SVR4) && !defined(SVR4)
> #define SVR4 1
> Someday I'd like to not need that, but haven't had enough hours to seek
> and destroy all the #ifdef SVR4's (or to figure out why they are present
> in some of the more obscure cases).
And it clearly needs to be done. The same applies for all of the __SCO__
and __UNIXWARE__ stuff I added in 6.8.x. Is there a single, global
header file that ALL X headers include? That would obviously be the
place to put such things, but I dont think there is, so some header
files will need to be turned into header.in's, and then created by
> There's still time for build fixing patches, we've only really passed
> the feature freeze so far I think.
For 7.2, I cant "fix" the SCO ports very quickly and easily by changing
a few configure.in files, and adding some stuff to xproto.pc (to define
things like __SCO__ or __UNIXWARE__ for now). I realize this is a stop-
gap solution and not the correct one, but I dont think now is the time
to do the more intensive cleanup that is required. Do you concur? I
would like to volunteer some of my evening time to helping with that
cleanup post 7.2, to get all of these tests feature-tests, but if it
is acceptable, Id also like to use the quicker approach for 7.2.
More information about the xorg