Mercurial > sdl-ios-xcode
comparison include/SDL_thread.h @ 1471:9fb0eee04dd9
Enabled libc support on Win32, so we don't break binary compatibility in 1.2
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Mon, 06 Mar 2006 07:42:36 +0000 |
parents | d47d96962fcc |
children | 782fd950bd46 d5d3a6fe05a1 |
comparison
equal
deleted
inserted
replaced
1470:d47d96962fcc | 1471:9fb0eee04dd9 |
---|---|
43 /* The SDL thread structure, defined in SDL_thread.c */ | 43 /* The SDL thread structure, defined in SDL_thread.c */ |
44 struct SDL_Thread; | 44 struct SDL_Thread; |
45 typedef struct SDL_Thread SDL_Thread; | 45 typedef struct SDL_Thread SDL_Thread; |
46 | 46 |
47 /* Create a thread */ | 47 /* Create a thread */ |
48 #if defined(__WIN32__) || defined(__OS2__) | 48 #if (defined(__WIN32__) && !defined(HAVE_LIBC)) || defined(__OS2__) |
49 /* | 49 /* |
50 We compile SDL into a DLL on OS/2. This means, that it's the DLL which | 50 We compile SDL into a DLL on OS/2. This means, that it's the DLL which |
51 creates a new thread for the calling process with the SDL_CreateThread() | 51 creates a new thread for the calling process with the SDL_CreateThread() |
52 API. There is a problem with this, that only the RTL of the SDL.DLL will | 52 API. There is a problem with this, that only the RTL of the SDL.DLL will |
53 be initialized for those threads, and not the RTL of the calling application! | 53 be initialized for those threads, and not the RTL of the calling application! |
57 then the RTL of SDL.DLL will be used to create the new thread, and if it's | 57 then the RTL of SDL.DLL will be used to create the new thread, and if it's |
58 the application, then the RTL of the application will be used. | 58 the application, then the RTL of the application will be used. |
59 So, in short: | 59 So, in short: |
60 Always use the _beginthread() and _endthread() of the calling runtime library! | 60 Always use the _beginthread() and _endthread() of the calling runtime library! |
61 */ | 61 */ |
62 #define SDL_PASSED_BEGINTHREAD_ENDTHREAD | |
62 #ifndef _WIN32_WCE | 63 #ifndef _WIN32_WCE |
63 #include <process.h> // This has _beginthread() and _endthread() defined! | 64 #include <process.h> /* This has _beginthread() and _endthread() defined! */ |
64 #endif | |
65 #ifdef __EMX__ | |
66 #include <stdlib.h> // This has _beginthread() and _endthread() defined, if -Zmt flag is used! | |
67 #endif | 65 #endif |
68 | 66 |
69 #ifdef __OS2__ | 67 #ifdef __OS2__ |
70 typedef int (*pfnSDL_CurrentBeginThread)(void (*func)(void *), void *, unsigned, void *arg); | 68 typedef int (*pfnSDL_CurrentBeginThread)(void (*func)(void *), void *, unsigned, void *arg); |
71 typedef void (*pfnSDL_CurrentEndThread)(void); | 69 typedef void (*pfnSDL_CurrentEndThread)(void); |