build: Use AX_PTHREAD's HAVE_PTHREAD preprocessor definition
authorMatt Turner <mattst88@gmail.com>
Wed, 19 Sep 2012 05:09:26 +0000 (22:09 -0700)
committerMatt Turner <mattst88@gmail.com>
Mon, 1 Oct 2012 22:23:04 +0000 (15:23 -0700)
15 files changed:
Android.common.mk
configure.ac
docs/dispatch.html
scons/gallium.py
src/egl/main/eglcurrent.c
src/egl/main/eglmutex.h
src/glx/apple/Makefile
src/glx/glxclient.h
src/glx/glxcurrent.c
src/mapi/glapi/gen/gl_SPARC_asm.py
src/mapi/glapi/gen/gl_x86-64_asm.py
src/mapi/glapi/gen/gl_x86_asm.py
src/mapi/glapi/glapi_entrypoint.c
src/mapi/mapi/stub.c
src/mapi/mapi/u_thread.h

index 1e9f040ac078ccd93a5cbda2eb45a2faaf510497..18e5726fa0ae78d999f6cf67db38d21d9d846592 100644 (file)
@@ -40,7 +40,7 @@ LOCAL_CFLAGS += \
        -DANDROID_VERSION=0x0$(major)0$(minor)
 
 LOCAL_CFLAGS += \
-       -DPTHREADS \
+       -DHAVE_PTHREAD=1 \
        -fvisibility=hidden \
        -Wno-sign-compare
 
index b8f5514994a23c2f952334e9e722165e82c2aefd..0e66823e7735d41f25db567a046dc2ce570fb1fc 100644 (file)
@@ -160,13 +160,13 @@ DEFINES=""
 AC_SUBST([DEFINES])
 case "$host_os" in
 linux*|*-gnu*|gnu*)
-    DEFINES="$DEFINES -D_GNU_SOURCE -DPTHREADS"
+    DEFINES="$DEFINES -D_GNU_SOURCE"
     ;;
 solaris*)
-    DEFINES="$DEFINES -DPTHREADS -DSVR4"
+    DEFINES="$DEFINES -DSVR4"
     ;;
 cygwin*)
-    DEFINES="$DEFINES -DPTHREADS"
+    DEFINES="$DEFINES"
     ;;
 esac
 
@@ -955,8 +955,8 @@ AC_ARG_ENABLE([glx-tls],
     [GLX_USE_TLS=no])
 AC_SUBST(GLX_TLS, ${GLX_USE_TLS})
 
-AS_IF([test "x$GLX_USE_TLS" = xyes],
-      [DEFINES="${DEFINES} -DGLX_USE_TLS -DPTHREADS"])
+AS_IF([test "x$GLX_USE_TLS" = xyes -a "x$ax_pthread_ok" = xyes],
+      [DEFINES="${DEFINES} -DGLX_USE_TLS"])
 
 dnl
 dnl More DRI setup
@@ -1040,7 +1040,7 @@ if test "x$enable_dri" = xyes; then
         esac
         ;;
     freebsd* | dragonfly* | *netbsd*)
-        DEFINES="$DEFINES -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1"
+        DEFINES="$DEFINES -DUSE_EXTERNAL_DXTN_LIB=1"
         DEFINES="$DEFINES -DIN_DRI_DRIVER -DHAVE_ALIAS"
 
         if test "x$DRI_DIRS" = "xyes"; then
index 299d68a96eec708ad6c0a3104266b2583966f89a..4b529bc0487e39b5179bd78eb640c62888c36a43 100644 (file)
@@ -205,7 +205,7 @@ few preprocessor defines.</p>
 
 <ul>
 <li>If <tt>GLX_USE_TLS</tt> is defined, method #4 is used.</li>
-<li>If <tt>PTHREADS</tt> is defined, method #3 is used.</li>
+<li>If <tt>HAVE_PTHREAD</tt> is defined, method #3 is used.</li>
 <li>If <tt>WIN32_THREADS</tt> is defined, method #2 is used.</li>
 <li>If none of the preceeding are defined, method #1 is used.</li>
 </ul>
