aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Dmitry Lomov <dslomov@google.com>2016-06-30 19:53:51 +0000
committerGravatar Lukacs Berki <lberki@google.com>2016-07-01 07:11:55 +0000
commit7d9c6505789932e4501587241dc5e7cf0f47cb5b (patch)
treef6669e401ab4aacb2c3ce6ca0c1e20a94e97cc74 /src
parent6454347249c2c9a4b36c0fadaa99d8505d2c9376 (diff)
Ignore make variables undefined for requested platform.
-- MOS_MIGRATED_REVID=126333303
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/Package.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/packages/PackageFactory.java7
-rw-r--r--src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java9
-rw-r--r--src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java2
4 files changed, 17 insertions, 6 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 04a8ef44c3..537866e765 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
@@ -397,7 +397,10 @@ public class Package {
public Map<String, String> getAllMakeVariables(String platform) {
ImmutableMap.Builder<String, String> map = ImmutableMap.builder();
for (String var : makeEnv.getBindings().keySet()) {
- map.put(var, makeEnv.lookup(var, platform));
+ String value = makeEnv.lookup(var, platform);
+ if (value != null) {
+ map.put(var, value);
+ }
}
return map.build();
}
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 85a3adbccf..f242aebb1a 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
@@ -338,23 +338,24 @@ public final class PackageFactory {
@VisibleForTesting
public abstract static class FactoryForTesting {
public final PackageFactory create(RuleClassProvider ruleClassProvider, FileSystem fs) {
- return create(ruleClassProvider, ImmutableList.<EnvironmentExtension>of(), fs);
+ return create(ruleClassProvider, null, ImmutableList.<EnvironmentExtension>of(), fs);
}
public final PackageFactory create(
RuleClassProvider ruleClassProvider,
EnvironmentExtension environmentExtension,
FileSystem fs) {
- return create(ruleClassProvider, ImmutableList.of(environmentExtension), fs);
+ return create(ruleClassProvider, null, ImmutableList.of(environmentExtension), fs);
}
public final PackageFactory create(
RuleClassProvider ruleClassProvider,
+ Map<String, String> platformSetRegexps,
Iterable<EnvironmentExtension> environmentExtensions,
FileSystem fs) {
return create(
ruleClassProvider,
- null,
+ platformSetRegexps,
AttributeContainer.ATTRIBUTE_CONTAINER_FACTORY,
environmentExtensions,
"test",
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java
index ad3758b6f5..d552c20770 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/util/BuildViewTestCase.java
@@ -204,7 +204,10 @@ public abstract class BuildViewTestCase extends FoundationTestCase {
mutableActionGraph = new MapBasedActionGraph();
ruleClassProvider = getRuleClassProvider();
pkgFactory = TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider, getEnvironmentExtensions(), scratch.getFileSystem());
+ ruleClassProvider,
+ getPlatformSetRegexps(),
+ getEnvironmentExtensions(),
+ scratch.getFileSystem());
tsgm = new TimestampGranularityMonitor(BlazeClock.instance());
skyframeExecutor =
SequencedSkyframeExecutor.create(
@@ -230,6 +233,10 @@ public abstract class BuildViewTestCase extends FoundationTestCase {
ResourceManager.instance().setAvailableResources(getStartingResources());
}
+ protected Map<String, String> getPlatformSetRegexps() {
+ return null;
+ }
+
/** To be overriden by sub classes if they want to disable loading. */
protected boolean isLoadingEnabled() {
return true;
diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java b/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java
index ee821a7948..36f7b1f665 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/util/PackageLoadingTestCase.java
@@ -86,7 +86,7 @@ public abstract class PackageLoadingTestCase extends FoundationTestCase {
ruleClassProvider = TestRuleClassProvider.getRuleClassProvider();
}
packageFactory = TestConstants.PACKAGE_FACTORY_FACTORY_FOR_TESTING.create(
- ruleClassProvider, getEnvironmentExtensions(), scratch.getFileSystem());
+ ruleClassProvider, null, getEnvironmentExtensions(), scratch.getFileSystem());
skyframeExecutor = createSkyframeExecutor(getPreprocessorFactorySupplier());
setUpSkyframe(parsePackageCacheOptions());
}