[HarfBuzz] harfbuzz-ng: Branch 'master'
Behdad Esfahbod
behdad at kemper.freedesktop.org
Tue Aug 2 07:01:31 PDT 2011
configure.ac | 1 +
src/hb-mutex-private.hh | 4 ++--
src/hb-open-type-private.hh | 5 +++++
src/hb-private.hh | 6 +++++-
src/main.cc | 1 +
5 files changed, 14 insertions(+), 3 deletions(-)
New commits:
commit f60271c0c2b0101e7b2725f9a9ad950c277a616c
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Tue Aug 2 09:56:30 2011 -0400
Add mingw32 support
With these changes, on Ubuntu I can do:
./configure --host=i586-mingw32msvc && make
diff --git a/configure.ac b/configure.ac
index d2a2331..882d218 100644
--- a/configure.ac
+++ b/configure.ac
@@ -104,6 +104,7 @@ dnl ==========================================================================
PKG_CHECK_MODULES(ICU, icu, have_icu=true, [
AC_CHECK_PROG([have_icu], [icu-config], [true], [false])
+ have_icu=false
if $have_icu; then
icu_cflags=`icu-config --cppflags`
icu_libs=`icu-config --ldflags-libsonly`
diff --git a/src/hb-mutex-private.hh b/src/hb-mutex-private.hh
index 91c9438..0907e86 100644
--- a/src/hb-mutex-private.hh
+++ b/src/hb-mutex-private.hh
@@ -53,9 +53,9 @@ typedef GStaticMutex hb_mutex_impl_t;
#define hb_mutex_impl_free(M) g_static_mutex_free (M)
-#elif defined(_MSC_VER)
+#elif defined(_MSC_VER) || defined(__MINGW32__)
-#include <Windows.h>
+#include <windows.h>
typedef CRITICAL_SECTION hb_mutex_impl_t;
#define HB_MUTEX_IMPL_INIT { NULL, 0, 0, NULL, NULL, 0 }
diff --git a/src/hb-open-type-private.hh b/src/hb-open-type-private.hh
index ab2a346..0c2ccd8 100644
--- a/src/hb-open-type-private.hh
+++ b/src/hb-open-type-private.hh
@@ -384,6 +384,11 @@ struct IntType
DEFINE_SIZE_STATIC (sizeof (Type));
};
+/* Typedef these to avoid clash with windows.h */
+#define USHORT HB_USHORT
+#define SHORT HB_SHORT
+#define ULONG HB_ULONG
+#define LONG HB_LONG
typedef IntType<uint16_t> USHORT; /* 16-bit unsigned integer. */
typedef IntType<int16_t> SHORT; /* 16-bit signed integer. */
typedef IntType<uint32_t> ULONG; /* 32-bit unsigned integer. */
diff --git a/src/hb-private.hh b/src/hb-private.hh
index 23fc0af..8612789 100644
--- a/src/hb-private.hh
+++ b/src/hb-private.hh
@@ -139,7 +139,11 @@ ASSERT_STATIC (sizeof (hb_var_int_t) == 4);
#endif
#ifndef HB_INTERNAL
-# define HB_INTERNAL __attribute__((__visibility__("hidden")))
+# ifndef __MINGW32__
+# define HB_INTERNAL __attribute__((__visibility__("hidden")))
+# else
+# define HB_INTERNAL
+# endif
#endif
diff --git a/src/main.cc b/src/main.cc
index 4bf809e..31efa96 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -25,6 +25,7 @@
*/
#define HB_OT_LAYOUT_CC
+#include "hb-mutex-private.hh"
#include "hb-open-file-private.hh"
#include "hb-ot-layout-gdef-private.hh"
#include "hb-ot-layout-gsubgpos-private.hh"
More information about the HarfBuzz
mailing list