diff options
author | 2016-08-11 14:44:40 +0000 | |
---|---|---|
committer | 2016-08-12 08:50:54 +0000 | |
commit | f8a1ae63ed616c4579db724a4d97effb8c216ceb (patch) | |
tree | 0843a158162c246f49d10058e57427f13754c6de /src/main/java/com/google/devtools/build/lib/analysis/PseudoAction.java | |
parent | 153e5586a0a09237119f613ce591f892adc7efe4 (diff) |
Add the repository name as a parameter to the output path functions
This doesn't do anything yet, it's in preparation for the execroot rearranging
change. The execroot will have one bazel-out per repo, so it'll look like:
execroot/
repo1/
bazel-out/
local-fastbuild/
bin/
repo2/
bazel-out/
local-fastbuild/
bin/
genfiles/
repo3/
bazel-out/
local-fastbuild/
testlogs/
and so on. Thus, any output path (getBinDirectory() & friends) needs to know
what the repo name is. This changes so many places in the code I thought it
would be good to do separately, then just flip the functionality in the
execroot-rearranging commit.
While I was poking around, I changed all of the refs I could from getPackageRelativeArtifact() to getBin/GenfilesArtifact(), so that 1) rule implementation don't have to know as much about roots and 2) they'll be more isolated from other output dir changes.
`bazel info` and similar just return roots for the main repository.
The only "change" is passing around a target label in the Java rules.
Continues work on #1262.
--
MOS_MIGRATED_REVID=129985336
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis/PseudoAction.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/analysis/PseudoAction.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/PseudoAction.java b/src/main/java/com/google/devtools/build/lib/analysis/PseudoAction.java index e0eb712597..eb2115a1ec 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/PseudoAction.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/PseudoAction.java @@ -84,6 +84,7 @@ public class PseudoAction<InfoType extends MessageLite> extends AbstractAction { public static Artifact getDummyOutput(RuleContext ruleContext) { return ruleContext.getPackageRelativeArtifact( ruleContext.getLabel().getName() + ".extra_action_dummy", - ruleContext.getConfiguration().getGenfilesDirectory()); + ruleContext.getConfiguration().getGenfilesDirectory( + ruleContext.getRule().getRepository())); } } |