diff options
Diffstat (limited to 'src/main/java/com/google/devtools')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java | 2 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationCollectionFunction.java | 8 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java index 9964c7f08f..b8b670acdb 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java @@ -1186,7 +1186,7 @@ public final class BuildConfiguration { + ".blazerc or continuous build")); } - if (useDynamicConfigurations() && !options.useDistinctHostConfiguration) { + if (trimConfigurations() && !options.useDistinctHostConfiguration) { reporter.handle(Event.error( "--nodistinct_host_configuration does not currently work with dynamic configurations")); } diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationCollectionFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationCollectionFunction.java index 007a5c129b..7862aef7b3 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationCollectionFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/ConfigurationCollectionFunction.java @@ -121,7 +121,12 @@ public class ConfigurationCollectionFunction implements SkyFunction { Environment env, BuildConfiguration targetConfiguration) throws InvalidConfigurationException, InterruptedException { if (targetConfiguration.useDynamicConfigurations()) { - BuildOptions hostOptions = HostTransition.INSTANCE.apply(targetConfiguration.getOptions()); + BuildOptions targetOptions = targetConfiguration.getOptions(); + BuildOptions hostOptions = + targetOptions.get(BuildConfiguration.Options.class).useDistinctHostConfiguration + ? HostTransition.INSTANCE.apply(targetConfiguration.getOptions()) + : targetOptions; + SkyKey hostConfigKey = BuildConfigurationValue.key( targetConfiguration.trimConfigurations() @@ -133,7 +138,6 @@ public class ConfigurationCollectionFunction implements SkyFunction { // Also preload the target configuration so the configured target functions for // top-level targets don't have to waste cycles from a missing Skyframe dep. - BuildOptions targetOptions = targetConfiguration.getOptions(); SkyKey targetConfigKey = BuildConfigurationValue.key(targetConfiguration.fragmentClasses(), targetOptions); BuildConfigurationValue skyValTarget = (BuildConfigurationValue) |