diff options
author | laszlocsomor <laszlocsomor@google.com> | 2017-07-14 15:35:05 +0200 |
---|---|---|
committer | László Csomor <laszlocsomor@google.com> | 2017-07-14 16:34:58 +0200 |
commit | f3d99b9e10dc1cc48bbb7f622846e7ecaf562cc0 (patch) | |
tree | da0cb3f5522583dbd8a3a7ddbdd6fdf8abd1fa03 /src/main/java | |
parent | bcbd2da340ed24a026729104dc0ba2a71cf70463 (diff) |
Automated rollback of commit 8002b6205e004721f771df20d1d8c1402c03964e.
*** Reason for rollback ***
Broke various Bazel CI jobs
Fixes https://github.com/bazelbuild/bazel/issues/3388
Fixes https://github.com/bazelbuild/bazel/issues/3386
Fixes https://github.com/bazelbuild/bazel/issues/3385
Fixes https://github.com/bazelbuild/bazel/issues/3384
*** Original change description ***
Fix rules that provide both 'executable' and 'files'
PiperOrigin-RevId: 161949099
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleConfiguredTargetUtil.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleConfiguredTargetUtil.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleConfiguredTargetUtil.java index 4ee5af3c51..3113a4cbfc 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleConfiguredTargetUtil.java +++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleConfiguredTargetUtil.java @@ -421,15 +421,18 @@ public final class SkylarkRuleConfiguredTargetUtil { Runfiles defaultRunfiles) throws EvalException { - NestedSetBuilder<Artifact> filesToBuild = NestedSetBuilder.<Artifact>stableOrder() - .addAll(ruleContext.getOutputArtifacts()); + // TODO(bazel-team) if both 'files' and 'executable' are provided 'files' override 'executalbe' + NestedSetBuilder<Artifact> filesToBuild = + NestedSetBuilder.<Artifact>stableOrder().addAll(ruleContext.getOutputArtifacts()); if (executable != null) { filesToBuild.add(executable); } + builder.setFilesToBuild(filesToBuild.build()); + if (files != null) { - filesToBuild.addTransitive(files.getSet(Artifact.class)); + // If we specify files_to_build we don't have the executable in it by default. + builder.setFilesToBuild(files.getSet(Artifact.class)); } - builder.setFilesToBuild(filesToBuild.build()); if ((statelessRunfiles != null) && (dataRunfiles != null || defaultRunfiles != null)) { throw new EvalException(loc, "Cannot specify the provider 'runfiles' " |