Copy wininet to branch
[reactos.git] / rosapps / mc / pc / config.h
1 /****************************************************************************
2 CONFIG.H - Midnight Commander Configuration for Win32 and OS/2
3
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18
19 ----------------------------------------------------------------------------
20 Changes:
21 - Created 951204/jfg
22 - Changed from Alexander Dong (ado) for OS/2
23 - Changed 980329 by Pavel Roskin for both OS/2 and NT
24
25 ----------------------------------------------------------------------------
26 Contents:
27 - Headers flags
28 - Library flags
29 - Typedefs
30 - etc.
31 ****************************************************************************/
32 #ifndef __CONFIG_H
33 #define __CONFIG_H
34
35 #define OS2_NT
36
37 #ifdef MC_NT
38 # ifndef WIN32
39 # define WIN32
40 # endif
41 # ifndef __WIN32__
42 # define __WIN32__
43 # endif
44 # ifndef MSWINDOWS
45 # define MSWINDOWS
46 # endif
47 # ifndef _OS_NT
48 # define _OS_NT
49 # endif
50 #endif /* MC_NT */
51
52 #ifdef MC_OS2
53 # ifndef OS2
54 # define OS2
55 # endif
56 # ifndef __os2__
57 # define __os2__
58 # endif
59 #endif /* MC_OS2 */
60
61 #include "../VERSION"
62
63 #ifndef pc_system
64 # define pc_system
65 #endif
66
67 #ifndef HAVE_SLANG
68 # define HAVE_SLANG
69 #endif
70
71 #ifndef _CONSOLE
72 # define _CONSOLE
73 #endif
74
75 #define FLOAT_TYPE
76 #define MIDNIGHT
77 #define USE_INTERNAL_EDIT
78
79 #define STDC_HEADERS
80 #define HAVE_STDLIB_H
81 #define HAVE_STRING_H
82 #define HAVE_DIRENT_H
83 #define HAVE_LIMITS_H
84 #define HAVE_FCNTL_H
85 #define HAVE_UTIME_H
86
87 #define HAVE_MEMSET
88 #define HAVE_MEMCHR
89 #define HAVE_MEMCPY
90 #define HAVE_MEMCMP
91 #define HAVE_MEMMOVE
92 #define HAVE_STRDUP
93 #define HAVE_STRERROR
94 #define HAVE_TRUNCATE
95
96 #define REGEX_MALLOC
97 #define NO_INFOMOUNT
98
99 typedef unsigned int umode_t;
100 #define S_IFLNK 0
101 #define S_ISLNK(x) 0
102
103 #ifdef __EMX__
104
105 #define S_IFBLK 0
106 #define S_ISBLK(x) 0
107
108 #endif /* __EMX__ */
109
110 #ifdef __MINGW32__
111
112 #define S_IRGRP 0000040
113 #define S_IWGRP 0000020
114 #define S_IXGRP 0000010
115 #define S_IROTH 0000004
116 #define S_IWOTH 0000002
117 #define S_IXOTH 0000001
118
119 #define ENABLE_NLS
120
121 #define pipe(p) _pipe(p, 4096, 0x8000 /* O_BINARY */)
122
123 /*typedef int mode_t;*/
124 typedef unsigned int nlink_t;
125 typedef int gid_t;
126 typedef int uid_t;
127 /*typedef int pid_t;*/
128
129 #endif /* __MINGW32__ */
130
131 #ifdef _MSC_VER
132
133 #pragma include_alias(<utime.h>, <sys/utime.h>)
134
135 #define INLINE
136 #define inline
137
138 #define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
139 #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
140 #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
141
142 #define S_ISFIFO(m) 0
143 #define S_ISBLK(x) 0
144
145 #define S_IRWXU 0000700
146 #define S_IRUSR 0000400
147 #define S_IWUSR 0000200
148 #define S_IXUSR 0000100
149
150 #define S_IRWXG 0000070
151 #define S_IRGRP 0000040
152 #define S_IWGRP 0000020
153 #define S_IXGRP 0000010
154 #define S_IRWXO 0000007
155 #define S_IROTH 0000004
156 #define S_IWOTH 0000002
157 #define S_IXOTH 0000001
158
159 /* FIXME: is this definition correct? */
160 #define R_OK 4
161
162 #define pipe(p) _pipe(p, 4096, 0x8000 /* O_BINARY */)
163 #define popen _popen
164 #define pclose _pclose
165
166 typedef int mode_t;
167 typedef unsigned int nlink_t;
168 typedef int gid_t;
169 typedef int uid_t;
170 typedef int pid_t;
171
172 #endif /* _MSC_VER */
173
174 #ifdef __BORLANDC__
175
176 #define INLINE
177 #define inline
178
179 #define S_IRWXG 0000070
180 #define S_IRGRP 0000040
181 #define S_IWGRP 0000020
182 #define S_IXGRP 0000010
183 #define S_IRWXO 0000007
184 #define S_IROTH 0000004
185 #define S_IWOTH 0000002
186 #define S_IXOTH 0000001
187
188 /* FIXME: is this definition correct? */
189 #define R_OK 4
190
191 #define pipe(p) _pipe(p, 4096, 0x8000 /* O_BINARY */)
192 #define popen _popen
193 #define pclose _pclose
194 #define sleep _sleep
195
196 typedef int pid_t;
197
198 #endif /* __BORLANDC__ */
199
200 #ifdef __IBMC__
201
202 #define INLINE
203 #define inline
204
205 #define S_ISFIFO(m) 0
206 #define S_ISBLK(x) 0
207
208 #define S_ISCHR(m) (((m) & S_IFCHR) != 0)
209 #define S_ISDIR(m) (((m) & S_IFDIR) != 0)
210 #define S_ISREG(m) (((m) & S_IFREG) != 0)
211
212 #define S_IRWXU 0000700
213 #define S_IRUSR 0000400
214 #define S_IWUSR 0000200
215 #define S_IXUSR 0000100
216
217 #define S_IRWXG 0000070
218 #define S_IRGRP 0000040
219 #define S_IWGRP 0000020
220 #define S_IXGRP 0000010
221 #define S_IRWXO 0000007
222 #define S_IROTH 0000004
223 #define S_IWOTH 0000002
224 #define S_IXOTH 0000001
225
226 #define ENOTDIR ENOENT
227
228 /* FIXME: is this definition correct? */
229 #define R_OK 4
230
231 #pragma map( chdir , "_chdir" )
232 #pragma map( getcwd, "_getcwd" )
233 #pragma map( mkdir , "_mkdir" )
234 #pragma map( rmdir , "_rmdir" )
235
236 #define popen DosCreatePipe
237 #define pclose DosClose
238 #define sleep DosSleep
239
240 typedef unsigned int nlink_t;
241 typedef int mode_t;
242 typedef int gid_t;
243 typedef int uid_t;
244 typedef int pid_t;
245
246 #endif /* __IBMC__ */
247
248 #endif /* __CONFIG_H */