aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google
diff options
context:
space:
mode:
authorGravatar gregce <gregce@google.com>2017-07-26 00:19:10 +0200
committerGravatar Jakob Buchgraber <buchgr@google.com>2017-07-26 10:35:05 +0200
commit9a3028ce684f1d71d887095b23dd922d55ecfbf9 (patch)
treef9c9ba262033613d3c608ab959606a8cc125eaec /src/main/java/com/google
parent1dc4c710ec577ca34742aeeb09a634dec21bef68 (diff)
Remove --experimental_dynamic_configs=notrim_partial.
Part of the static configuration removal cleanup. PiperOrigin-RevId: 163130922
Diffstat (limited to 'src/main/java/com/google')
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/ConfiguredRuleClassProvider.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java18
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/config/BuildOptions.java32
-rw-r--r--src/main/java/com/google/devtools/build/lib/analysis/config/FragmentOptions.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppOptions.java9
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/SkyframeExecutor.java6
6 files changed, 4 insertions, 77 deletions
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 3b7b335e52..42826523e1 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 @@ public class ConfiguredRuleClassProvider implements RuleClassProvider {
* 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 37c85f1d97..014248e295 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 @@ public final class BuildConfiguration implements BuildEvent {
/**
* 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 @@ public final class BuildConfiguration implements BuildEvent {
@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 e1f012f25f..95f9ea9619 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 @@ public final class BuildOptions implements Cloneable, Serializable {
}
/**
- * 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 @@ public final class BuildOptions implements Cloneable, Serializable {
}
/**
- * 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 f3b84603e0..d3f32513bb 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 abstract class FragmentOptions extends OptionsBase implements Cloneable,
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 97492ae816..14aa59c1c7 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 @@ public class CppOptions extends FragmentOptions {
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 693d0a4eb8..cfbcd5d93c 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 @@ public abstract class SkyframeExecutor implements WalkableGraphFactory {
* 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;
}
/**