ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

win32config.h
Go to the documentation of this file.
00001 #ifndef __LIBXML_WIN32_CONFIG__
00002 #define __LIBXML_WIN32_CONFIG__
00003 
00004 #define HAVE_CTYPE_H
00005 #define HAVE_STDARG_H
00006 #define HAVE_MALLOC_H
00007 #define HAVE_ERRNO_H
00008 
00009 #if defined(_WIN32_WCE)
00010 #undef HAVE_ERRNO_H
00011 #include <windows.h>
00012 #include "wincecompat.h"
00013 #else
00014 #define HAVE_SYS_STAT_H
00015 #define HAVE__STAT
00016 #define HAVE_STAT
00017 #define HAVE_STDLIB_H
00018 #define HAVE_TIME_H
00019 #define HAVE_FCNTL_H
00020 #include <io.h>
00021 #include <direct.h>
00022 #endif
00023 
00024 #include <libxml/xmlversion.h>
00025 
00026 #ifndef ICONV_CONST
00027 #define ICONV_CONST const
00028 #endif
00029 
00030 #ifdef NEED_SOCKETS
00031 #include <wsockcompat.h>
00032 #endif
00033 
00034 /*
00035  * Windows platforms may define except 
00036  */
00037 #undef except
00038 
00039 #define HAVE_ISINF
00040 #define HAVE_ISNAN
00041 #include <math.h>
00042 #if defined(_MSC_VER) || defined(__BORLANDC__)
00043 /* MS C-runtime has functions which can be used in order to determine if
00044    a given floating-point variable contains NaN, (+-)INF. These are 
00045    preferred, because floating-point technology is considered propriatary
00046    by MS and we can assume that their functions know more about their 
00047    oddities than we do. */
00048 #include <float.h>
00049 /* Bjorn Reese figured a quite nice construct for isinf() using the _fpclass
00050    function. */
00051 #ifndef isinf
00052 #define isinf(d) ((_fpclass(d) == _FPCLASS_PINF) ? 1 \
00053     : ((_fpclass(d) == _FPCLASS_NINF) ? -1 : 0))
00054 #endif
00055 /* _isnan(x) returns nonzero if (x == NaN) and zero otherwise. */
00056 #ifndef isnan
00057 #define isnan(d) (_isnan(d))
00058 #endif
00059 #else /* _MSC_VER */
00060 #ifndef isinf
00061 static int isinf (double d) {
00062     int expon = 0;
00063     double val = frexp (d, &expon);
00064     if (expon == 1025) {
00065         if (val == 0.5) {
00066             return 1;
00067         } else if (val == -0.5) {
00068             return -1;
00069         } else {
00070             return 0;
00071         }
00072     } else {
00073         return 0;
00074     }
00075 }
00076 #endif
00077 #ifndef isnan
00078 static int isnan (double d) {
00079     int expon = 0;
00080     double val = frexp (d, &expon);
00081     if (expon == 1025) {
00082         if (val == 0.5) {
00083             return 0;
00084         } else if (val == -0.5) {
00085             return 0;
00086         } else {
00087             return 1;
00088         }
00089     } else {
00090         return 0;
00091     }
00092 }
00093 #endif
00094 #endif /* _MSC_VER */
00095 
00096 #if defined(_MSC_VER)
00097 #define mkdir(p,m) _mkdir(p)
00098 #define snprintf _snprintf
00099 #if _MSC_VER < 1500
00100 #define vsnprintf(b,c,f,a) _vsnprintf(b,c,f,a)
00101 #endif
00102 #elif defined(__MINGW32__)
00103 #define mkdir(p,m) _mkdir(p)
00104 #endif
00105 
00106 /* Threading API to use should be specified here for compatibility reasons.
00107    This is however best specified on the compiler's command-line. */
00108 #if defined(LIBXML_THREAD_ENABLED)
00109 #if !defined(HAVE_PTHREAD_H) && !defined(HAVE_WIN32_THREADS) && !defined(_WIN32_WCE)
00110 #define HAVE_WIN32_THREADS
00111 #endif
00112 #endif
00113 
00114 /* Some third-party libraries far from our control assume the following
00115    is defined, which it is not if we don't include windows.h. */
00116 #if !defined(FALSE)
00117 #define FALSE 0
00118 #endif
00119 #if !defined(TRUE)
00120 #define TRUE (!(FALSE))
00121 #endif
00122 
00123 #endif /* __LIBXML_WIN32_CONFIG__ */
00124 

Generated on Sat May 26 2012 04:18:29 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.