2016-06-06 14:08:13 +03:00
|
|
|
#ifndef _HG_COMPAT_H_
|
|
|
|
#define _HG_COMPAT_H_
|
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
#ifdef _MSC_VER
|
|
|
|
/* msvc 6.0 has problems */
|
|
|
|
#define inline __inline
|
2016-07-11 14:53:35 +03:00
|
|
|
#if defined(_WIN64)
|
|
|
|
typedef __int64 ssize_t;
|
2017-04-23 06:59:42 +03:00
|
|
|
typedef unsigned __int64 uintptr_t;
|
2018-06-06 05:20:17 +03:00
|
|
|
#else /* if defined(_WIN64) */
|
2016-07-15 17:54:56 +03:00
|
|
|
typedef int ssize_t;
|
2017-04-23 06:59:42 +03:00
|
|
|
typedef unsigned int uintptr_t;
|
2018-03-08 23:34:33 +03:00
|
|
|
#endif /* if defined(_WIN64) */
|
|
|
|
#if _MSC_VER < 1600
|
2016-06-06 14:08:13 +03:00
|
|
|
typedef signed char int8_t;
|
|
|
|
typedef short int16_t;
|
|
|
|
typedef long int32_t;
|
|
|
|
typedef __int64 int64_t;
|
|
|
|
typedef unsigned char uint8_t;
|
|
|
|
typedef unsigned short uint16_t;
|
|
|
|
typedef unsigned long uint32_t;
|
|
|
|
typedef unsigned __int64 uint64_t;
|
2018-03-08 23:34:33 +03:00
|
|
|
#endif /* if _MSC_VER < 1600 */
|
2016-06-06 14:08:13 +03:00
|
|
|
#include <stdint.h>
|
2018-03-08 23:34:33 +03:00
|
|
|
#endif /* ifdef _MSC_VER */
|
2018-06-06 05:20:17 +03:00
|
|
|
#else /* ifdef _WIN32 */
|
2016-06-06 14:08:13 +03:00
|
|
|
/* not windows */
|
|
|
|
#include <sys/types.h>
|
|
|
|
#if defined __BEOS__ && !defined __HAIKU__
|
|
|
|
#include <ByteOrder.h>
|
|
|
|
#else
|
|
|
|
#include <arpa/inet.h>
|
|
|
|
#endif
|
|
|
|
#include <inttypes.h>
|
2018-03-08 23:34:33 +03:00
|
|
|
#endif /* ifdef _WIN32 */
|
2016-06-06 14:08:13 +03:00
|
|
|
|
|
|
|
#if defined __hpux || defined __SUNPRO_C || defined _AIX
|
|
|
|
#define inline
|
2018-03-08 23:34:33 +03:00
|
|
|
#endif /* if defined __hpux || defined __SUNPRO_C || defined _AIX */
|
2016-06-06 14:08:13 +03:00
|
|
|
|
|
|
|
#ifdef __linux
|
|
|
|
#define inline __inline
|
2018-03-08 23:34:33 +03:00
|
|
|
#endif /* ifdef __linux */
|
2016-06-06 14:08:13 +03:00
|
|
|
|
2018-03-08 23:34:33 +03:00
|
|
|
#endif /* ifndef _HG_COMPAT_H_ */
|