#ifndef CMOCKA_PRIVATE_H_
#define CMOCKA_PRIVATE_H_
-#include <cmocka.h>
+#ifdef _WIN32
+#include <windows.h>
+
+# ifdef _MSC_VER
+
+# undef inline
+# define inline __inline
+
+# define strcasecmp _stricmp
+# define strncasecmp _strnicmp
+
+# if defined(HAVE__SNPRINTF_S)
+# undef snprintf
+# define snprintf(d, n, ...) _snprintf_s((d), (n), _TRUNCATE, __VA_ARGS__)
+# else /* HAVE__SNPRINTF_S */
+# if defined(HAVE__SNPRINTF)
+# undef snprintf
+# define snprintf _snprintf
+# else /* HAVE__SNPRINTF */
+# if !defined(HAVE_SNPRINTF)
+# error "no snprintf compatible function found"
+# endif /* HAVE_SNPRINTF */
+# endif /* HAVE__SNPRINTF */
+# endif /* HAVE__SNPRINTF_S */
+
+# if defined(HAVE__VSNPRINTF_S)
+# undef vsnprintf
+# define vsnprintf(s, n, f, v) _vsnprintf_s((s), (n), _TRUNCATE, (f), (v))
+# else /* HAVE__VSNPRINTF_S */
+# if defined(HAVE__VSNPRINTF)
+# undef vsnprintf
+# define vsnprintf _vsnprintf
+# else
+# if !defined(HAVE_VSNPRINTF)
+# error "No vsnprintf compatible function found"
+# endif /* HAVE_VSNPRINTF */
+# endif /* HAVE__VSNPRINTF */
+# endif /* HAVE__VSNPRINTF_S */
+# endif /* _MSC_VER */
+
+/*
+ * Backwards compatibility with headers shipped with Visual Studio 2005 and
+ * earlier.
+ */
+WINBASEAPI BOOL WINAPI IsDebuggerPresent(VOID);
+
+#ifndef PRIdS
+# define PRIdS "Id"
+#endif
+
+#ifndef PRIu64
+# define PRIu64 "I64u"
+#endif
+
+#ifndef PRIuMAX
+# define PRIuMAX PRIu64
+#endif
+
+#ifndef PRIxMAX
+#define PRIxMAX "I64x"
+#endif
+
+#ifndef PRIXMAX
+#define PRIXMAX "I64X"
+#endif
+
+#else /* _WIN32 */
+
+#ifndef __PRI64_PREFIX
+# if __WORDSIZE == 64
+# define __PRI64_PREFIX "l"
+# else
+# define __PRI64_PREFIX "ll"
+# endif
+#endif
+
+#ifndef PRIdS
+# define PRIdS "zd"
+#endif
+
+#ifndef PRIu64
+# define PRIu64 __PRI64_PREFIX "u"
+#endif
+
+#ifndef PRIuMAX
+# define PRIuMAX __PRI64_PREFIX "u"
+#endif
+
+#ifndef PRIxMAX
+#define PRIxMAX __PRI64_PREFIX "x"
+#endif
+
+#ifndef PRIXMAX
+#define PRIXMAX __PRI64_PREFIX "X"
+#endif
+
+#include <signal.h>
+#endif /* _WIN32 */
/** Free memory space */
#define SAFE_FREE(x) do { if ((x) != NULL) {free(x); x=NULL;} } while(0)
#include <string.h>
#include <time.h>
-#ifdef _WIN32
-#include <windows.h>
-
-#define vsnprintf _vsnprintf
-
-/*
- * Backwards compatibility with headers shipped with Visual Studio 2005 and
- * earlier.
- */
-WINBASEAPI BOOL WINAPI IsDebuggerPresent(VOID);
-
-#ifndef PRIdS
-# define PRIdS "Id"
-#endif
-
-#ifndef PRIu64
-# define PRIu64 "I64u"
-#endif
-
-#ifndef PRIuMAX
-# define PRIuMAX PRIu64
-#endif
-
-#ifndef PRIxMAX
-#define PRIxMAX "I64x"
-#endif
-
-#ifndef PRIXMAX
-#define PRIXMAX "I64X"
-#endif
-
-#else /* _WIN32 */
-
-#ifndef __PRI64_PREFIX
-# if __WORDSIZE == 64
-# define __PRI64_PREFIX "l"
-# else
-# define __PRI64_PREFIX "ll"
-# endif
-#endif
-
-#ifndef PRIdS
-# define PRIdS "zd"
-#endif
-
-#ifndef PRIu64
-# define PRIu64 __PRI64_PREFIX "u"
-#endif
-
-#ifndef PRIuMAX
-# define PRIuMAX __PRI64_PREFIX "u"
-#endif
-
-#ifndef PRIxMAX
-#define PRIxMAX __PRI64_PREFIX "x"
-#endif
-
-#ifndef PRIXMAX
-#define PRIXMAX __PRI64_PREFIX "X"
-#endif
-
-#include <signal.h>
-#endif /* _WIN32 */
-
/*
* This allows to add a platform specific header file. Some embedded platforms
* sometimes miss certain types and definitions.