Skip to content

Commit 8f4c4c8

Browse files
lberkicopybara-github
authored andcommitted
Refactor CoreOptions to use the new options class interface.
RELNOTES: None PiperOrigin-RevId: 891322186 Change-Id: I8a15ff1b9e71afb04465a99bc06c09618b5d0400
1 parent 14fc007 commit 8f4c4c8

78 files changed

Lines changed: 334 additions & 300 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/main/java/com/google/devtools/build/lib/actions/AbstractCommandLine.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
package com.google.devtools.build.lib.actions;
1616

17-
import com.google.devtools.build.lib.analysis.config.CoreOptions;
17+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields;
1818
import com.google.devtools.build.lib.util.Fingerprint;
1919
import javax.annotation.Nullable;
2020

@@ -54,7 +54,7 @@ public Iterable<String> arguments(
5454
public void addToFingerprint(
5555
ActionKeyContext actionKeyContext,
5656
@Nullable InputMetadataProvider inputMetadataProvider,
57-
CoreOptions.OutputPathsMode effectiveOutputPathsMode,
57+
CoreOptionsFields.OutputPathsMode effectiveOutputPathsMode,
5858
Fingerprint fingerprint)
5959
throws CommandLineExpansionException, InterruptedException {
6060
for (String s :

src/main/java/com/google/devtools/build/lib/actions/CommandLine.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import com.google.common.base.MoreObjects;
1919
import com.google.common.collect.ImmutableList;
2020
import com.google.common.collect.Iterables;
21-
import com.google.devtools.build.lib.analysis.config.CoreOptions;
21+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields;
2222
import com.google.devtools.build.lib.util.Fingerprint;
2323
import javax.annotation.Nullable;
2424

@@ -100,7 +100,7 @@ public abstract Iterable<String> arguments(
100100
public abstract void addToFingerprint(
101101
ActionKeyContext actionKeyContext,
102102
@Nullable InputMetadataProvider inputMetadataProvider,
103-
CoreOptions.OutputPathsMode effectiveOutputPathsMode,
103+
CoreOptionsFields.OutputPathsMode effectiveOutputPathsMode,
104104
Fingerprint fingerprint)
105105
throws CommandLineExpansionException, InterruptedException;
106106

src/main/java/com/google/devtools/build/lib/actions/CommandLines.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import com.google.common.annotations.VisibleForTesting;
1919
import com.google.common.collect.ImmutableList;
2020
import com.google.devtools.build.lib.actions.ParameterFile.ParameterFileType;
21-
import com.google.devtools.build.lib.analysis.config.CoreOptions;
21+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields;
2222
import com.google.devtools.build.lib.util.Fingerprint;
2323
import com.google.devtools.build.lib.vfs.Path;
2424
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -175,7 +175,7 @@ public ImmutableList<String> allArguments(PathMapper pathMapper)
175175
public void addToFingerprint(
176176
ActionKeyContext actionKeyContext,
177177
@Nullable InputMetadataProvider inputMetadataProvider,
178-
CoreOptions.OutputPathsMode effectiveOutputPathsMode,
178+
CoreOptionsFields.OutputPathsMode effectiveOutputPathsMode,
179179
Fingerprint fingerprint)
180180
throws CommandLineExpansionException, InterruptedException {
181181
ImmutableList<CommandLineAndParamFileInfo> commandLines = unpack();

src/main/java/com/google/devtools/build/lib/actions/PathMapper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
import com.google.devtools.build.lib.actions.Artifact.DerivedArtifact;
1919
import com.google.devtools.build.lib.actions.CommandLineItem.ExceptionlessMapFn;
2020
import com.google.devtools.build.lib.actions.CommandLineItem.MapFn;
21-
import com.google.devtools.build.lib.analysis.config.CoreOptions;
21+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields;
2222
import com.google.devtools.build.lib.starlarkbuildapi.FileRootApi;
2323
import com.google.devtools.build.lib.vfs.PathFragment;
2424
import com.google.errorprone.annotations.CheckReturnValue;
@@ -84,8 +84,8 @@ public StarlarkSemantics getBuiltinManagerCacheKey() {
8484
}
8585

8686
/** Returns the instance to use during action key computation. */
87-
static PathMapper forActionKey(CoreOptions.OutputPathsMode effectiveOutputPathsMode) {
88-
return effectiveOutputPathsMode == CoreOptions.OutputPathsMode.OFF
87+
static PathMapper forActionKey(CoreOptionsFields.OutputPathsMode effectiveOutputPathsMode) {
88+
return effectiveOutputPathsMode == CoreOptionsFields.OutputPathsMode.OFF
8989
? NOOP
9090
: PathMapperConstants.FOR_FINGERPRINTING;
9191
}

src/main/java/com/google/devtools/build/lib/analysis/ConfiguredAspect.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ public ConfiguredAspect build() throws ActionConflictException, InterruptedExcep
209209
/**
210210
* Adds {@link RequiredConfigFragmentsProvider} if {@link
211211
* CoreOptions#includeRequiredConfigFragmentsProvider} isn't {@link
212-
* CoreOptions.IncludeConfigFragmentsEnum#OFF} and if the provider was not already added.
212+
* CoreOptionsFields.IncludeConfigFragmentsEnum#OFF} and if the provider was not already added.
213213
*
214214
* <p>See {@link RequiredFragmentsUtil} for a description of the meaning of this provider's
215215
* content. That class contains methods that populate the results of {@link

src/main/java/com/google/devtools/build/lib/analysis/Project.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ static ImmutableMultimap<Label, Label> findProjectFiles(
307307
* active or some targets have project files and others don't, this method checks there's a
308308
* sound way to set the desired config and throws an {@link InvalidConfigurationException} if
309309
* not.
310-
* @param sclConfig the {@link CoreOptions.sclConfig} to apply
310+
* @param sclConfig the {@link CoreOptions.getSclConfig()} to apply
311311
* @param allOptionNames the names of every native option the parser recognizes, in {@code "name"}
312312
* form. Not all entries are {@link BuildOptions}.
313313
* @param userOptions options that were set by users (vs. global bazelrcs), in name=value form

src/main/java/com/google/devtools/build/lib/analysis/RequiredFragmentsUtil.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
import com.google.devtools.build.lib.analysis.config.BuildOptionDetails;
2222
import com.google.devtools.build.lib.analysis.config.ConfigConditions;
2323
import com.google.devtools.build.lib.analysis.config.CoreOptions;
24-
import com.google.devtools.build.lib.analysis.config.CoreOptions.IncludeConfigFragmentsEnum;
24+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields;
25+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields.IncludeConfigFragmentsEnum;
2526
import com.google.devtools.build.lib.analysis.config.Fragment;
2627
import com.google.devtools.build.lib.analysis.config.FragmentClassSet;
2728
import com.google.devtools.build.lib.analysis.config.transitions.TransitionFactory;
@@ -59,11 +60,11 @@ public final class RequiredFragmentsUtil {
5960
* {@link RuleConfiguredTargetBuilder#maybeAddRequiredConfigFragmentsProvider} for the remaining
6061
* pieces of config state.
6162
*
62-
* <p>If {@code configuration} is {@link CoreOptions.IncludeConfigFragmentsEnum#DIRECT}, the
63+
* <p>If {@code configuration} is {@link CoreOptionsFields.IncludeConfigFragmentsEnum#DIRECT}, the
6364
* result includes only the config state considered to be directly required by this target. If
64-
* it's {@link CoreOptions.IncludeConfigFragmentsEnum#TRANSITIVE}, it also includes config state
65-
* needed by transitive dependencies. If it's {@link CoreOptions.IncludeConfigFragmentsEnum#OFF},
66-
* this method returns {@code null}.
65+
* it's {@link CoreOptionsFields.IncludeConfigFragmentsEnum#TRANSITIVE}, it also includes config
66+
* state needed by transitive dependencies. If it's {@link
67+
* CoreOptionsFields.IncludeConfigFragmentsEnum#OFF}, this method returns {@code null}.
6768
*
6869
* <p>{@code select()}s and toolchain dependencies are considered when looking at what config
6970
* state is required.
@@ -319,7 +320,7 @@ private static void addStarlarkBuildSettings(
319320
private static IncludeConfigFragmentsEnum getRequiredFragmentsMode(
320321
BuildConfigurationValue config) {
321322
return checkNotNull(
322-
config.getOptions().get(CoreOptions.class).includeRequiredConfigFragmentsProvider);
323+
config.getOptions().get(CoreOptions.class).getIncludeRequiredConfigFragmentsProvider());
323324
}
324325

325326
private RequiredFragmentsUtil() {}

src/main/java/com/google/devtools/build/lib/analysis/RunfilesSupport.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -712,7 +712,7 @@ private static Artifact createRepoMappingManifestAction(
712712
.getConfiguration()
713713
.getOptions()
714714
.get(CoreOptions.class)
715-
.compactRepoMapping));
715+
.getCompactRepoMapping()));
716716
return repoMappingManifest;
717717
}
718718

src/main/java/com/google/devtools/build/lib/analysis/actions/CustomCommandLine.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
import com.google.devtools.build.lib.actions.InputMetadataProvider;
3434
import com.google.devtools.build.lib.actions.PathMapper;
3535
import com.google.devtools.build.lib.actions.SingleStringArgFormatter;
36-
import com.google.devtools.build.lib.analysis.config.CoreOptions;
36+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields;
3737
import com.google.devtools.build.lib.cmdline.Label;
3838
import com.google.devtools.build.lib.cmdline.RepositoryMapping;
3939
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
@@ -1366,7 +1366,7 @@ Object substituteTreeFileArtifactArgvFragment(TreeFileArtifactArgvFragment argvF
13661366
public void addToFingerprint(
13671367
ActionKeyContext actionKeyContext,
13681368
@Nullable InputMetadataProvider inputMetadataProvider,
1369-
CoreOptions.OutputPathsMode effectiveOutputPathsMode,
1369+
CoreOptionsFields.OutputPathsMode effectiveOutputPathsMode,
13701370
Fingerprint fingerprint)
13711371
throws CommandLineExpansionException, InterruptedException {
13721372
List<Object> arguments = rawArgsAsList();

src/main/java/com/google/devtools/build/lib/analysis/actions/ParameterFileWriteAction.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
import com.google.devtools.build.lib.actions.PathMapper;
3737
import com.google.devtools.build.lib.actions.UserExecException;
3838
import com.google.devtools.build.lib.analysis.config.BuildConfigurationValue;
39-
import com.google.devtools.build.lib.analysis.config.CoreOptions;
39+
import com.google.devtools.build.lib.analysis.config.CoreOptionsFields;
4040
import com.google.devtools.build.lib.collect.nestedset.NestedSet;
4141
import com.google.devtools.build.lib.collect.nestedset.NestedSetBuilder;
4242
import com.google.devtools.build.lib.collect.nestedset.Order;
@@ -89,7 +89,7 @@ public ParameterFileWriteAction(
8989
makeExecutable,
9090
AbstractFileWriteAction.MNEMONIC,
9191
/* executionInfo= */ ImmutableMap.of(),
92-
CoreOptions.OutputPathsMode.OFF);
92+
CoreOptionsFields.OutputPathsMode.OFF);
9393
}
9494

9595
/**
@@ -116,7 +116,7 @@ public ParameterFileWriteAction(
116116
boolean makeExecutable,
117117
String mnemonic,
118118
ImmutableMap<String, String> executionInfo,
119-
CoreOptions.OutputPathsMode outputPathsMode) {
119+
CoreOptionsFields.OutputPathsMode outputPathsMode) {
120120
super(owner, inputs, output);
121121
this.commandLine = commandLine;
122122
this.type = type;
@@ -126,7 +126,7 @@ public ParameterFileWriteAction(
126126
// action.
127127
this.usePathStripping =
128128
PathMappers.getEffectiveOutputPathsMode(outputPathsMode, getMnemonic(), executionInfo)
129-
== CoreOptions.OutputPathsMode.STRIP;
129+
== CoreOptionsFields.OutputPathsMode.STRIP;
130130
}
131131

132132
@Override
@@ -146,8 +146,10 @@ public ImmutableMap<String, String> getExecutionInfo() {
146146
: ImmutableMap.of();
147147
}
148148

149-
private CoreOptions.OutputPathsMode getOutputPathsMode() {
150-
return usePathStripping ? CoreOptions.OutputPathsMode.STRIP : CoreOptions.OutputPathsMode.OFF;
149+
private CoreOptionsFields.OutputPathsMode getOutputPathsMode() {
150+
return usePathStripping
151+
? CoreOptionsFields.OutputPathsMode.STRIP
152+
: CoreOptionsFields.OutputPathsMode.OFF;
151153
}
152154

153155
@VisibleForTesting

0 commit comments

Comments
 (0)