Link platform.dill only into app kernel file used for build aot. (#12571)
gen_snapshot loads all packages from single app kernel file.
diff --git a/packages/flutter_tools/lib/src/commands/build_aot.dart b/packages/flutter_tools/lib/src/commands/build_aot.dart
index 28721d5..056e580 100644
--- a/packages/flutter_tools/lib/src/commands/build_aot.dart
+++ b/packages/flutter_tools/lib/src/commands/build_aot.dart
@@ -307,6 +307,7 @@
sdkRoot: artifacts.getArtifactPath(Artifact.flutterPatchedSdkPath),
mainPath: mainPath,
extraFrontEndOptions: extraFrontEndOptions,
+ linkPlatformKernelIn : true,
);
}
diff --git a/packages/flutter_tools/lib/src/compile.dart b/packages/flutter_tools/lib/src/compile.dart
index 9c98886..4299b8b 100644
--- a/packages/flutter_tools/lib/src/compile.dart
+++ b/packages/flutter_tools/lib/src/compile.dart
@@ -59,6 +59,7 @@
Future<String> compile(
{String sdkRoot,
String mainPath,
+ bool linkPlatformKernelIn : false,
List<String> extraFrontEndOptions}) async {
final String frontendServer = artifacts.getArtifactPath(
Artifact.frontendServerSnapshotForEngineDartSdk
@@ -73,6 +74,8 @@
'--sdk-root',
sdkRoot,
];
+ if (!linkPlatformKernelIn)
+ command.add('--no-link-platform');
if (extraFrontEndOptions != null)
command.addAll(extraFrontEndOptions);
command.add(mainPath);