aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java')
-rw-r--r--src/test/java/com/google/devtools/build/lib/packages/util/MOCK_OSX_CROSSTOOL70
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/cpp/CppLinkActionTest.java27
2 files changed, 97 insertions, 0 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/MOCK_OSX_CROSSTOOL b/src/test/java/com/google/devtools/build/lib/packages/util/MOCK_OSX_CROSSTOOL
index 42065a3d70..0a87b1c73c 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/util/MOCK_OSX_CROSSTOOL
+++ b/src/test/java/com/google/devtools/build/lib/packages/util/MOCK_OSX_CROSSTOOL
@@ -1503,6 +1503,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "mac/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -1523,6 +1524,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "mac/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -1544,6 +1546,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -1557,6 +1560,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -1570,6 +1574,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -1583,6 +1588,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -1596,6 +1602,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "mac/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -3080,6 +3087,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "mac/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -3100,6 +3108,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "mac/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -3121,6 +3130,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -3134,6 +3144,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -3147,6 +3158,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -3160,6 +3172,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "mac/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -3173,6 +3186,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "mac/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -4667,6 +4681,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "iossim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -4687,6 +4702,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "iossim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -4708,6 +4724,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -4721,6 +4738,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -4734,6 +4752,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -4747,6 +4766,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -4760,6 +4780,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "iossim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -6256,6 +6277,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "watchsim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -6276,6 +6298,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "watchsim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -6297,6 +6320,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "watchsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -6310,6 +6334,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "watchsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -6323,6 +6348,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "watchsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -6336,6 +6362,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "watchsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -6349,6 +6376,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "watchsim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -7880,6 +7908,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "tvsim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -7900,6 +7929,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "tvsim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -7921,6 +7951,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "tvsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -7934,6 +7965,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "tvsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -7947,6 +7979,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "tvsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -7960,6 +7993,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "tvsim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -7973,6 +8007,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "tvsim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -9467,6 +9502,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "iossim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -9487,6 +9523,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "iossim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -9508,6 +9545,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -9521,6 +9559,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -9534,6 +9573,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -9547,6 +9587,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "iossim/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -9560,6 +9601,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "iossim/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -11077,6 +11119,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "ios/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -11097,6 +11140,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "ios/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -11118,6 +11162,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -11131,6 +11176,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -11144,6 +11190,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -11157,6 +11204,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -11170,6 +11218,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "ios/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -12689,6 +12738,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "watchos/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -12709,6 +12759,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "watchos/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -12730,6 +12781,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "watchos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -12743,6 +12795,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "watchos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -12756,6 +12809,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "watchos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -12769,6 +12823,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "watchos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -12782,6 +12837,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "watchos/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -14336,6 +14392,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "tvos/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -14356,6 +14413,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "tvos/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -14377,6 +14435,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "tvos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -14390,6 +14449,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "tvos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -14403,6 +14463,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "tvos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -14416,6 +14477,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "tvos/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -14429,6 +14491,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "tvos/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
@@ -15946,6 +16009,7 @@ toolchain {
action_name: "c++-link-executable"
tool {
tool_path: "ios/clang"
+ execution_requirement: "requires-darwin"
}
implies: "symbol_counts"
implies: "linkstamps"
@@ -15966,6 +16030,7 @@ toolchain {
action_name: "c++-link-dynamic-library"
tool {
tool_path: "ios/clang"
+ execution_requirement: "requires-darwin"
}
implies: "has_configured_linker_path"
implies: "symbol_counts"
@@ -15987,6 +16052,7 @@ toolchain {
action_name: "c++-link-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -16000,6 +16066,7 @@ toolchain {
action_name: "c++-link-alwayslink-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -16013,6 +16080,7 @@ toolchain {
action_name: "c++-link-pic-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -16026,6 +16094,7 @@ toolchain {
action_name: "c++-link-alwayslink-pic-static-library"
tool {
tool_path: "ios/ar_wrapper"
+ execution_requirement: "requires-darwin"
}
implies: "global_whole_archive_open"
implies: "runtime_root_flags"
@@ -16039,6 +16108,7 @@ toolchain {
action_name: "c++-link-interface-dynamic-library"
tool {
tool_path: "ios/clang"
+ execution_requirement: "requires-darwin"
}
implies: "strip_debug_symbols"
implies: "apple_env"
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 0675d49e33..9a3ae3ab06 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
@@ -131,6 +131,33 @@ public class CppLinkActionTest extends BuildViewTestCase {
}
@Test
+ public void testExecutionRequirementsFromCrosstool() throws Exception {
+ FeatureConfiguration featureConfiguration =
+ CcToolchainFeaturesTest.buildFeatures(
+ "action_config {",
+ " config_name: '" + LinkTargetType.EXECUTABLE.getActionName() + "'",
+ " action_name: '" + LinkTargetType.EXECUTABLE.getActionName() + "'",
+ " tool {",
+ " tool_path: 'DUMMY_TOOL'",
+ " execution_requirement: 'dummy-exec-requirement'",
+ " }",
+ "}")
+ .getFeatureConfiguration(
+ FeatureSpecification.create(
+ ImmutableSet.of(LinkTargetType.EXECUTABLE.getActionName()), ImmutableSet.of()));
+
+ CppLinkAction linkAction =
+ createLinkBuilder(
+ LinkTargetType.EXECUTABLE,
+ "dummyRuleContext/out",
+ ImmutableList.of(),
+ ImmutableList.of(),
+ featureConfiguration)
+ .build();
+ assertThat(linkAction.getExecutionInfo()).containsEntry("dummy-exec-requirement", "");
+ }
+
+ @Test
public void testLibOptsAndLibSrcsAreInCorrectOrder() throws Exception {
scratch.file(
"x/BUILD",