#ifndef Py_CONFIG_H1#define Py_CONFIG_H23/* pyconfig.h. NOT Generated automatically by configure.45This is a manually maintained version used for the Watcom,6Borland and Microsoft Visual C++ compilers. It is a7standard part of the Python distribution.89WINDOWS DEFINES:10The code specific to Windows should be wrapped around one of11the following #defines1213MS_WIN64 - Code specific to the MS Win64 API14MS_WIN32 - Code specific to the MS Win32 (and Win64) API (obsolete, this covers all supported APIs)15MS_WINDOWS - Code specific to Windows, but all versions.16Py_ENABLE_SHARED - Code if the Python core is built as a DLL.1718Also note that neither "_M_IX86" or "_MSC_VER" should be used for19any purpose other than "Windows Intel x86 specific" and "Microsoft20compiler specific". Therefore, these should be very rare.212223NOTE: The following symbols are deprecated:24NT, USE_DL_EXPORT, USE_DL_IMPORT, DL_EXPORT, DL_IMPORT25MS_CORE_DLL.2627WIN32 is still required for the locale module.2829*/3031/* Deprecated USE_DL_EXPORT macro - please use Py_BUILD_CORE */32#ifdef USE_DL_EXPORT33# define Py_BUILD_CORE34#endif /* USE_DL_EXPORT */3536/* Visual Studio 2005 introduces deprecation warnings for37"insecure" and POSIX functions. The insecure functions should38be replaced by *_s versions (according to Microsoft); the39POSIX functions by _* versions (which, according to Microsoft,40would be ISO C conforming). Neither renaming is feasible, so41we just silence the warnings. */4243#ifndef _CRT_SECURE_NO_DEPRECATE44#define _CRT_SECURE_NO_DEPRECATE 145#endif46#ifndef _CRT_NONSTDC_NO_DEPRECATE47#define _CRT_NONSTDC_NO_DEPRECATE 148#endif4950#define HAVE_IO_H51#define HAVE_SYS_UTIME_H52#define HAVE_TEMPNAM53#define HAVE_TMPFILE54#define HAVE_TMPNAM55#define HAVE_CLOCK56#define HAVE_STRERROR5758#include <io.h>5960#define HAVE_STRFTIME61#define DONT_HAVE_SIG_ALARM62#define DONT_HAVE_SIG_PAUSE63#define LONG_BIT 3264#define WORD_BIT 326566#define MS_WIN32 /* only support win32 and greater. */67#define MS_WINDOWS68#define NT_THREADS69#define WITH_THREAD70#ifndef NETSCAPE_PI71#define USE_SOCKET72#endif7374#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE)75#include <winapifamily.h>7677#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)78#define MS_WINDOWS_DESKTOP79#endif80#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)81#define MS_WINDOWS_APP82#endif83#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_SYSTEM)84#define MS_WINDOWS_SYSTEM85#endif86#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_GAMES)87#define MS_WINDOWS_GAMES88#endif8990/* Define to 1 if you support windows console io */91#if defined(MS_WINDOWS_DESKTOP) || defined(MS_WINDOWS_APP) || defined(MS_WINDOWS_SYSTEM)92#define HAVE_WINDOWS_CONSOLE_IO 193#endif94#endif /* Py_BUILD_CORE || Py_BUILD_CORE_BUILTIN || Py_BUILD_CORE_MODULE */9596/* Compiler specific defines */9798/* ------------------------------------------------------------------------*/99/* Microsoft C defines _MSC_VER, as does clang-cl.exe */100#ifdef _MSC_VER101102/* We want COMPILER to expand to a string containing _MSC_VER's *value*.103* This is horridly tricky, because the stringization operator only works104* on macro arguments, and doesn't evaluate macros passed *as* arguments.105*/106#define _Py_PASTE_VERSION(SUFFIX) \107("[MSC v." _Py_STRINGIZE(_MSC_VER) " " SUFFIX "]")108/* e.g., this produces, after compile-time string catenation,109* ("[MSC v.1900 64 bit (Intel)]")110*111* _Py_STRINGIZE(_MSC_VER) expands to112* _Py_STRINGIZE1(_MSC_VER) and this second macro call is scanned113* again for macros and so further expands to114* _Py_STRINGIZE1(1900) which then expands to115* "1900"116*/117#define _Py_STRINGIZE(X) _Py_STRINGIZE1(X)118#define _Py_STRINGIZE1(X) #X119120/* MSVC defines _WINxx to differentiate the windows platform types121122Note that for compatibility reasons _WIN32 is defined on Win32123*and* on Win64. For the same reasons, in Python, MS_WIN32 is124defined on Win32 *and* Win64. Win32 only code must therefore be125guarded as follows:126#if defined(MS_WIN32) && !defined(MS_WIN64)127*/128#ifdef _WIN64129#define MS_WIN64130#endif131132/* set the COMPILER and support tier133*134* win_amd64 MSVC (x86_64-pc-windows-msvc): 1135* win32 MSVC (i686-pc-windows-msvc): 1136* win_arm64 MSVC (aarch64-pc-windows-msvc): 3137* other archs and ICC: 0138*/139#ifdef MS_WIN64140#if defined(_M_X64) || defined(_M_AMD64)141#if defined(__clang__)142#define COMPILER ("[Clang " __clang_version__ "] 64 bit (AMD64) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]")143#define PY_SUPPORT_TIER 0144#elif defined(__INTEL_COMPILER)145#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 64 bit (amd64) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]")146#define PY_SUPPORT_TIER 0147#else148#define COMPILER _Py_PASTE_VERSION("64 bit (AMD64)")149#define PY_SUPPORT_TIER 1150#endif /* __clang__ */151#define PYD_PLATFORM_TAG "win_amd64"152#elif defined(_M_ARM64)153#define COMPILER _Py_PASTE_VERSION("64 bit (ARM64)")154#define PY_SUPPORT_TIER 3155#define PYD_PLATFORM_TAG "win_arm64"156#else157#define COMPILER _Py_PASTE_VERSION("64 bit (Unknown)")158#define PY_SUPPORT_TIER 0159#endif160#endif /* MS_WIN64 */161162/* set the version macros for the windows headers */163/* Python 3.9+ requires Windows 8 or greater */164#define Py_WINVER 0x0602 /* _WIN32_WINNT_WIN8 */165#define Py_NTDDI NTDDI_WIN8166167/* We only set these values when building Python - we don't want to force168these values on extensions, as that will affect the prototypes and169structures exposed in the Windows headers. Even when building Python, we170allow a single source file to override this - they may need access to171structures etc so it can optionally use new Windows features if it172determines at runtime they are available.173*/174#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE)175#ifndef NTDDI_VERSION176#define NTDDI_VERSION Py_NTDDI177#endif178#ifndef WINVER179#define WINVER Py_WINVER180#endif181#ifndef _WIN32_WINNT182#define _WIN32_WINNT Py_WINVER183#endif184#endif185186/* _W64 is not defined for VC6 or eVC4 */187#ifndef _W64188#define _W64189#endif190191/* Define like size_t, omitting the "unsigned" */192#ifdef MS_WIN64193typedef __int64 Py_ssize_t;194# define PY_SSIZE_T_MAX LLONG_MAX195#else196typedef _W64 int Py_ssize_t;197# define PY_SSIZE_T_MAX INT_MAX198#endif199#define HAVE_PY_SSIZE_T 1200201#if defined(MS_WIN32) && !defined(MS_WIN64)202#if defined(_M_IX86)203#if defined(__clang__)204#define COMPILER ("[Clang " __clang_version__ "] 32 bit (Intel) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]")205#define PY_SUPPORT_TIER 0206#elif defined(__INTEL_COMPILER)207#define COMPILER ("[ICC v." _Py_STRINGIZE(__INTEL_COMPILER) " 32 bit (Intel) with MSC v." _Py_STRINGIZE(_MSC_VER) " CRT]")208#define PY_SUPPORT_TIER 0209#else210#define COMPILER _Py_PASTE_VERSION("32 bit (Intel)")211#define PY_SUPPORT_TIER 1212#endif /* __clang__ */213#define PYD_PLATFORM_TAG "win32"214#elif defined(_M_ARM)215#define COMPILER _Py_PASTE_VERSION("32 bit (ARM)")216#define PYD_PLATFORM_TAG "win_arm32"217#define PY_SUPPORT_TIER 0218#else219#define COMPILER _Py_PASTE_VERSION("32 bit (Unknown)")220#define PY_SUPPORT_TIER 0221#endif222#endif /* MS_WIN32 && !MS_WIN64 */223224typedef int pid_t;225226/* define some ANSI types that are not defined in earlier Win headers */227#if _MSC_VER >= 1200228/* This file only exists in VC 6.0 or higher */229#include <basetsd.h>230#endif231232#endif /* _MSC_VER */233234/* ------------------------------------------------------------------------*/235/* mingw and mingw-w64 define __MINGW32__ */236#ifdef __MINGW32__237238#ifdef _WIN64239#define MS_WIN64240#endif241242#endif /* __MINGW32__*/243244/* ------------------------------------------------------------------------*/245/* egcs/gnu-win32 defines __GNUC__ and _WIN32 */246#if defined(__GNUC__) && defined(_WIN32)247/* XXX These defines are likely incomplete, but should be easy to fix.248They should be complete enough to build extension modules. */249/* Suggested by Rene Liebscher <[email protected]> to avoid a GCC 2.91.*250bug that requires structure imports. More recent versions of the251compiler don't exhibit this bug.252*/253#if (__GNUC__==2) && (__GNUC_MINOR__<=91)254#warning "Please use an up-to-date version of gcc! (>2.91 recommended)"255#endif256257#define COMPILER "[gcc]"258#define PY_LONG_LONG long long259#define PY_LLONG_MIN LLONG_MIN260#define PY_LLONG_MAX LLONG_MAX261#define PY_ULLONG_MAX ULLONG_MAX262#endif /* GNUC */263264/* ------------------------------------------------------------------------*/265/* lcc-win32 defines __LCC__ */266#if defined(__LCC__)267/* XXX These defines are likely incomplete, but should be easy to fix.268They should be complete enough to build extension modules. */269270#define COMPILER "[lcc-win32]"271typedef int pid_t;272/* __declspec() is supported here too - do nothing to get the defaults */273274#endif /* LCC */275276/* ------------------------------------------------------------------------*/277/* End of compilers - finish up */278279#ifndef NO_STDIO_H280# include <stdio.h>281#endif282283/* 64 bit ints are usually spelt __int64 unless compiler has overridden */284#ifndef PY_LONG_LONG285# define PY_LONG_LONG __int64286# define PY_LLONG_MAX _I64_MAX287# define PY_LLONG_MIN _I64_MIN288# define PY_ULLONG_MAX _UI64_MAX289#endif290291/* For Windows the Python core is in a DLL by default. Test292Py_NO_ENABLE_SHARED to find out. Also support MS_NO_COREDLL for b/w compat */293#if !defined(MS_NO_COREDLL) && !defined(Py_NO_ENABLE_SHARED)294# define Py_ENABLE_SHARED 1 /* standard symbol for shared library */295# define MS_COREDLL /* deprecated old symbol */296#endif /* !MS_NO_COREDLL && ... */297298/* All windows compilers that use this header support __declspec */299#define HAVE_DECLSPEC_DLL300301/* For an MSVC DLL, we can nominate the .lib files used by extensions */302#ifdef MS_COREDLL303# if !defined(Py_BUILD_CORE) && !defined(Py_BUILD_CORE_BUILTIN)304/* not building the core - must be an ext */305# if defined(_MSC_VER)306/* So MSVC users need not specify the .lib307file in their Makefile (other compilers are308generally taken care of by distutils.) */309# if defined(_DEBUG)310# pragma comment(lib,"python313_d.lib")311# elif defined(Py_LIMITED_API)312# pragma comment(lib,"python3.lib")313# else314# pragma comment(lib,"python313.lib")315# endif /* _DEBUG */316# endif /* _MSC_VER */317# endif /* Py_BUILD_CORE */318#endif /* MS_COREDLL */319320#ifdef MS_WIN64321/* maintain "win32" sys.platform for backward compatibility of Python code,322the Win64 API should be close enough to the Win32 API to make this323preferable */324# define PLATFORM "win32"325# define SIZEOF_VOID_P 8326# define SIZEOF_TIME_T 8327# define SIZEOF_OFF_T 4328# define SIZEOF_FPOS_T 8329# define SIZEOF_HKEY 8330# define SIZEOF_SIZE_T 8331# define ALIGNOF_SIZE_T 8332# define ALIGNOF_MAX_ALIGN_T 8333/* configure.ac defines HAVE_LARGEFILE_SUPPORT iff334sizeof(off_t) > sizeof(long), and sizeof(long long) >= sizeof(off_t).335On Win64 the second condition is not true, but if fpos_t replaces off_t336then this is true. The uses of HAVE_LARGEFILE_SUPPORT imply that Win64337should define this. */338# define HAVE_LARGEFILE_SUPPORT339#elif defined(MS_WIN32)340# define PLATFORM "win32"341# define HAVE_LARGEFILE_SUPPORT342# define SIZEOF_VOID_P 4343# define SIZEOF_OFF_T 4344# define SIZEOF_FPOS_T 8345# define SIZEOF_HKEY 4346# define SIZEOF_SIZE_T 4347# define ALIGNOF_SIZE_T 4348/* MS VS2005 changes time_t to a 64-bit type on all platforms */349# if defined(_MSC_VER) && _MSC_VER >= 1400350# define SIZEOF_TIME_T 8351# else352# define SIZEOF_TIME_T 4353# endif354# define ALIGNOF_MAX_ALIGN_T 8355#endif356357#ifdef _DEBUG358# define Py_DEBUG359#endif360361362#ifdef MS_WIN32363364#define SIZEOF_SHORT 2365#define SIZEOF_INT 4366#define SIZEOF_LONG 4367#define ALIGNOF_LONG 4368#define SIZEOF_LONG_LONG 8369#define SIZEOF_DOUBLE 8370#define SIZEOF_FLOAT 4371372/* VC 7.1 has them and VC 6.0 does not. VC 6.0 has a version number of 1200.373Microsoft eMbedded Visual C++ 4.0 has a version number of 1201 and doesn't374define these.375If some compiler does not provide them, modify the #if appropriately. */376#if defined(_MSC_VER)377#if _MSC_VER > 1300378#define HAVE_UINTPTR_T 1379#define HAVE_INTPTR_T 1380#else381/* VC6, VS 2002 and eVC4 don't support the C99 LL suffix for 64-bit integer literals */382#define Py_LL(x) x##I64383#endif /* _MSC_VER > 1300 */384#endif /* _MSC_VER */385386#endif387388/* define signed and unsigned exact-width 32-bit and 64-bit types, used in the389implementation of Python integers. */390#define PY_UINT32_T uint32_t391#define PY_UINT64_T uint64_t392#define PY_INT32_T int32_t393#define PY_INT64_T int64_t394395/* Fairly standard from here! */396397/* Define if on AIX 3.398System headers sometimes define this.399We just want to avoid a redefinition error message. */400#ifndef _ALL_SOURCE401/* #undef _ALL_SOURCE */402#endif403404/* Define to empty if the keyword does not work. */405/* #define const */406407/* Define to 1 if you have the <conio.h> header file. */408#define HAVE_CONIO_H 1409410/* Define to 1 if you have the <direct.h> header file. */411#define HAVE_DIRECT_H 1412413/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't.414*/415#define HAVE_DECL_TZNAME 1416417/* Define if you have dirent.h. */418/* #define DIRENT 1 */419420/* Define to the type of elements in the array set by `getgroups'.421Usually this is either `int' or `gid_t'. */422/* #undef GETGROUPS_T */423424/* Define to `int' if <sys/types.h> doesn't define. */425/* #undef gid_t */426427/* Define if your struct tm has tm_zone. */428/* #undef HAVE_TM_ZONE */429430/* Define if you don't have tm_zone but do have the external array431tzname. */432#define HAVE_TZNAME433434/* Define to `int' if <sys/types.h> doesn't define. */435/* #undef mode_t */436437/* Define if you don't have dirent.h, but have ndir.h. */438/* #undef NDIR */439440/* Define to `long' if <sys/types.h> doesn't define. */441/* #undef off_t */442443/* Define to `int' if <sys/types.h> doesn't define. */444/* #undef pid_t */445446/* Define if the system does not provide POSIX.1 features except447with this defined. */448/* #undef _POSIX_1_SOURCE */449450/* Define if you need to in order for stat and other things to work. */451/* #undef _POSIX_SOURCE */452453/* Define as the return type of signal handlers (int or void). */454#define RETSIGTYPE void455456/* Define to `unsigned' if <sys/types.h> doesn't define. */457/* #undef size_t */458459/* Define if you have the ANSI C header files. */460#define STDC_HEADERS 1461462/* Define if you don't have dirent.h, but have sys/dir.h. */463/* #undef SYSDIR */464465/* Define if you don't have dirent.h, but have sys/ndir.h. */466/* #undef SYSNDIR */467468/* Define if you can safely include both <sys/time.h> and <time.h>. */469/* #undef TIME_WITH_SYS_TIME */470471/* Define if your <sys/time.h> declares struct tm. */472/* #define TM_IN_SYS_TIME 1 */473474/* Define to `int' if <sys/types.h> doesn't define. */475/* #undef uid_t */476477/* Define if the closedir function returns void instead of int. */478/* #undef VOID_CLOSEDIR */479480/* Define if getpgrp() must be called as getpgrp(0)481and (consequently) setpgrp() as setpgrp(0, 0). */482/* #undef GETPGRP_HAVE_ARGS */483484/* Define this if your time.h defines altzone */485/* #define HAVE_ALTZONE */486487/* Define if you have the putenv function. */488#define HAVE_PUTENV489490/* Define if your compiler supports function prototypes */491#define HAVE_PROTOTYPES492493/* Define if you can safely include both <sys/select.h> and <sys/time.h>494(which you can't on SCO ODT 3.0). */495/* #undef SYS_SELECT_WITH_SYS_TIME */496497/* Define if you want build the _decimal module using a coroutine-local rather498than a thread-local context */499#define WITH_DECIMAL_CONTEXTVAR 1500501/* Define if you want documentation strings in extension modules */502#define WITH_DOC_STRINGS 1503504/* Define if you want to compile in rudimentary thread support */505/* #undef WITH_THREAD */506507/* Define if you want to use the GNU readline library */508/* #define WITH_READLINE 1 */509510/* Use Python's own small-block memory-allocator. */511#define WITH_PYMALLOC 1512513/* Define if you want to compile in object freelists optimization */514#define WITH_FREELISTS 1515516/* Define if you have clock. */517/* #define HAVE_CLOCK */518519/* Define when any dynamic module loading is enabled */520#define HAVE_DYNAMIC_LOADING521522/* Define if you have ftime. */523#define HAVE_FTIME524525/* Define if you have getpeername. */526#define HAVE_GETPEERNAME527528/* Define if you have getpgrp. */529/* #undef HAVE_GETPGRP */530531/* Define if you have getpid. */532#define HAVE_GETPID533534/* Define if you have gettimeofday. */535/* #undef HAVE_GETTIMEOFDAY */536537/* Define if you have getwd. */538/* #undef HAVE_GETWD */539540/* Define if you have lstat. */541/* #undef HAVE_LSTAT */542543/* Define if you have the mktime function. */544#define HAVE_MKTIME545546/* Define if you have nice. */547/* #undef HAVE_NICE */548549/* Define if you have readlink. */550/* #undef HAVE_READLINK */551552/* Define if you have setpgid. */553/* #undef HAVE_SETPGID */554555/* Define if you have setpgrp. */556/* #undef HAVE_SETPGRP */557558/* Define if you have setsid. */559/* #undef HAVE_SETSID */560561/* Define if you have setvbuf. */562#define HAVE_SETVBUF563564/* Define if you have siginterrupt. */565/* #undef HAVE_SIGINTERRUPT */566567/* Define to 1 if you have the `shutdown' function. */568#define HAVE_SHUTDOWN 1569570/* Define if you have symlink. */571/* #undef HAVE_SYMLINK */572573/* Define if you have tcgetpgrp. */574/* #undef HAVE_TCGETPGRP */575576/* Define if you have tcsetpgrp. */577/* #undef HAVE_TCSETPGRP */578579/* Define if you have times. */580/* #undef HAVE_TIMES */581582/* Define to 1 if you have the `umask' function. */583#define HAVE_UMASK 1584585/* Define if you have uname. */586/* #undef HAVE_UNAME */587588/* Define if you have waitpid. */589/* #undef HAVE_WAITPID */590591/* Define to 1 if you have the `wcsftime' function. */592#if defined(_MSC_VER) && _MSC_VER >= 1310593#define HAVE_WCSFTIME 1594#endif595596/* Define to 1 if you have the `wcscoll' function. */597#define HAVE_WCSCOLL 1598599/* Define to 1 if you have the `wcsxfrm' function. */600#define HAVE_WCSXFRM 1601602/* Define if the zlib library has inflateCopy */603#define HAVE_ZLIB_COPY 1604605/* Define if you have the <dlfcn.h> header file. */606/* #undef HAVE_DLFCN_H */607608/* Define to 1 if you have the <errno.h> header file. */609#define HAVE_ERRNO_H 1610611/* Define if you have the <fcntl.h> header file. */612#define HAVE_FCNTL_H 1613614/* Define to 1 if you have the <process.h> header file. */615#define HAVE_PROCESS_H 1616617/* Define to 1 if you have the <signal.h> header file. */618#define HAVE_SIGNAL_H 1619620/* Define if you have the <stddef.h> header file. */621#define HAVE_STDDEF_H 1622623/* Define if you have the <sys/audioio.h> header file. */624/* #undef HAVE_SYS_AUDIOIO_H */625626/* Define if you have the <sys/param.h> header file. */627/* #define HAVE_SYS_PARAM_H 1 */628629/* Define if you have the <sys/select.h> header file. */630/* #define HAVE_SYS_SELECT_H 1 */631632/* Define to 1 if you have the <sys/stat.h> header file. */633#define HAVE_SYS_STAT_H 1634635/* Define if you have the <sys/time.h> header file. */636/* #define HAVE_SYS_TIME_H 1 */637638/* Define if you have the <sys/times.h> header file. */639/* #define HAVE_SYS_TIMES_H 1 */640641/* Define to 1 if you have the <sys/types.h> header file. */642#define HAVE_SYS_TYPES_H 1643644/* Define if you have the <sys/un.h> header file. */645/* #define HAVE_SYS_UN_H 1 */646647/* Define if you have the <sys/utime.h> header file. */648/* #define HAVE_SYS_UTIME_H 1 */649650/* Define if you have the <sys/utsname.h> header file. */651/* #define HAVE_SYS_UTSNAME_H 1 */652653/* Define if you have the <unistd.h> header file. */654/* #define HAVE_UNISTD_H 1 */655656/* Define if you have the <utime.h> header file. */657/* #define HAVE_UTIME_H 1 */658659/* Define if the compiler provides a wchar.h header file. */660#define HAVE_WCHAR_H 1661662/* The size of `wchar_t', as computed by sizeof. */663#define SIZEOF_WCHAR_T 2664665/* The size of `_Bool', as computed by sizeof. */666#define SIZEOF__BOOL 1667668/* The size of `pid_t', as computed by sizeof. */669#define SIZEOF_PID_T SIZEOF_INT670671/* Define if you have the dl library (-ldl). */672/* #undef HAVE_LIBDL */673674/* Define if you have the mpc library (-lmpc). */675/* #undef HAVE_LIBMPC */676677/* Define if you have the seq library (-lseq). */678/* #undef HAVE_LIBSEQ */679680/* Define if you have the socket library (-lsocket). */681#define HAVE_LIBSOCKET 1682683/* Define if you have the sun library (-lsun). */684/* #undef HAVE_LIBSUN */685686/* Define if you have the termcap library (-ltermcap). */687/* #undef HAVE_LIBTERMCAP */688689/* Define if you have the termlib library (-ltermlib). */690/* #undef HAVE_LIBTERMLIB */691692/* Define if you have the thread library (-lthread). */693/* #undef HAVE_LIBTHREAD */694695/* WinSock does not use a bitmask in select, and uses696socket handles greater than FD_SETSIZE */697#define Py_SOCKET_FD_CAN_BE_GE_FD_SETSIZE698699/* Define if C doubles are 64-bit IEEE 754 binary format, stored with the700least significant byte first */701#define DOUBLE_IS_LITTLE_ENDIAN_IEEE754 1702703/* Define to 1 if you have the `erf' function. */704#define HAVE_ERF 1705706/* Define to 1 if you have the `erfc' function. */707#define HAVE_ERFC 1708709// netdb.h functions (provided by winsock.h)710#define HAVE_GETHOSTNAME 1711#define HAVE_GETHOSTBYADDR 1712#define HAVE_GETHOSTBYNAME 1713#define HAVE_GETPROTOBYNAME 1714#define HAVE_GETSERVBYNAME 1715#define HAVE_GETSERVBYPORT 1716// sys/socket.h functions (provided by winsock.h)717#define HAVE_INET_PTON 1718#define HAVE_INET_NTOA 1719#define HAVE_ACCEPT 1720#define HAVE_BIND 1721#define HAVE_CONNECT 1722#define HAVE_GETSOCKNAME 1723#define HAVE_LISTEN 1724#define HAVE_RECVFROM 1725#define HAVE_SENDTO 1726#define HAVE_SETSOCKOPT 1727#define HAVE_SOCKET 1728729/* Define to 1 if you have the `dup' function. */730#define HAVE_DUP 1731732/* framework name */733#define _PYTHONFRAMEWORK ""734735/* Define if libssl has X509_VERIFY_PARAM_set1_host and related function */736#define HAVE_X509_VERIFY_PARAM_SET1_HOST 1737738#endif /* !Py_CONFIG_H */739740741