Added an option to allow default fonts to not be packed in an flx file. (#6710)

Fonts should never be bundled on Fuchsia.
diff --git a/packages/flutter_tools/bin/fuchsia_builder.dart b/packages/flutter_tools/bin/fuchsia_builder.dart
index 694d2e5..a3fc187 100644
--- a/packages/flutter_tools/bin/fuchsia_builder.dart
+++ b/packages/flutter_tools/bin/fuchsia_builder.dart
@@ -48,7 +48,7 @@
     workingDirPath: argResults[_kOptionWorking],
     packagesPath: argResults[_kOptionPackages],
     manifestPath: defaultManifestPath,
-    includeRobotoFonts: true,
+    includeDefaultFonts: false,
   );
   if (buildResult != 0) {
     printError('Error building $outputPath: $buildResult.');
diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
index 21fd0a9..a6bddab 100644
--- a/packages/flutter_tools/lib/src/asset.dart
+++ b/packages/flutter_tools/lib/src/asset.dart
@@ -69,6 +69,7 @@
     String manifestPath: defaultManifestPath,
     String workingDirPath,
     String packagesPath,
+    bool includeDefaultFonts: true,
     bool includeRobotoFonts: true,
     bool reportLicensedPackages: false
   }) async {
@@ -120,7 +121,7 @@
     }
 
     List<_Asset> materialAssets = <_Asset>[];
-    if (usesMaterialDesign) {
+    if (usesMaterialDesign && includeDefaultFonts) {
       materialAssets.addAll(_getMaterialAssets(_kFontSetMaterial));
       if (includeRobotoFonts)
         materialAssets.addAll(_getMaterialAssets(_kFontSetRoboto));
@@ -135,7 +136,7 @@
     entries.add(_createAssetManifest(assetVariants));
 
     AssetBundleEntry fontManifest =
-        _createFontManifest(manifestDescriptor, usesMaterialDesign, includeRobotoFonts);
+        _createFontManifest(manifestDescriptor, usesMaterialDesign, includeDefaultFonts, includeRobotoFonts);
     if (fontManifest != null)
       entries.add(fontManifest);
 
@@ -311,9 +312,10 @@
 
 AssetBundleEntry _createFontManifest(Map<String, dynamic> manifestDescriptor,
                              bool usesMaterialDesign,
+                             bool includeDefaultFonts,
                              bool includeRobotoFonts) {
   List<Map<String, dynamic>> fonts = <Map<String, dynamic>>[];
-  if (usesMaterialDesign) {
+  if (usesMaterialDesign && includeDefaultFonts) {
     fonts.addAll(_getMaterialFonts(AssetBundle._kFontSetMaterial));
     if (includeRobotoFonts)
       fonts.addAll(_getMaterialFonts(AssetBundle._kFontSetRoboto));
diff --git a/packages/flutter_tools/lib/src/flx.dart b/packages/flutter_tools/lib/src/flx.dart
index b0ced7b..101426b 100644
--- a/packages/flutter_tools/lib/src/flx.dart
+++ b/packages/flutter_tools/lib/src/flx.dart
@@ -131,6 +131,7 @@
   String privateKeyPath: defaultPrivateKeyPath,
   String workingDirPath,
   String packagesPath,
+  bool includeDefaultFonts: true,
   bool includeRobotoFonts: true,
   bool reportLicensedPackages: false
 }) async {
@@ -145,6 +146,7 @@
     manifestPath: manifestPath,
     workingDirPath: workingDirPath,
     packagesPath: packagesPath,
+    includeDefaultFonts: includeDefaultFonts,
     includeRobotoFonts: includeRobotoFonts,
     reportLicensedPackages: reportLicensedPackages
   );