Define __stdcall in msvcrt/process.h if windef.h hasn't been included.

This commit is contained in:
Alexandre Julliard 2003-01-15 03:31:49 +00:00
parent d5281fd393
commit d1e46c5d5b
2 changed files with 38 additions and 16 deletions

View File

@ -34,12 +34,25 @@ typedef unsigned short MSVCRT(wchar_t);
#define _WAIT_CHILD 0 #define _WAIT_CHILD 0
#define _WAIT_GRANDCHILD 1 #define _WAIT_GRANDCHILD 1
#ifndef __stdcall
# ifdef __i386__
# ifdef __GNUC__
# define __stdcall __attribute__((__stdcall__))
# elif defined(_MSC_VER)
/* Nothing needs to be done. __stdcall already exists */
# else
# error You need to define __stdcall for your compiler
# endif
# else /* __i386__ */
# define __stdcall
# endif /* __i386__ */
#endif /* __stdcall */
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
typedef void (__cdecl *_beginthread_start_routine_t)(void *); typedef void (*_beginthread_start_routine_t)(void *);
typedef unsigned int (__stdcall *_beginthreadex_start_routine_t)(void *); typedef unsigned int (__stdcall *_beginthreadex_start_routine_t)(void *);
unsigned long _beginthread(_beginthread_start_routine_t,unsigned int,void*); unsigned long _beginthread(_beginthread_start_routine_t,unsigned int,void*);

View File

@ -41,22 +41,31 @@ extern "C" {
/* Calling conventions definitions */ /* Calling conventions definitions */
#ifdef __i386__ #if defined(__i386__) && !defined(_X86_)
# ifndef _X86_
# define _X86_ # define _X86_
# endif #endif
# if defined(__GNUC__) && ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 7)))
#ifndef __stdcall
# ifdef __i386__
# ifdef __GNUC__
# define __stdcall __attribute__((__stdcall__)) # define __stdcall __attribute__((__stdcall__))
# define __cdecl __attribute__((__cdecl__))
# elif defined(_MSC_VER) # elif defined(_MSC_VER)
/* Nothing needs to be done. __cdecl/__stdcall already exists */ /* Nothing needs to be done. __stdcall already exists */
# else # else
# error You need gcc >= 2.7 to build Wine on a 386 # error You need to define __stdcall for your compiler
# endif /* __GNUC__ */ # endif
#else /* __i386__ */ # else /* __i386__ */
# define __stdcall # define __stdcall
# endif /* __i386__ */
#endif /* __stdcall */
#ifndef __cdecl
# if defined(__i386__) && defined(__GNUC__)
# define __cdecl __attribute__((__cdecl__))
# elif !defined(_MSC_VER)
# define __cdecl # define __cdecl
#endif /* __i386__ */ # endif
#endif /* __stdcall */
#ifndef __WINESRC__ #ifndef __WINESRC__