diff options
author | 2015-11-04 17:52:32 +0000 | |
---|---|---|
committer | 2015-11-05 16:49:28 +0000 | |
commit | af33c67de5015fdfbb92d3ca6d5c99508540cb01 (patch) | |
tree | ad7bba7397ff5030b8e8ef365b55a7c77ba7f283 /src/main/java/com/google/devtools/build/lib/rules | |
parent | 53fb4d0ef10dea9d58f4b17f08c59c8e81ebc09a (diff) |
workers: Restart worker processes when their binary has changed since they were launched.
--
MOS_MIGRATED_REVID=107050157
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java | 2 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java | 68 |
2 files changed, 39 insertions, 31 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java index 13cb5b5c56..6bf19d3672 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java +++ b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraAction.java @@ -17,6 +17,7 @@ package com.google.devtools.build.lib.rules.extra; import com.google.common.base.Preconditions; import com.google.common.base.Predicates; import com.google.common.collect.Collections2; +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.AbstractAction; @@ -74,6 +75,7 @@ public final class ExtraAction extends SpawnAction { String mnemonic) { super( shadowedAction.getOwner(), + ImmutableList.<Artifact>of(), createInputs(shadowedAction.getInputs(), extraActionInputs), outputs, AbstractAction.DEFAULT_RESOURCE_SET, 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 72ab4fb934..23bbcc9514 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 @@ -167,30 +167,32 @@ public class JavaCompileAction extends AbstractAction { * parts (for example, ide_build_info) need access to the data * @param commandLine the actual invocation command line */ - private JavaCompileAction(ActionOwner owner, - Iterable<Artifact> baseInputs, - Collection<Artifact> outputs, - CommandLine javaCompileCommandLine, - CommandLine commandLine, - PathFragment classDirectory, - Artifact outputJar, - NestedSet<Artifact> classpathEntries, - Collection<Artifact> extdirInputs, - List<Artifact> processorPath, - Artifact langtoolsJar, - Artifact javaBuilderJar, - Iterable<Artifact> instrumentationJars, - List<String> processorNames, - Collection<Artifact> messages, - Map<PathFragment, Artifact> resources, - Collection<Artifact> classpathResources, - Collection<Artifact> sourceJars, - Collection<Artifact> sourceFiles, - List<String> javacOpts, - Collection<Artifact> directJars, - BuildConfiguration.StrictDepsMode strictJavaDeps, - Collection<Artifact> compileTimeDependencyArtifacts) { - super(owner, NestedSetBuilder.<Artifact>stableOrder() + private JavaCompileAction( + ActionOwner owner, + NestedSet<Artifact> tools, + Iterable<Artifact> baseInputs, + Collection<Artifact> outputs, + CommandLine javaCompileCommandLine, + CommandLine commandLine, + PathFragment classDirectory, + Artifact outputJar, + NestedSet<Artifact> classpathEntries, + Collection<Artifact> extdirInputs, + List<Artifact> processorPath, + List<String> processorNames, + Collection<Artifact> messages, + Map<PathFragment, Artifact> resources, + Collection<Artifact> classpathResources, + Collection<Artifact> sourceJars, + Collection<Artifact> sourceFiles, + List<String> javacOpts, + Collection<Artifact> directJars, + BuildConfiguration.StrictDepsMode strictJavaDeps, + Collection<Artifact> compileTimeDependencyArtifacts) { + super( + owner, + tools, + NestedSetBuilder.<Artifact>stableOrder() .addTransitive(classpathEntries) .addAll(processorPath) .addAll(messages) @@ -200,9 +202,7 @@ public class JavaCompileAction extends AbstractAction { .addAll(sourceFiles) .addAll(compileTimeDependencyArtifacts) .addAll(baseInputs) - .add(langtoolsJar) - .add(javaBuilderJar) - .addAll(instrumentationJars) + .addTransitive(tools) .build(), outputs); this.javaCompileCommandLine = javaCompileCommandLine; @@ -888,7 +888,16 @@ public class JavaCompileAction extends AbstractAction { semantics.getJavaBuilderMainClass(), configuration.getHostPathSeparator()); - return new JavaCompileAction(owner, + NestedSet<Artifact> tools = + NestedSetBuilder.<Artifact>stableOrder() + .add(langtoolsJar) + .add(javaBuilderJar) + .addAll(instrumentationJars) + .build(); + + return new JavaCompileAction( + owner, + tools, baseInputs, outputs, paramFileContents, @@ -898,9 +907,6 @@ public class JavaCompileAction extends AbstractAction { classpathEntries, extdirInputs, processorPath, - langtoolsJar, - javaBuilderJar, - instrumentationJars, processorNames, translations, resources, |