aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/test
diff options
context:
space:
mode:
authorGravatar jcater <jcater@google.com>2018-06-01 08:44:40 -0700
committerGravatar Copybara-Service <copybara-piper@google.com>2018-06-01 08:45:44 -0700
commitda6d42757602d15295b96c9b06ab4836bf6c0c9e (patch)
tree99d92adf09c1eda17ee49ddc3332c8bc784829e9 /src/test
parentc4e128e2c6d8cacaeba034d6a3195796d50f1745 (diff)
Move TARGET_CPU from the CcToolchainProvider to BuildConfiguration.
PiperOrigin-RevId: 198877280
Diffstat (limited to 'src/test')
-rw-r--r--src/test/java/com/google/devtools/build/lib/rules/ToolchainTypeTest.java63
1 files changed, 50 insertions, 13 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/rules/ToolchainTypeTest.java b/src/test/java/com/google/devtools/build/lib/rules/ToolchainTypeTest.java
index 649eed1bf4..2aef6469f8 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/ToolchainTypeTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/ToolchainTypeTest.java
@@ -19,7 +19,6 @@ import com.google.devtools.build.lib.analysis.ConfiguredTarget;
import com.google.devtools.build.lib.analysis.TemplateVariableInfo;
import com.google.devtools.build.lib.analysis.util.BuildViewTestCase;
import com.google.devtools.build.lib.analysis.util.ScratchAttributeWriter;
-import com.google.devtools.build.lib.packages.util.MockPlatformSupport;
import com.google.devtools.build.lib.rules.cpp.CppCompileAction;
import com.google.devtools.build.lib.testutil.TestConstants;
import org.junit.Test;
@@ -34,8 +33,7 @@ public class ToolchainTypeTest extends BuildViewTestCase {
public void testSmoke() throws Exception {
ConfiguredTarget cc =
getConfiguredTarget(TestConstants.TOOLS_REPOSITORY + "//tools/cpp:toolchain_type");
- assertThat(cc.get(TemplateVariableInfo.PROVIDER).getVariables())
- .containsKey("TARGET_CPU");
+ assertThat(cc.get(TemplateVariableInfo.PROVIDER).getVariables()).containsKey("CC_FLAGS");
}
@Test
@@ -47,42 +45,81 @@ public class ToolchainTypeTest extends BuildViewTestCase {
@Test
public void testCcTargetsDependOnCcToolchainAutomatically() throws Exception {
- MockPlatformSupport.addMockPiiiPlatform(
- mockToolsConfig, analysisMock.ccSupport().getMockCrosstoolLabel());
+ scratch.file(
+ "a/BUILD",
+ "filegroup(",
+ " name='empty')",
+ "package(default_visibility=['//visibility:public'])",
+ "constraint_setting(name = 'mock_setting')",
+ "constraint_value(name = 'mock_value', constraint_setting = ':mock_setting')",
+ "platform(",
+ " name = 'mock-platform',",
+ " constraint_values = [':mock_value'],",
+ ")",
+ "cc_toolchain(",
+ " name = 'b',",
+ " cpu = 'banana',",
+ " all_files = ':empty',",
+ " ar_files = ':empty',",
+ " as_files = ':empty',",
+ " compiler_files = ':empty',",
+ " dwp_files = ':empty',",
+ " linker_files = ':empty',",
+ " strip_files = ':empty',",
+ " objcopy_files = ':empty',",
+ " dynamic_runtime_libs = [':empty'],",
+ " static_runtime_libs = [':empty'],",
+ " proto='''",
+ " toolchain_identifier: 'banana'",
+ " abi_version: 'banana'",
+ " abi_libc_version: 'banana'",
+ " compiler: 'banana'",
+ " host_system_name: 'banana'",
+ " target_system_name: 'banana'",
+ " target_cpu: 'banana'",
+ " target_libc: 'banana'",
+ " ''')",
+ "toolchain(",
+ " name = 'toolchain_b',",
+ " toolchain_type = '" + TestConstants.TOOLS_REPOSITORY + "//tools/cpp:toolchain_type',",
+ " toolchain = ':b',",
+ " target_compatible_with = [':mock_value'],",
+ ")");
+
useConfiguration(
"--enabled_toolchain_types="
+ TestConstants.TOOLS_REPOSITORY
+ "//tools/cpp:toolchain_type",
- "--experimental_platforms=//mock_platform:mock-piii-platform",
- "--extra_toolchains=//mock_platform:toolchain_cc-compiler-piii",
+ "--experimental_platforms=//a:mock-platform",
+ "--extra_toolchains=//a:toolchain_b",
"--make_variables_source=toolchain");
// for cc_library, cc_binary, and cc_test, we check that $(TARGET_CPU) is a valid Make variable
ConfiguredTarget cclibrary =
ScratchAttributeWriter.fromLabelString(this, "cc_library", "//cclib")
.setList("srcs", "a.cc")
- .setList("copts", "foobar$(TARGET_CPU)")
+ .setList("copts", "foobar-$(ABI)")
.write();
CppCompileAction compileAction =
(CppCompileAction) getGeneratingAction(getBinArtifact("_objs/cclib/cclib/a.o", cclibrary));
- assertThat(compileAction.getArguments()).contains("foobarpiii");
+ assertThat(compileAction.getArguments()).contains("foobar-banana");
ConfiguredTarget ccbinary =
ScratchAttributeWriter.fromLabelString(this, "cc_binary", "//ccbin")
.setList("srcs", "a.cc")
- .setList("copts", "foobar$(TARGET_CPU)")
+ .setList("copts", "foobar-$(ABI)")
.write();
compileAction =
(CppCompileAction) getGeneratingAction(getBinArtifact("_objs/ccbin/ccbin/a.o", ccbinary));
- assertThat(compileAction.getArguments()).contains("foobarpiii");
+ assertThat(compileAction.getArguments()).contains("foobar-banana");
ConfiguredTarget cctest =
ScratchAttributeWriter.fromLabelString(this, "cc_test", "//cctest")
.setList("srcs", "a.cc")
- .setList("copts", "foobar$(TARGET_CPU)")
+ .setList("copts", "foobar-$(ABI)")
.write();
compileAction =
(CppCompileAction) getGeneratingAction(getBinArtifact("_objs/cctest/cctest/a.o", cctest));
- assertThat(compileAction.getArguments()).contains("foobarpiii");
+ assertThat(compileAction.getArguments()).contains("foobar-banana");
}
}