mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-04-22 16:10:36 +02:00
wgl: Enable the use of Win32 threads.
This commit is contained in:
parent
1456af2f2d
commit
c7bbc9ad12
3 changed files with 17 additions and 0 deletions
|
|
@ -14,6 +14,7 @@ if env['platform'] in ['windows']:
|
|||
env.Append(CPPDEFINES = [
|
||||
'_GDI32_', # prevent wgl* being declared __declspec(dllimport)
|
||||
'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
|
||||
'WIN32_THREADS', # use Win32 thread API
|
||||
])
|
||||
|
||||
sources = [
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
|
||||
#include <windows.h>
|
||||
|
||||
#include "glapi/glthread.h"
|
||||
#include "util/u_debug.h"
|
||||
#include "pipe/p_screen.h"
|
||||
|
||||
|
|
@ -35,6 +36,11 @@
|
|||
#include "shared/stw_pixelformat.h"
|
||||
#include "shared/stw_public.h"
|
||||
|
||||
#ifdef WIN32_THREADS
|
||||
extern _glthread_Mutex OneTimeLock;
|
||||
extern void FreeAllTSD(void);
|
||||
#endif
|
||||
|
||||
|
||||
struct stw_device *stw_dev = NULL;
|
||||
|
||||
|
|
@ -73,6 +79,10 @@ st_init(const struct stw_winsys *stw_winsys)
|
|||
|
||||
stw_dev->stw_winsys = stw_winsys;
|
||||
|
||||
#ifdef WIN32_THREADS
|
||||
_glthread_INIT_MUTEX(OneTimeLock);
|
||||
#endif
|
||||
|
||||
stw_dev->screen = stw_winsys->create_screen();
|
||||
if(!stw_dev->screen)
|
||||
goto error1;
|
||||
|
|
@ -114,6 +124,11 @@ st_cleanup(void)
|
|||
|
||||
stw_dev->screen->destroy(stw_dev->screen);
|
||||
|
||||
#ifdef WIN32_THREADS
|
||||
_glthread_DESTROY_MUTEX(OneTimeLock);
|
||||
FreeAllTSD();
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG
|
||||
debug_memory_end(stw_dev->memdbg_no);
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ if env['platform'] != 'winddk':
|
|||
env.Append(CPPDEFINES = [
|
||||
'_GDI32_', # prevent gl* being declared __declspec(dllimport) in MS headers
|
||||
'BUILD_GL32', # declare gl* as __declspec(dllexport) in Mesa headers
|
||||
'WIN32_THREADS', # use Win32 thread API
|
||||
])
|
||||
|
||||
#
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue