mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-29 18:51:05 -05:00
Xcode: Generate ZERO_CHECK generator target only once
In case CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY has been enabled generate only the root-level ZERO_CHECK target so targets in subdirectories pick up the root generator target of ZERO_CHECK. For the case that CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY is not enabled more investigation and a proper and final fix is still needed. Issue: 14297
This commit is contained in:
@@ -459,7 +459,11 @@ void cmGlobalXCodeGenerator::AddExtraTargets(
|
||||
|
||||
// Add ZERO_CHECK
|
||||
bool regenerate = !mf->IsOn("CMAKE_SUPPRESS_REGENERATION");
|
||||
if (regenerate) {
|
||||
bool generateTopLevelProjectOnly =
|
||||
mf->IsOn("CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY");
|
||||
bool isTopLevel =
|
||||
!root->GetStateSnapshot().GetBuildsystemDirectoryParent().IsValid();
|
||||
if (regenerate && (isTopLevel || !generateTopLevelProjectOnly)) {
|
||||
this->CreateReRunCMakeFile(root, gens);
|
||||
std::string file =
|
||||
this->ConvertToRelativeForMake(this->CurrentReRunCMakeMakefile.c_str());
|
||||
|
||||
Reference in New Issue
Block a user