Remove --experimental_dynamic_configs=notrim_partial.
Part of the static configuration removal cleanup.
PiperOrigin-RevId: 163130922
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
index 3b7b335..4282652 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java
@@ -699,13 +699,7 @@
* Creates a BuildOptions class for the given options taken from an optionsProvider.
*/
public BuildOptions createBuildOptions(OptionsClassProvider optionsProvider) {
- // Possibly disable dynamic configurations if they won't work with this build. It's
- // best to do this as early in the build as possible, because as the build goes on the number
- // of BuildOptions references grows and the more dangerous it becomes to modify them. We do
- // this here instead of in BlazeRuntime because tests and production logic don't use
- // BlazeRuntime the same way.
- return BuildOptions.applyStaticConfigOverride(
- BuildOptions.of(configurationOptions, optionsProvider));
+ return BuildOptions.of(configurationOptions, optionsProvider);
}
private Environment.Frame createGlobals(
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 37c85f1..014248e 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
@@ -1087,17 +1087,6 @@
/**
* Same as NOTRIM.
*
- * <p>This used to revert certain special cases to static configurations because dynamic
- * configuration didn't support them. But now all builds use dynamic configurations. This
- * value will be removed once we know no one is setting it.
- *
- * @deprecated use {@link #NOTRIM} instead
- */
- @Deprecated
- NOTRIM_PARTIAL,
- /**
- * Same as NOTRIM.
- *
* <p>This used to disable dynamic configurations (while the feature was still being
* developed). But now all builds use dynamic configurations. This value will be removed
* once we know no one is setting it.
@@ -1119,12 +1108,7 @@
@Override
public DynamicConfigsMode convert(String input) throws OptionsParsingException {
DynamicConfigsMode userSetValue = super.convert(input);
- if (userSetValue == DynamicConfigsMode.OFF
- || userSetValue == DynamicConfigsMode.NOTRIM_PARTIAL) {
- return DynamicConfigsMode.NOTRIM;
- } else {
- return userSetValue;
- }
+ return userSetValue == DynamicConfigsMode.OFF ? DynamicConfigsMode.NOTRIM : userSetValue;
}
}
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java
index e1f012f..95f9ea9 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java
@@ -132,25 +132,6 @@
}
/**
- * Returns a cloned instance that disables dynamic configurations if both
- * {@link BuildConfiguration.Options.DynamicConfigsMode} is {@code NOTRIM_PARTIAL} and
- * {@link #useStaticConfigurationsOverride()} is true. Otherwise it returns the input
- * instance unchanged.
- */
- public static BuildOptions applyStaticConfigOverride(BuildOptions buildOptions) {
- if (buildOptions.useStaticConfigurationsOverride()
- && buildOptions.get(BuildConfiguration.Options.class).useDynamicConfigurations
- == BuildConfiguration.Options.DynamicConfigsMode.NOTRIM_PARTIAL) {
- // It's not, generally speaking, safe to mutate BuildOptions instances when the original
- // reference might persist.
- buildOptions = buildOptions.clone();
- buildOptions.get(BuildConfiguration.Options.class).useDynamicConfigurations =
- BuildConfiguration.Options.DynamicConfigsMode.OFF;
- }
- return buildOptions;
- }
-
- /**
* Returns the actual instance of a FragmentOptions class.
*/
public <T extends FragmentOptions> T get(Class<T> optionsClass) {
@@ -198,19 +179,6 @@
}
/**
- * Returns {@code true} if static configurations should be used with
- * {@link BuildConfiguration.Options.DynamicConfigsMode.NOTRIM_PARTIAL}.
- */
- public boolean useStaticConfigurationsOverride() {
- for (FragmentOptions fragment : fragmentOptionsMap.values()) {
- if (fragment.useStaticConfigurationsOverride()) {
- return true;
- }
- }
- return false;
- }
-
- /**
* Returns true if actions should be enabled for this configuration.
*/
public boolean enableActions() {
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/FragmentOptions.java b/src/main/java/com/google/devtools/build/lib/analysis/config/FragmentOptions.java
index f3b8460..d3f3251 100644
--- a/src/main/java/com/google/devtools/build/lib/analysis/config/FragmentOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/analysis/config/FragmentOptions.java
@@ -101,12 +101,4 @@
public FragmentOptions getHost(boolean fallback) {
return getDefault();
}
-
- /**
- * Returns {@code true} if static configurations should be used with
- * {@link BuildConfiguration.Options.DynamicConfigsMode.NOTRIM_PARTIAL}.
- */
- public boolean useStaticConfigurationsOverride() {
- return false;
- }
}
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
index 97492ae..14aa59c 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java
@@ -950,15 +950,6 @@
return lipoConfigurationState == LipoConfigurationState.LIPO_CONTEXT_COLLECTOR;
}
- /**
- * FDO/LIPO is not yet compatible with dynamic configurations.
- **/
- @Override
- public boolean useStaticConfigurationsOverride() {
- // --lipo=binary is technically possible without FDO, even though it doesn't do anything.
- return isFdo() || lipoModeForBuild == LipoMode.BINARY;
- }
-
@Override
public boolean enableActions() {
return !isLipoContextCollector();
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
index 693d0a4..cfbcd5d 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java
@@ -1542,10 +1542,8 @@
* targets and their transitive dependencies.
*/
private static boolean useUntrimmedDynamicConfigs(BuildOptions options) {
- BuildConfiguration.Options.DynamicConfigsMode mode =
- options.get(BuildConfiguration.Options.class).useDynamicConfigurations;
- return mode == BuildConfiguration.Options.DynamicConfigsMode.NOTRIM
- || mode == BuildConfiguration.Options.DynamicConfigsMode.NOTRIM_PARTIAL;
+ return options.get(BuildConfiguration.Options.class).useDynamicConfigurations
+ == BuildConfiguration.Options.DynamicConfigsMode.NOTRIM;
}
/**
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java
index d1a1adb..6ec9c81 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/ConfigurationTestCase.java
@@ -179,11 +179,9 @@
ImmutableSortedSet<String> multiCpu = ImmutableSortedSet.copyOf(
parser.getOptions(TestOptions.class).multiCpus);
- BuildOptions buildOptions = BuildOptions.applyStaticConfigOverride(
- BuildOptions.of(buildOptionClasses, parser));
skyframeExecutor.handleDiffs(reporter);
- BuildConfigurationCollection collection = skyframeExecutor.createConfigurations(
- reporter, configurationFactory, buildOptions, multiCpu, false);
+ BuildConfigurationCollection collection = skyframeExecutor.createConfigurations(reporter,
+ configurationFactory, BuildOptions.of(buildOptionClasses, parser), multiCpu, false);
return collection;
}