Ninja Multi-Config: Add variable to control configs used in cross-config build

This commit is contained in:
Kyle Edwards
2020-01-23 14:46:16 -05:00
parent ab2fc91821
commit b7a2baf38c
21 changed files with 455 additions and 14 deletions
+6 -4
View File
@@ -72,8 +72,9 @@ void cmNinjaNormalTargetGenerator::Generate(const std::string& config)
// Write the build statements
bool firstForConfig = true;
for (auto const& fileConfig : this->GetConfigNames()) {
if (fileConfig != config &&
!this->GetGlobalGenerator()->EnableCrossConfigBuild()) {
if (!this->GetGlobalGenerator()
->GetCrossConfigs(fileConfig)
.count(config)) {
continue;
}
this->WriteObjectBuildStatements(config, fileConfig, firstForConfig);
@@ -85,8 +86,9 @@ void cmNinjaNormalTargetGenerator::Generate(const std::string& config)
} else {
firstForConfig = true;
for (auto const& fileConfig : this->GetConfigNames()) {
if (fileConfig != config &&
!this->GetGlobalGenerator()->EnableCrossConfigBuild()) {
if (!this->GetGlobalGenerator()
->GetCrossConfigs(fileConfig)
.count(config)) {
continue;
}
// If this target has cuda language link inputs, and we need to do