blob: a6cd6f794ac6b23144f1736b1fdce74b5f27ffdf [file] [log] [blame]
Guido van Rossum87d5e701996-05-28 22:50:17 +00001#ifndef Py_CONFIG_H
2#define Py_CONFIG_H
3#ifdef __cplusplus
4extern "C" {
5#endif
6
7/* config.h. NOT Generated automatically by configure.
8
9This is a manually maintained version used for the Watcom,
10Borland and and Microsoft Visual C++ compilers. It is a
11standard part of the Python distribution.
12
13*/
14
15/*
16 Some systems require special declarations for data items imported
17 or exported from dynamic link libraries. Note that the definition
18 of DL_IMPORT covers both cases. Define USE_DL_IMPORT for the client
19 of a DLL. Define USE_DL_EXPORT when making a DLL.
20*/
21
22#include <io.h>
23#define HAVE_LIMITS_H
24#define HAVE_HYPOT
25#define DONT_HAVE_SIG_ALARM
26#define DONT_HAVE_SIG_PAUSE
Guido van Rossum1bc716f1996-06-28 19:12:06 +000027#define LONG_BIT 32
Guido van Rossum87d5e701996-05-28 22:50:17 +000028
29/* Microsoft C defines _MSC_VER */
30
31#if defined(_MSC_VER) && _MSC_VER > 850
Guido van Rossum1bc716f1996-06-28 19:12:06 +000032/* Start of defines for MS_WIN32 using VC++ 2.0 and up */
33#define NT /* NT is obsolete - please use MS_WIN32 instead */
34#define MS_WIN32
35#define MS_WINDOWS
Guido van Rossum87d5e701996-05-28 22:50:17 +000036#ifdef _M_IX86
37#define COMPILER "[MSC 32 bit (Intel)]"
38#else
39#define COMPILER "[MSC (Unknown)]"
40#endif
Guido van Rossum1bc716f1996-06-28 19:12:06 +000041#define PYTHONPATH "c:\\python\\lib;c:\\python\\lib\\win"
Guido van Rossum87d5e701996-05-28 22:50:17 +000042typedef int pid_t;
Guido van Rossum1bc716f1996-06-28 19:12:06 +000043#define WORD_BIT 32
Guido van Rossum87d5e701996-05-28 22:50:17 +000044#pragma warning(disable:4113)
45#define hypot _hypot
46#include <stdio.h>
47#define HAVE_CLOCK
48#define HAVE_STRFTIME
49#define NT_THREADS
50#define WITH_THREAD
Guido van Rossum1bc716f1996-06-28 19:12:06 +000051#define _COMPLEX_DEFINED
Guido van Rossum87d5e701996-05-28 22:50:17 +000052#ifndef NETSCAPE_PI
53#define USE_SOCKET
Guido van Rossum87d5e701996-05-28 22:50:17 +000054#endif
55#ifdef USE_DL_IMPORT
56#define DL_IMPORT(RTYPE) __declspec(dllimport) RTYPE
57#endif
58#ifdef USE_DL_EXPORT
59#define DL_IMPORT(RTYPE) __declspec(dllexport) RTYPE
60#endif
Guido van Rossum1bc716f1996-06-28 19:12:06 +000061#endif /* MS_WIN32 */
Guido van Rossum87d5e701996-05-28 22:50:17 +000062
63#if defined(_MSC_VER) && _MSC_VER <= 850
64/* Start of defines for 16-bit Windows using VC++ 1.5 */
65#define COMPILER "[MSC 16-bit]"
Guido van Rossum1bc716f1996-06-28 19:12:06 +000066#ifdef _WINDOWS
Guido van Rossum87d5e701996-05-28 22:50:17 +000067#define MS_WIN16
Guido van Rossum1bc716f1996-06-28 19:12:06 +000068#define MS_WINDOWS
69#endif
70#define PYTHONPATH "c:\\python\\lib;c:\\python\\lib\\win;c:\\python\\lib\\dos_8x3"
Guido van Rossum87d5e701996-05-28 22:50:17 +000071#define IMPORT_8x3_NAMES
72typedef int pid_t;
Guido van Rossum1bc716f1996-06-28 19:12:06 +000073#define WORD_BIT 16
74#define _COMPLEX_DEFINED
Guido van Rossum87d5e701996-05-28 22:50:17 +000075#pragma warning(disable:4113)
76#define memcpy memmove /* memcpy dangerous pointer wrap in Win 3.1 */
77#define hypot _hypot
78#define SIGINT 2
79#include <stdio.h>
80/* Windows 3.1 will not tolerate any console io in a dll */
81#ifdef _USRDLL
82#include <time.h>
83#define stdin ((FILE *)0)
84#define stdout ((FILE *)1)
85#define stderr ((FILE *)2)
86#define fflush Py_fflush
87int Py_fflush(FILE *);
88#define fgets Py_fgets
89char *Py_fgets(char *, int, FILE *);
90#define fileno Py_fileno
91int Py_fileno(FILE *);
92#define fprintf Py_fprintf
93int Py_fprintf(FILE *, const char *, ...);
94#define printf Py_printf
95int Py_printf(const char *, ...);
96#define sscanf Py_sscanf
97int Py_sscanf(const char *, const char *, ...);
98clock_t clock();
99void _exit(int);
100void exit(int);
101int sscanf(const char *, const char *, ...);
102#endif /* _USRDLL */
103#ifndef NETSCAPE_PI
104/* use sockets, but not in a Netscape dll */
105#define USE_SOCKET
106#endif
107#endif /* MS_WIN16 */
108
109/* The Watcom compiler defines __WATCOMC__ */
110#ifdef __WATCOMC__
111#define COMPILER "[Watcom]"
Guido van Rossum1bc716f1996-06-28 19:12:06 +0000112#define PYTHONPATH "c:\\python\\lib;c:\\python\\lib\\win;c:\\python\\lib\\dos_8x3"
Guido van Rossum87d5e701996-05-28 22:50:17 +0000113#define IMPORT_8x3_NAMES
114#include <ctype.h>
115#include <direct.h>
116typedef int mode_t;
117typedef int uid_t;
118typedef int gid_t;
Guido van Rossum1bc716f1996-06-28 19:12:06 +0000119typedef int pid_t;
120#if defined(__NT__)
121#define NT /* NT is obsolete - please use MS_WIN32 instead */
122#define MS_WIN32
123#define MS_WINDOWS
124#define NT_THREADS
125#define USE_SOCKET
126#define WITH_THREAD
127#elif defined(__WINDOWS__)
128#define MS_WIN16
129#define MS_WINDOWS
130#endif
131#ifdef M_I386
132#define WORD_BIT 32
133#else
134#define WORD_BIT 16
135#endif
Guido van Rossum87d5e701996-05-28 22:50:17 +0000136#define VA_LIST_IS_ARRAY
137#define HAVE_CLOCK
138#define HAVE_STRFTIME
139#ifdef USE_DL_EXPORT
140#define DL_IMPORT(RTYPE) RTYPE __export
141#endif
142#endif /* __WATCOMC__ */
143
144/* The Borland compiler defines __BORLANDC__ */
145#ifdef __BORLANDC__
146#define COMPILER "[Borland]"
Guido van Rossum1bc716f1996-06-28 19:12:06 +0000147#define PYTHONPATH "c:\\python\\lib;c:\\python\\lib\\win;c:\\python\\lib\\dos_8x3"
Guido van Rossum87d5e701996-05-28 22:50:17 +0000148#define IMPORT_8x3_NAMES
149#define HAVE_CLOCK
150#define HAVE_STRFTIME
151#ifdef USE_DL_IMPORT
152#define DL_IMPORT(RTYPE) RTYPE __import
153#endif
154#endif /* BORLANDC */
155
156/* Fairly standard from here! */
157
158/* Define if on AIX 3.
159 System headers sometimes define this.
160 We just want to avoid a redefinition error message. */
161#ifndef _ALL_SOURCE
162/* #undef _ALL_SOURCE */
163#endif
164
165/* Define to empty if the keyword does not work. */
166/* #define const */
167
168/* Define if you have dirent.h. */
169/* #define DIRENT 1 */
170
171/* Define to the type of elements in the array set by `getgroups'.
172 Usually this is either `int' or `gid_t'. */
173/* #undef GETGROUPS_T */
174
175/* Define to `int' if <sys/types.h> doesn't define. */
176/* #undef gid_t */
177
178/* Define if your struct tm has tm_zone. */
179/* #undef HAVE_TM_ZONE */
180
181/* Define if you don't have tm_zone but do have the external array
182 tzname. */
183#define HAVE_TZNAME
184
185/* Define if on MINIX. */
186/* #undef _MINIX */
187
188/* Define to `int' if <sys/types.h> doesn't define. */
189/* #undef mode_t */
190
191/* Define if you don't have dirent.h, but have ndir.h. */
192/* #undef NDIR */
193
194/* Define to `long' if <sys/types.h> doesn't define. */
195/* #undef off_t */
196
197/* Define to `int' if <sys/types.h> doesn't define. */
198/* #undef pid_t */
199
200/* Define if the system does not provide POSIX.1 features except
201 with this defined. */
202/* #undef _POSIX_1_SOURCE */
203
204/* Define if you need to in order for stat and other things to work. */
205/* #undef _POSIX_SOURCE */
206
207/* Define as the return type of signal handlers (int or void). */
208#define RETSIGTYPE void
209
210/* Define to `unsigned' if <sys/types.h> doesn't define. */
211/* #undef size_t */
212
213/* Define if you have the ANSI C header files. */
214#define STDC_HEADERS 1
215
216/* Define if you don't have dirent.h, but have sys/dir.h. */
217/* #undef SYSDIR */
218
219/* Define if you don't have dirent.h, but have sys/ndir.h. */
220/* #undef SYSNDIR */
221
222/* Define if you can safely include both <sys/time.h> and <time.h>. */
223/* #undef TIME_WITH_SYS_TIME */
224
225/* Define if your <sys/time.h> declares struct tm. */
226/* #define TM_IN_SYS_TIME 1 */
227
228/* Define to `int' if <sys/types.h> doesn't define. */
229/* #undef uid_t */
230
231/* Define if the closedir function returns void instead of int. */
232/* #undef VOID_CLOSEDIR */
233
234/* Define if your <unistd.h> contains bad prototypes for exec*()
235 (as it does on SGI IRIX 4.x) */
236/* #undef BAD_EXEC_PROTOTYPES */
237
238/* Define if your compiler botches static forward declarations
239 (as it does on SCI ODT 3.0) */
240#define BAD_STATIC_FORWARD 1
241
242/* Define if getpgrp() must be called as getpgrp(0)
243 and (consequently) setpgrp() as setpgrp(0, 0). */
244/* #undef GETPGRP_HAVE_ARGS */
245
246/* Define this if your time.h defines altzone */
247/* #define HAVE_ALTZONE */
248
249/* Define if your compiler supports function prototypes */
250#define HAVE_PROTOTYPES
251
252/* Define if you can safely include both <sys/select.h> and <sys/time.h>
253 (which you can't on SCO ODT 3.0). */
254/* #undef SYS_SELECT_WITH_SYS_TIME */
255
256/* Define if you want to use SGI (IRIX 4) dynamic linking.
257 This requires the "dl" library by Jack Jansen,
258 ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z.
259 Don't bother on IRIX 5, it already has dynamic linking using SunOS
260 style shared libraries */
261/* #undef WITH_SGI_DL */
262
263/* Define if you want to emulate SGI (IRIX 4) dynamic linking.
264 This is rumoured to work on VAX (Ultrix), Sun3 (SunOS 3.4),
265 Sequent Symmetry (Dynix), and Atari ST.
266 This requires the "dl-dld" library,
267 ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z,
268 as well as the "GNU dld" library,
269 ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z.
270 Don't bother on SunOS 4 or 5, they already have dynamic linking using
271 shared libraries */
272/* #undef WITH_DL_DLD */
273
274/* Define if you want to compile in rudimentary thread support */
275/* #undef WITH_THREAD */
276
277/* Define if you want to use the GNU readline library */
278/* #define WITH_READLINE 1 */
279
280/* Define if you have clock. */
281/* #define HAVE_CLOCK */
282
283/* Define if you have ftime. */
284#define HAVE_FTIME
285
286/* Define if you have getpeername. */
287/* #undef HAVE_GETPEERNAME */
288
289/* Define if you have getpgrp. */
290/* #undef HAVE_GETPGRP */
291
292/* Define if you have getpid. */
293/* #undef HAVE_GETPID */
294
295/* Define if you have gettimeofday. */
296/* #undef HAVE_GETTIMEOFDAY */
297
298/* Define if you have getwd. */
299/* #undef HAVE_GETWD */
300
301/* Define if you have lstat. */
302/* #undef HAVE_LSTAT */
303
304/* Define if you have nice. */
305/* #undef HAVE_NICE */
306
307/* Define if you have readlink. */
308/* #undef HAVE_READLINK */
309
310/* Define if you have select. */
311/* #undef HAVE_SELECT */
312
313/* Define if you have setpgid. */
314/* #undef HAVE_SETPGID */
315
316/* Define if you have setpgrp. */
317/* #undef HAVE_SETPGRP */
318
319/* Define if you have setsid. */
320/* #undef HAVE_SETSID */
321
322/* Define if you have siginterrupt. */
323/* #undef HAVE_SIGINTERRUPT */
324
325/* Define if you have symlink. */
326/* #undef HAVE_SYMLINK */
327
328/* Define if you have tcgetpgrp. */
329/* #undef HAVE_TCGETPGRP */
330
331/* Define if you have tcsetpgrp. */
332/* #undef HAVE_TCSETPGRP */
333
334/* Define if you have times. */
335/* #undef HAVE_TIMES */
336
337/* Define if you have uname. */
338/* #undef HAVE_UNAME */
339
340/* Define if you have waitpid. */
341/* #undef HAVE_WAITPID */
342
343/* Define if you have the <dlfcn.h> header file. */
344/* #undef HAVE_DLFCN_H */
345
346/* Define if you have the <fcntl.h> header file. */
347#define HAVE_FCNTL_H 1
348
349/* Define if you have the <signal.h> header file. */
350#define HAVE_SIGNAL_H 1
351
352/* Define if you have the <stdarg.h> header file. */
353#define HAVE_STDARG_H 1
354
355/* Define if you have the <stdarg.h> prototypes. */
356#define HAVE_STDARG_PROTOTYPES
357
358/* Define if you have the <stdlib.h> header file. */
359#define HAVE_STDLIB_H 1
360
361/* Define if you have the <sys/audioio.h> header file. */
362/* #undef HAVE_SYS_AUDIOIO_H */
363
364/* Define if you have the <sys/param.h> header file. */
365/* #define HAVE_SYS_PARAM_H 1 */
366
367/* Define if you have the <sys/select.h> header file. */
368/* #define HAVE_SYS_SELECT_H 1 */
369
370/* Define if you have the <sys/time.h> header file. */
371/* #define HAVE_SYS_TIME_H 1 */
372
373/* Define if you have the <sys/times.h> header file. */
374/* #define HAVE_SYS_TIMES_H 1 */
375
376/* Define if you have the <sys/un.h> header file. */
377/* #define HAVE_SYS_UN_H 1 */
378
379/* Define if you have the <sys/utime.h> header file. */
380#define HAVE_SYS_UTIME_H 1
381
382/* Define if you have the <sys/utsname.h> header file. */
383/* #define HAVE_SYS_UTSNAME_H 1 */
384
385/* Define if you have the <thread.h> header file. */
386/* #undef HAVE_THREAD_H */
387
388/* Define if you have the <unistd.h> header file. */
389/* #define HAVE_UNISTD_H 1 */
390
391/* Define if you have the <utime.h> header file. */
392/* #define HAVE_UTIME_H 1 */
393
394/* Define if you have the dl library (-ldl). */
395/* #undef HAVE_LIBDL */
396
397/* Define if you have the mpc library (-lmpc). */
398/* #undef HAVE_LIBMPC */
399
400/* Define if you have the nsl library (-lnsl). */
401#define HAVE_LIBNSL 1
402
403/* Define if you have the seq library (-lseq). */
404/* #undef HAVE_LIBSEQ */
405
406/* Define if you have the socket library (-lsocket). */
407#define HAVE_LIBSOCKET 1
408
409/* Define if you have the sun library (-lsun). */
410/* #undef HAVE_LIBSUN */
411
412/* Define if you have the termcap library (-ltermcap). */
413/* #undef HAVE_LIBTERMCAP */
414
415/* Define if you have the termlib library (-ltermlib). */
416/* #undef HAVE_LIBTERMLIB */
417
418/* Define if you have the thread library (-lthread). */
419/* #undef HAVE_LIBTHREAD */
420#ifdef __cplusplus
421}
422#endif
423#endif /* !Py_CONFIG_H */