This file is part of MXE. See index.html for further information. Beware! This patch must be removed when winnt.h is updated to a version that includes the MemoryBarrier() macro. diff -ur harfbuzz-0.9.14.orig/src/hb-atomic-private.hh harfbuzz-0.9.14/src/hb-atomic-private.hh --- harfbuzz-0.9.14.orig/src/hb-atomic-private.hh 2013-03-19 12:04:53.000000000 +0100 +++ harfbuzz-0.9.14/src/hb-atomic-private.hh 2013-03-27 05:32:38.407335037 +0100 @@ -44,6 +44,12 @@ #elif !defined(HB_NO_MT) && (defined(_WIN32) || defined(__CYGWIN__)) +static inline void MemoryBarrier(void) +{ + long Barrier = 0; + __asm__ __volatile__ ("xchgl %%eax,%0 " : "=r" (Barrier)); +} + #define WIN32_LEAN_AND_MEAN #include