[hb-ft] Fix build when Multiple Master font support is disabled in freetype
authorOlivier Blin <olivier.blin@softathome.com>
Mon, 4 Dec 2017 17:58:41 +0000 (18:58 +0100)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 4 Dec 2017 18:52:06 +0000 (10:52 -0800)
FT_Set_Var_Blend_Coordinates() is not available when "Multiple Master
font interface" is disabled in freetype's modules.cfg

configure.ac
src/hb-ft.cc
util/helper-cairo.cc

index 6d8b577..dc21ad6 100644 (file)
@@ -354,6 +354,7 @@ if $have_freetype; then
        save_libs=$LIBS
        LIBS="$LIBS $FREETYPE_LIBS"
        AC_CHECK_FUNCS(FT_Get_Var_Blend_Coordinates)
+       AC_CHECK_FUNCS(FT_Set_Var_Blend_Coordinates)
        LIBS=$save_libs
 fi
 AM_CONDITIONAL(HAVE_FREETYPE, $have_freetype)
index 0f15f8c..4f33e11 100644 (file)
@@ -747,6 +747,7 @@ hb_ft_font_set_funcs (hb_font_t *font)
     FT_Set_Transform (ft_face, &matrix, nullptr);
   }
 
+#ifdef HAVE_FT_SET_VAR_BLEND_COORDINATES
   unsigned int num_coords;
   const int *coords = hb_font_get_var_coords_normalized (font, &num_coords);
   if (num_coords)
@@ -760,6 +761,7 @@ hb_ft_font_set_funcs (hb_font_t *font)
       free (ft_coords);
     }
   }
+#endif
 
   ft_face->generic.data = blob;
   ft_face->generic.finalizer = (FT_Generic_Finalizer) _release_blob;
index aac4171..b9f4985 100644 (file)
@@ -103,6 +103,7 @@ helper_cairo_create_scaled_font (const font_options_t *font_opts)
   }
   else
   {
+#ifdef HAVE_FT_SET_VAR_BLEND_COORDINATES
     unsigned int num_coords;
     const int *coords = hb_font_get_var_coords_normalized (font, &num_coords);
     if (num_coords)
@@ -116,6 +117,7 @@ helper_cairo_create_scaled_font (const font_options_t *font_opts)
        free (ft_coords);
       }
     }
+#endif
 
     cairo_face = cairo_ft_font_face_create_for_ft_face (ft_face, 0);
   }