xlib: combine and eliminate some header files
authorKeith Whitwell <keith@tungstengraphics.com>
Fri, 9 Jan 2009 10:40:47 +0000 (10:40 +0000)
committerKeith Whitwell <keithw@vmware.com>
Fri, 9 Jan 2009 14:31:45 +0000 (14:31 +0000)
src/gallium/state_trackers/xlib/fakeglx.c
src/gallium/state_trackers/xlib/fakeglx_fonts.c
src/gallium/state_trackers/xlib/glxheader.h [deleted file]
src/gallium/state_trackers/xlib/xm_api.c
src/gallium/state_trackers/xlib/xm_api.h
src/gallium/state_trackers/xlib/xmesaP.h [deleted file]
src/gallium/winsys/xlib/xlib_softpipe.c

index efe1faaa3a491b58637fed81f8bcebad0ffb4bc9..4494a6e5d64e7b4e2764caf54785e61dd873164c 100644 (file)
 
 
 
-#include "glxheader.h"
 #include "glxapi.h"
 #include "xm_api.h"
 #include "context.h"
 #include "config.h"
 #include "macros.h"
 #include "imports.h"
-#include "mtypes.h"
 #include "version.h"
 #include "fakeglx.h"
 #include "state_tracker/st_context.h"
index cf9cb9d2fb69e652f300f041dfb3fca7f3ca4705..e359046756319a444e9976508b176c6f14aac72a 100644 (file)
  * Copyright (C) 1995 Thorsten.Ohl @ Physik.TH-Darmstadt.de
  */
 
-#include "glxheader.h"
 #include "context.h"
 #include "imports.h"
 #include "fakeglx.h"
+#include <GL/glx.h>
 
 
 /* Some debugging info.  */
diff --git a/src/gallium/state_trackers/xlib/glxheader.h b/src/gallium/state_trackers/xlib/glxheader.h
deleted file mode 100644 (file)
index 5596f8a..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  6.5.1
- * 
- * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
- * 
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- * 
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- * 
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef GLX_HEADER_H
-#define GLX_HEADER_H
-
-#include "glheader.h"
-
-# include <X11/Xlib.h>
-# include <X11/Xlibint.h>
-# include <X11/Xutil.h>
-# ifdef USE_XSHM  /* was SHM */
-#  include <sys/ipc.h>
-#  include <sys/shm.h>
-#  include <X11/extensions/XShm.h>
-# endif
-# include <GL/glx.h>
-# include <sys/time.h>
-
-
-
-
-/* this silences a compiler warning on several systems */
-struct timespec;
-struct itimerspec;
-
-
-#endif /*GLX_HEADER*/
index 67a9a1ec8c84329944c7d8db524937fee7146417..82d125b5f318d69c9f759a1c517bad06115a2ccf 100644 (file)
@@ -57,7 +57,6 @@
 #undef __WIN32__
 #endif
 
-#include "glxheader.h"
 #include "xm_api.h"
 #include "main/context.h"
 #include "main/framebuffer.h"
@@ -70,6 +69,7 @@
 #include "pipe/p_context.h"
 
 #include "xm_winsys.h"
+#include <GL/glx.h>
 
 /**
  * Global X driver lock
index 33d2f2c522d58784be2547f687555e185b997755..2b8302d1747c2a12061d51b621e11502bb9aaffd 100644 (file)
  */
 
 
-/*
- * Mesa/X11 interface.  This header file serves as the documentation for
- * the Mesa/X11 interface functions.
- *
- * Note: this interface isn't intended for user programs.  It's primarily
- * just for implementing the pseudo-GLX interface.
- */
-
 
 /* Sample Usage:
 
@@ -65,16 +57,25 @@ and create a window, you must do the following to use the X/Mesa interface:
 #define XMESA_H
 
 
+#include "mtypes.h"
+#include "state_tracker/st_context.h"
+#include "state_tracker/st_public.h"
+#include "pipe/p_thread.h"
 
-typedef struct xmesa_context *XMesaContext;
 
-typedef struct xmesa_visual *XMesaVisual;
+# include <X11/Xlib.h>
+# include <X11/Xlibint.h>
+# include <X11/Xutil.h>
+# ifdef USE_XSHM  /* was SHM */
+#  include <sys/ipc.h>
+#  include <sys/shm.h>
+#  include <X11/extensions/XShm.h>
+# endif
 
 typedef struct xmesa_buffer *XMesaBuffer;
+typedef struct xmesa_context *XMesaContext;
+typedef struct xmesa_visual *XMesaVisual;
 