index 1dd4e818715738cd199c8d97d5ccea8718ee1e96..c3f33a05a38d35cd74013bc2982d1bd9f0cab136 100755 (executable)
@@ -251,7 +251,7 @@ def generate(env):
             '_SVID_SOURCE',
             '_BSD_SOURCE',
             '_GNU_SOURCE',
-            'PTHREADS',
+            'HAVE_PTHREAD',
             'HAVE_POSIX_MEMALIGN',
         ]
         if env['platform'] == 'darwin':
index 2e2185fa51084b14536ecec3ea36c71f8b96a74d..5b09a48077247180d417b9be5de4f9af5f35762a 100644 (file)
@@ -42,7 +42,7 @@
 static _EGLThreadInfo dummy_thread = _EGL_THREAD_INFO_INITIALIZER;
 
 
-#if PTHREADS
+#if HAVE_PTHREAD
 #include <pthread.h>
 
 static _EGL_DECLARE_MUTEX(_egl_TSDMutex);
@@ -108,7 +108,7 @@ static INLINE EGLBoolean _eglInitTSD(void (*dtor)(_EGLThreadInfo *))
    return EGL_TRUE;
 }
 
-#else /* PTHREADS */
+#else /* HAVE_PTHREAD */
 static const _EGLThreadInfo *_egl_TSD;
 static void (*_egl_FreeTSD)(_EGLThreadInfo *);
 
@@ -137,7 +137,7 @@ static INLINE EGLBoolean _eglInitTSD(void (*dtor)(_EGLThreadInfo *))
    return EGL_TRUE;
 }
 
-#endif /* !PTHREADS */
+#endif /* !HAVE_PTHREAD */
 
 
 static void
index 852e25195c4b3c8ee714e2db4d83d324a9842f84..e46486463b160b6be5e8ec8413fb53610c9928f8 100644 (file)
@@ -31,7 +31,7 @@
 
 #include "eglcompiler.h"
 
-#ifdef PTHREADS
+#ifdef HAVE_PTHREAD
 #include <pthread.h>
 
 typedef pthread_mutex_t _EGLMutex;
index ef12eb0e299eebd15ce03d325475074e622f25ba..f6faa1ef71cda5cf0d15bfccc8325236bfffb9d4 100644 (file)
@@ -7,7 +7,7 @@ top_srcdir = $(TOP)
 include $(TOP)/configs/current
 
 #CC=gcc
-#GL_CFLAGS=-Wall -ggdb3 -Os -DPTHREADS -D_REENTRANT $(RC_CFLAGS) $(CFLAGS)
+#GL_CFLAGS=-Wall -ggdb3 -Os -DHAVE_PTHREAD -D_REENTRANT $(RC_CFLAGS) $(CFLAGS)
 #GL_LDFLAGS=-L$(INSTALL_DIR)/lib -L$(X11_DIR)/lib $(LDFLAGS) -Wl,-single_module
 
 TCLSH=tclsh8.5
index 087f23892e91d118596e06ad9b15d59398b4f76c..e4adedd509b7315f3ca2007d82b1cce2500a23c7 100644 (file)
@@ -53,7 +53,7 @@
 #include "GL/glxproto.h"
 #include "glxconfig.h"
 #include "glxhash.h"
-#if defined( PTHREADS )
+#if defined( HAVE_PTHREAD )
 # include <pthread.h>
 #endif
 
@@ -623,7 +623,7 @@ extern void __glXPreferEGL(int state);
 extern int __glXDebug;
 
 /* This is per-thread storage in an MT environment */
-#if defined( PTHREADS )
+#if defined( HAVE_PTHREAD )
 
 extern void __glXSetCurrentContext(struct glx_context * c);
 
@@ -646,7 +646,7 @@ extern struct glx_context *__glXcurrentContext;
 #define __glXGetCurrentContext() __glXcurrentContext
 #define __glXSetCurrentContext(gc) __glXcurrentContext = gc
 
-#endif /* defined( PTHREADS ) */
+#endif /* defined( HAVE_PTHREAD ) */
 
 extern void __glXSetCurrentContextNull(void);
 
