src/hb-mutex-private.hh | 4 ++++ src/hb-private.hh | 24 ++++++++++++------------ 2 files changed, 16 insertions(+), 12 deletions(-)
New commits: commit 70c25ee215635db23eb0757641bd372940c0d85d Merge: 28f5e0b f3537b6 Author: Behdad Esfahbod <beh...@behdad.org> Date: Sun Jan 25 13:06:03 2015 -0800 Merge pull request #81 from KonstantinRitt/fixes/build/win8phone winrt_buildfixes commit f3537b620b0a7392ea27f01f465c5ba79459c858 Author: Konstantin Ritt <ritt...@gmail.com> Date: Sun Jan 25 09:50:51 2015 +0400 Move some code around Just to keep Windows specific workarounds in a single place. diff --git a/src/hb-private.hh b/src/hb-private.hh index c316c01..45b7712 100644 --- a/src/hb-private.hh +++ b/src/hb-private.hh @@ -94,12 +94,6 @@ # endif #endif -#if (defined(__WIN32__) && !defined(__WINE__)) || defined(_MSC_VER) -#define snprintf _snprintf -/* Windows CE only has _strdup, while rest of Windows has both. */ -#define strdup _strdup -#endif - #ifdef _MSC_VER #undef inline #define inline __inline @@ -134,15 +128,20 @@ # ifndef STRICT # define STRICT 1 # endif -#endif -#ifdef _WIN32_WCE -/* Some things not defined on Windows CE. */ -#define getenv(Name) NULL -#define setlocale(Category, Locale) "C" +# if defined(_WIN32_WCE) + /* Some things not defined on Windows CE. */ +# define getenv(Name) NULL +# define setlocale(Category, Locale) "C" static int errno = 0; /* Use something better? */ -#elif defined(WINAPI_FAMILY) && (WINAPI_FAMILY==WINAPI_FAMILY_PC_APP || WINAPI_FAMILY==WINAPI_FAMILY_PHONE_APP) -#define getenv(Name) NULL +# elif defined(WINAPI_FAMILY) && (WINAPI_FAMILY==WINAPI_FAMILY_PC_APP || WINAPI_FAMILY==WINAPI_FAMILY_PHONE_APP) +# define getenv(Name) NULL +# endif +# if (defined(__WIN32__) && !defined(__WINE__)) || defined(_MSC_VER) +# define snprintf _snprintf + /* Windows CE only has _strdup, while rest of Windows has both. */ +# define strdup _strdup +# endif #endif #if HAVE_ATEXIT commit afb62d88d78cacb6b881aaf329a654fd32f5ae29 Author: Konstantin Ritt <ritt...@gmail.com> Date: Sun Jan 25 08:16:26 2015 +0400 Do not define MemoryBarrier on WinCE There is a _HBMemoryBarrier() wrapper function that emulates MemoryBarrier() behavior when it is not defined. diff --git a/src/hb-private.hh b/src/hb-private.hh index 8438fae..c316c01 100644 --- a/src/hb-private.hh +++ b/src/hb-private.hh @@ -138,7 +138,6 @@ #ifdef _WIN32_WCE /* Some things not defined on Windows CE. */ -#define MemoryBarrier() #define getenv(Name) NULL #define setlocale(Category, Locale) "C" static int errno = 0; /* Use something better? */ commit 7db326a15b173c0d101adc608bf551a628c65dcd Author: Konstantin Ritt <ritt...@gmail.com> Date: Sun Jan 25 08:13:24 2015 +0400 Fix build on WinRT There is no environment (like WinCE) and the basic version of InitializeCriticalSection is unsupported. https://codereview.qt-project.org/#/c/92496/ diff --git a/src/hb-mutex-private.hh b/src/hb-mutex-private.hh index 6281201..a8ea39c 100644 --- a/src/hb-mutex-private.hh +++ b/src/hb-mutex-private.hh @@ -47,7 +47,11 @@ #include <windows.h> typedef CRITICAL_SECTION hb_mutex_impl_t; #define HB_MUTEX_IMPL_INIT {0} +#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY==WINAPI_FAMILY_PC_APP || WINAPI_FAMILY==WINAPI_FAMILY_PHONE_APP) +#define hb_mutex_impl_init(M) InitializeCriticalSectionEx (M, 0, 0) +#else #define hb_mutex_impl_init(M) InitializeCriticalSection (M) +#endif #define hb_mutex_impl_lock(M) EnterCriticalSection (M) #define hb_mutex_impl_unlock(M) LeaveCriticalSection (M) #define hb_mutex_impl_finish(M) DeleteCriticalSection (M) diff --git a/src/hb-private.hh b/src/hb-private.hh index c92cdec..8438fae 100644 --- a/src/hb-private.hh +++ b/src/hb-private.hh @@ -142,6 +142,8 @@ #define getenv(Name) NULL #define setlocale(Category, Locale) "C" static int errno = 0; /* Use something better? */ +#elif defined(WINAPI_FAMILY) && (WINAPI_FAMILY==WINAPI_FAMILY_PC_APP || WINAPI_FAMILY==WINAPI_FAMILY_PHONE_APP) +#define getenv(Name) NULL #endif #if HAVE_ATEXIT _______________________________________________ HarfBuzz mailing list HarfBuzz@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/harfbuzz