aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java1
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java21
2 files changed, 21 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java
index 029a178611..f17766cb18 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCommon.java
@@ -433,6 +433,7 @@ public final class CcCommon {
}
}
prerequisites.addTransitive(context.getDeclaredIncludeSrcs());
+ prerequisites.addTransitive(context.getAdditionalInputs());
return prerequisites.build();
}
diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java
index 5d8c0fce4c..8f5f91eb33 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/CcLibraryConfiguredTargetTest.java
@@ -263,6 +263,25 @@ public class CcLibraryConfiguredTargetTest extends BuildViewTestCase {
}
@Test
+ public void testBuildHeaderModulesAsPrerequisites() throws Exception {
+ AnalysisMock.get()
+ .ccSupport()
+ .setupCrosstool(mockToolsConfig, MockCcSupport.HEADER_MODULES_FEATURE_CONFIGURATION);
+ useConfiguration();
+ ConfiguredTarget x =
+ scratchConfiguredTarget(
+ "foo",
+ "x",
+ "package(features = ['header_modules'])",
+ "cc_library(name = 'x', srcs = ['x.cc'], deps = [':y'])",
+ "cc_library(name = 'y', hdrs = ['y.h'])");
+ assertThat(
+ ActionsTestUtil.baseNamesOf(
+ getOutputGroup(x, OutputGroupProvider.COMPILATION_PREREQUISITES)))
+ .isEqualTo("y.h y.pic.pcm y.cppmap stl.cppmap crosstool.cppmap x.cppmap x.cc");
+ }
+
+ @Test
public void testDisablingHeaderModulesWhenDependingOnModuleBuildTransitively() throws Exception {
AnalysisMock.get()
.ccSupport()
@@ -666,7 +685,7 @@ public class CcLibraryConfiguredTargetTest extends BuildViewTestCase {
assertThat(artifactsToStrings(getFilesToBuild(hello)))
.doesNotContain("src precompiled/missing.a");
}
-
+
@Test
public void testAllowDuplicateNonCompiledSources() throws Exception {
ConfiguredTarget x =