summaryrefslogtreecommitdiffstats
path: root/src/glx/glxclient.h
diff options
context:
space:
mode:
authorEmil Velikov <[email protected]>2015-03-06 17:07:11 +0000
committerEmil Velikov <[email protected]>2015-03-06 17:07:11 +0000
commit5e3276f5c7bf1a363de710709737624634389858 (patch)
tree300eb22296bdd3c4a25213f89a5bee330f473c71 /src/glx/glxclient.h
parent1c1fd82b4b50fae4644e442b0c2a017f1e428610 (diff)
Revert "glx: remove support for non-multithreaded platforms"
This reverts commit 38591295cd4b68f89f257b20f476f98de3772a47. Not meant to go in yet. Lacking review.
Diffstat (limited to 'src/glx/glxclient.h')
-rw-r--r--src/glx/glxclient.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/glx/glxclient.h b/src/glx/glxclient.h
index 30c9e521395..122ae5dd1b7 100644
--- a/src/glx/glxclient.h
+++ b/src/glx/glxclient.h
@@ -47,11 +47,13 @@
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
-#include <pthread.h>
#include <stdint.h>
#include "GL/glxproto.h"
#include "glxconfig.h"
#include "glxhash.h"
+#if defined( HAVE_PTHREAD )
+# include <pthread.h>
+#endif
#include "util/macros.h"
#include "glxextensions.h"
@@ -627,6 +629,7 @@ extern void __glXPreferEGL(int state);
extern int __glXDebug;
/* This is per-thread storage in an MT environment */
+#if defined( HAVE_PTHREAD )
extern void __glXSetCurrentContext(struct glx_context * c);
@@ -643,6 +646,14 @@ extern struct glx_context *__glXGetCurrentContext(void);
# endif /* defined( GLX_USE_TLS ) */
+#else
+
+extern struct glx_context *__glXcurrentContext;
+#define __glXGetCurrentContext() __glXcurrentContext
+#define __glXSetCurrentContext(gc) __glXcurrentContext = gc
+
+#endif /* defined( HAVE_PTHREAD ) */
+
extern void __glXSetCurrentContextNull(void);
@@ -650,9 +661,14 @@ extern void __glXSetCurrentContextNull(void);
** Global lock for all threads in this address space using the GLX
** extension
*/
+#if defined( HAVE_PTHREAD )
extern pthread_mutex_t __glXmutex;
#define __glXLock() pthread_mutex_lock(&__glXmutex)
#define __glXUnlock() pthread_mutex_unlock(&__glXmutex)
+#else
+#define __glXLock()
+#define __glXUnlock()
+#endif
/*
** Setup for a command. Initialize the extension for dpy if necessary.