diff options
author | Brad King <brad.king@kitware.com> | 2017-05-15 17:05:46 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-05-15 17:05:46 (GMT) |
commit | c608000a2a57faaac6e1789f8502e734db5ddb0e (patch) | |
tree | c77724fd0bbe88941efa8c04c5f265c2f514ca93 /Source/cmGlobalXCodeGenerator.cxx | |
parent | b8e707a6a1c5c486644132df01b7995740abfbd2 (diff) | |
download | CMake-c608000a2a57faaac6e1789f8502e734db5ddb0e.zip CMake-c608000a2a57faaac6e1789f8502e734db5ddb0e.tar.gz CMake-c608000a2a57faaac6e1789f8502e734db5ddb0e.tar.bz2 |
Xcode: Work around xcodebuild spurious hangs in try_compile
`xcodebuild` occasionally hangs on some macOS machines (and can be
reproduced independent of CMake). It only happens a few times in 1000
runs, but configuration of a large project calls `try_compile` many
times and therefore frequently hangs due to this problem. I've been
unable to reproduce the hang when using a scheme to build, so always
generate a scheme in `try_compile` projects to work around the problem.
Issue: #16752
Diffstat (limited to 'Source/cmGlobalXCodeGenerator.cxx')
-rw-r--r-- | Source/cmGlobalXCodeGenerator.cxx | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 4e95fe7..84740ca 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -3280,7 +3280,8 @@ void cmGlobalXCodeGenerator::OutputXCodeProject( // Since the lowest available Xcode version for testing was 7.0, // I'm setting this as a limit then if (this->XcodeVersion >= 70) { - if (root->GetMakefile()->IsOn("CMAKE_XCODE_GENERATE_SCHEME")) { + if (root->GetMakefile()->GetCMakeInstance()->GetIsInTryCompile() || + root->GetMakefile()->IsOn("CMAKE_XCODE_GENERATE_SCHEME")) { this->OutputXCodeSharedSchemes(xcodeDir); this->OutputXCodeWorkspaceSettings(xcodeDir); } |