Minor
diff --git a/src/hb-ot-layout-gsubgpos-private.hh b/src/hb-ot-layout-gsubgpos-private.hh
index 810a495..46e322b 100644
--- a/src/hb-ot-layout-gsubgpos-private.hh
+++ b/src/hb-ot-layout-gsubgpos-private.hh
@@ -31,7 +31,6 @@
 
 #include "hb-buffer-private.hh"
 #include "hb-ot-layout-gdef-table.hh"
-#include "hb-ot-layout-closure.h"
 
 
 
diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc
index b018661..4441a7e 100644
--- a/src/hb-ot-layout.cc
+++ b/src/hb-ot-layout.cc
@@ -471,9 +471,9 @@
 }
 
 hb_bool_t
-hb_ot_layout_closure_lookup (hb_face_t      *face,
-			     hb_glyph_map_t *glyphs,
-			     unsigned int    lookup_index)
+hb_ot_layout_substitute_closure_lookup (hb_face_t      *face,
+				        hb_glyph_map_t *glyphs,
+				        unsigned int    lookup_index)
 {
   hb_closure_context_t c (face, glyphs);
   return _get_gsub (face).closure_lookup (&c, lookup_index);
diff --git a/src/hb-ot-layout.h b/src/hb-ot-layout.h
index 430e54c..16addc6 100644
--- a/src/hb-ot-layout.h
+++ b/src/hb-ot-layout.h
@@ -182,6 +182,14 @@
 void
 hb_ot_layout_substitute_finish (hb_buffer_t  *buffer);
 
+
+typedef uint32_t hb_glyph_map_t[65536 / 32]; /* 8kb */
+
+hb_bool_t
+hb_ot_layout_substitute_closure_lookup (hb_face_t      *face,
+				        hb_glyph_map_t *glyphs,
+				        unsigned int    lookup_index);
+
 /*
  * GPOS
  */
diff --git a/src/hb-private.hh b/src/hb-private.hh
index 64cb3c8..4f211a1 100644
--- a/src/hb-private.hh
+++ b/src/hb-private.hh
@@ -34,9 +34,11 @@
 #endif
 
 #include "hb.h"
-#include "hb-ot.h"
 #define HB_H_IN
+#ifdef HAVE_OT
+#include "hb-ot.h"
 #define HB_OT_H_IN
+#endif
 
 #include <stdlib.h>
 #include <stddef.h>