| Index: src/ports/SkFontHost_FreeType.cpp
 | 
| diff --git a/src/ports/SkFontHost_FreeType.cpp b/src/ports/SkFontHost_FreeType.cpp
 | 
| index a4305bfa872b9b0aa160e82e0a36fa17b16e9962..e02e338cfc4578c6c7a2504a6c96868f947d80df 100644
 | 
| --- a/src/ports/SkFontHost_FreeType.cpp
 | 
| +++ b/src/ports/SkFontHost_FreeType.cpp
 | 
| @@ -42,6 +42,10 @@
 | 
|  #include FT_TYPE1_TABLES_H
 | 
|  #include FT_XFREE86_H
 | 
|  
 | 
| +#if !defined(SK_BUILD_FOR_ANDROID) || defined(SK_ANDROID_FREETYPE_HAS_MM)
 | 
| +#    define SK_FREETYPE_HAS_MM 1
 | 
| +#endif
 | 
| +
 | 
|  // FT_LOAD_COLOR and the corresponding FT_Pixel_Mode::FT_PIXEL_MODE_BGRA
 | 
|  // were introduced in FreeType 2.5.0.
 | 
|  // The following may be removed once FreeType 2.5.0 is required to build.
 | 
| @@ -275,6 +279,7 @@
 | 
|      fFTStream.close = sk_ft_stream_close;
 | 
|  }
 | 
|  
 | 
| +#if SK_FREETYPE_HAS_MM
 | 
|  static void ft_face_setup_axes(FT_Face face, const SkFontData& data) {
 | 
|      if (!(face->face_flags & FT_FACE_FLAG_MULTIPLE_MASTERS)) {
 | 
|          return;
 | 
| @@ -305,6 +310,7 @@
 | 
|          return;
 | 
|      }
 | 
|  }
 | 
| +#endif
 | 
|  
 | 
|  // Will return 0 on failure
 | 
|  // Caller must lock gFTMutex before calling this function.
 | 
| @@ -350,7 +356,9 @@
 | 
|      }
 | 
|      SkASSERT(rec->fFace);
 | 
|  
 | 
| +#if SK_FREETYPE_HAS_MM
 | 
|      ft_face_setup_axes(rec->fFace, *data);
 | 
| +#endif
 | 
|  
 | 
|      rec->fNext = gFaceRecHead;
 | 
|      gFaceRecHead = rec;
 | 
| @@ -1761,6 +1769,7 @@
 | 
|          *isFixedPitch = FT_IS_FIXED_WIDTH(face);
 | 
|      }
 | 
|  
 | 
| +#if SK_FREETYPE_HAS_MM
 | 
|      if (axes && face->face_flags & FT_FACE_FLAG_MULTIPLE_MASTERS) {
 | 
|          FT_MM_Var* variations = NULL;
 | 
|          FT_Error err = FT_Get_MM_Var(face, &variations);
 | 
| @@ -1780,6 +1789,7 @@
 | 
|              (*axes)[i].fMaximum = ftAxis.maximum;
 | 
|          }
 | 
|      }
 | 
| +#endif
 | 
|  
 | 
|      FT_Done_Face(face);
 | 
|      return true;
 | 
| 
 |