/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the w64 mingw-runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */#ifndef _INC_TYPES#define _INC_TYPES#ifndef _WIN32#error Only Win32 target is supported!#endif#include <_mingw.h>#ifndef __TINYC__ /* gr */#ifdef _USE_32BIT_TIME_T#ifdef _WIN64#undef _USE_32BIT_TIME_T#endif#else#if _INTEGRAL_MAX_BITS < 64#define _USE_32BIT_TIME_T#endif#endif#endif#ifndef _TIME32_T_DEFINED#define _TIME32_T_DEFINEDtypedef long __time32_t;#endif#ifndef _TIME64_T_DEFINED#define _TIME64_T_DEFINED#if _INTEGRAL_MAX_BITS >= 64typedef __int64 __time64_t;#endif#endif#ifndef _TIME_T_DEFINED#define _TIME_T_DEFINED#ifdef _USE_32BIT_TIME_Ttypedef __time32_t time_t;#elsetypedef __time64_t time_t;#endif#endif#ifndef _INO_T_DEFINED#define _INO_T_DEFINEDtypedef unsigned short _ino_t;#ifndef NO_OLDNAMEStypedef unsigned short ino_t;#endif#endif#ifndef _DEV_T_DEFINED#define _DEV_T_DEFINEDtypedef unsigned int _dev_t;#ifndef NO_OLDNAMEStypedef unsigned int dev_t;#endif#endif#ifndef _PID_T_#define _PID_T_#ifndef _WIN64typedef int _pid_t;#elsetypedef __int64 _pid_t;#endif#ifndef NO_OLDNAMEStypedef _pid_t pid_t;#endif#endif /* Not _PID_T_ */#ifndef _MODE_T_#define _MODE_T_typedef unsigned short _mode_t;#ifndef NO_OLDNAMEStypedef _mode_t mode_t;#endif#endif /* Not _MODE_T_ */#ifndef _OFF_T_DEFINED#define _OFF_T_DEFINED#ifndef _OFF_T_#define _OFF_T_ typedef long _off_t;#if !defined(NO_OLDNAMES) || defined(_POSIX) typedef long off_t;#endif#endif#endif#ifndef _OFF64_T_DEFINED#define _OFF64_T_DEFINED typedef long long _off64_t;#if !defined(NO_OLDNAMES) || defined(_POSIX) typedef long long off64_t;#endif#endif#ifndef _TIMESPEC_DEFINED#define _TIMESPEC_DEFINEDstruct timespec { time_t tv_sec; /* Seconds */ long tv_nsec; /* Nanoseconds */};struct itimerspec { struct timespec it_interval; /* Timer period */ struct timespec it_value; /* Timer expiration */};#endif#endif
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the w64 mingw-runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
#ifndef _INC_TYPES
#define _INC_TYPES
#ifndef _WIN32
#error Only Win32 target is supported!
#endif
#include <_mingw.h>
#ifndef __TINYC__ /* gr */
#ifdef _USE_32BIT_TIME_T
#ifdef _WIN64
#undef _USE_32BIT_TIME_T
#endif
#else
#if _INTEGRAL_MAX_BITS < 64
#define _USE_32BIT_TIME_T
#endif
#endif
#endif
#ifndef _TIME32_T_DEFINED
#define _TIME32_T_DEFINED
typedef long __time32_t;
#endif
#ifndef _TIME64_T_DEFINED
#define _TIME64_T_DEFINED
#if _INTEGRAL_MAX_BITS >= 64
typedef __int64 __time64_t;
#endif
#endif
#ifndef _TIME_T_DEFINED
#define _TIME_T_DEFINED
#ifdef _USE_32BIT_TIME_T
typedef __time32_t time_t;
#else
typedef __time64_t time_t;
#endif
#endif
#ifndef _INO_T_DEFINED
#define _INO_T_DEFINED
typedef unsigned short _ino_t;
#ifndef NO_OLDNAMES
typedef unsigned short ino_t;
#endif
#endif
#ifndef _DEV_T_DEFINED
#define _DEV_T_DEFINED
typedef unsigned int _dev_t;
#ifndef NO_OLDNAMES
typedef unsigned int dev_t;
#endif
#endif
#ifndef _PID_T_
#define _PID_T_
#ifndef _WIN64
typedef int _pid_t;
#else
typedef __int64 _pid_t;
#endif
#ifndef NO_OLDNAMES
typedef _pid_t pid_t;
#endif
#endif /* Not _PID_T_ */
#ifndef _MODE_T_
#define _MODE_T_
typedef unsigned short _mode_t;
#ifndef NO_OLDNAMES
typedef _mode_t mode_t;
#endif
#endif /* Not _MODE_T_ */
#ifndef _OFF_T_DEFINED
#define _OFF_T_DEFINED
#ifndef _OFF_T_
#define _OFF_T_
typedef long _off_t;
#if !defined(NO_OLDNAMES) || defined(_POSIX)
typedef long off_t;
#endif
#endif
#endif
#ifndef _OFF64_T_DEFINED
#define _OFF64_T_DEFINED
typedef long long _off64_t;
#if !defined(NO_OLDNAMES) || defined(_POSIX)
typedef long long off64_t;
#endif
#endif
#ifndef _TIMESPEC_DEFINED
#define _TIMESPEC_DEFINED
struct timespec {
time_t tv_sec; /* Seconds */
long tv_nsec; /* Nanoseconds */
};
struct itimerspec {
struct timespec it_interval; /* Timer period */
struct timespec it_value; /* Timer expiration */
};
#endif
#endif