aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionSpec.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionSpec.java b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionSpec.java
index 323cbe8741..2df7a8ffd5 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionSpec.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/extra/ExtraActionSpec.java
@@ -125,8 +125,12 @@ public final class ExtraActionSpec implements TransitiveInfoProvider {
ImmutableList.<FilesToRunProvider>of(),
ImmutableMap.<Label, Iterable<Artifact>>of());
+ // Multiple actions in the same configured target need to have different names for the artifact
+ // that might be created here, so we append something that should be unique for each action.
+ String actionUniquifier = actionToShadow.getPrimaryOutput().getExecPath().getBaseName() + "."
+ + actionToShadow.getKey();
List<String> argv = commandHelper.buildCommandLine(command, extraActionInputs,
- ".extra_action_script.sh", executionInfo);
+ "." + actionUniquifier + ".extra_action_script.sh", executionInfo);
String commandMessage = String.format("Executing extra_action %s on %s", label, ownerLabel);
owningRule.registerAction(new ExtraAction(