Chris@87: #ifndef Py_CONFIG_H Chris@87: #define Py_CONFIG_H Chris@87: Chris@87: /* pyconfig.h. NOT Generated automatically by configure. Chris@87: Chris@87: This is a manually maintained version used for the Watcom, Chris@87: Borland and Microsoft Visual C++ compilers. It is a Chris@87: standard part of the Python distribution. Chris@87: Chris@87: WINDOWS DEFINES: Chris@87: The code specific to Windows should be wrapped around one of Chris@87: the following #defines Chris@87: Chris@87: MS_WIN64 - Code specific to the MS Win64 API Chris@87: MS_WIN32 - Code specific to the MS Win32 (and Win64) API (obsolete, this covers all supported APIs) Chris@87: MS_WINDOWS - Code specific to Windows, but all versions. Chris@87: MS_WINCE - Code specific to Windows CE Chris@87: Py_ENABLE_SHARED - Code if the Python core is built as a DLL. Chris@87: Chris@87: Also note that neither "_M_IX86" or "_MSC_VER" should be used for Chris@87: any purpose other than "Windows Intel x86 specific" and "Microsoft Chris@87: compiler specific". Therefore, these should be very rare. Chris@87: Chris@87: Chris@87: NOTE: The following symbols are deprecated: Chris@87: NT, USE_DL_EXPORT, USE_DL_IMPORT, DL_EXPORT, DL_IMPORT Chris@87: MS_CORE_DLL. Chris@87: Chris@87: WIN32 is still required for the locale module. Chris@87: Chris@87: */ Chris@87: Chris@87: #ifdef _WIN32_WCE Chris@87: #define MS_WINCE Chris@87: #endif Chris@87: Chris@87: /* Deprecated USE_DL_EXPORT macro - please use Py_BUILD_CORE */ Chris@87: #ifdef USE_DL_EXPORT Chris@87: # define Py_BUILD_CORE Chris@87: #endif /* USE_DL_EXPORT */ Chris@87: Chris@87: /* Visual Studio 2005 introduces deprecation warnings for Chris@87: "insecure" and POSIX functions. The insecure functions should Chris@87: be replaced by *_s versions (according to Microsoft); the Chris@87: POSIX functions by _* versions (which, according to Microsoft, Chris@87: would be ISO C conforming). Neither renaming is feasible, so Chris@87: we just silence the warnings. */ Chris@87: Chris@87: #ifndef _CRT_SECURE_NO_DEPRECATE Chris@87: #define _CRT_SECURE_NO_DEPRECATE 1 Chris@87: #endif Chris@87: #ifndef _CRT_NONSTDC_NO_DEPRECATE Chris@87: #define _CRT_NONSTDC_NO_DEPRECATE 1 Chris@87: #endif Chris@87: Chris@87: /* Windows CE does not have these */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_IO_H Chris@87: #define HAVE_SYS_UTIME_H Chris@87: #define HAVE_TEMPNAM Chris@87: #define HAVE_TMPFILE Chris@87: #define HAVE_TMPNAM Chris@87: #define HAVE_CLOCK Chris@87: #define HAVE_STRERROR Chris@87: #endif Chris@87: Chris@87: #ifdef HAVE_IO_H Chris@87: #include Chris@87: #endif Chris@87: Chris@87: #define HAVE_HYPOT Chris@87: #define HAVE_STRFTIME Chris@87: #define DONT_HAVE_SIG_ALARM Chris@87: #define DONT_HAVE_SIG_PAUSE Chris@87: #define LONG_BIT 32 Chris@87: #define WORD_BIT 32 Chris@87: #define PREFIX "" Chris@87: #define EXEC_PREFIX "" Chris@87: Chris@87: #define MS_WIN32 /* only support win32 and greater. */ Chris@87: #define MS_WINDOWS Chris@87: #ifndef PYTHONPATH Chris@87: # define PYTHONPATH ".\\DLLs;.\\lib;.\\lib\\plat-win;.\\lib\\lib-tk" Chris@87: #endif Chris@87: #define NT_THREADS Chris@87: #define WITH_THREAD Chris@87: #ifndef NETSCAPE_PI Chris@87: #define USE_SOCKET Chris@87: #endif Chris@87: Chris@87: /* CE6 doesn't have strdup() but _strdup(). Assume the same for earlier versions. */ Chris@87: #if defined(MS_WINCE) Chris@87: # include Chris@87: # define strdup _strdup Chris@87: #endif Chris@87: Chris@87: #ifdef MS_WINCE Chris@87: /* Windows CE does not support environment variables */ Chris@87: #define getenv(v) (NULL) Chris@87: #define environ (NULL) Chris@87: #endif Chris@87: Chris@87: /* Compiler specific defines */ Chris@87: Chris@87: /* ------------------------------------------------------------------------*/ Chris@87: /* Microsoft C defines _MSC_VER */ Chris@87: #ifdef _MSC_VER Chris@87: Chris@87: /* We want COMPILER to expand to a string containing _MSC_VER's *value*. Chris@87: * This is horridly tricky, because the stringization operator only works Chris@87: * on macro arguments, and doesn't evaluate macros passed *as* arguments. Chris@87: * Attempts simpler than the following appear doomed to produce "_MSC_VER" Chris@87: * literally in the string. Chris@87: */ Chris@87: #define _Py_PASTE_VERSION(SUFFIX) \ Chris@87: ("[MSC v." _Py_STRINGIZE(_MSC_VER) " " SUFFIX "]") Chris@87: /* e.g., this produces, after compile-time string catenation, Chris@87: * ("[MSC v.1200 32 bit (Intel)]") Chris@87: * Chris@87: * _Py_STRINGIZE(_MSC_VER) expands to Chris@87: * _Py_STRINGIZE1((_MSC_VER)) expands to Chris@87: * _Py_STRINGIZE2(_MSC_VER) but as this call is the result of token-pasting Chris@87: * it's scanned again for macros and so further expands to (under MSVC 6) Chris@87: * _Py_STRINGIZE2(1200) which then expands to Chris@87: * "1200" Chris@87: */ Chris@87: #define _Py_STRINGIZE(X) _Py_STRINGIZE1((X)) Chris@87: #define _Py_STRINGIZE1(X) _Py_STRINGIZE2 ## X Chris@87: #define _Py_STRINGIZE2(X) #X Chris@87: Chris@87: /* MSVC defines _WINxx to differentiate the windows platform types Chris@87: Chris@87: Note that for compatibility reasons _WIN32 is defined on Win32 Chris@87: *and* on Win64. For the same reasons, in Python, MS_WIN32 is Chris@87: defined on Win32 *and* Win64. Win32 only code must therefore be Chris@87: guarded as follows: Chris@87: #if defined(MS_WIN32) && !defined(MS_WIN64) Chris@87: Some modules are disabled on Itanium processors, therefore we Chris@87: have MS_WINI64 set for those targets, otherwise MS_WINX64 Chris@87: */ Chris@87: #ifdef _WIN64 Chris@87: #define MS_WIN64 Chris@87: #endif Chris@87: Chris@87: /* set the COMPILER */ Chris@87: #ifdef MS_WIN64 Chris@87: #if defined(_M_IA64) Chris@87: #define COMPILER _Py_PASTE_VERSION("64 bit (Itanium)") Chris@87: #define MS_WINI64 Chris@87: #elif defined(_M_X64) || defined(_M_AMD64) Chris@87: #define COMPILER _Py_PASTE_VERSION("64 bit (AMD64)") Chris@87: #define MS_WINX64 Chris@87: #else Chris@87: #define COMPILER _Py_PASTE_VERSION("64 bit (Unknown)") Chris@87: #endif Chris@87: #endif /* MS_WIN64 */ Chris@87: Chris@87: /* set the version macros for the windows headers */ Chris@87: #ifdef MS_WINX64 Chris@87: /* 64 bit only runs on XP or greater */ Chris@87: #define Py_WINVER _WIN32_WINNT_WINXP Chris@87: #define Py_NTDDI NTDDI_WINXP Chris@87: #else Chris@87: /* Python 2.6+ requires Windows 2000 or greater */ Chris@87: #ifdef _WIN32_WINNT_WIN2K Chris@87: #define Py_WINVER _WIN32_WINNT_WIN2K Chris@87: #else Chris@87: #define Py_WINVER 0x0500 Chris@87: #endif Chris@87: #define Py_NTDDI NTDDI_WIN2KSP4 Chris@87: #endif Chris@87: Chris@87: /* We only set these values when building Python - we don't want to force Chris@87: these values on extensions, as that will affect the prototypes and Chris@87: structures exposed in the Windows headers. Even when building Python, we Chris@87: allow a single source file to override this - they may need access to Chris@87: structures etc so it can optionally use new Windows features if it Chris@87: determines at runtime they are available. Chris@87: */ Chris@87: #if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_MODULE) Chris@87: #ifndef NTDDI_VERSION Chris@87: #define NTDDI_VERSION Py_NTDDI Chris@87: #endif Chris@87: #ifndef WINVER Chris@87: #define WINVER Py_WINVER Chris@87: #endif Chris@87: #ifndef _WIN32_WINNT Chris@87: #define _WIN32_WINNT Py_WINVER Chris@87: #endif Chris@87: #endif Chris@87: Chris@87: /* _W64 is not defined for VC6 or eVC4 */ Chris@87: #ifndef _W64 Chris@87: #define _W64 Chris@87: #endif Chris@87: Chris@87: /* Define like size_t, omitting the "unsigned" */ Chris@87: #ifdef MS_WIN64 Chris@87: typedef __int64 ssize_t; Chris@87: #else Chris@87: typedef _W64 int ssize_t; Chris@87: #endif Chris@87: #define HAVE_SSIZE_T 1 Chris@87: Chris@87: #if defined(MS_WIN32) && !defined(MS_WIN64) Chris@87: #ifdef _M_IX86 Chris@87: #define COMPILER _Py_PASTE_VERSION("32 bit (Intel)") Chris@87: #else Chris@87: #define COMPILER _Py_PASTE_VERSION("32 bit (Unknown)") Chris@87: #endif Chris@87: #endif /* MS_WIN32 && !MS_WIN64 */ Chris@87: Chris@87: typedef int pid_t; Chris@87: Chris@87: #include Chris@87: #define Py_IS_NAN _isnan Chris@87: #define Py_IS_INFINITY(X) (!_finite(X) && !_isnan(X)) Chris@87: #define Py_IS_FINITE(X) _finite(X) Chris@87: #define copysign _copysign Chris@87: Chris@87: /* VS 2010 and above already defines hypot as _hypot */ Chris@87: #if _MSC_VER < 1600 Chris@87: #define hypot _hypot Chris@87: #endif Chris@87: Chris@87: #endif /* _MSC_VER */ Chris@87: Chris@87: /* define some ANSI types that are not defined in earlier Win headers */ Chris@87: #if defined(_MSC_VER) && _MSC_VER >= 1200 Chris@87: /* This file only exists in VC 6.0 or higher */ Chris@87: #include Chris@87: #endif Chris@87: Chris@87: /* ------------------------------------------------------------------------*/ Chris@87: /* The Borland compiler defines __BORLANDC__ */ Chris@87: /* XXX These defines are likely incomplete, but should be easy to fix. */ Chris@87: #ifdef __BORLANDC__ Chris@87: #define COMPILER "[Borland]" Chris@87: Chris@87: #ifdef _WIN32 Chris@87: /* tested with BCC 5.5 (__BORLANDC__ >= 0x0550) Chris@87: */ Chris@87: Chris@87: typedef int pid_t; Chris@87: /* BCC55 seems to understand __declspec(dllimport), it is used in its Chris@87: own header files (winnt.h, ...) - so we can do nothing and get the default*/ Chris@87: Chris@87: #undef HAVE_SYS_UTIME_H Chris@87: #define HAVE_UTIME_H Chris@87: #define HAVE_DIRENT_H Chris@87: Chris@87: /* rename a few functions for the Borland compiler */ Chris@87: #include Chris@87: #define _chsize chsize Chris@87: #define _setmode setmode Chris@87: Chris@87: #else /* !_WIN32 */ Chris@87: #error "Only Win32 and later are supported" Chris@87: #endif /* !_WIN32 */ Chris@87: Chris@87: #endif /* BORLANDC */ Chris@87: Chris@87: /* ------------------------------------------------------------------------*/ Chris@87: /* egcs/gnu-win32 defines __GNUC__ and _WIN32 */ Chris@87: #if defined(__GNUC__) && defined(_WIN32) Chris@87: /* XXX These defines are likely incomplete, but should be easy to fix. Chris@87: They should be complete enough to build extension modules. */ Chris@87: /* Suggested by Rene Liebscher to avoid a GCC 2.91.* Chris@87: bug that requires structure imports. More recent versions of the Chris@87: compiler don't exhibit this bug. Chris@87: */ Chris@87: #if (__GNUC__==2) && (__GNUC_MINOR__<=91) Chris@87: #warning "Please use an up-to-date version of gcc! (>2.91 recommended)" Chris@87: #endif Chris@87: Chris@87: #define COMPILER "[gcc]" Chris@87: #define hypot _hypot Chris@87: #define PY_LONG_LONG long long Chris@87: #define PY_LLONG_MIN LLONG_MIN Chris@87: #define PY_LLONG_MAX LLONG_MAX Chris@87: #define PY_ULLONG_MAX ULLONG_MAX Chris@87: #endif /* GNUC */ Chris@87: Chris@87: /* ------------------------------------------------------------------------*/ Chris@87: /* lcc-win32 defines __LCC__ */ Chris@87: #if defined(__LCC__) Chris@87: /* XXX These defines are likely incomplete, but should be easy to fix. Chris@87: They should be complete enough to build extension modules. */ Chris@87: Chris@87: #define COMPILER "[lcc-win32]" Chris@87: typedef int pid_t; Chris@87: /* __declspec() is supported here too - do nothing to get the defaults */ Chris@87: Chris@87: #endif /* LCC */ Chris@87: Chris@87: /* ------------------------------------------------------------------------*/ Chris@87: /* End of compilers - finish up */ Chris@87: Chris@87: #ifndef NO_STDIO_H Chris@87: # include Chris@87: #endif Chris@87: Chris@87: /* 64 bit ints are usually spelt __int64 unless compiler has overridden */ Chris@87: #define HAVE_LONG_LONG 1 Chris@87: #ifndef PY_LONG_LONG Chris@87: # define PY_LONG_LONG __int64 Chris@87: # define PY_LLONG_MAX _I64_MAX Chris@87: # define PY_LLONG_MIN _I64_MIN Chris@87: # define PY_ULLONG_MAX _UI64_MAX Chris@87: #endif Chris@87: Chris@87: /* For Windows the Python core is in a DLL by default. Test Chris@87: Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */ Chris@87: #if !defined(MS_NO_COREDLL) && !defined(Py_NO_ENABLE_SHARED) Chris@87: # define Py_ENABLE_SHARED 1 /* standard symbol for shared library */ Chris@87: # define MS_COREDLL /* deprecated old symbol */ Chris@87: #endif /* !MS_NO_COREDLL && ... */ Chris@87: Chris@87: /* All windows compilers that use this header support __declspec */ Chris@87: #define HAVE_DECLSPEC_DLL Chris@87: Chris@87: /* For an MSVC DLL, we can nominate the .lib files used by extensions */ Chris@87: #ifdef MS_COREDLL Chris@87: # ifndef Py_BUILD_CORE /* not building the core - must be an ext */ Chris@87: # if defined(_MSC_VER) Chris@87: /* So MSVC users need not specify the .lib file in Chris@87: their Makefile (other compilers are generally Chris@87: taken care of by distutils.) */ Chris@87: # ifdef _DEBUG Chris@87: # pragma comment(lib,"python27_d.lib") Chris@87: # else Chris@87: # pragma comment(lib,"python27.lib") Chris@87: # endif /* _DEBUG */ Chris@87: # endif /* _MSC_VER */ Chris@87: # endif /* Py_BUILD_CORE */ Chris@87: #endif /* MS_COREDLL */ Chris@87: Chris@87: #if defined(MS_WIN64) Chris@87: /* maintain "win32" sys.platform for backward compatibility of Python code, Chris@87: the Win64 API should be close enough to the Win32 API to make this Chris@87: preferable */ Chris@87: # define PLATFORM "win32" Chris@87: # define SIZEOF_VOID_P 8 Chris@87: # define SIZEOF_TIME_T 8 Chris@87: # define SIZEOF_OFF_T 4 Chris@87: # define SIZEOF_FPOS_T 8 Chris@87: # define SIZEOF_HKEY 8 Chris@87: # define SIZEOF_SIZE_T 8 Chris@87: /* configure.ac defines HAVE_LARGEFILE_SUPPORT iff HAVE_LONG_LONG, Chris@87: sizeof(off_t) > sizeof(long), and sizeof(PY_LONG_LONG) >= sizeof(off_t). Chris@87: On Win64 the second condition is not true, but if fpos_t replaces off_t Chris@87: then this is true. The uses of HAVE_LARGEFILE_SUPPORT imply that Win64 Chris@87: should define this. */ Chris@87: # define HAVE_LARGEFILE_SUPPORT Chris@87: #elif defined(MS_WIN32) Chris@87: # define PLATFORM "win32" Chris@87: # define HAVE_LARGEFILE_SUPPORT Chris@87: # define SIZEOF_VOID_P 4 Chris@87: # define SIZEOF_OFF_T 4 Chris@87: # define SIZEOF_FPOS_T 8 Chris@87: # define SIZEOF_HKEY 4 Chris@87: # define SIZEOF_SIZE_T 4 Chris@87: /* MS VS2005 changes time_t to an 64-bit type on all platforms */ Chris@87: # if defined(_MSC_VER) && _MSC_VER >= 1400 Chris@87: # define SIZEOF_TIME_T 8 Chris@87: # else Chris@87: # define SIZEOF_TIME_T 4 Chris@87: # endif Chris@87: #endif Chris@87: Chris@87: #ifdef _DEBUG Chris@87: # define Py_DEBUG Chris@87: #endif Chris@87: Chris@87: Chris@87: #ifdef MS_WIN32 Chris@87: Chris@87: #define SIZEOF_SHORT 2 Chris@87: #define SIZEOF_INT 4 Chris@87: #define SIZEOF_LONG 4 Chris@87: #define SIZEOF_LONG_LONG 8 Chris@87: #define SIZEOF_DOUBLE 8 Chris@87: #define SIZEOF_FLOAT 4 Chris@87: Chris@87: /* VC 7.1 has them and VC 6.0 does not. VC 6.0 has a version number of 1200. Chris@87: Microsoft eMbedded Visual C++ 4.0 has a version number of 1201 and doesn't Chris@87: define these. Chris@87: If some compiler does not provide them, modify the #if appropriately. */ Chris@87: #if defined(_MSC_VER) Chris@87: #if _MSC_VER > 1300 Chris@87: #define HAVE_UINTPTR_T 1 Chris@87: #define HAVE_INTPTR_T 1 Chris@87: #else Chris@87: /* VC6, VS 2002 and eVC4 don't support the C99 LL suffix for 64-bit integer literals */ Chris@87: #define Py_LL(x) x##I64 Chris@87: #endif /* _MSC_VER > 1200 */ Chris@87: #endif /* _MSC_VER */ Chris@87: Chris@87: #endif Chris@87: Chris@87: /* define signed and unsigned exact-width 32-bit and 64-bit types, used in the Chris@87: implementation of Python long integers. */ Chris@87: #ifndef PY_UINT32_T Chris@87: #if SIZEOF_INT == 4 Chris@87: #define HAVE_UINT32_T 1 Chris@87: #define PY_UINT32_T unsigned int Chris@87: #elif SIZEOF_LONG == 4 Chris@87: #define HAVE_UINT32_T 1 Chris@87: #define PY_UINT32_T unsigned long Chris@87: #endif Chris@87: #endif Chris@87: Chris@87: #ifndef PY_UINT64_T Chris@87: #if SIZEOF_LONG_LONG == 8 Chris@87: #define HAVE_UINT64_T 1 Chris@87: #define PY_UINT64_T unsigned PY_LONG_LONG Chris@87: #endif Chris@87: #endif Chris@87: Chris@87: #ifndef PY_INT32_T Chris@87: #if SIZEOF_INT == 4 Chris@87: #define HAVE_INT32_T 1 Chris@87: #define PY_INT32_T int Chris@87: #elif SIZEOF_LONG == 4 Chris@87: #define HAVE_INT32_T 1 Chris@87: #define PY_INT32_T long Chris@87: #endif Chris@87: #endif Chris@87: Chris@87: #ifndef PY_INT64_T Chris@87: #if SIZEOF_LONG_LONG == 8 Chris@87: #define HAVE_INT64_T 1 Chris@87: #define PY_INT64_T PY_LONG_LONG Chris@87: #endif Chris@87: #endif Chris@87: Chris@87: /* Fairly standard from here! */ Chris@87: Chris@87: /* Define to 1 if you have the `copysign' function. */ Chris@87: #define HAVE_COPYSIGN 1 Chris@87: Chris@87: /* Define to 1 if you have the `round' function. */ Chris@87: #if _MSC_VER >= 1800 Chris@87: #define HAVE_ROUND 1 Chris@87: #endif Chris@87: Chris@87: /* Define to 1 if you have the `isinf' macro. */ Chris@87: #define HAVE_DECL_ISINF 1 Chris@87: Chris@87: /* Define to 1 if you have the `isnan' function. */ Chris@87: #define HAVE_DECL_ISNAN 1 Chris@87: Chris@87: /* Define if on AIX 3. Chris@87: System headers sometimes define this. Chris@87: We just want to avoid a redefinition error message. */ Chris@87: #ifndef _ALL_SOURCE Chris@87: /* #undef _ALL_SOURCE */ Chris@87: #endif Chris@87: Chris@87: /* Define to empty if the keyword does not work. */ Chris@87: /* #define const */ Chris@87: Chris@87: /* Define to 1 if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_CONIO_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define to 1 if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_DIRECT_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define if you have dirent.h. */ Chris@87: /* #define DIRENT 1 */ Chris@87: Chris@87: /* Define to the type of elements in the array set by `getgroups'. Chris@87: Usually this is either `int' or `gid_t'. */ Chris@87: /* #undef GETGROUPS_T */ Chris@87: Chris@87: /* Define to `int' if doesn't define. */ Chris@87: /* #undef gid_t */ Chris@87: Chris@87: /* Define if your struct tm has tm_zone. */ Chris@87: /* #undef HAVE_TM_ZONE */ Chris@87: Chris@87: /* Define if you don't have tm_zone but do have the external array Chris@87: tzname. */ Chris@87: #define HAVE_TZNAME Chris@87: Chris@87: /* Define to `int' if doesn't define. */ Chris@87: /* #undef mode_t */ Chris@87: Chris@87: /* Define if you don't have dirent.h, but have ndir.h. */ Chris@87: /* #undef NDIR */ Chris@87: Chris@87: /* Define to `long' if doesn't define. */ Chris@87: /* #undef off_t */ Chris@87: Chris@87: /* Define to `int' if doesn't define. */ Chris@87: /* #undef pid_t */ Chris@87: Chris@87: /* Define if the system does not provide POSIX.1 features except Chris@87: with this defined. */ Chris@87: /* #undef _POSIX_1_SOURCE */ Chris@87: Chris@87: /* Define if you need to in order for stat and other things to work. */ Chris@87: /* #undef _POSIX_SOURCE */ Chris@87: Chris@87: /* Define as the return type of signal handlers (int or void). */ Chris@87: #define RETSIGTYPE void Chris@87: Chris@87: /* Define to `unsigned' if doesn't define. */ Chris@87: /* #undef size_t */ Chris@87: Chris@87: /* Define if you have the ANSI C header files. */ Chris@87: #define STDC_HEADERS 1 Chris@87: Chris@87: /* Define if you don't have dirent.h, but have sys/dir.h. */ Chris@87: /* #undef SYSDIR */ Chris@87: Chris@87: /* Define if you don't have dirent.h, but have sys/ndir.h. */ Chris@87: /* #undef SYSNDIR */ Chris@87: Chris@87: /* Define if you can safely include both and . */ Chris@87: /* #undef TIME_WITH_SYS_TIME */ Chris@87: Chris@87: /* Define if your declares struct tm. */ Chris@87: /* #define TM_IN_SYS_TIME 1 */ Chris@87: Chris@87: /* Define to `int' if doesn't define. */ Chris@87: /* #undef uid_t */ Chris@87: Chris@87: /* Define if the closedir function returns void instead of int. */ Chris@87: /* #undef VOID_CLOSEDIR */ Chris@87: Chris@87: /* Define if getpgrp() must be called as getpgrp(0) Chris@87: and (consequently) setpgrp() as setpgrp(0, 0). */ Chris@87: /* #undef GETPGRP_HAVE_ARGS */ Chris@87: Chris@87: /* Define this if your time.h defines altzone */ Chris@87: /* #define HAVE_ALTZONE */ Chris@87: Chris@87: /* Define if you have the putenv function. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_PUTENV Chris@87: #endif Chris@87: Chris@87: /* Define if your compiler supports function prototypes */ Chris@87: #define HAVE_PROTOTYPES Chris@87: Chris@87: /* Define if you can safely include both and Chris@87: (which you can't on SCO ODT 3.0). */ Chris@87: /* #undef SYS_SELECT_WITH_SYS_TIME */ Chris@87: Chris@87: /* Define if you want documentation strings in extension modules */ Chris@87: #define WITH_DOC_STRINGS 1 Chris@87: Chris@87: /* Define if you want to compile in rudimentary thread support */ Chris@87: /* #undef WITH_THREAD */ Chris@87: Chris@87: /* Define if you want to use the GNU readline library */ Chris@87: /* #define WITH_READLINE 1 */ Chris@87: Chris@87: /* Define if you want to have a Unicode type. */ Chris@87: #define Py_USING_UNICODE Chris@87: Chris@87: /* Define as the size of the unicode type. */ Chris@87: /* This is enough for unicodeobject.h to do the "right thing" on Windows. */ Chris@87: #define Py_UNICODE_SIZE 2 Chris@87: Chris@87: /* Use Python's own small-block memory-allocator. */ Chris@87: #define WITH_PYMALLOC 1 Chris@87: Chris@87: /* Define if you have clock. */ Chris@87: /* #define HAVE_CLOCK */ Chris@87: Chris@87: /* Define when any dynamic module loading is enabled */ Chris@87: #define HAVE_DYNAMIC_LOADING Chris@87: Chris@87: /* Define if you have ftime. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_FTIME Chris@87: #endif Chris@87: Chris@87: /* Define if you have getpeername. */ Chris@87: #define HAVE_GETPEERNAME Chris@87: Chris@87: /* Define if you have getpgrp. */ Chris@87: /* #undef HAVE_GETPGRP */ Chris@87: Chris@87: /* Define if you have getpid. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_GETPID Chris@87: #endif Chris@87: Chris@87: /* Define if you have gettimeofday. */ Chris@87: /* #undef HAVE_GETTIMEOFDAY */ Chris@87: Chris@87: /* Define if you have getwd. */ Chris@87: /* #undef HAVE_GETWD */ Chris@87: Chris@87: /* Define if you have lstat. */ Chris@87: /* #undef HAVE_LSTAT */ Chris@87: Chris@87: /* Define if you have the mktime function. */ Chris@87: #define HAVE_MKTIME Chris@87: Chris@87: /* Define if you have nice. */ Chris@87: /* #undef HAVE_NICE */ Chris@87: Chris@87: /* Define if you have readlink. */ Chris@87: /* #undef HAVE_READLINK */ Chris@87: Chris@87: /* Define if you have select. */ Chris@87: /* #undef HAVE_SELECT */ Chris@87: Chris@87: /* Define if you have setpgid. */ Chris@87: /* #undef HAVE_SETPGID */ Chris@87: Chris@87: /* Define if you have setpgrp. */ Chris@87: /* #undef HAVE_SETPGRP */ Chris@87: Chris@87: /* Define if you have setsid. */ Chris@87: /* #undef HAVE_SETSID */ Chris@87: Chris@87: /* Define if you have setvbuf. */ Chris@87: #define HAVE_SETVBUF Chris@87: Chris@87: /* Define if you have siginterrupt. */ Chris@87: /* #undef HAVE_SIGINTERRUPT */ Chris@87: Chris@87: /* Define if you have symlink. */ Chris@87: /* #undef HAVE_SYMLINK */ Chris@87: Chris@87: /* Define if you have tcgetpgrp. */ Chris@87: /* #undef HAVE_TCGETPGRP */ Chris@87: Chris@87: /* Define if you have tcsetpgrp. */ Chris@87: /* #undef HAVE_TCSETPGRP */ Chris@87: Chris@87: /* Define if you have times. */ Chris@87: /* #undef HAVE_TIMES */ Chris@87: Chris@87: /* Define if you have uname. */ Chris@87: /* #undef HAVE_UNAME */ Chris@87: Chris@87: /* Define if you have waitpid. */ Chris@87: /* #undef HAVE_WAITPID */ Chris@87: Chris@87: /* Define to 1 if you have the `wcscoll' function. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_WCSCOLL 1 Chris@87: #endif Chris@87: Chris@87: /* Define if the zlib library has inflateCopy */ Chris@87: #define HAVE_ZLIB_COPY 1 Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #undef HAVE_DLFCN_H */ Chris@87: Chris@87: /* Define to 1 if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_ERRNO_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_FCNTL_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define to 1 if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_PROCESS_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define to 1 if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_SIGNAL_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define if you have the prototypes. */ Chris@87: #define HAVE_STDARG_PROTOTYPES Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: #define HAVE_STDDEF_H 1 Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #undef HAVE_SYS_AUDIOIO_H */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_SYS_PARAM_H 1 */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_SYS_SELECT_H 1 */ Chris@87: Chris@87: /* Define to 1 if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_SYS_STAT_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_SYS_TIME_H 1 */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_SYS_TIMES_H 1 */ Chris@87: Chris@87: /* Define to 1 if you have the header file. */ Chris@87: #ifndef MS_WINCE Chris@87: #define HAVE_SYS_TYPES_H 1 Chris@87: #endif Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_SYS_UN_H 1 */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_SYS_UTIME_H 1 */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_SYS_UTSNAME_H 1 */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #undef HAVE_THREAD_H */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_UNISTD_H 1 */ Chris@87: Chris@87: /* Define if you have the header file. */ Chris@87: /* #define HAVE_UTIME_H 1 */ Chris@87: Chris@87: /* Define if the compiler provides a wchar.h header file. */ Chris@87: #define HAVE_WCHAR_H 1 Chris@87: Chris@87: /* Define if you have the dl library (-ldl). */ Chris@87: /* #undef HAVE_LIBDL */ Chris@87: Chris@87: /* Define if you have the mpc library (-lmpc). */ Chris@87: /* #undef HAVE_LIBMPC */ Chris@87: Chris@87: /* Define if you have the nsl library (-lnsl). */ Chris@87: #define HAVE_LIBNSL 1 Chris@87: Chris@87: /* Define if you have the seq library (-lseq). */ Chris@87: /* #undef HAVE_LIBSEQ */ Chris@87: Chris@87: /* Define if you have the socket library (-lsocket). */ Chris@87: #define HAVE_LIBSOCKET 1 Chris@87: Chris@87: /* Define if you have the sun library (-lsun). */ Chris@87: /* #undef HAVE_LIBSUN */ Chris@87: Chris@87: /* Define if you have the termcap library (-ltermcap). */ Chris@87: /* #undef HAVE_LIBTERMCAP */ Chris@87: Chris@87: /* Define if you have the termlib library (-ltermlib). */ Chris@87: /* #undef HAVE_LIBTERMLIB */ Chris@87: Chris@87: /* Define if you have the thread library (-lthread). */ Chris@87: /* #undef HAVE_LIBTHREAD */ Chris@87: Chris@87: /* WinSock does not use a bitmask in select, and uses Chris@87: socket handles greater than FD_SETSIZE */ Chris@87: #define Py_SOCKET_FD_CAN_BE_GE_FD_SETSIZE Chris@87: Chris@87: /* Define if C doubles are 64-bit IEEE 754 binary format, stored with the Chris@87: least significant byte first */ Chris@87: #define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1 Chris@87: Chris@87: #endif /* !Py_CONFIG_H */