#ifndef Py_CONFIG_H #define Py_CONFIG_H /********************************************************************** * pyconfig.h. NOT Generated automatically by configure. * * This is a manually maintained version used for the IBM VisualAge * C/C++ compiler on the OS/2 platform. It is a standard part of * the Python distribution. * * FILESYSTEM DEFINES: * The code specific to a particular way of naming files and * directory paths should be wrapped around one of the following * #defines: * * DOSFILESYS PCDOS-Style (for PCDOS, Windows and OS/2) * MACFILESYS Macintosh-Style * UNIXFILESYS Unix-Style * AMIGAFILESYS AmigaDOS-Style * * Because of the different compilers and operating systems in * use on the Intel platform, neither the compiler name nor * the operating system name is sufficient. * * OS/2 DEFINES: * The code specific to OS/2's Program API should be wrapped around * * __TOS_OS2__ Target Operating System, OS/2 * * Any code specific to the compiler itself should be wrapped with * * __IBMC__ IBM C Compiler * __IBMCPP__ IBM C++ Compiler * * Note that since the VisualAge C/C++ compiler is also available * for the Windows platform, it may be necessary to use both a * __TOS_OS2__ and a __IBMC__ to select a very specific environment. * **********************************************************************/ /* * Some systems require special declarations for data items imported * or exported from dynamic link libraries. Note that the definition * of DL_IMPORT covers both cases. Define USE_DL_IMPORT for the client * of a DLL. Define USE_DL_EXPORT when making a DLL. */ #include /* Configuration Options for Finding Modules */ #define PREFIX "" #define EXEC_PREFIX "" /* Provide a default library so writers of extension modules * won't have to explicitly specify it anymore */ #pragma library("Python24.lib") /***************************************************/ /* 32-Bit IBM VisualAge C/C++ v3.0 for OS/2 */ /* (Convert Compiler Flags into Useful Switches) */ /***************************************************/ #define PLATFORM "os2" #define COMPILER "[VisualAge C/C++]" #define PYOS_OS2 /* Define Indicator of Operating System */ #define PYCC_VACPP /* Define Indicator of C Compiler */ /* Platform Filesystem */ #define PYTHONPATH ".;.\\lib;.\\lib\\plat-win;.\\lib\\lib-tk" #define DOSFILESYS /* OS/2 Uses the DOS File Naming Conventions */ /* #define IMPORT_8x3_NAMES (let's move up to long filenames) */ /* Platform CPU-Mode Dependencies */ #define WORD_BIT 32 /* OS/2 is a 32-Bit Operating System */ #define LONG_BIT 32 #define SIZEOF_INT 4 /* Count of Bytes in an (int) */ #define SIZEOF_LONG 4 /* Count of Bytes in a (long) */ #define SIZEOF_VOID_P 4 /* Count of Bytes in a (void *) */ /* #define HAVE_LONG_LONG 1 */ /* VAC++ does not support (long long) */ /* #define SIZEOF_LONG_LONG 8 */ /* Count of Bytes in a (long long) */ /* unicode definines */ #define Py_USING_UNICODE #define PY_UNICODE_TYPE wchar_t #define Py_UNICODE_SIZE SIZEOF_SHORT /* dynamic loading */ #define HAVE_DYNAMIC_LOADING 1 /* Define if type char is unsigned and you are not using gcc. */ #ifndef __CHAR_UNSIGNED__ /* #undef __CHAR_UNSIGNED__ */ #endif typedef int mode_t; typedef int uid_t; typedef int gid_t; typedef int pid_t; #if defined(__MULTI__) /* If Compiler /Gt+ Multithread Option Enabled, */ #define WITH_THREAD 1 /* Enable Threading Throughout Python */ #define OS2_THREADS 1 /* And Use the OS/2 Flavor of Threads */ /* #define _REENTRANT 1 */ /* Use thread-safe errno, h_errno, and other fns */ #endif /* Compiler Runtime Library Capabilities */ #include #include /* #undef BAD_STATIC_FORWARD */ /* if compiler botches static fwd decls */ #define STDC_HEADERS 1 /* VAC++ is an ANSI C Compiler */ #define HAVE_HYPOT 1 /* hypot() */ #define HAVE_PUTENV 1 /* putenv() */ /* #define VA_LIST_IS_ARRAY 1 */ /* if va_list is an array of some kind */ /* Variable-Arguments/Prototypes */ #define HAVE_PROTOTYPES 1 /* VAC++ supports C Function Prototypes */ #define HAVE_STDARG_PROTOTYPES 1 /* Our has prototypes */ /* String/Memory/Locale Operations */ #define HAVE_MEMMOVE 1 /* memmove() */ #define HAVE_STRERROR 1 /* strerror() */ #define HAVE_SETLOCALE 1 /* setlocale() */ #define MALLOC_ZERO_RETURNS_NULL 1 /* Our malloc(0) returns a NULL ptr */ /* Signal Handling */ #define RETSIGTYPE void /* Return type of handlers (int or void) */ /* #undef WANT_SIGFPE_HANDLER */ /* Handle SIGFPE (see Include/pyfpe.h) */ /* #define HAVE_ALARM 1 */ /* alarm() */ /* #define HAVE_SIGINTERRUPT 1 */ /* siginterrupt() */ /* #define HAVE_SIGRELSE 1 */ /* sigrelse() */ #define DONT_HAVE_SIG_ALARM 1 #define DONT_HAVE_SIG_PAUSE 1 /* Clock/Time Support */ #define HAVE_FTIME 1 /* We have ftime() in */ #define HAVE_CLOCK 1 /* clock() */ #define HAVE_STRFTIME 1 /* strftime() */ #define HAVE_MKTIME 1 /* mktime() */ #define HAVE_TZNAME 1 /* No tm_zone but do have tzname[] */ #define HAVE_TIMES 1 /* #include */ #define HAVE_SYS_UTIME_H 1 /* #include */ /* #define HAVE_UTIME_H 1 */ /* #include */ #define HAVE_SYS_TIME_H 1 /* #include */ /* #define TM_IN_SYS_TIME 1 */ /* declares struct tm */ #define HAVE_GETTIMEOFDAY 1 /* gettimeofday() */ /* #define GETTIMEOFDAY_NO_TZ 1 */ /* gettimeofday() does not have 2nd arg */ /* #define HAVE_TIMEGM 1 */ /* timegm() */ #define TIME_WITH_SYS_TIME 1 /* Mix and */ #define SYS_SELECT_WITH_SYS_TIME 1 /* Mix and */ /* #define HAVE_ALTZONE 1 */ /* if defines altzone */ /* Network/Sockets Support */ #define HAVE_SYS_SELECT_H 1 /* #include */ #define BSD_SELECT 1 /* Use BSD versus OS/2 form of select() */ #define HAVE_SELECT 1 /* select() */ #define HAVE_GETPEERNAME 1 /* getpeername() */ /* #undef HAVE_GETHOSTNAME_R 1 */ /* gethostname_r() */ /* File I/O */ #define HAVE_DUP2 1 /* dup2() */ #define HAVE_EXECV 1 /* execv() */ #define HAVE_SETVBUF 1 /* setvbuf() */ #define HAVE_GETCWD 1 /* getcwd() */ #define HAVE_PIPE 1 /* pipe() [OS/2-specific code added] */ #define HAVE_FCNTL_H 1 /* #include */ /* #define HAVE_FLOCK 1 */ /* flock() */ /* #define HAVE_TRUNCATE 1 */ /* truncate() */ /* #define HAVE_FTRUNCATE 1 */ /* ftruncate() */ /* #define HAVE_LSTAT 1 */ /* lstat() */ /* #define HAVE_DIRENT_H 1 */ /* #include */ /* #define HAVE_OPENDIR 1 */ /* opendir() */ /* Process Operations */ #define HAVE_GETPID 1 /* getpid() */ #define HAVE_SYSTEM 1 /* system() */ #define HAVE_WAIT 1 /* wait() */ #define HAVE_KILL 1 /* kill() [OS/2-specific code added] */ #define HAVE_POPEN 1 /* popen() [OS/2-specific code added] */ /* #define HAVE_GETPPID 1 */ /* getppid() */ /* #define HAVE_WAITPID 1 */ /* waitpid() */ /* #define HAVE_FORK 1 */ /* fork() */ /* User/Group ID Queries */ /* #define HAVE_GETEGID 1 */ /* #define HAVE_GETEUID 1 */ /* #define HAVE_GETGID 1 */ /* #define HAVE_GETUID 1 */ /* Unix-Specific */ /* #define HAVE_SYS_UN_H 1 /* #include */ /* #define HAVE_SYS_UTSNAME_H 1 */ /* #include */ /* #define HAVE_SYS_WAIT_H 1 */ /* #include */ /* #define HAVE_UNISTD_H 1 */ /* #include */ /* #define HAVE_UNAME 1 */ /* uname () */ /* Define if you want documentation strings in extension modules */ #define WITH_DOC_STRINGS 1 #ifdef USE_DL_EXPORT #define DL_IMPORT(RTYPE) RTYPE _System #endif #endif /* !Py_CONFIG_H */