-/* Every user of this file also includes xmesaP.h
- */
-#include "xmesaP.h"
 
 
 /*
@@ -263,4 +264,130 @@ XMesaCreatePixmapTextureBuffer(XMesaVisual v, Pixmap p,
 
 
 
+/***********************************************************************
+ */
+
+extern pipe_mutex _xmesa_lock;
+
+extern struct xmesa_buffer *XMesaBufferList;
+
+
+/**
+ * Visual inforation, derived from GLvisual.
+ * Basically corresponds to an XVisualInfo.
+ */
+struct xmesa_visual {
+   GLvisual mesa_visual;       /* Device independent visual parameters */
+   Display *display;   /* The X11 display */
+   XVisualInfo * visinfo;      /* X's visual info (pointer to private copy) */
+   XVisualInfo *vishandle;     /* Only used in fakeglx.c */
+   GLint BitsPerPixel;         /* True bits per pixel for XImages */
+
+   GLboolean ximage_flag;      /* Use XImage for back buffer (not pixmap)? */
+};
+
+
+/**
+ * Context info, derived from st_context.
+ * Basically corresponds to a GLXContext.
+ */
+struct xmesa_context {
+   struct st_context *st;
+   XMesaVisual xm_visual;      /** pixel format info */
+   XMesaBuffer xm_buffer;      /** current drawbuffer */
+};
+
+
+/**
+ * Types of X/GLX drawables we might render into.
+ */
+typedef enum {
+   WINDOW,          /* An X window */
+   GLXWINDOW,       /* GLX window */
+   PIXMAP,          /* GLX pixmap */
+   PBUFFER          /* GLX Pbuffer */
+} BufferType;
+
+
+/**
+ * Framebuffer information, derived from.
+ * Basically corresponds to a GLXDrawable.
+ */
+struct xmesa_buffer {
+   struct st_framebuffer *stfb;
+
+   GLboolean wasCurrent;       /* was ever the current buffer? */
+   XMesaVisual xm_visual;      /* the X/Mesa visual */
+   Drawable drawable;  /* Usually the X window ID */
+   Colormap cmap;              /* the X colormap */
+   BufferType type;             /* window, pixmap, pbuffer or glxwindow */
+
+   XImage *tempImage;
+   unsigned long selectedEvents;/* for pbuffers only */
+
+   GLuint shm;                 /* X Shared Memory extension status:    */
+                               /*    0 = not available                 */
+                               /*    1 = XImage support available      */
+                               /*    2 = Pixmap support available too  */
+#if defined(USE_XSHM)
+   XShmSegmentInfo shminfo;
+#endif
+
+   GC gc;                      /* scratch GC for span, line, tri drawing */
+
+   /* GLX_EXT_texture_from_pixmap */
+   GLint TextureTarget; /** GLX_TEXTURE_1D_EXT, for example */
+   GLint TextureFormat; /** GLX_TEXTURE_FORMAT_RGB_EXT, for example */
+   GLint TextureMipmap; /** 0 or 1 */
+
+   struct xmesa_buffer *Next;  /* Linked list pointer: */
+};
+
+
+
+/** cast wrapper */
+static INLINE XMesaContext
+xmesa_context(GLcontext *ctx)
+{
+   return (XMesaContext) ctx->DriverCtx;
+}
+
+
+/** cast wrapper */
+static INLINE XMesaBuffer
+xmesa_buffer(GLframebuffer *fb)
+{
+   struct st_framebuffer *stfb = (struct st_framebuffer *) fb;
+   return (XMesaBuffer) st_framebuffer_private(stfb);
+}
+
+
+extern void
+xmesa_delete_framebuffer(struct gl_framebuffer *fb);
+
+extern XMesaBuffer
+xmesa_find_buffer(Display *dpy, Colormap cmap, XMesaBuffer notThis);
+
+extern void
+xmesa_check_and_update_buffer_size(XMesaContext xmctx, XMesaBuffer drawBuffer);
+
+extern void
+xmesa_destroy_buffers_on_display(Display *dpy);
+
+static INLINE GLuint
+xmesa_buffer_width(XMesaBuffer b)
+{
+   return b->stfb->Base.Width;
+}
+
+static INLINE GLuint
+xmesa_buffer_height(XMesaBuffer b)
+{
+   return b->stfb->Base.Height;
+}
+
+extern int
+xmesa_check_for_xshm(Display *display);
+
+
 #endif
