aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tools/generate_workspace
diff options
context:
space:
mode:
authorGravatar Han-Wen Nienhuys <hanwen@google.com>2015-09-18 17:37:51 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2015-09-21 08:59:16 +0000
commitf172d396bbab9dec8f6beda0b0969f33a25709cd (patch)
tree76da22fa1681be1bda2de36812aeec76876c6ea6 /src/tools/generate_workspace
parentf081184097239243b436f96774b63b010d5e021f (diff)
Do not store a separate map for external package data. This ensures that serialization works correctly.
Removes ExternalPackage as Package specialization. -- MOS_MIGRATED_REVID=103395682
Diffstat (limited to 'src/tools/generate_workspace')
-rw-r--r--src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/GenerateWorkspace.java5
-rw-r--r--src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/Resolver.java12
2 files changed, 8 insertions, 9 deletions
diff --git a/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/GenerateWorkspace.java b/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/GenerateWorkspace.java
index 93313da713..ec3e9037bf 100644
--- a/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/GenerateWorkspace.java
+++ b/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/GenerateWorkspace.java
@@ -17,7 +17,7 @@ package com.google.devtools.build.workspace;
import com.google.common.io.Files;
import com.google.devtools.build.lib.events.Event;
import com.google.devtools.build.lib.events.StoredEventHandler;
-import com.google.devtools.build.lib.packages.ExternalPackage;
+import com.google.devtools.build.lib.packages.Package;
import com.google.devtools.build.lib.util.OS;
import com.google.devtools.build.lib.vfs.FileSystem;
import com.google.devtools.build.lib.vfs.JavaIoFileSystem;
@@ -95,8 +95,7 @@ public class GenerateWorkspace {
for (String project : projects) {
Resolver workspaceResolver = new Resolver(resolver, handler);
Path projectPath = fileSystem.getPath(getAbsolute(project));
- ExternalPackage externalPackage =
- workspaceResolver.parse(projectPath.getRelative("WORKSPACE"));
+ Package externalPackage = workspaceResolver.parse(projectPath.getRelative("WORKSPACE"));
workspaceResolver.resolveTransitiveDependencies(externalPackage);
}
}
diff --git a/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/Resolver.java b/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/Resolver.java
index 957f43ad05..b775de75f2 100644
--- a/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/Resolver.java
+++ b/src/tools/generate_workspace/src/main/java/com/google/devtools/build/workspace/Resolver.java
@@ -23,7 +23,7 @@ import com.google.devtools.build.lib.events.EventHandler;
import com.google.devtools.build.lib.events.Location;
import com.google.devtools.build.lib.packages.AggregatingAttributeMapper;
import com.google.devtools.build.lib.packages.AttributeMap;
-import com.google.devtools.build.lib.packages.ExternalPackage;
+import com.google.devtools.build.lib.packages.Package;
import com.google.devtools.build.lib.packages.RuleClassProvider;
import com.google.devtools.build.lib.packages.Target;
import com.google.devtools.build.lib.packages.WorkspaceFactory;
@@ -66,10 +66,10 @@ public class Resolver {
/**
* Converts the WORKSPACE file content into an ExternalPackage.
*/
- public ExternalPackage parse(Path workspacePath) {
+ public Package parse(Path workspacePath) {
resolver.addHeader(workspacePath.getPathString());
- ExternalPackage.Builder builder = new ExternalPackage.Builder(workspacePath,
- ruleClassProvider.getRunfilesPrefix());
+ Package.Builder builder =
+ Package.newExternalPackageBuilder(workspacePath, ruleClassProvider.getRunfilesPrefix());
try (Mutability mutability = Mutability.create("External Package %s", workspacePath)) {
new WorkspaceFactory(builder, ruleClassProvider, mutability)
.parse(ParserInputSource.create(workspacePath));
@@ -83,7 +83,7 @@ public class Resolver {
/**
* Calculates transitive dependencies of the given //external package.
*/
- public void resolveTransitiveDependencies(ExternalPackage externalPackage) {
+ public void resolveTransitiveDependencies(Package externalPackage) {
Location location = Location.fromFile(externalPackage.getFilename());
for (Target target : externalPackage.getTargets()) {
// Targets are //external:foo.
@@ -100,7 +100,7 @@ public class Resolver {
return;
}
com.google.devtools.build.lib.packages.Rule workspaceRule =
- externalPackage.getRepositoryInfo(repositoryName);
+ externalPackage.getRule(repositoryName.strippedName());
DefaultModelResolver modelResolver = resolver.getModelResolver();
AttributeMap attributeMap = AggregatingAttributeMapper.of(workspaceRule);