Annotation of embedaddon/libxml2/include/win32config.h, revision 1.1

1.1     ! misho       1: #ifndef __LIBXML_WIN32_CONFIG__
        !             2: #define __LIBXML_WIN32_CONFIG__
        !             3: 
        !             4: #define HAVE_CTYPE_H
        !             5: #define HAVE_STDARG_H
        !             6: #define HAVE_MALLOC_H
        !             7: #define HAVE_ERRNO_H
        !             8: 
        !             9: #if defined(_WIN32_WCE)
        !            10: #undef HAVE_ERRNO_H
        !            11: #include <windows.h>
        !            12: #include "wincecompat.h"
        !            13: #else
        !            14: #define HAVE_SYS_STAT_H
        !            15: #define HAVE__STAT
        !            16: #define HAVE_STAT
        !            17: #define HAVE_STDLIB_H
        !            18: #define HAVE_TIME_H
        !            19: #define HAVE_FCNTL_H
        !            20: #include <io.h>
        !            21: #include <direct.h>
        !            22: #endif
        !            23: 
        !            24: #include <libxml/xmlversion.h>
        !            25: 
        !            26: #ifndef ICONV_CONST
        !            27: #define ICONV_CONST const
        !            28: #endif
        !            29: 
        !            30: #ifdef NEED_SOCKETS
        !            31: #include <wsockcompat.h>
        !            32: #endif
        !            33: 
        !            34: /*
        !            35:  * Windows platforms may define except 
        !            36:  */
        !            37: #undef except
        !            38: 
        !            39: #define HAVE_ISINF
        !            40: #define HAVE_ISNAN
        !            41: #include <math.h>
        !            42: #if defined(_MSC_VER) || defined(__BORLANDC__)
        !            43: /* MS C-runtime has functions which can be used in order to determine if
        !            44:    a given floating-point variable contains NaN, (+-)INF. These are 
        !            45:    preferred, because floating-point technology is considered propriatary
        !            46:    by MS and we can assume that their functions know more about their 
        !            47:    oddities than we do. */
        !            48: #include <float.h>
        !            49: /* Bjorn Reese figured a quite nice construct for isinf() using the _fpclass
        !            50:    function. */
        !            51: #ifndef isinf
        !            52: #define isinf(d) ((_fpclass(d) == _FPCLASS_PINF) ? 1 \
        !            53:        : ((_fpclass(d) == _FPCLASS_NINF) ? -1 : 0))
        !            54: #endif
        !            55: /* _isnan(x) returns nonzero if (x == NaN) and zero otherwise. */
        !            56: #ifndef isnan
        !            57: #define isnan(d) (_isnan(d))
        !            58: #endif
        !            59: #else /* _MSC_VER */
        !            60: #ifndef isinf
        !            61: static int isinf (double d) {
        !            62:     int expon = 0;
        !            63:     double val = frexp (d, &expon);
        !            64:     if (expon == 1025) {
        !            65:         if (val == 0.5) {
        !            66:             return 1;
        !            67:         } else if (val == -0.5) {
        !            68:             return -1;
        !            69:         } else {
        !            70:             return 0;
        !            71:         }
        !            72:     } else {
        !            73:         return 0;
        !            74:     }
        !            75: }
        !            76: #endif
        !            77: #ifndef isnan
        !            78: static int isnan (double d) {
        !            79:     int expon = 0;
        !            80:     double val = frexp (d, &expon);
        !            81:     if (expon == 1025) {
        !            82:         if (val == 0.5) {
        !            83:             return 0;
        !            84:         } else if (val == -0.5) {
        !            85:             return 0;
        !            86:         } else {
        !            87:             return 1;
        !            88:         }
        !            89:     } else {
        !            90:         return 0;
        !            91:     }
        !            92: }
        !            93: #endif
        !            94: #endif /* _MSC_VER */
        !            95: 
        !            96: #if defined(_MSC_VER)
        !            97: #define mkdir(p,m) _mkdir(p)
        !            98: #define snprintf _snprintf
        !            99: #if _MSC_VER < 1500
        !           100: #define vsnprintf(b,c,f,a) _vsnprintf(b,c,f,a)
        !           101: #endif
        !           102: #elif defined(__MINGW32__)
        !           103: #define mkdir(p,m) _mkdir(p)
        !           104: #endif
        !           105: 
        !           106: /* Threading API to use should be specified here for compatibility reasons.
        !           107:    This is however best specified on the compiler's command-line. */
        !           108: #if defined(LIBXML_THREAD_ENABLED)
        !           109: #if !defined(HAVE_PTHREAD_H) && !defined(HAVE_WIN32_THREADS) && !defined(_WIN32_WCE)
        !           110: #define HAVE_WIN32_THREADS
        !           111: #endif
        !           112: #endif
        !           113: 
        !           114: /* Some third-party libraries far from our control assume the following
        !           115:    is defined, which it is not if we don't include windows.h. */
        !           116: #if !defined(FALSE)
        !           117: #define FALSE 0
        !           118: #endif
        !           119: #if !defined(TRUE)
        !           120: #define TRUE (!(FALSE))
        !           121: #endif
        !           122: 
        !           123: #endif /* __LIBXML_WIN32_CONFIG__ */
        !           124: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>