Skip to content

Commit

Permalink
Make default ccSupport use a starlark rule instead of CROSSTOOL
Browse files Browse the repository at this point in the history
Issue #5380

RELNOTES: None.
PiperOrigin-RevId: 239627148
  • Loading branch information
scentini authored and copybara-github committed Mar 21, 2019
1 parent 5bec36c commit 4354d4c
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ protected ImmutableList<String> getCrosstoolArchs() {

@Override
public void setup(MockToolsConfig config) throws IOException {
setupCrosstool(config);
setupCcToolchainConfig(config);
MockPlatformSupport.setup(
config, "/bazel_tools_workspace/platforms", "/local_config_platform_workspace");
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -493,26 +493,38 @@ public void setupCrosstool(MockToolsConfig config, String... partialToolchain)
public void setupCcToolchainConfigForCpu(MockToolsConfig config, String... cpus)
throws IOException {
String crosstoolTop = getCrosstoolTopPathForConfig(config);
ImmutableList.Builder<CcToolchainConfig> toolchainConfigBuilder = ImmutableList.builder();
toolchainConfigBuilder.add(CcToolchainConfig.getDefaultCcToolchainConfig());
for (String cpu : cpus) {
toolchainConfigBuilder.add(CcToolchainConfig.getCcToolchainConfigForCpu(cpu));
if (config.isRealFileSystem()) {
config.linkTools(getRealFilesystemTools(crosstoolTop));
} else {
ImmutableList.Builder<CcToolchainConfig> toolchainConfigBuilder = ImmutableList.builder();
toolchainConfigBuilder.add(CcToolchainConfig.getDefaultCcToolchainConfig());
for (String cpu : cpus) {
toolchainConfigBuilder.add(CcToolchainConfig.getCcToolchainConfigForCpu(cpu));
}
new Crosstool(config, crosstoolTop, /* disableCrosstool= */ true)
.setSupportedArchs(getCrosstoolArchs())
.setToolchainConfigs(toolchainConfigBuilder.build())
.setSupportsHeaderParsing(true)
.write();
}
new Crosstool(config, crosstoolTop, /* disableCrosstool= */ true)
.setSupportedArchs(getCrosstoolArchs())
.setToolchainConfigs(toolchainConfigBuilder.build())
.setSupportsHeaderParsing(true)
.write();
}

public void setupCcToolchainConfig(MockToolsConfig config) throws IOException {
setupCcToolchainConfig(config, CcToolchainConfig.builder());
}

public void setupCcToolchainConfig(
MockToolsConfig config, CcToolchainConfig.Builder ccToolchainConfig) throws IOException {
String crosstoolTop = getCrosstoolTopPathForConfig(config);
new Crosstool(config, crosstoolTop, /* disableCrosstool= */ true)
.setSupportedArchs(getCrosstoolArchs())
.setToolchainConfigs(ImmutableList.of(ccToolchainConfig.build()))
.setSupportsHeaderParsing(true)
.write();
if (config.isRealFileSystem()) {
config.linkTools(getRealFilesystemTools(crosstoolTop));
} else {
new Crosstool(config, crosstoolTop, /* disableCrosstool= */ true)
.setSupportedArchs(getCrosstoolArchs())
.setToolchainConfigs(ImmutableList.of(ccToolchainConfig.build()))
.setSupportsHeaderParsing(true)
.write();
}
}

protected void createCrosstoolPackage(
Expand Down

0 comments on commit 4354d4c

Please sign in to comment.