compat / msvc.hon commit Merge branch 'ft/doc-git-transport' into maint (8c091d9)
   1#ifndef __MSVC__HEAD
   2#define __MSVC__HEAD
   3
   4#include <direct.h>
   5#include <process.h>
   6#include <malloc.h>
   7#include <io.h>
   8
   9/* porting function */
  10#define inline __inline
  11#define __inline__ __inline
  12#define __attribute__(x)
  13#define strncasecmp  _strnicmp
  14#define ftruncate    _chsize
  15#define strtoull     _strtoui64
  16#define strtoll      _strtoi64
  17
  18static __inline int strcasecmp (const char *s1, const char *s2)
  19{
  20        int size1 = strlen(s1);
  21        int sisz2 = strlen(s2);
  22        return _strnicmp(s1, s2, sisz2 > size1 ? sisz2 : size1);
  23}
  24
  25#undef ERROR
  26
  27/* Use mingw_lstat() instead of lstat()/stat() and mingw_fstat() instead
  28 * of fstat(). We add the declaration of these functions here, suppressing
  29 * the corresponding declarations in mingw.h, so that we can use the
  30 * appropriate structure type (and function) names from the msvc headers.
  31 */
  32#define stat _stat64
  33int mingw_lstat(const char *file_name, struct stat *buf);
  34int mingw_fstat(int fd, struct stat *buf);
  35#define fstat mingw_fstat
  36#define lstat mingw_lstat
  37#define _stat64(x,y) mingw_lstat(x,y)
  38#define ALREADY_DECLARED_STAT_FUNCS
  39
  40#include "compat/mingw.h"
  41
  42#undef ALREADY_DECLARED_STAT_FUNCS
  43
  44#endif