aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules
diff options
context:
space:
mode:
authorGravatar tomlu <tomlu@google.com>2018-01-16 11:07:51 -0800
committerGravatar Copybara-Service <copybara-piper@google.com>2018-01-16 11:09:25 -0800
commit1cdcdf9a72458850f8a0f40c7cab1699685ed6cc (patch)
tree888c68cd1fc59cc4608ac178ae633c1f40e22230 /src/main/java/com/google/devtools/build/lib/rules
parent644ada0444a9db285eb4e6c2511fc9581cc69880 (diff)
Rename Root to ArtifactRoot.
This is slightly more descriptive, and we will potentially want to use the name Root for a broader concept shared between ArtifactRoot and RootedPath. PiperOrigin-RevId: 182082367
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CcIncLibrary.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppBuildInfo.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupport.java29
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/SolibSymlinkAction.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaBuildInfoFactory.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java18
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/objc/IntermediateArtifacts.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCommon.java6
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java6
10 files changed, 44 insertions, 40 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcIncLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcIncLibrary.java
index c1a40fc579..a459e42ac1 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcIncLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcIncLibrary.java
@@ -17,7 +17,7 @@ package com.google.devtools.build.lib.rules.cpp;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSortedMap;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetBuilder;
import com.google.devtools.build.lib.analysis.RuleConfiguredTargetFactory;
@@ -85,7 +85,7 @@ public abstract class CcIncLibrary implements RuleConfiguredTargetFactory {
// is actually a symlink into the source tree.
PathFragment includeDirectory = PathFragment.create("_")
.getRelative(ruleContext.getTarget().getName());
- Root configIncludeDirectory =
+ ArtifactRoot configIncludeDirectory =
ruleContext.getConfiguration().getIncludeDirectory(ruleContext.getRule().getRepository());
PathFragment includePath =
configIncludeDirectory
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppBuildInfo.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppBuildInfo.java
index 8e49f99c75..1c68580476 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppBuildInfo.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppBuildInfo.java
@@ -16,13 +16,12 @@ package com.google.devtools.build.lib.rules.cpp;
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.actions.Action;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoCollection;
import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.cmdline.RepositoryName;
import com.google.devtools.build.lib.vfs.PathFragment;
-
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -69,7 +68,7 @@ public final class CppBuildInfo implements BuildInfoFactory {
BuildConfiguration config, PathFragment headerName,
Collection<Artifact> inputs,
boolean writeVolatileInfo, boolean writeNonVolatileInfo, RepositoryName repositoryName) {
- Root outputPath = config.getIncludeDirectory(repositoryName);
+ ArtifactRoot outputPath = config.getIncludeDirectory(repositoryName);
final Artifact header =
buildInfoContext.getBuildInfoArtifact(headerName, outputPath,
writeVolatileInfo && !inputs.isEmpty()
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupport.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupport.java
index 738cc982f6..8edc2d9cc5 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/FdoSupport.java
@@ -26,7 +26,7 @@ import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Iterables;
import com.google.common.io.ByteSource;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.AnalysisEnvironment;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.cmdline.Label;
@@ -172,14 +172,13 @@ public class FdoSupport {
private final Path fdoProfile;
/**
- * Temporary directory to which the coverage ZIP file is extracted to
- * (relative to the exec root), or {@code null} if FDO optimization is
- * disabled. This is used to create artifacts for the extracted files.
+ * Temporary directory to which the coverage ZIP file is extracted to (relative to the exec root),
+ * or {@code null} if FDO optimization is disabled. This is used to create artifacts for the
+ * extracted files.
*
- * <p>Note that this root is intentionally not registered with the artifact
- * factory.
+ * <p>Note that this root is intentionally not registered with the artifact factory.
*/
- private final Root fdoRoot;
+ private final ArtifactRoot fdoRoot;
/**
* The relative path of the FDO root to the exec root.
@@ -227,8 +226,14 @@ public class FdoSupport {
* @param fdoProfile path to the profile file passed to --fdo_optimize option
* @param lipoMode value of the --lipo_mode option
*/
- private FdoSupport(FdoMode fdoMode, LipoMode lipoMode, Root fdoRoot, PathFragment fdoRootExecPath,
- PathFragment fdoInstrument, Path fdoProfile, FdoZipContents fdoZipContents) {
+ private FdoSupport(
+ FdoMode fdoMode,
+ LipoMode lipoMode,
+ ArtifactRoot fdoRoot,
+ PathFragment fdoRootExecPath,
+ PathFragment fdoInstrument,
+ Path fdoProfile,
+ FdoZipContents fdoZipContents) {
this.fdoInstrument = fdoInstrument;
this.fdoProfile = fdoProfile;
this.fdoRoot = fdoRoot;
@@ -248,7 +253,7 @@ public class FdoSupport {
}
}
- public Root getFdoRoot() {
+ public ArtifactRoot getFdoRoot() {
return fdoRoot;
}
@@ -281,10 +286,10 @@ public class FdoSupport {
lipoMode = LipoMode.OFF;
}
- Root fdoRoot =
+ ArtifactRoot fdoRoot =
(fdoProfile == null)
? null
- : Root.asDerivedRoot(execRoot, execRoot.getRelative(productName + "-fdo"));
+ : ArtifactRoot.asDerivedRoot(execRoot, execRoot.getRelative(productName + "-fdo"));
PathFragment fdoRootExecPath = fdoProfile == null
? null
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/SolibSymlinkAction.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/SolibSymlinkAction.java
index 7f14ee22b0..7d60680cec 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/SolibSymlinkAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/SolibSymlinkAction.java
@@ -25,7 +25,7 @@ import com.google.devtools.build.lib.actions.ActionOwner;
import com.google.devtools.build.lib.actions.ActionResult;
import com.google.devtools.build.lib.actions.Actions;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.concurrent.ThreadSafety.Immutable;
@@ -149,7 +149,7 @@ public final class SolibSymlinkAction extends AbstractAction {
Preconditions.checkArgument(!library.getRootRelativePath().getSegment(0).startsWith("_solib_"));
// Ignore libraries that are already represented by the symlinks.
- Root root = configuration.getBinDirectory(ruleContext.getRule().getRepository());
+ ArtifactRoot root = configuration.getBinDirectory(ruleContext.getRule().getRepository());
Artifact symlink = ruleContext.getShareableArtifact(symlinkName, root);
ruleContext.registerAction(
new SolibSymlinkAction(ruleContext.getActionOwner(), library, symlink));
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaBuildInfoFactory.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaBuildInfoFactory.java
index be7abfbb36..c37214686d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaBuildInfoFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaBuildInfoFactory.java
@@ -17,7 +17,7 @@ package com.google.devtools.build.lib.rules.java;
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.actions.Action;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoCollection;
import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -126,7 +126,7 @@ public abstract class JavaBuildInfoFactory implements BuildInfoFactory {
boolean includeVolatile,
boolean includeNonVolatile,
RepositoryName repositoryName) {
- Root outputPath = config.getIncludeDirectory(repositoryName);
+ ArtifactRoot outputPath = config.getIncludeDirectory(repositoryName);
final Artifact output = context.getBuildInfoArtifact(propertyFileName, outputPath,
includeVolatile && !inputs.isEmpty() ? BuildInfoType.NO_REBUILD
: BuildInfoType.FORCE_REBUILD_IF_CHANGED);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
index 62bce3865f..7bc087bde6 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
@@ -32,10 +32,10 @@ import com.google.devtools.build.lib.actions.ActionKeyContext;
import com.google.devtools.build.lib.actions.ActionOwner;
import com.google.devtools.build.lib.actions.Artifact;
import com.google.devtools.build.lib.actions.ArtifactOwner;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.actions.CommandLineExpansionException;
import com.google.devtools.build.lib.actions.ParameterFile;
import com.google.devtools.build.lib.actions.ResourceSet;
-import com.google.devtools.build.lib.actions.Root;
import com.google.devtools.build.lib.actions.RunfilesSupplier;
import com.google.devtools.build.lib.actions.extra.ExtraActionInfo;
import com.google.devtools.build.lib.actions.extra.JavaCompileInfo;
@@ -474,17 +474,15 @@ public final class JavaCompileAction extends SpawnAction {
*/
public interface ArtifactFactory {
- /**
- * Create an artifact with the specified root-relative path under the specified root.
- */
- Artifact create(PathFragment rootRelativePath, Root root);
+ /** Create an artifact with the specified root-relative path under the specified root. */
+ Artifact create(PathFragment rootRelativePath, ArtifactRoot root);
}
@VisibleForTesting
static ArtifactFactory createArtifactFactory(final AnalysisEnvironment env) {
return new ArtifactFactory() {
@Override
- public Artifact create(PathFragment rootRelativePath, Root root) {
+ public Artifact create(PathFragment rootRelativePath, ArtifactRoot root) {
return env.getDerivedArtifact(rootRelativePath, root);
}
};
@@ -557,15 +555,17 @@ public final class JavaCompileAction extends SpawnAction {
* Creates a Builder from an owner and a build configuration.
*/
public Builder(final RuleContext ruleContext, JavaSemantics semantics) {
- this(ruleContext.getActionOwner(),
+ this(
+ ruleContext.getActionOwner(),
ruleContext.getAnalysisEnvironment(),
new ArtifactFactory() {
@Override
- public Artifact create(PathFragment rootRelativePath, Root root) {
+ public Artifact create(PathFragment rootRelativePath, ArtifactRoot root) {
return ruleContext.getDerivedArtifact(rootRelativePath, root);
}
},
- ruleContext.getConfiguration(), semantics);
+ ruleContext.getConfiguration(),
+ semantics);
}
public JavaCompileAction build() {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java b/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java
index 55a8efe822..7f6437ed24 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/nativedeps/NativeDepsHelper.java
@@ -19,7 +19,7 @@ import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.actions.SymlinkAction;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
@@ -175,7 +175,7 @@ public abstract class NativeDepsHelper {
CcToolchainProvider toolchain,
Artifact nativeDeps,
String libraryIdentifier,
- Root bindirIfShared,
+ ArtifactRoot bindirIfShared,
boolean useDynamicRuntime,
CppSemantics cppSemantics)
throws InterruptedException {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/IntermediateArtifacts.java b/src/main/java/com/google/devtools/build/lib/rules/objc/IntermediateArtifacts.java
index 459de19d70..4619758e83 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/IntermediateArtifacts.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/IntermediateArtifacts.java
@@ -17,7 +17,7 @@ package com.google.devtools.build.lib.rules.objc;
import com.google.common.base.Optional;
import com.google.common.base.Preconditions;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.cmdline.Label;
@@ -244,7 +244,7 @@ public final class IntermediateArtifacts {
}
private Artifact scopedArtifact(PathFragment scopeRelative, boolean inGenfiles) {
- Root root =
+ ArtifactRoot root =
inGenfiles
? buildConfiguration.getGenfilesDirectory(ruleContext.getRule().getRepository())
: buildConfiguration.getBinDirectory(ruleContext.getRule().getRepository());
diff --git a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCommon.java b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCommon.java
index 3d2d55567e..a09a9afa62 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/proto/ProtoCommon.java
@@ -20,7 +20,7 @@ import static com.google.devtools.build.lib.collect.nestedset.Order.STABLE_ORDER
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.ImmutableList;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.Runfiles;
import com.google.devtools.build.lib.analysis.TransitiveInfoCollection;
@@ -142,8 +142,8 @@ public class ProtoCommon {
public static ImmutableList<Artifact> getGeneratedOutputs(RuleContext ruleContext,
ImmutableList<Artifact> protoSources, String extension, boolean pythonNames) {
ImmutableList.Builder<Artifact> outputsBuilder = new ImmutableList.Builder<>();
- Root genfiles = ruleContext.getConfiguration().getGenfilesDirectory(
- ruleContext.getRule().getRepository());
+ ArtifactRoot genfiles =
+ ruleContext.getConfiguration().getGenfilesDirectory(ruleContext.getRule().getRepository());
for (Artifact src : protoSources) {
PathFragment srcPath = src.getRootRelativePath();
if (pythonNames) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java b/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java
index c44e46e3eb..d76b55b510 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java
@@ -15,7 +15,7 @@ package com.google.devtools.build.lib.rules.python;
import com.google.common.collect.ImmutableSet;
import com.google.devtools.build.lib.actions.Artifact;
-import com.google.devtools.build.lib.actions.Root;
+import com.google.devtools.build.lib.actions.ArtifactRoot;
import com.google.devtools.build.lib.analysis.FilesToRunProvider;
import com.google.devtools.build.lib.analysis.RuleContext;
import com.google.devtools.build.lib.analysis.Runfiles;
@@ -82,8 +82,8 @@ public final class PythonUtils {
* subdirectory to avoid conflicts (eg. when the input file is generated).
*/
private static Artifact get2to3OutputArtifact(RuleContext ruleContext, Artifact input) {
- Root root = ruleContext.getConfiguration().getGenfilesDirectory(
- ruleContext.getRule().getRepository());
+ ArtifactRoot root =
+ ruleContext.getConfiguration().getGenfilesDirectory(ruleContext.getRule().getRepository());
PathFragment path = PathFragment.create("python3").getRelative(input.getRootRelativePath());
return ruleContext.getShareableArtifact(path, root);
}