Index: trunk/openjdk/jdk/make/sun/font/FILES_c.gmk
===================================================================
--- trunk/openjdk/jdk/make/sun/font/FILES_c.gmk	(revision 198)
+++ trunk/openjdk/jdk/make/sun/font/FILES_c.gmk	(revision 200)
@@ -115,5 +115,8 @@
 ifeq ($(filter-out windows os2,$(PLATFORM)),)
 FILES_c_platform = fontpath.c
+ifneq ($(PLATFORM), os2)  
+# no D3D on OS/2
 FILES_cpp_platform = D3DTextRenderer.cpp
+endif
 else
 FILES_c_platform = X11FontScaler.c \
Index: trunk/openjdk/jdk/make/sun/font/Makefile
===================================================================
--- trunk/openjdk/jdk/make/sun/font/Makefile	(revision 198)
+++ trunk/openjdk/jdk/make/sun/font/Makefile	(revision 200)
@@ -75,5 +75,5 @@
     sun/java2d/loops/GraphicsPrimitive.java
 
-ifeq ($(filter-out windows os2, $(PLATFORM)),)
+ifeq ($(PLATFORM), windows)
 
   # Files built here do not compile with warning level 3 if warnings are fatal
@@ -86,4 +86,12 @@
 
   FILES_export += sun/java2d/d3d/D3DTextRenderer.java
+
+else
+ifeq ($(PLATFORM), os2)
+
+  LDLIBS += -luser32.lib -lgdi32.lib -l$(OBJDIR)/../../../sun.awt/awt/$(OBJDIRNAME)/awt.lib  
+
+  # no D3D ATM
+  #FILES_export += sun/java2d/d3d/D3DTextRenderer.java
 
 else # PLATFORM unix
@@ -95,4 +103,5 @@
     sun/awt/X11GraphicsEnvironment.java 
 
+endif # PLATFORM
 endif # PLATFORM
 
@@ -132,5 +141,9 @@
 $(LIB_LOCATION)/$(LIB_PREFIX)freetype.$(LIBRARY_SUFFIX):
 ifeq ($(filter-out windows os2, $(PLATFORM)),)
+  ifeq ($(PLATFORM), windows)
 	$(CP) $(FREETYPE_LIB_PATH)/$(LIB_PREFIX)freetype.$(LIBRARY_SUFFIX) $@
+  eles
+    # we link to the static library so far, see #32 for details
+  endif
 else 
   ifeq ($(USING_SYSTEM_FT_LIB), false)
@@ -193,19 +206,27 @@
 # set up compile flags..
 
-CPPFLAGS += -I$(SHARE_SRC)/native/$(PKGDIR) \
-            -I$(SHARE_SRC)/native/$(PKGDIR)/layout \
-            -I$(SHARE_SRC)/native/$(PKGDIR)/bidi \
-	    -I$(SHARE_SRC)/native/sun/awt/image/cvutils \
-	    -I$(PLATFORM_SRC)/native/sun/awt \
-	    -I$(SHARE_SRC)/native/sun/awt/debug \
-	    -I$(SHARE_SRC)/native/sun/java2d/loops \
-	    -I$(SHARE_SRC)/native/sun/java2d/pipe \
-            -I$(PLATFORM_SRC)/native/sun/java2d \
-	    -I$(SHARE_SRC)/native/sun/java2d \
-	    -I$(TEMPDIR)/../../sun.awt/awt/CClassHeaders
+# some font headers interfere with the compiler headers (e.g. Features.h vs
+# features.h) on OS/2. Use -iquote to solve that
+ifeq ($(PLATFORM), os2)
+I_OPT = -iquote # preserve trailing space
+else
+I_OPT = -I
+endif
+
+CPPFLAGS += $(I_OPT)$(SHARE_SRC)/native/$(PKGDIR) \
+            $(I_OPT)$(SHARE_SRC)/native/$(PKGDIR)/layout \
+            $(I_OPT)$(SHARE_SRC)/native/$(PKGDIR)/bidi \
+	    $(I_OPT)$(SHARE_SRC)/native/sun/awt/image/cvutils \
+	    $(I_OPT)$(PLATFORM_SRC)/native/sun/awt \
+	    $(I_OPT)$(SHARE_SRC)/native/sun/awt/debug \
+	    $(I_OPT)$(SHARE_SRC)/native/sun/java2d/loops \
+	    $(I_OPT)$(SHARE_SRC)/native/sun/java2d/pipe \
+            $(I_OPT)$(PLATFORM_SRC)/native/sun/java2d \
+	    $(I_OPT)$(SHARE_SRC)/native/sun/java2d \
+	    $(I_OPT)$(TEMPDIR)/../../sun.awt/awt/CClassHeaders
 
 ifeq ($(filter-out windows os2, $(PLATFORM)),)
-CPPFLAGS += -I$(PLATFORM_SRC)/native/sun/windows \
-	    -I$(PLATFORM_SRC)/native/sun/java2d/d3d
-endif
-
+CPPFLAGS += $(I_OPT)$(PLATFORM_SRC)/native/sun/windows \
+	    $(I_OPT)$(PLATFORM_SRC)/native/sun/java2d/d3d
+endif
+
Index: trunk/openjdk/jdk/src/share/native/sun/java2d/pipe/Region.h
===================================================================
--- trunk/openjdk/jdk/src/share/native/sun/java2d/pipe/Region.h	(revision 198)
+++ trunk/openjdk/jdk/src/share/native/sun/java2d/pipe/Region.h	(revision 200)
@@ -31,5 +31,5 @@
 #endif
 
-#include <SurfaceData.h>
+#include "SurfaceData.h"
 #include "utility/rect.h"
 
Index: trunk/openjdk/jdk/src/windows/native/sun/font/fontpath.c
===================================================================
--- trunk/openjdk/jdk/src/windows/native/sun/font/fontpath.c	(revision 198)
+++ trunk/openjdk/jdk/src/windows/native/sun/font/fontpath.c	(revision 200)
@@ -33,4 +33,9 @@
 #define BSIZE (max(512, MAX_PATH+1))
 
+#ifdef __WIN32OS2__
+#include <string.h>
+#include <wchar.h>
+#include <minivcrt.h>
+#endif
 
 JNIEXPORT jstring JNICALL Java_sun_font_FontManager_getFontPath(JNIEnv *env, jclass obj, jboolean noType1)
