[Lsb-infrastructure] Xvfb server can't build with current X headers
Denis Silakov
silakov at ispras.ru
Tue Sep 2 05:38:47 PDT 2008
Wichmann, Mats D wrote:
> When compiling an X server, additional stuff is expected
> to be present in <X11/X.h>, which provides some redefinition
> protection around XID, Mask and Atom, as well as dealing
> with 32 vs 64-bit server compiles.
>
> I'm not quite sure how to proceed with this but it does
> break the build of lsb-xvfb, which sees redefinitions of
> these three is its private Xdefs.h file (since the protection
> macros are not defined), and in a 64-bit system considers
> the declaration of CARD32 to be a conflict (during the
> definitions of Atom and Font, since these use CARD32) since
> the _XSERVER64 macro is not defined in this case.
>
> Previously, xvfb wasn't confused about these are we used
> a native X.h which has the macros in place.
>
X.h says:
/*
* _XSERVER64 must ONLY be defined when compiling X server sources on
* systems where unsigned long is not 32 bits, must NOT be used in
* client or library code.
*/
So it seems it is correct for us not to provide declarations enclosed
with '#ifdef _XSERVER64'.
I'd prefer to modify our x server build process instead. For example, by
creating a copy of X.h header, patching it before build process and
using this patched header during build.
--
Regards,
Denis.
More information about the lsb-infrastructure
mailing list