aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build
diff options
context:
space:
mode:
authorGravatar Googler <noreply@google.com>2015-03-25 09:47:41 +0000
committerGravatar Lukacs Berki <lberki@google.com>2015-03-25 10:32:29 +0000
commit9429644499382bf64be71829a42779f478684f9a (patch)
tree25b674766b0760cdc6f5271ad643021fca0eefb5 /src/main/java/com/google/devtools/build
parentfdd788e15f71bdc9601d4e73a23b75710dcbaec9 (diff)
Skylark: native module is updated.
-- MOS_MIGRATED_REVID=89483786
Diffstat (limited to 'src/main/java/com/google/devtools/build')
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/Package.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java18
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java4
-rw-r--r--src/main/java/com/google/devtools/build/lib/runtime/BlazeModule.java5
4 files changed, 19 insertions, 12 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/packages/Package.java b/src/main/java/com/google/devtools/build/lib/packages/Package.java
index fc2b379263..b7ef184f74 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/Package.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/Package.java
@@ -909,6 +909,10 @@ public class Package implements Serializable {
return self();
}
+ MakeEnvironment.Builder getMakeEnvironment() {
+ return makeEnv;
+ }
+
/**
* Sets the default visibility for this package. Called at most once per
* package from PackageFactory.
diff --git a/src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java b/src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java
index df3c002008..353b23e810 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java
@@ -139,8 +139,7 @@ public final class PackageFactory {
/**
* Update the global environment with the identifiers this extension contributes.
*/
- void update(Environment environment, MakeEnvironment.Builder pkgMakeEnv,
- Label buildFileLabel);
+ void update(Environment environment, Label buildFileLabel);
/**
* Returns the extra functions needed to be added to the Skylark native module.
@@ -1091,6 +1090,13 @@ public final class PackageFactory {
public Label getLabel() {
return pkgBuilder.getBuildFileLabel();
}
+
+ /**
+ * Returns the MakeEnvironment Builder of this Package.
+ */
+ public MakeEnvironment.Builder getMakeEnvironment() {
+ return pkgBuilder.getMakeEnvironment();
+ }
}
/**
@@ -1110,7 +1116,7 @@ public final class PackageFactory {
}
private void buildPkgEnv(Environment pkgEnv, String packageName,
- MakeEnvironment.Builder pkgMakeEnv, PackageContext context, RuleFactory ruleFactory) {
+ PackageContext context, RuleFactory ruleFactory) {
pkgEnv.update("distribs", newDistribsFunction(context));
pkgEnv.update("glob", newGlobFunction(context, /*async=*/false));
pkgEnv.update("mocksubinclude", newMockSubincludeFunction(context));
@@ -1129,7 +1135,7 @@ public final class PackageFactory {
}
for (EnvironmentExtension extension : environmentExtensions) {
- extension.update(pkgEnv, pkgMakeEnv, context.pkgBuilder.getBuildFileLabel());
+ extension.update(pkgEnv, context.pkgBuilder.getBuildFileLabel());
}
}
@@ -1178,7 +1184,7 @@ public final class PackageFactory {
// Stuff that closes over the package context:`
PackageContext context = new PackageContext(pkgBuilder, globber, eventHandler);
- buildPkgEnv(pkgEnv, packageId.toString(), pkgMakeEnv, context, ruleFactory);
+ buildPkgEnv(pkgEnv, packageId.toString(), context, ruleFactory);
if (containsError) {
pkgBuilder.setContainsErrors();
@@ -1242,7 +1248,7 @@ public final class PackageFactory {
// Stuff that closes over the package context:
PackageContext context = new PackageContext(pkgBuilder, globber, NullEventHandler.INSTANCE);
- buildPkgEnv(pkgEnv, packageId.toString(), pkgMakeEnv, context, ruleFactory);
+ buildPkgEnv(pkgEnv, packageId.toString(), context, ruleFactory);
pkgEnv.update("glob", newGlobFunction(context, /*async=*/true));
// The Fileset function is heavyweight in that it can run glob(). Avoid this during the
// preloading phase.
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java
index 826d9f5cfa..b4af0191db 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleContext.java
@@ -115,7 +115,7 @@ public final class SkylarkRuleContext {
private final ImmutableMap<Artifact, FilesToRunProvider> executableRunfilesMap;
- private final Map<String, String> makeVariables;
+ private final ImmutableMap<String, String> makeVariables;
/**
* In native code, private values start with $.
@@ -393,7 +393,7 @@ public final class SkylarkRuleContext {
@SkylarkCallable(structField = true,
doc = "Dictionary (String to String) of configuration variables")
- public Map<String, String> var() {
+ public ImmutableMap<String, String> var() {
return makeVariables;
}
diff --git a/src/main/java/com/google/devtools/build/lib/runtime/BlazeModule.java b/src/main/java/com/google/devtools/build/lib/runtime/BlazeModule.java
index dbd84e7349..005b528833 100644
--- a/src/main/java/com/google/devtools/build/lib/runtime/BlazeModule.java
+++ b/src/main/java/com/google/devtools/build/lib/runtime/BlazeModule.java
@@ -27,7 +27,6 @@ import com.google.devtools.build.lib.analysis.ConfiguredRuleClassProvider;
import com.google.devtools.build.lib.analysis.WorkspaceStatusAction;
import com.google.devtools.build.lib.analysis.config.BuildConfiguration;
import com.google.devtools.build.lib.exec.OutputService;
-import com.google.devtools.build.lib.packages.MakeEnvironment;
import com.google.devtools.build.lib.packages.NoSuchThingException;
import com.google.devtools.build.lib.packages.PackageFactory;
import com.google.devtools.build.lib.packages.PackageFactory.PackageArgument;
@@ -352,9 +351,7 @@ public abstract class BlazeModule {
public PackageFactory.EnvironmentExtension getPackageEnvironmentExtension() {
return new PackageFactory.EnvironmentExtension() {
@Override
- public void update(
- Environment environment, MakeEnvironment.Builder pkgMakeEnv, Label buildFileLabel) {
- }
+ public void update(Environment environment, Label buildFileLabel) {}
@Override
public Iterable<PackageArgument<?>> getPackageArguments() {