1 | #ifndef Py_CONFIG_H
|
---|
2 | #define Py_CONFIG_H
|
---|
3 |
|
---|
4 | /**********************************************************************
|
---|
5 | * pyconfig.h. NOT Generated automatically by configure.
|
---|
6 | *
|
---|
7 | * This is a manually maintained version used for the IBM VisualAge
|
---|
8 | * C/C++ compiler on the OS/2 platform. It is a standard part of
|
---|
9 | * the Python distribution.
|
---|
10 | *
|
---|
11 | * FILESYSTEM DEFINES:
|
---|
12 | * The code specific to a particular way of naming files and
|
---|
13 | * directory paths should be wrapped around one of the following
|
---|
14 | * #defines:
|
---|
15 | *
|
---|
16 | * DOSFILESYS PCDOS-Style (for PCDOS, Windows and OS/2)
|
---|
17 | * MACFILESYS Macintosh-Style
|
---|
18 | * UNIXFILESYS Unix-Style
|
---|
19 | * AMIGAFILESYS AmigaDOS-Style
|
---|
20 | *
|
---|
21 | * Because of the different compilers and operating systems in
|
---|
22 | * use on the Intel platform, neither the compiler name nor
|
---|
23 | * the operating system name is sufficient.
|
---|
24 | *
|
---|
25 | * OS/2 DEFINES:
|
---|
26 | * The code specific to OS/2's Program API should be wrapped around
|
---|
27 | *
|
---|
28 | * __TOS_OS2__ Target Operating System, OS/2
|
---|
29 | *
|
---|
30 | * Any code specific to the compiler itself should be wrapped with
|
---|
31 | *
|
---|
32 | * __IBMC__ IBM C Compiler
|
---|
33 | * __IBMCPP__ IBM C++ Compiler
|
---|
34 | *
|
---|
35 | * Note that since the VisualAge C/C++ compiler is also available
|
---|
36 | * for the Windows platform, it may be necessary to use both a
|
---|
37 | * __TOS_OS2__ and a __IBMC__ to select a very specific environment.
|
---|
38 | *
|
---|
39 | **********************************************************************/
|
---|
40 |
|
---|
41 | /*
|
---|
42 | * Some systems require special declarations for data items imported
|
---|
43 | * or exported from dynamic link libraries. Note that the definition
|
---|
44 | * of DL_IMPORT covers both cases. Define USE_DL_IMPORT for the client
|
---|
45 | * of a DLL. Define USE_DL_EXPORT when making a DLL.
|
---|
46 | */
|
---|
47 |
|
---|
48 | #include <io.h>
|
---|
49 |
|
---|
50 | /* Configuration Options for Finding Modules */
|
---|
51 | #define PREFIX ""
|
---|
52 | #define EXEC_PREFIX ""
|
---|
53 |
|
---|
54 | /* Provide a default library so writers of extension modules
|
---|
55 | * won't have to explicitly specify it anymore
|
---|
56 | */
|
---|
57 | #pragma library("Python24.lib")
|
---|
58 |
|
---|
59 | /***************************************************/
|
---|
60 | /* 32-Bit IBM VisualAge C/C++ v3.0 for OS/2 */
|
---|
61 | /* (Convert Compiler Flags into Useful Switches) */
|
---|
62 | /***************************************************/
|
---|
63 | #define PLATFORM "os2"
|
---|
64 | #define COMPILER "[VisualAge C/C++]"
|
---|
65 | #define PYOS_OS2 /* Define Indicator of Operating System */
|
---|
66 | #define PYCC_VACPP /* Define Indicator of C Compiler */
|
---|
67 |
|
---|
68 | /* Platform Filesystem */
|
---|
69 | #define PYTHONPATH ".;.\\lib;.\\lib\\plat-win;.\\lib\\lib-tk"
|
---|
70 | #define DOSFILESYS /* OS/2 Uses the DOS File Naming Conventions */
|
---|
71 | /* #define IMPORT_8x3_NAMES (let's move up to long filenames) */
|
---|
72 |
|
---|
73 | /* Platform CPU-Mode Dependencies */
|
---|
74 | #define WORD_BIT 32 /* OS/2 is a 32-Bit Operating System */
|
---|
75 | #define LONG_BIT 32
|
---|
76 | #define SIZEOF_INT 4 /* Count of Bytes in an (int) */
|
---|
77 | #define SIZEOF_LONG 4 /* Count of Bytes in a (long) */
|
---|
78 | #define SIZEOF_VOID_P 4 /* Count of Bytes in a (void *) */
|
---|
79 | /* #define HAVE_LONG_LONG 1 */ /* VAC++ does not support (long long) */
|
---|
80 | /* #define SIZEOF_LONG_LONG 8 */ /* Count of Bytes in a (long long) */
|
---|
81 |
|
---|
82 | /* unicode definines */
|
---|
83 | #define Py_USING_UNICODE
|
---|
84 | #define PY_UNICODE_TYPE wchar_t
|
---|
85 | #define Py_UNICODE_SIZE SIZEOF_SHORT
|
---|
86 |
|
---|
87 | /* dynamic loading */
|
---|
88 | #define HAVE_DYNAMIC_LOADING 1
|
---|
89 |
|
---|
90 | /* Define if type char is unsigned and you are not using gcc. */
|
---|
91 | #ifndef __CHAR_UNSIGNED__
|
---|
92 | /* #undef __CHAR_UNSIGNED__ */
|
---|
93 | #endif
|
---|
94 |
|
---|
95 | typedef int mode_t;
|
---|
96 | typedef int uid_t;
|
---|
97 | typedef int gid_t;
|
---|
98 | typedef int pid_t;
|
---|
99 |
|
---|
100 | #if defined(__MULTI__) /* If Compiler /Gt+ Multithread Option Enabled, */
|
---|
101 | #define WITH_THREAD 1 /* Enable Threading Throughout Python */
|
---|
102 | #define OS2_THREADS 1 /* And Use the OS/2 Flavor of Threads */
|
---|
103 | /* #define _REENTRANT 1 */ /* Use thread-safe errno, h_errno, and other fns */
|
---|
104 | #endif
|
---|
105 |
|
---|
106 | /* Compiler Runtime Library Capabilities */
|
---|
107 | #include <ctype.h>
|
---|
108 | #include <direct.h>
|
---|
109 | /* #undef BAD_STATIC_FORWARD */ /* if compiler botches static fwd decls */
|
---|
110 |
|
---|
111 | #define STDC_HEADERS 1 /* VAC++ is an ANSI C Compiler */
|
---|
112 | #define HAVE_HYPOT 1 /* hypot() */
|
---|
113 | #define HAVE_PUTENV 1 /* putenv() */
|
---|
114 | /* #define VA_LIST_IS_ARRAY 1 */ /* if va_list is an array of some kind */
|
---|
115 | /* #define HAVE_CONIO_H 1 */ /* #include <conio.h> */
|
---|
116 | #define HAVE_ERRNO_H 1 /* #include <errno.h> */
|
---|
117 | #define HAVE_SYS_STAT_H 1 /* #include <sys/stat.h> */
|
---|
118 | #define HAVE_SYS_TYPES_H 1 /* #include <sys/types.h> */
|
---|
119 |
|
---|
120 | /* Variable-Arguments/Prototypes */
|
---|
121 | #define HAVE_PROTOTYPES 1 /* VAC++ supports C Function Prototypes */
|
---|
122 | #define HAVE_STDARG_PROTOTYPES 1 /* Our <stdarg.h> has prototypes */
|
---|
123 |
|
---|
124 | /* String/Memory/Locale Operations */
|
---|
125 | #define HAVE_MEMMOVE 1 /* memmove() */
|
---|
126 | #define HAVE_STRERROR 1 /* strerror() */
|
---|
127 | #define HAVE_SETLOCALE 1 /* setlocale() */
|
---|
128 | #define MALLOC_ZERO_RETURNS_NULL 1 /* Our malloc(0) returns a NULL ptr */
|
---|
129 |
|
---|
130 | /* Signal Handling */
|
---|
131 | #define HAVE_SIGNAL_H 1 /* signal.h */
|
---|
132 | #define RETSIGTYPE void /* Return type of handlers (int or void) */
|
---|
133 | /* #undef WANT_SIGFPE_HANDLER */ /* Handle SIGFPE (see Include/pyfpe.h) */
|
---|
134 | /* #define HAVE_ALARM 1 */ /* alarm() */
|
---|
135 | /* #define HAVE_SIGINTERRUPT 1 */ /* siginterrupt() */
|
---|
136 | /* #define HAVE_SIGRELSE 1 */ /* sigrelse() */
|
---|
137 | #define DONT_HAVE_SIG_ALARM 1
|
---|
138 | #define DONT_HAVE_SIG_PAUSE 1
|
---|
139 |
|
---|
140 | /* Clock/Time Support */
|
---|
141 | #define HAVE_FTIME 1 /* We have ftime() in <sys/timeb.h> */
|
---|
142 | #define HAVE_CLOCK 1 /* clock() */
|
---|
143 | #define HAVE_STRFTIME 1 /* strftime() */
|
---|
144 | #define HAVE_MKTIME 1 /* mktime() */
|
---|
145 | #define HAVE_TZNAME 1 /* No tm_zone but do have tzname[] */
|
---|
146 | #define HAVE_TIMES 1 /* #include <sys/times.h> */
|
---|
147 | #define HAVE_SYS_UTIME_H 1 /* #include <sys/utime.h> */
|
---|
148 | /* #define HAVE_UTIME_H 1 */ /* #include <utime.h> */
|
---|
149 | #define HAVE_SYS_TIME_H 1 /* #include <sys/time.h> */
|
---|
150 | /* #define TM_IN_SYS_TIME 1 */ /* <sys/time.h> declares struct tm */
|
---|
151 | #define HAVE_GETTIMEOFDAY 1 /* gettimeofday() */
|
---|
152 | /* #define GETTIMEOFDAY_NO_TZ 1 */ /* gettimeofday() does not have 2nd arg */
|
---|
153 | /* #define HAVE_TIMEGM 1 */ /* timegm() */
|
---|
154 | #define TIME_WITH_SYS_TIME 1 /* Mix <sys/time.h> and <time.h> */
|
---|
155 | #define SYS_SELECT_WITH_SYS_TIME 1 /* Mix <sys/select.h> and <sys/time.h> */
|
---|
156 | /* #define HAVE_ALTZONE 1 */ /* if <time.h> defines altzone */
|
---|
157 |
|
---|
158 | /* Network/Sockets Support */
|
---|
159 | #define HAVE_SYS_SELECT_H 1 /* #include <sys/select.h> */
|
---|
160 | #define BSD_SELECT 1 /* Use BSD versus OS/2 form of select() */
|
---|
161 | #define HAVE_SELECT 1 /* select() */
|
---|
162 | #define HAVE_GETPEERNAME 1 /* getpeername() */
|
---|
163 | /* #undef HAVE_GETHOSTNAME_R 1 */ /* gethostname_r() */
|
---|
164 |
|
---|
165 | /* File I/O */
|
---|
166 | #define HAVE_DUP2 1 /* dup2() */
|
---|
167 | #define HAVE_EXECV 1 /* execv() */
|
---|
168 | #define HAVE_SETVBUF 1 /* setvbuf() */
|
---|
169 | #define HAVE_GETCWD 1 /* getcwd() */
|
---|
170 | #define HAVE_PIPE 1 /* pipe() [OS/2-specific code added] */
|
---|
171 | #define HAVE_IO_H 1 /* #include <io.h> */
|
---|
172 | #define HAVE_FCNTL_H 1 /* #include <fcntl.h> */
|
---|
173 | #define HAVE_DIRECT_H 1 /* #include <direct.h> */
|
---|
174 | /* #define HAVE_FLOCK 1 */ /* flock() */
|
---|
175 | /* #define HAVE_TRUNCATE 1 */ /* truncate() */
|
---|
176 | /* #define HAVE_FTRUNCATE 1 */ /* ftruncate() */
|
---|
177 | /* #define HAVE_LSTAT 1 */ /* lstat() */
|
---|
178 | /* #define HAVE_DIRENT_H 1 */ /* #include <dirent.h> */
|
---|
179 | /* #define HAVE_OPENDIR 1 */ /* opendir() */
|
---|
180 |
|
---|
181 | /* Process Operations */
|
---|
182 | #define HAVE_PROCESS_H 1 /* #include <process.h> */
|
---|
183 | #define HAVE_GETPID 1 /* getpid() */
|
---|
184 | #define HAVE_SYSTEM 1 /* system() */
|
---|
185 | #define HAVE_WAIT 1 /* wait() */
|
---|
186 | #define HAVE_KILL 1 /* kill() [OS/2-specific code added] */
|
---|
187 | #define HAVE_POPEN 1 /* popen() [OS/2-specific code added] */
|
---|
188 | /* #define HAVE_GETPPID 1 */ /* getppid() */
|
---|
189 | /* #define HAVE_WAITPID 1 */ /* waitpid() */
|
---|
190 | /* #define HAVE_FORK 1 */ /* fork() */
|
---|
191 |
|
---|
192 | /* User/Group ID Queries */
|
---|
193 | /* #define HAVE_GETEGID 1 */
|
---|
194 | /* #define HAVE_GETEUID 1 */
|
---|
195 | /* #define HAVE_GETGID 1 */
|
---|
196 | /* #define HAVE_GETUID 1 */
|
---|
197 |
|
---|
198 | /* Unix-Specific */
|
---|
199 | /* #define HAVE_SYS_UN_H 1 /* #include <sys/un.h> */
|
---|
200 | /* #define HAVE_SYS_UTSNAME_H 1 */ /* #include <sys/utsname.h> */
|
---|
201 | /* #define HAVE_SYS_WAIT_H 1 */ /* #include <sys/wait.h> */
|
---|
202 | /* #define HAVE_UNISTD_H 1 */ /* #include <unistd.h> */
|
---|
203 | /* #define HAVE_UNAME 1 */ /* uname () */
|
---|
204 |
|
---|
205 | /* Define if you want documentation strings in extension modules */
|
---|
206 | #define WITH_DOC_STRINGS 1
|
---|
207 |
|
---|
208 | #ifdef USE_DL_EXPORT
|
---|
209 | #define DL_IMPORT(RTYPE) RTYPE _System
|
---|
210 | #endif
|
---|
211 |
|
---|
212 | #endif /* !Py_CONFIG_H */
|
---|
213 |
|
---|