39 #ifndef FLAC__SHARE__COMPAT_H
40 #define FLAC__SHARE__COMPAT_H
42 #if defined _WIN32 && !defined __CYGWIN__
49 #if defined _MSC_VER || defined __BORLANDC__ || defined __MINGW32__
50 #include <sys/types.h>
51 #define FLAC__off_t __int64
52 #if !defined __MINGW32__
53 #define fseeko _fseeki64
54 #define ftello _ftelli64
56 #if !defined(HAVE_FSEEKO)
57 #define fseeko fseeko64
58 #define ftello ftello64
62 #define FLAC__off_t off_t
66 #define __STDC_FORMAT_MACROS
71 #define strtoll _strtoi64
72 #define strtoull _strtoui64
76 #define inline __inline
79 #if defined __INTEL_COMPILER || (defined _MSC_VER && defined _WIN64)
81 #define flac_restrict __restrict
82 #elif defined __GNUC__
83 #define flac_restrict __restrict__
88 #define FLAC__U64L(x) x##ULL
90 #if defined _MSC_VER || defined __BORLANDC__ || defined __MINGW32__
91 #define FLAC__STRCASECMP stricmp
92 #define FLAC__STRNCASECMP strnicmp
94 #define FLAC__STRCASECMP strcasecmp
95 #define FLAC__STRNCASECMP strncasecmp
98 #if defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__ || defined __EMX__
105 #if defined _MSC_VER || defined __BORLANDC__ || defined __MINGW32__
106 #if defined __BORLANDC__
109 #include <sys/utime.h>
112 #include <sys/types.h>
117 # if _MSC_VER >= 1600
120 # define PRIu64 "llu"
121 # define PRId64 "lld"
122 # define PRIx64 "llx"
126 # define UINT32_MAX _UI32_MAX
128 typedef unsigned __int64 uint64_t;
129 typedef unsigned __int32 uint32_t;
130 typedef unsigned __int16 uint16_t;
131 typedef unsigned __int8 uint8_t;
132 typedef __int64 int64_t;
133 typedef __int32 int32_t;
134 typedef __int16 int16_t;
135 typedef __int8 int8_t;
136 # define PRIu64 "I64u"
137 # define PRId64 "I64d"
138 # define PRIx64 "I64x"
146 #define flac_printf printf_utf8
147 #define flac_fprintf fprintf_utf8
148 #define flac_vfprintf vfprintf_utf8
149 #define flac_fopen fopen_utf8
150 #define flac_chmod chmod_utf8
151 #define flac_utime utime_utf8
152 #define flac_unlink unlink_utf8
153 #define flac_rename rename_utf8
154 #define flac_stat _stat64_utf8
158 #define flac_printf printf
159 #define flac_fprintf fprintf
160 #define flac_vfprintf vfprintf
161 #define flac_fopen fopen
162 #define flac_chmod chmod
163 #define flac_utime utime
164 #define flac_unlink unlink
165 #define flac_rename rename
166 #define flac_stat stat
171 #define flac_stat_s __stat64
172 #define flac_fstat _fstat64
174 #define flac_stat_s stat
175 #define flac_fstat fstat
179 #define M_LN2 0.69314718055994530942
182 #define M_PI 3.14159265358979323846
194 int flac_snprintf(
char *str,
size_t size,
const char *fmt, ...);
195 int flac_vsnprintf(
char *str,
size_t size,
const char *fmt, va_list va);
int flac_snprintf(char *str, size_t size, const char *fmt,...)
int flac_vsnprintf(char *str, size_t size, const char *fmt, va_list va)