diff --git a/src/gallium/state_trackers/xlib/xmesaP.h b/src/gallium/state_trackers/xlib/xmesaP.h
deleted file mode 100644 (file)
index 982212f..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.1
- *
- * Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef XMESAP_H
-#define XMESAP_H
-
-
-#include "xm_api.h"
-#include "mtypes.h"
-
-#include "state_tracker/st_context.h"
-#include "state_tracker/st_public.h"
-#include "pipe/p_thread.h"
-
-
-extern pipe_mutex _xmesa_lock;
-
-extern XMesaBuffer XMesaBufferList;
-
-
-/**
- * Visual inforation, derived from GLvisual.
- * Basically corresponds to an XVisualInfo.
- */
-struct xmesa_visual {
-   GLvisual mesa_visual;       /* Device independent visual parameters */
-   Display *display;   /* The X11 display */
-   XVisualInfo * visinfo;      /* X's visual info (pointer to private copy) */
-   XVisualInfo *vishandle;     /* Only used in fakeglx.c */
-   GLint BitsPerPixel;         /* True bits per pixel for XImages */
-
-   GLboolean ximage_flag;      /* Use XImage for back buffer (not pixmap)? */
-};
-
-
-/**
- * Context info, derived from st_context.
- * Basically corresponds to a GLXContext.
- */
-struct xmesa_context {
-   struct st_context *st;
-   XMesaVisual xm_visual;      /** pixel format info */
-   XMesaBuffer xm_buffer;      /** current drawbuffer */
-};
-
-
-/**
- * Types of X/GLX drawables we might render into.
- */
-typedef enum {
-   WINDOW,          /* An X window */
-   GLXWINDOW,       /* GLX window */
-   PIXMAP,          /* GLX pixmap */
-   PBUFFER          /* GLX Pbuffer */
-} BufferType;
-
-
-/**
- * Framebuffer information, derived from.
- * Basically corresponds to a GLXDrawable.
- */
-struct xmesa_buffer {
-   struct st_framebuffer *stfb;
-
-   GLboolean wasCurrent;       /* was ever the current buffer? */
-   XMesaVisual xm_visual;      /* the X/Mesa visual */
-   Drawable drawable;  /* Usually the X window ID */
-   Colormap cmap;              /* the X colormap */
-   BufferType type;             /* window, pixmap, pbuffer or glxwindow */
-
-   XImage *tempImage;
-   unsigned long selectedEvents;/* for pbuffers only */
-
-   GLuint shm;                 /* X Shared Memory extension status:    */
-                               /*    0 = not available                 */
-                               /*    1 = XImage support available      */
-                               /*    2 = Pixmap support available too  */
-#if defined(USE_XSHM)
-   XShmSegmentInfo shminfo;
-#endif
-
-   GC gc;                      /* scratch GC for span, line, tri drawing */
-
-   /* GLX_EXT_texture_from_pixmap */
-   GLint TextureTarget; /** GLX_TEXTURE_1D_EXT, for example */
-   GLint TextureFormat; /** GLX_TEXTURE_FORMAT_RGB_EXT, for example */
-   GLint TextureMipmap; /** 0 or 1 */
-
-   struct xmesa_buffer *Next;  /* Linked list pointer: */
-};
-
-
-
-/** cast wrapper */
-static INLINE XMesaContext
-xmesa_context(GLcontext *ctx)
-{
-   return (XMesaContext) ctx->DriverCtx;
-}
-
-
-/** cast wrapper */
-static INLINE XMesaBuffer
-xmesa_buffer(GLframebuffer *fb)
-{
-   struct st_framebuffer *stfb = (struct st_framebuffer *) fb;
-   return (XMesaBuffer) st_framebuffer_private(stfb);
-}
-
-
-extern void
-xmesa_delete_framebuffer(struct gl_framebuffer *fb);
-
-extern XMesaBuffer
-xmesa_find_buffer(Display *dpy, Colormap cmap, XMesaBuffer notThis);
-
-extern void
-xmesa_check_and_update_buffer_size(XMesaContext xmctx, XMesaBuffer drawBuffer);
-
-extern void
-xmesa_destroy_buffers_on_display(Display *dpy);
-
-static INLINE GLuint
-xmesa_buffer_width(XMesaBuffer b)
-{
-   return b->stfb->Base.Width;
-}
-
-static INLINE GLuint
-xmesa_buffer_height(XMesaBuffer b)
-{
-   return b->stfb->Base.Height;
-}
-
-extern int
-xmesa_check_for_xshm(Display *display);
-
-#endif
index 79722dd72b478749ae9d035a6f3b5aae4fa45440..f53d8e02f4e28f28eee749497692bc1e69c7c972 100644 (file)
@@ -33,8 +33,7 @@
  */
 
 
-#include "glxheader.h"
-#include "xmesaP.h"
+#include "xm_api.h"
 
 #undef ASSERT
 #undef Elements
@@ -109,7 +108,7 @@ static volatile int mesaXErrorFlag = 0;
  * Catches potential Xlib errors.
  */
 static int
-mesaHandleXError(XMesaDisplay *dpy, XErrorEvent *event)
+mesaHandleXError(Display *dpy, XErrorEvent *event)
 {
    (void) dpy;
    (void) event;
@@ -154,7 +153,7 @@ alloc_shm_ximage(struct xm_buffer *b, struct xmesa_buffer *xmb,
 #if 0
    GC gc;
 #endif
-   int (*old_handler)(XMesaDisplay *, XErrorEvent *);
+   int (*old_handler)(Display *, XErrorEvent *);
 
    b->tempImage = XShmCreateImage(xmb->xm_visual->display,
                                   xmb->xm_visual->visinfo->visual,