[PATCH 3/3] xfree86: Fix the sdk headers to be multilib-safe

Mark Kettenis mark.kettenis at xs4all.nl
Thu Jan 6 15:51:17 PST 2011


> From: Adam Jackson <ajax at redhat.com>
> Date: Thu,  6 Jan 2011 17:29:01 -0500
> 
> Use _LP64 (verified on gcc and sun compilers) instead of _XSERVER64 in
> internal header usage, and always define _XSERVER64 for modules if _LP64
> is defined.  Prevents differing xorg-server.h between 32 and 64 bit
> packages.
> 
> Signed-off-by: Adam Jackson <ajax at redhat.com>
> ---
>  include/colormapst.h     |    4 ++--
>  include/xorg-server.h.in |    7 ++++---
>  2 files changed, 6 insertions(+), 5 deletions(-)
> 
> diff --git a/include/colormapst.h b/include/colormapst.h
> index 0ba5bd0..b597e2c 100644
> --- a/include/colormapst.h
> +++ b/include/colormapst.h
> @@ -103,12 +103,12 @@ typedef struct _ColormapRec
>  {
>      VisualPtr	pVisual;
>      short	class;		/* PseudoColor or DirectColor */
> -#if defined(_XSERVER64)
> +#if defined(_LP64)
>      short	pad0;
>      XID		pad1;
>  #endif
>      XID		mid;		/* client's name for colormap */
> -#if defined(_XSERVER64) && (X_BYTE_ORDER == X_LITTLE_ENDIAN)
> +#if defined(_LP64) && (X_BYTE_ORDER == X_LITTLE_ENDIAN)
>      XID		pad2;
>  #endif
>      ScreenPtr	pScreen;	/* screen map is associated with */

This bit puzzles me.  Can you explain why it is necessary if
xorg-server.h continues to define _XSERVER64 when appropriate?

> diff --git a/include/xorg-server.h.in b/include/xorg-server.h.in
> index 76cab16..b10b994 100644
> --- a/include/xorg-server.h.in
> +++ b/include/xorg-server.h.in
> @@ -157,9 +157,6 @@
>  /* Name of X server */
>  #undef __XSERVERNAME__
>  
> -/* Define to 1 if unsigned long is 64 bits. */
> -#undef _XSERVER64
> -
>  /* Building vgahw module */
>  #undef WITH_VGAHW
>  
> @@ -187,4 +184,8 @@
>  /* X Access Control Extension */
>  #undef XACE
>  
> +#ifdef _LP64
> +#define _XSERVER64 1
> +#endif
> +
>  #endif /* _XORG_SERVER_H_ */

I suppose there is some configure magic somewhere that replaces #undef
_XSERVER64 on LP64 platforms.  Is that code now redundant?


More information about the xorg-devel mailing list