diff options
author | Guido van Rossum <guido@python.org> | 1997-11-22 21:59:45 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1997-11-22 21:59:45 (GMT) |
commit | 50d4cc2f1da13e240cce4e65bd8d954b72b7b57f (patch) | |
tree | 1ac7559d8607eaa6210ad090e81719a8fd9bf065 /PC/os2vacpp/config.h | |
parent | 0ba48ba17224addd1023ccab6fe8e7715eb794c9 (diff) | |
download | cpython-50d4cc2f1da13e240cce4e65bd8d954b72b7b57f.zip cpython-50d4cc2f1da13e240cce4e65bd8d954b72b7b57f.tar.gz cpython-50d4cc2f1da13e240cce4e65bd8d954b72b7b57f.tar.bz2 |
Files specific to Visual Age C for OS/2 -- by Jeff Rush
Diffstat (limited to 'PC/os2vacpp/config.h')
-rw-r--r-- | PC/os2vacpp/config.h | 630 |
1 files changed, 630 insertions, 0 deletions
diff --git a/PC/os2vacpp/config.h b/PC/os2vacpp/config.h new file mode 100644 index 0000000..19438f5 --- /dev/null +++ b/PC/os2vacpp/config.h @@ -0,0 +1,630 @@ +#ifndef Py_CONFIG_H +#define Py_CONFIG_H + +/********************************************************************** + * config.h. NOT Generated automatically by configure. + * + * This is a manually maintained version used for the Watcom, + * Borland and Microsoft Visual C++ compilers on the MS Windows + * platform, and 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 (to-be-supported) + * + * 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. + * + * WINDOWS DEFINES: + * The code specific to Windows should be wrapped around one of + * the following #defines + * + * MS_WIN32 - Code specific to the MS Win32 API + * MS_WIN16 - Code specific to the old 16 bit Windows API. + * MS_WINDOWS - Code specific to Windows, but all versions. + * MS_COREDLL - Code if the Python core is built as a DLL. + * + * Note that the old defines "NT" and "WIN32" are still supported, but + * will soon be dropped. + * + * Also note that neither "_M_IX86" or "_MSC_VER" should be used for + * any purpose other than "Windows Intel x86 specific" and "Microsoft + * compiler specific". Therefore, these should be very rare. + * + * 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 <io.h> + +#define HAVE_LIMITS_H +#define HAVE_HYPOT +#define DONT_HAVE_SIG_ALARM +#define DONT_HAVE_SIG_PAUSE + +#define LONG_BIT 32 + +/* Configuration Options for Finding Modules */ +#define PREFIX "" +#define EXEC_PREFIX "" +//#define VPATH "." + +//#define PYTHONPATH PREFIX "/lib/python" VERSION DELIM \ +// PREFIX "/lib/python" VERSION "/test" DELIM \ +// EXEC_PREFIX "/lib/python" VERSION "/sharedmodules" + +/***************************************************/ +/* 32-Bit IBM VisualAge C/C++ v3.0 for OS/2 */ +/* (Convert Compiler Flags into Useful Switches) */ +/***************************************************/ +#if (defined(__IBMC__) || defined(__IBMCPP__)) && defined(__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-os2;.\\lib\\dos_8x3;.\\lib\\lib-tk" + #define DOSFILESYS /* OS/2 Uses the DOS File Naming Conventions */ + /* #define IMPORT_8x3_NAMES */ + + /* Platform CPU-Mode Dependencies */ + #define WORD_BIT 32 /* OS/2 is a 32-Bit Operating System */ + + 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 /* Then Enable Threading Throughout Python */ + #define OS2_THREADS /* And Use the OS/2 Flavor of Threads */ + #endif + + /* Compiler Runtime Library Capabilities */ +#include <ctype.h> +#include <direct.h> + + /* #define VA_LIST_IS_ARRAY */ + #define HAVE_CLOCK /* We support all of the Unix clock() API */ + #define HAVE_STRFTIME /* We have a strftime() formatting function */ + #define HAVE_PUTENV /* We have a putenv() function */ + #define HAVE_SYS_SELECT_H /* We have sys/select.h (under TCP/IP dirs) */ + #define HAVE_PROTOTYPES /* Our Compiler Supports C Function Prototypes */ + + #ifdef USE_DL_EXPORT + #define DL_IMPORT(RTYPE) RTYPE _Export + #endif + +#endif /* VAC++ for OS/2 */ + +/***************************************************/ +/* 32-Bit Microsoft Visual C/C++ v2.0+ for Windows */ +/* (Convert Compiler Flags into Useful Switches) */ +/***************************************************/ +#if defined(_MSC_VER) && _MSC_VER > 850 + /* Start of defines for MS_WIN32 using VC++ 2.0 and up */ + #define NT /* NT is obsolete - please use MS_WIN32 instead */ + #define MS_WIN32 + #define MS_WINDOWS + + /* For NT the Python core is in a DLL by default. Test the + * standard macro MS_COREDLL to find out. If you have an exception + * you must define MS_NO_COREDLL (do not test this macro) + */ + #ifndef MS_NO_COREDLL + #define MS_COREDLL /* Python core is in a DLL */ + #ifndef USE_DL_EXPORT + #define USE_DL_IMPORT + #endif /* !USE_DL_EXPORT */ + #endif /* !MS_NO_COREDLL */ + + #ifdef _M_IX86 + #define COMPILER "[MSC 32 bit (Intel)]" + #else + #define COMPILER "[MSC (Unknown)]" + #endif + + /* Platform Filesystem */ + #define PYTHONPATH ".\\lib;.\\lib\\plat-win;.\\lib\\lib-tk" + #define DOSFILESYS /* Windows Uses the DOS File Naming Conventions */ + + /* Platform CPU-Mode Dependencies */ + #define WORD_BIT 32 + + typedef int pid_t; + #define hypot _hypot + + /* Compiler Runtime Library Capabilities */ + #pragma warning(disable:4113) + #include <stdio.h> + + #define HAVE_CLOCK /* We support all of the Unix clock() API */ + #define HAVE_STRFTIME /* We have a strftime() formatting function */ + #define NT_THREADS + #define WITH_THREAD + + #ifndef NETSCAPE_PI + #define USE_SOCKET + #endif + + #ifdef USE_DL_IMPORT + #define DL_IMPORT(RTYPE) __declspec(dllimport) RTYPE + #endif + + #ifdef USE_DL_EXPORT + #define DL_IMPORT(RTYPE) __declspec(dllexport) RTYPE + #endif +#endif /* _MSC_VER && > 850 */ + +/***************************************************/ +/* 16-Bit Microsoft Visual C/C++ v1.5+ for Windows */ +/* (Convert Compiler Flags into Useful Switches) */ +/***************************************************/ +#if defined(_MSC_VER) && _MSC_VER <= 850 + #define COMPILER "[MSC 16-bit]" + #define MS_WIN16 + #define MS_WINDOWS + + /* Platform Filesystem */ + #define PYTHONPATH ".;.\\lib;.\\lib\\win;.\\lib\\dos_8x3" + #define IMPORT_8x3_NAMES + #define DOSFILESYS /* Windows Uses the DOS File Naming Conventions */ + + /* Platform CPU-Mode Dependencies */ + #define WORD_BIT 16 + + typedef int pid_t; + + /* Compiler Runtime Library Capabilities */ + #pragma warning(disable:4113) + #define memcpy memmove /* memcpy dangerous pointer wrap in Win 3.1 */ + #define hypot _hypot + #define SIGINT 2 + +#include <stdio.h> + + /* Windows 3.1 will not tolerate any console io in a dll */ + + #ifdef _USRDLL + #include <time.h> + + #ifdef __cplusplus + extern "C" { + #endif + + #define stdin ((FILE *)0) + #define stdout ((FILE *)1) + #define stderr ((FILE *)2) + + #define fflush Py_fflush + int Py_fflush(FILE *); + + #define fgets Py_fgets + char *Py_fgets(char *, int, FILE *); + + #define fileno Py_fileno + int Py_fileno(FILE *); + + #define fprintf Py_fprintf + int Py_fprintf(FILE *, const char *, ...); + + #define printf Py_printf + int Py_printf(const char *, ...); + + #define sscanf Py_sscanf + int Py_sscanf(const char *, const char *, ...); + + clock_t clock(); + void _exit(int); + void exit(int); + int sscanf(const char *, const char *, ...); + + #ifdef __cplusplus + } + #endif + #endif /* _USRDLL */ + + #ifndef NETSCAPE_PI + /* use sockets, but not in a Netscape dll */ + #define USE_SOCKET + #endif +#endif /* MS_WIN16 */ + +/***************************************************/ +/* 32-Bit Watcom C/C++ v?.? for Windows */ +/* (Convert Compiler Flags into Useful Switches) */ +/***************************************************/ +#ifdef __WATCOMC__ + #define COMPILER "[Watcom]" + + /* Platform Filesystem */ + #define PYTHONPATH ".;.\\lib;.\\lib\\win;.\\lib\\dos_8x3" + #define IMPORT_8x3_NAMES + #define DOSFILESYS /* Watcom Uses the DOS File Naming Conventions */ + + typedef int mode_t; + typedef int uid_t; + typedef int gid_t; + typedef int pid_t; + + #if defined(__NT__) + #define NT /* NT is obsolete - please use MS_WIN32 instead */ + #define MS_WIN32 + #define MS_WINDOWS + #define NT_THREADS + #define USE_SOCKET + #define WITH_THREAD + #elif defined(__WINDOWS__) + #define MS_WIN16 + #define MS_WINDOWS + #endif + + #ifdef M_I386 + #define WORD_BIT 32 + #else + #define WORD_BIT 16 + #endif + + /* Compiler Runtime Library Capabilities */ + #include <ctype.h> + #include <direct.h> + + #define VA_LIST_IS_ARRAY + #define HAVE_CLOCK + #define HAVE_STRFTIME + + #ifdef USE_DL_EXPORT + #define DL_IMPORT(RTYPE) RTYPE __export + #endif +#endif /* __WATCOMC__ */ + +/***************************************************/ +/* 32-Bit Borland C/C++ v?.? for Windows */ +/* (Convert Compiler Flags into Useful Switches) */ +/***************************************************/ +/* The Borland compiler defines __BORLANDC__ */ +/* XXX These defines are likely incomplete, but should be easy to fix. */ +#ifdef __BORLANDC__ + #define COMPILER "[Borland]" + + /* Platform Filesystem */ + #define PYTHONPATH ".;.\\lib;.\\lib\\win;.\\lib\\dos_8x3" + #define IMPORT_8x3_NAMES + #define DOSFILESYS /* Borland Uses the DOS File Naming Conventions */ + + /* Compiler Runtime Library Capabilities */ + #define HAVE_CLOCK + #define HAVE_STRFTIME + + #ifdef USE_DL_IMPORT + #define DL_IMPORT(RTYPE) RTYPE __import + #endif +#endif /* BORLANDC */ + +/********************************/ +/* End of compilers - finish up */ +/********************************/ + +/**************************************** + * Adjustments for the Operating System + ****************************************/ +#ifdef MS_WIN32 + #define PLATFORM "win32" +#else + #ifdef MS_WIN16 + #define PLATFORM "win16" + #else + #ifdef PYOS_OS2 + #define PLATFORM "os2" + #else + #define PLATFORM "dos" + #endif + #endif /* !MS_WIN16 */ +#endif /* !MS_WIN32 */ + +/**************************************** + * Supported Features in Runtime API + ****************************************/ + +/* Define if on AIX 3. + System headers sometimes define this. + We just want to avoid a redefinition error message. */ +#ifndef _ALL_SOURCE +/* #undef _ALL_SOURCE */ +#endif + +/* Define to empty if the keyword does not work. */ +/* #define const */ + +/* Define if you have dirent.h. */ +/* #define DIRENT 1 */ + +/* Define to the type of elements in the array set by `getgroups'. + Usually this is either `int' or `gid_t'. */ +/* #undef GETGROUPS_T */ + +/* Define to `int' if <sys/types.h> doesn't define. */ +/* #undef gid_t */ + +/* Define if your struct tm has tm_zone. */ +/* #undef HAVE_TM_ZONE */ + +/* Define if you don't have tm_zone but do have the external array + tzname. */ +#define HAVE_TZNAME + +/* Define if on MINIX. */ +/* #undef _MINIX */ + +/* Define to `int' if <sys/types.h> doesn't define. */ +/* #undef mode_t */ + +/* Define if you don't have dirent.h, but have ndir.h. */ +/* #undef NDIR */ + +/* Define to `long' if <sys/types.h> doesn't define. */ +/* #undef off_t */ + +/* Define to `int' if <sys/types.h> doesn't define. */ +/* #undef pid_t */ + +/* Define if the system does not provide POSIX.1 features except + with this defined. */ +/* #undef _POSIX_1_SOURCE */ + +/* Define if you need to in order for stat and other things to work. */ +/* #undef _POSIX_SOURCE */ + +/* Define as the return type of signal handlers (int or void). */ +#define RETSIGTYPE void + +/* Define to `unsigned' if <sys/types.h> doesn't define. */ +/* #undef size_t */ + +/* Define if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define if you don't have dirent.h, but have sys/dir.h. */ +/* #undef SYSDIR */ + +/* Define if you don't have dirent.h, but have sys/ndir.h. */ +/* #undef SYSNDIR */ + +/* Define if you can safely include both <sys/time.h> and <time.h>. */ +/* #undef TIME_WITH_SYS_TIME */ + +/* Define if your <sys/time.h> declares struct tm. */ +/* #define TM_IN_SYS_TIME 1 */ + +/* Define to `int' if <sys/types.h> doesn't define. */ +/* #undef uid_t */ + +/* Define if the closedir function returns void instead of int. */ +/* #undef VOID_CLOSEDIR */ + +/* Define if your <unistd.h> contains bad prototypes for exec*() + (as it does on SGI IRIX 4.x) */ +/* #undef BAD_EXEC_PROTOTYPES */ + +/* Define if your compiler botches static forward declarations + (as it does on SCI ODT 3.0) */ +/* #define BAD_STATIC_FORWARD 1 */ + +/* Define if getpgrp() must be called as getpgrp(0) + and (consequently) setpgrp() as setpgrp(0, 0). */ +/* #undef GETPGRP_HAVE_ARGS */ + +/* Define this if your time.h defines altzone */ +/* #define HAVE_ALTZONE */ + +/* Define if you have the putenv function. */ +#ifdef MS_WIN32 +/* Does this exist on Win16? */ +#define HAVE_PUTENV +#endif + +/* Define if your compiler supports function prototypes */ +#define HAVE_PROTOTYPES + +/* Define if you can safely include both <sys/select.h> and <sys/time.h> + (which you can't on SCO ODT 3.0). */ +/* #undef SYS_SELECT_WITH_SYS_TIME */ + +/* Define if you want to use SGI (IRIX 4) dynamic linking. + This requires the "dl" library by Jack Jansen, + ftp://ftp.cwi.nl/pub/dynload/dl-1.6.tar.Z. + Don't bother on IRIX 5, it already has dynamic linking using SunOS + style shared libraries */ +/* #undef WITH_SGI_DL */ + +/* Define if you want to emulate SGI (IRIX 4) dynamic linking. + This is rumoured to work on VAX (Ultrix), Sun3 (SunOS 3.4), + Sequent Symmetry (Dynix), and Atari ST. + This requires the "dl-dld" library, + ftp://ftp.cwi.nl/pub/dynload/dl-dld-1.1.tar.Z, + as well as the "GNU dld" library, + ftp://ftp.cwi.nl/pub/dynload/dld-3.2.3.tar.Z. + Don't bother on SunOS 4 or 5, they already have dynamic linking using + shared libraries */ +/* #undef WITH_DL_DLD */ + +/* Define if you want to compile in rudimentary thread support */ +/* #undef WITH_THREAD */ + +/* Define if you want to use the GNU readline library */ +/* #define WITH_READLINE 1 */ + +/* Define if you have clock. */ +/* #define HAVE_CLOCK */ + +/* Define if you have ftime. */ +#define HAVE_FTIME + +/* Define if you have getpeername. */ +#define HAVE_GETPEERNAME + +/* Define if you have getpgrp. */ +/* #undef HAVE_GETPGRP */ + +/* Define if you have getpid. */ +#define HAVE_GETPID + +/* Define if you have gettimeofday. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define if you have getwd. */ +/* #undef HAVE_GETWD */ + +/* Define if you have lstat. */ +/* #undef HAVE_LSTAT */ + +/* Define if you have nice. */ +/* #undef HAVE_NICE */ + +/* Define if you have readlink. */ +/* #undef HAVE_READLINK */ + +/* Define if you have select. */ +/* #undef HAVE_SELECT */ + +/* Define if you have setpgid. */ +/* #undef HAVE_SETPGID */ + +/* Define if you have setpgrp. */ +/* #undef HAVE_SETPGRP */ + +/* Define if you have setsid. */ +/* #undef HAVE_SETSID */ + +/* Define if you have setvbuf. */ +#define HAVE_SETVBUF + +/* Define if you have siginterrupt. */ +/* #undef HAVE_SIGINTERRUPT */ + +/* Define if you have symlink. */ +/* #undef HAVE_SYMLINK */ + +/* Define if you have tcgetpgrp. */ +/* #undef HAVE_TCGETPGRP */ + +/* Define if you have tcsetpgrp. */ +/* #undef HAVE_TCSETPGRP */ + +/* Define if you have times. */ +/* #undef HAVE_TIMES */ + +/* Define if you have uname. */ +/* #undef HAVE_UNAME */ + +/* Define if you have waitpid. */ +/* #undef HAVE_WAITPID */ + +/* Define if you have the <dlfcn.h> header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define if you have the <fcntl.h> header file. */ +#define HAVE_FCNTL_H 1 + +/* Define if you have the <signal.h> header file. */ +#define HAVE_SIGNAL_H 1 + +/* Define if you have the <stdarg.h> header file. */ +#define HAVE_STDARG_H 1 + +/* Define if you have the <stdarg.h> prototypes. */ +#define HAVE_STDARG_PROTOTYPES + +/* Define if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define if you have the <sys/audioio.h> header file. */ +/* #undef HAVE_SYS_AUDIOIO_H */ + +/* Define if you have the <sys/param.h> header file. */ +/* #define HAVE_SYS_PARAM_H 1 */ + +/* Define if you have the <sys/select.h> header file. */ +/* #define HAVE_SYS_SELECT_H 1 */ + +/* Define if you have the <sys/time.h> header file. */ +/* #define HAVE_SYS_TIME_H 1 */ + +/* Define if you have the <sys/times.h> header file. */ +/* #define HAVE_SYS_TIMES_H 1 */ + +/* Define if you have the <sys/un.h> header file. */ +/* #define HAVE_SYS_UN_H 1 */ + +/* Define if you have the <sys/utime.h> header file. */ +#define HAVE_SYS_UTIME_H 1 + +/* Define if you have the <sys/utsname.h> header file. */ +/* #define HAVE_SYS_UTSNAME_H 1 */ + +/* Define if you have the <thread.h> header file. */ +/* #undef HAVE_THREAD_H */ + +/* Define if you have the <unistd.h> header file. */ +/* #define HAVE_UNISTD_H 1 */ + +/* Define if you have the <utime.h> header file. */ +/* #define HAVE_UTIME_H 1 */ + +/* Define if you have the dl library (-ldl). */ +/* #undef HAVE_LIBDL */ + +/* Define if you have the mpc library (-lmpc). */ +/* #undef HAVE_LIBMPC */ + +/* Define if you have the nsl library (-lnsl). */ +#define HAVE_LIBNSL 1 + +/* Define if you have the seq library (-lseq). */ +/* #undef HAVE_LIBSEQ */ + +/* Define if you have the socket library (-lsocket). */ +#define HAVE_LIBSOCKET 1 + +/* Define if you have the sun library (-lsun). */ +/* #undef HAVE_LIBSUN */ + +/* Define if you have the termcap library (-ltermcap). */ +/* #undef HAVE_LIBTERMCAP */ + +/* Define if you have the termlib library (-ltermlib). */ +/* #undef HAVE_LIBTERMLIB */ + +/* Define if you have the thread library (-lthread). */ +/* #undef HAVE_LIBTHREAD */ + +#endif /* !Py_CONFIG_H */ + |