@@ -81,7 +81,8 @@ Future<InitializedCompilerState> initializeCompiler(
8181 List <Uri > inputSummaries,
8282 Target target,
8383 {FileSystem fileSystem,
84- Map <ExperimentalFlag , bool > experiments}) async {
84+ Map <ExperimentalFlag , bool > experiments,
85+ Map <String , String > environmentDefines}) async {
8586 inputSummaries.sort ((a, b) => a.toString ().compareTo (b.toString ()));
8687
8788 if (oldState != null &&
@@ -90,7 +91,8 @@ Future<InitializedCompilerState> initializeCompiler(
9091 oldState.options.packagesFileUri == packagesFile &&
9192 oldState.options.librariesSpecificationUri == librariesSpecificationUri &&
9293 equalLists (oldState.options.inputSummaries, inputSummaries) &&
93- equalMaps (oldState.options.experimentalFlags, experiments)) {
94+ equalMaps (oldState.options.experimentalFlags, experiments) &&
95+ equalMaps (oldState.options.environmentDefines, environmentDefines)) {
9496 // Reuse old state.
9597
9698 // These libraries are marked external when compiling. If not un-marking
@@ -114,7 +116,8 @@ Future<InitializedCompilerState> initializeCompiler(
114116 ..inputSummaries = inputSummaries
115117 ..librariesSpecificationUri = librariesSpecificationUri
116118 ..target = target
117- ..fileSystem = fileSystem ?? StandardFileSystem .instance;
119+ ..fileSystem = fileSystem ?? StandardFileSystem .instance
120+ ..environmentDefines = environmentDefines;
118121 if (experiments != null ) options.experimentalFlags = experiments;
119122
120123 ProcessedOptions processedOpts = new ProcessedOptions (options: options);
@@ -134,7 +137,8 @@ Future<InitializedCompilerState> initializeIncrementalCompiler(
134137 Map <Uri , List <int >> workerInputDigests,
135138 Target target,
136139 {FileSystem fileSystem,
137- Map <ExperimentalFlag , bool > experiments}) async {
140+ Map <ExperimentalFlag , bool > experiments,
141+ Map <String , String > environmentDefines}) async {
138142 inputSummaries.sort ((a, b) => a.toString ().compareTo (b.toString ()));
139143
140144 IncrementalCompiler incrementalCompiler;
@@ -156,7 +160,8 @@ Future<InitializedCompilerState> initializeIncrementalCompiler(
156160 oldState.options.compileSdk != compileSdk ||
157161 cachedSdkInput == null ||
158162 ! digestsEqual (cachedSdkInput.digest, sdkDigest) ||
159- ! equalMaps (oldState.options.experimentalFlags, experiments)) {
163+ ! equalMaps (oldState.options.experimentalFlags, experiments) ||
164+ ! equalMaps (oldState.options.environmentDefines, environmentDefines)) {
160165 // No previous state.
161166 options = new CompilerOptions ()
162167 ..compileSdk = compileSdk
@@ -166,7 +171,8 @@ Future<InitializedCompilerState> initializeIncrementalCompiler(
166171 ..inputSummaries = inputSummaries
167172 ..librariesSpecificationUri = librariesSpecificationUri
168173 ..target = target
169- ..fileSystem = fileSystem ?? StandardFileSystem .instance;
174+ ..fileSystem = fileSystem ?? StandardFileSystem .instance
175+ ..environmentDefines = environmentDefines;
170176 if (experiments != null ) options.experimentalFlags = experiments;
171177
172178 // We'll load a new sdk, anything loaded already will have a wrong root.
0 commit comments