@@ -655,7 +655,7 @@ extern void __glXSetCurrentContextNull(void);
 ** Global lock for all threads in this address space using the GLX
 ** extension
 */
-#if defined( PTHREADS )
+#if defined( HAVE_PTHREAD )
 extern pthread_mutex_t __glXmutex;
 #define __glXLock()    pthread_mutex_lock(&__glXmutex)
 #define __glXUnlock()  pthread_mutex_unlock(&__glXmutex)
index c92a2fd3cc28b26d6d5f5d07ec8555d2c9fe1f0a..3d8893cf9afd17576c516024bbe520a7616d26f1 100644 (file)
@@ -33,7 +33,7 @@
  * Client-side GLX interface for current context management.
  */
 
-#ifdef PTHREADS
+#ifdef HAVE_PTHREAD
 #include <pthread.h>
 #endif
 
@@ -73,7 +73,7 @@ struct glx_context dummyContext = {
  * Current context management and locking
  */
 
-#if defined( PTHREADS )
+#if defined( HAVE_PTHREAD )
 
 _X_HIDDEN pthread_mutex_t __glXmutex = PTHREAD_MUTEX_INITIALIZER;
 
index 400e684da02049b100d8031f0663fdc9aded01cb..553959687e0e4f76daf8753f3caecec8882eb2e1 100644 (file)
@@ -120,7 +120,7 @@ class PrintGenericStubs(gl_XML.gl_print_base):
                print '\t sethi\tGL_OFF(off), %g3;\t\t\t\\'
                print '\t.size\tfn,.-fn;'
                print ''
-               print '#elif defined(PTHREADS)'
+               print '#elif defined(HAVE_PTHREAD)'
                print ''
                print '\t/* 64-bit 0x00 --> sethi %hh(_glapi_Dispatch), %g1 */'
                print '\t/* 64-bit 0x04 --> sethi %lm(_glapi_Dispatch), %g2 */'
index 3ef5e08a9c002d2f7688509fdefa57934811340f..9a085eaec5ba561a2646107f3ba76ac295d84a50 100644 (file)
@@ -138,7 +138,7 @@ class PrintGenericStubs(gl_XML.gl_print_base):
                print '#  define GL_PREFIX(n) GLNAME(CONCAT(gl,n))'
                print '# endif'
                print ''
-               print '#if defined(PTHREADS) || defined(_WIN32)'
+               print '#if defined(HAVE_PTHREAD) || defined(_WIN32)'
                print '#  define THREADS'
                print '#endif'
                print ''
@@ -158,7 +158,7 @@ class PrintGenericStubs(gl_XML.gl_print_base):
                print '\tret'
                print '\t.size\t_x86_64_get_dispatch, .-_x86_64_get_dispatch'
                print ''
-               print '#elif defined(PTHREADS)'
+               print '#elif defined(HAVE_PTHREAD)'
                print ''
                print '\t.extern\t_glapi_Dispatch'
                print '\t.extern\t_gl_DispatchTSD'
@@ -251,7 +251,7 @@ class PrintGenericStubs(gl_XML.gl_print_base):
                print '\tcall\t_x86_64_get_dispatch@PLT'
                print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
                print '\tjmp\t*%r11'
-               print '#elif defined(PTHREADS)'
+               print '#elif defined(HAVE_PTHREAD)'
                
                save_all_regs(registers)
                print '\tcall\t_x86_64_get_dispatch@PLT'
index 095edcdc035d0983867f3b75953cd15110fb252a..5eaa340f78a94f7975ba3f159c8822da3c510402 100644 (file)
@@ -78,7 +78,7 @@ class PrintGenericStubs(gl_XML.gl_print_base):
                print '#define GLOBL_FN(x) GLOBL x'
                print '#endif'
                print ''
-               print '#if defined(PTHREADS) || defined(_WIN32)'
+               print '#if defined(HAVE_PTHREAD) || defined(_WIN32)'
                print '#  define THREADS'
                print '#endif'
                print ''
@@ -98,7 +98,7 @@ class PrintGenericStubs(gl_XML.gl_print_base):
                print '\tCTX_INSNS ;                                    \\'
                print '\tJMP(GL_OFFSET(off))'
                print ''
-               print '#elif defined(PTHREADS)'
+               print '#elif defined(HAVE_PTHREAD)'
                print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
                print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
                print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
@@ -152,7 +152,7 @@ class PrintGenericStubs(gl_XML.gl_print_base):
                print '\tmovl   _glapi_tls_Dispatch@GOTNTPOFF(%eax), %eax'
                print '\tret'
                print ''
-               print '#elif defined(PTHREADS)'
+               print '#elif defined(HAVE_PTHREAD)'
                print 'EXTERN GLNAME(_glapi_Dispatch)'
                print 'EXTERN GLNAME(_gl_DispatchTSD)'
                print 'EXTERN GLNAME(pthread_getspecific)'
index 993ccb94c2430205b48098e4f30576a549e607b3..7a0eb35377535e6d009ace5e783b299c0aed4ada 100644 (file)
@@ -136,7 +136,7 @@ extern void __glapi_sparc_icache_flush(unsigned int *);
 static void
 init_glapi_relocs( void )
 {
-#if defined(PTHREADS) || defined(GLX_USE_TLS)
+#if defined(HAVE_PTHREAD) || defined(GLX_USE_TLS)
     static const unsigned int template[] = {
 #ifdef GLX_USE_TLS
        0x05000000, /* sethi %hi(_glapi_tls_Dispatch), %g2 */
@@ -266,7 +266,7 @@ init_glapi_relocs( void )
 _glapi_proc
 generate_entrypoint(GLuint functionOffset)
 {
-#if defined(PTHREADS) || defined(GLX_USE_TLS)
+#if defined(HAVE_PTHREAD) || defined(GLX_USE_TLS)
    static const unsigned int template[] = {
       0x07000000, /* sethi %hi(0), %g3 */
       0x8210000f, /* mov  %o7, %g1 */
@@ -337,7 +337,7 @@ fill_in_entrypoint_offset(_glapi_proc entrypoint, GLuint offset)
 void
 init_glapi_relocs_once( void )
 {
-#if defined(PTHREADS) || defined(GLX_USE_TLS)
+#if defined(HAVE_PTHREAD) || defined(GLX_USE_TLS)
    static pthread_once_t once_control = PTHREAD_ONCE_INIT;
    pthread_once( & once_control, init_glapi_relocs );
 #endif
index 99b475a3b4b23012751e0834943229740aab7eb4..6fb8556d140850e76a451afb79862f3e56e86ed3 100644 (file)
@@ -55,7 +55,7 @@ static int next_dynamic_slot = MAPI_TABLE_NUM_STATIC;
 void
 stub_init_once(void)
 {
-#ifdef PTHREADS
+#ifdef HAVE_PTHREAD
    static pthread_once_t once = PTHREAD_ONCE_INIT;
    pthread_once(&once, entry_patch_public);
 #else
index e53f872c92fb8e8c574772d3874726cda7e76f3e..a5e5043701f638341ad31eacab43e6ecb4d613a3 100644 (file)
 #include <stdlib.h>
 #include "u_compiler.h"
 
-#if defined(PTHREADS)
+#if defined(HAVE_PTHREAD)
 #include <pthread.h> /* POSIX threads headers */
 #endif
 #ifdef _WIN32
 #include <windows.h>
 #endif
 
-#if defined(PTHREADS) || defined(_WIN32)
+#if defined(HAVE_PTHREAD) || defined(_WIN32)
 #ifndef THREADS
 #define THREADS
 #endif
@@ -88,7 +88,7 @@ extern "C" {
  * compiler flag.  On Solaris with gcc, use -D_REENTRANT to enable
  * proper compiling for MT-safe libc etc.
  */
-#if defined(PTHREADS)
+#if defined(HAVE_PTHREAD)
 
 struct u_tsd {
    pthread_key_t key;
@@ -145,7 +145,7 @@ u_tsd_set(struct u_tsd *tsd, void *ptr)
    }
 }
 
-#endif /* PTHREADS */
+#endif /* HAVE_PTHREAD */
 
 
 /*