4 * Derived from the mingw header written by Colin Peters.
5 * Modified for Wine use by Jon Griffiths and Francois Gouget.
6 * This file is in the public domain.
8 #ifndef __WINE_PROCESS_H
9 #define __WINE_PROCESS_H
13 #ifdef USE_MSVCRT_PREFIX
14 #define MSVCRT(x) MSVCRT_##x
20 /* Process creation flags */
28 #define _WAIT_GRANDCHILD 1
35 unsigned long _beginthread(void (*)(void*),unsigned,void*);
36 unsigned long _beginthreadex(void*,unsigned,unsigned __stdcall (*)(void*),void*,unsigned, unsigned*);
37 int _cwait(int*,int,int);
38 void _endthread(void);
39 void _endthreadex(unsigned);
40 int _execl(const char*,const char*,...);
41 int _execle(const char*,const char*,...);
42 int _execlp(const char*,const char*,...);
43 int _execlpe(const char*,const char*,...);
44 int _execv(const char*,char* const *);
45 int _execve(const char*,char* const *,const char* const *);
46 int _execvp(const char*,char* const *);
47 int _execvpe(const char*,char* const *,const char* const *);
49 int _spawnl(int,const char*,const char*,...);
50 int _spawnle(int,const char*,const char*,...);
51 int _spawnlp(int,const char*,const char*,...);
52 int _spawnlpe(int,const char*,const char*,...);
53 int _spawnv(int,const char*,const char* const *);
54 int _spawnve(int,const char*,const char* const *,const char* const *);
55 int _spawnvp(int,const char* ,const char* const *);
56 int _spawnvpe(int,const char*,const char* const *,const char* const *);
58 void MSVCRT(_c_exit)(void);
59 void MSVCRT(_cexit)(void);
60 void MSVCRT(_exit)(int);
61 void MSVCRT(abort)(void);
62 void MSVCRT(exit)(int);
63 int MSVCRT(system)(const char*);
65 int _wexecl(const WCHAR*,const WCHAR*,...);
66 int _wexecle(const WCHAR*,const WCHAR*,...);
67 int _wexeclp(const WCHAR*,const WCHAR*,...);
68 int _wexeclpe(const WCHAR*,const WCHAR*,...);
69 int _wexecv(const WCHAR*,const WCHAR* const *);
70 int _wexecve(const WCHAR*,const WCHAR* const *,const WCHAR* const *);
71 int _wexecvp(const WCHAR*,const WCHAR* const *);
72 int _wexecvpe(const WCHAR*,const WCHAR* const *,const WCHAR* const *);
73 int _wspawnl(int,const WCHAR*,const WCHAR*,...);
74 int _wspawnle(int,const WCHAR*,const WCHAR*,...);
75 int _wspawnlp(int,const WCHAR*,const WCHAR*,...);
76 int _wspawnlpe(int,const WCHAR*,const WCHAR*,...);
77 int _wspawnv(int,const WCHAR*,const WCHAR* const *);
78 int _wspawnve(int,const WCHAR*,const WCHAR* const *,const WCHAR* const *);
79 int _wspawnvp(int,const WCHAR*,const WCHAR* const *);
80 int _wspawnvpe(int,const WCHAR*,const WCHAR* const *,const WCHAR* const *);
81 int _wsystem(const WCHAR*);
88 #ifndef USE_MSVCRT_PREFIX
89 #define P_WAIT _P_WAIT
90 #define P_NOWAIT _P_NOWAIT
91 #define P_OVERLAY _P_OVERLAY
92 #define P_NOWAITO _P_NOWAITO
93 #define P_DETACH _P_DETACH
95 #define WAIT_CHILD _WAIT_CHILD
96 #define WAIT_GRANDCHILD _WAIT_GRANDCHILD
99 #define getpid _getpid
101 #define execle _execle
102 #define execlp _execlp
103 #define execlpe _execlpe
105 #define execve _execve
106 #define execvp _execvp
107 #define execvpe _execvpe
108 #define spawnl _spawnl
109 #define spawnle _spawnle
110 #define spawnlp _spawnlp
111 #define spawnlpe _spawnlpe
112 #define spawnv _spawnv
113 #define spawnve _spawnve
114 #define spawnvp _spawnvp
115 #define spawnvpe _spawnvpe
116 #endif /* USE_MSVCRT_PREFIX */
118 #endif /* __WINE_PROCESS_H */