diff options
author | 2016-08-09 10:11:15 +0000 | |
---|---|---|
committer | 2016-08-09 13:45:25 +0000 | |
commit | 832c40d56109e8e9ba34ffcbe3f0a8859d94b573 (patch) | |
tree | 3c7f374ba3cd7573ff70d21a76d3725d2a194d8e /src/test/java/com/google | |
parent | ea9de07ece727b397e427d11db9611db44753c75 (diff) |
Refactor C++ rules so that CcLinkingOutputs.libraryIdentifierOf() gets called at places where a CcToolchainProvider is near so that we can use information in it to infer how each input file is linked.
--
MOS_MIGRATED_REVID=129729628
Diffstat (limited to 'src/test/java/com/google')
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java | 2 | ||||
-rw-r--r-- | src/test/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionTest.java | 16 |
2 files changed, 14 insertions, 4 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java b/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java index adafd7773f..69856e2848 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java +++ b/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java @@ -213,7 +213,7 @@ public abstract class MockCcSupport { "" + "artifact_name_pattern {" + " category_name: 'static_library'" - + " pattern: '%{base_name}.lib'" + + " pattern: 'lib%{base_name}.lib'" + "}"; public static final String STATIC_LINK_AS_DOT_A_CONFIGURATION = diff --git a/src/test/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionTest.java b/src/test/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionTest.java index 7531632e8a..863e7c1bf1 100644 --- a/src/test/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionTest.java +++ b/src/test/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionTest.java @@ -164,8 +164,12 @@ public class CppLinkActionTest extends BuildViewTestCase { }; builder.addCompilationInputs( (i & 1) == 0 ? ImmutableList.of(oFile) : ImmutableList.of(oFile2)); - builder.setLinkType( - (i & 2) == 0 ? LinkTargetType.DYNAMIC_LIBRARY : LinkTargetType.EXECUTABLE); + if ((i & 2) == 0) { + builder.setLinkType(LinkTargetType.DYNAMIC_LIBRARY); + builder.setLibraryIdentifier("foo"); + } else { + builder.setLinkType(LinkTargetType.EXECUTABLE); + } builder.setLinkStaticness(LinkStaticness.DYNAMIC); builder.setNativeDeps((i & 4) == 0); builder.setUseTestOnlyFlags((i & 8) == 0); @@ -210,6 +214,7 @@ public class CppLinkActionTest extends BuildViewTestCase { (i & 1) == 0 ? ImmutableList.of(oFile) : ImmutableList.of(oFile2)); builder.setLinkType( (i & 2) == 0 ? LinkTargetType.STATIC_LIBRARY : LinkTargetType.DYNAMIC_LIBRARY); + builder.setLibraryIdentifier("foo"); builder.setFeatureConfiguration(featureConfiguration); return builder.build(); } @@ -375,7 +380,9 @@ public class CppLinkActionTest extends BuildViewTestCase { @Test public void testStaticLinkWithDynamicIsError() throws Exception { CppLinkActionBuilder builder = - createLinkBuilder(LinkTargetType.STATIC_LIBRARY).setLinkStaticness(LinkStaticness.DYNAMIC); + createLinkBuilder(LinkTargetType.STATIC_LIBRARY) + .setLinkStaticness(LinkStaticness.DYNAMIC) + .setLibraryIdentifier("foo"); assertError("static library link must be static", builder); } @@ -385,6 +392,7 @@ public class CppLinkActionTest extends BuildViewTestCase { CppLinkActionBuilder builder = createLinkBuilder(LinkTargetType.STATIC_LIBRARY) .setLinkStaticness(LinkStaticness.FULLY_STATIC) + .setLibraryIdentifier("foo") .setSymbolCountsOutput(scratchArtifact("dummySymbolCounts")); assertError("the symbol counts output must be null for static links", builder); @@ -395,6 +403,7 @@ public class CppLinkActionTest extends BuildViewTestCase { CppLinkActionBuilder builder = createLinkBuilder(LinkTargetType.STATIC_LIBRARY) .setLinkStaticness(LinkStaticness.FULLY_STATIC) + .setLibraryIdentifier("foo") .setNativeDeps(true); assertError("the native deps flag must be false for static links", builder); @@ -405,6 +414,7 @@ public class CppLinkActionTest extends BuildViewTestCase { CppLinkActionBuilder builder = createLinkBuilder(LinkTargetType.STATIC_LIBRARY) .setLinkStaticness(LinkStaticness.FULLY_STATIC) + .setLibraryIdentifier("foo") .setWholeArchive(true); assertError("the need whole archive flag must be false for static links", builder); |