diff options
author | 2016-04-04 09:35:16 +0000 | |
---|---|---|
committer | 2016-04-04 14:01:31 +0000 | |
commit | 61e3fc9ac7aa7a0a907af291e97ef12f43ca9a3e (patch) | |
tree | 2568b621f1338c67a1253b31c0ba8351d6b90e7e /src/main/java/com/google/devtools/build/lib/analysis | |
parent | 002615cd738a7d63daba06cd1fcaf1d97037f299 (diff) |
Dig out the builtin include file from the filegroup of libc_top instead of special-casing it in CppConfiguration.
This seems to be the most reasonable solution. I was toying with the idea of adding a field to CROSSTOOL but that would fail if you set libc_top to something other than what was specified in that file. If I had a infinite amount of time, I'd create a custom rule called cc_libc where libc_top would point so that this file can be referenced by an attribute, but since I don't, this seems to be workable compromise.
Also note that contrary to what you'd glean from the code, we don't actually have "compile" and "link" filegroups for libc.
--
MOS_MIGRATED_REVID=118921101
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/analysis')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/analysis/BuildView.java | 9 | ||||
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java | 10 |
2 files changed, 7 insertions, 12 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java index 12a2445580..7a4f72a4f7 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/BuildView.java @@ -32,7 +32,6 @@ import com.google.devtools.build.lib.actions.ActionGraph; import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.actions.ArtifactFactory; import com.google.devtools.build.lib.actions.ArtifactOwner; -import com.google.devtools.build.lib.actions.PackageRootResolver; import com.google.devtools.build.lib.actions.Root; import com.google.devtools.build.lib.analysis.ExtraActionArtifactsProvider.ExtraArtifactSet; import com.google.devtools.build.lib.analysis.config.BinTools; @@ -404,10 +403,10 @@ public class BuildView { }); } - private void prepareToBuild(BuildConfigurationCollection configurations, - PackageRootResolver resolver) throws ViewCreationFailedException { + private void prepareToBuild(BuildConfigurationCollection configurations) + throws ViewCreationFailedException { for (BuildConfiguration config : configurations.getAllConfigurations()) { - config.prepareToBuild(directories.getExecRoot(), getArtifactFactory(), resolver); + config.prepareToBuild(directories.getExecRoot()); } } @@ -485,7 +484,7 @@ public class BuildView { } } - prepareToBuild(configurations, new SkyframePackageRootResolver(skyframeExecutor, eventHandler)); + prepareToBuild(configurations); skyframeExecutor.injectWorkspaceStatusData(); SkyframeAnalysisResult skyframeAnalysisResult; try { diff --git a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java index 49740ecdc3..6032d1031a 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/config/BuildConfiguration.java @@ -29,8 +29,6 @@ import com.google.common.collect.ListMultimap; import com.google.common.collect.Maps; import com.google.common.collect.Multimap; import com.google.common.collect.MutableClassToInstanceMap; -import com.google.devtools.build.lib.actions.ArtifactFactory; -import com.google.devtools.build.lib.actions.PackageRootResolver; import com.google.devtools.build.lib.actions.Root; import com.google.devtools.build.lib.analysis.BlazeDirectories; import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider; @@ -179,8 +177,7 @@ public final class BuildConfiguration { * <p>Do not use this method to change your fragment's state. */ @SuppressWarnings("unused") - public void prepareHook(Path execPath, ArtifactFactory artifactFactory, - PackageRootResolver resolver) throws ViewCreationFailedException { + public void prepareHook(Path execPath) throws ViewCreationFailedException { } /** @@ -2341,10 +2338,9 @@ public final class BuildConfiguration { * <p>C++ also requires this to resolve artifacts that are unconditionally included in every * compilation.</p> */ - public void prepareToBuild(Path execRoot, ArtifactFactory artifactFactory, - PackageRootResolver resolver) throws ViewCreationFailedException { + public void prepareToBuild(Path execRoot) throws ViewCreationFailedException { for (Fragment fragment : fragments.values()) { - fragment.prepareHook(execRoot, artifactFactory, resolver); + fragment.prepareHook(execRoot); } } |