/* See http://stackoverflow.com/questions/6802903/c-ifdef-mac-os-x-question and
 * http://stackoverflow.com/questions/5919996/how-to-detect-reliably-mac-os-x-ios-linux-windows-in-c-preprocessor */
#ifndef MGLONG_H
#define MGLONG_H

#if defined __unix__ || defined __APPLE__ || defined __MINGW32__ || (_MSC_VER >= 1800)
#include <stdint.h>
#else
typedef __int8            int8_t;
typedef __int16           int16_t; 
typedef __int32           int32_t;
typedef __int64           int64_t;
typedef unsigned __int8   uint8_t;
typedef unsigned __int16  uint16_t;
typedef unsigned __int32  uint32_t;
typedef unsigned __int64  uint64_t;
#endif

#ifndef mg_u_long
#define mg_u_long uint32_t
#endif

#ifndef mg_s_long
#define mg_s_long int32_t
#endif

#endif
