diff options
author | ajmichael <ajmichael@google.com> | 2017-10-30 15:22:32 -0400 |
---|---|---|
committer | John Cater <jcater@google.com> | 2017-10-31 10:37:32 -0400 |
commit | 3d5faa4eca6b1e47e08b5b4db26a524b85ab8e13 (patch) | |
tree | f1664fcc61bdf15eb41dc10bb081b50361982f42 /src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java | |
parent | ac94fea7dd2f0ba7bc1ddb3875a71ba5f3ca8cb0 (diff) |
Remove --incremental_dexing_binary_types.
It has been set to all for a bit now. It is not in any teams blazerc/tap configs.
RELNOTES: --incremental_dexing_binary_types has been removed. All builds are supported by incremental dexing (modulo proguard and some blacklisted dx flags).
PiperOrigin-RevId: 173931117
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java | 73 |
1 files changed, 7 insertions, 66 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java index be47fe50df..493c98cf2a 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/rules/android/AndroidConfiguration.java @@ -15,7 +15,6 @@ package com.google.devtools.build.lib.rules.android; import static com.google.devtools.build.lib.syntax.Type.STRING; -import com.google.common.base.Splitter; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; @@ -41,16 +40,13 @@ import com.google.devtools.build.lib.rules.cpp.CppOptions.LibcTopLabelConverter; import com.google.devtools.build.lib.skylarkinterface.SkylarkCallable; import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; -import com.google.devtools.common.options.Converter; import com.google.devtools.common.options.Converters; import com.google.devtools.common.options.EnumConverter; import com.google.devtools.common.options.Option; import com.google.devtools.common.options.OptionDocumentationCategory; import com.google.devtools.common.options.OptionEffectTag; import com.google.devtools.common.options.OptionMetadataTag; -import com.google.devtools.common.options.OptionsParsingException; import java.util.List; -import java.util.Set; import javax.annotation.Nullable; /** Configuration fragment for Android rules. */ @@ -82,36 +78,6 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { } /** - * Converter for a set of {@link AndroidBinaryType}s. - */ - public static final class AndroidBinaryTypesConverter - implements Converter<Set<AndroidBinaryType>> { - - private final EnumConverter<AndroidBinaryType> elementConverter = - new EnumConverter<AndroidBinaryType>(AndroidBinaryType.class, "Android binary type") {}; - private final Splitter splitter = Splitter.on(',').omitEmptyStrings().trimResults(); - - public AndroidBinaryTypesConverter() {} - - @Override - public ImmutableSet<AndroidBinaryType> convert(String input) throws OptionsParsingException { - if ("all".equals(input)) { - return ImmutableSet.copyOf(AndroidBinaryType.values()); - } - ImmutableSet.Builder<AndroidBinaryType> result = ImmutableSet.builder(); - for (String opt : splitter.split(input)) { - result.add(elementConverter.convert(opt)); - } - return result.build(); - } - - @Override - public String getTypeDescription() { - return "comma-separated list of: " + elementConverter.getTypeDescription(); - } - } - - /** * Converter for {@link AndroidManifestMerger} */ public static final class AndroidManifestMergerConverter @@ -150,11 +116,6 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { } } - /** Types of android binaries as {@link AndroidBinary#dex} distinguishes them. */ - public enum AndroidBinaryType { - MONODEX, MULTIDEX_UNSHARDED, MULTIDEX_SHARDED - } - /** * Which APK signing method to use with the debug key for rules that build APKs. * @@ -410,21 +371,6 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { ) public boolean incrementalDexing; - // Do not use on the command line. - // The idea is that this option lets us gradually turn on incremental dexing for different - // binaries. Users should rely on --noincremental_dexing to turn it off. - // TODO(b/31711689): remove this flag from config files and here - @Option( - name = "incremental_dexing_binary_types", - defaultValue = "all", - converter = AndroidBinaryTypesConverter.class, - implicitRequirements = "--incremental_dexing", - documentationCategory = OptionDocumentationCategory.UNDOCUMENTED, - effectTags = {OptionEffectTag.UNKNOWN}, - help = "Kinds of binaries to incrementally dex if --incremental_dexing is true." - ) - public Set<AndroidBinaryType> incrementalDexingBinaries; - /** Whether to look for incrementally dex protos built with java_lite_proto_library. */ // TODO(b/31711689): remove this flag from config files and here @Option( @@ -726,7 +672,6 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { host.desugarJava8 = desugarJava8; host.checkDesugarDeps = checkDesugarDeps; host.incrementalDexing = incrementalDexing; - host.incrementalDexingBinaries = incrementalDexingBinaries; host.incrementalDexingForLiteProtos = incrementalDexingForLiteProtos; host.incrementalDexingErrorOnMissedJars = incrementalDexingErrorOnMissedJars; host.assumeMinSdkVersion = assumeMinSdkVersion; @@ -771,7 +716,7 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { private final String cpu; private final boolean incrementalNativeLibs; private final ConfigurationDistinguisher configurationDistinguisher; - private final ImmutableSet<AndroidBinaryType> incrementalDexingBinaries; + private final boolean incrementalDexing; private final boolean incrementalDexingForLiteProtos; private final boolean incrementalDexingErrorOnMissedJars; private final boolean assumeMinSdkVersion; @@ -805,11 +750,7 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { this.incrementalNativeLibs = options.incrementalNativeLibs; this.cpu = options.cpu; this.configurationDistinguisher = options.configurationDistinguisher; - if (options.incrementalDexing) { - this.incrementalDexingBinaries = ImmutableSet.copyOf(options.incrementalDexingBinaries); - } else { - this.incrementalDexingBinaries = ImmutableSet.of(); - } + this.incrementalDexing = options.incrementalDexing; this.incrementalDexingForLiteProtos = options.incrementalDexingForLiteProtos; this.incrementalDexingErrorOnMissedJars = options.incrementalDexingErrorOnMissedJars; this.assumeMinSdkVersion = options.assumeMinSdkVersion; @@ -861,10 +802,10 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { } /** - * Returns when to use incremental dexing using {@link DexArchiveProvider}. + * Returns whether to use incremental dexing. */ - public ImmutableSet<AndroidBinaryType> getIncrementalDexingBinaries() { - return incrementalDexingBinaries; + public boolean useIncrementalDexing() { + return incrementalDexing; } /** @@ -905,8 +846,8 @@ public class AndroidConfiguration extends BuildConfiguration.Fragment { } /** - * Regardless of {@link #getIncrementalDexingBinaries}, incremental dexing must not be used for - * binaries that list any of these flags in their {@code dexopts} attribute. + * Incremental dexing must not be used for binaries that list any of these flags in their + * {@code dexopts} attribute. */ public ImmutableList<String> getTargetDexoptsThatPreventIncrementalDexing() { return targetDexoptsThatPreventIncrementalDexing; |