1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-17 07:11:52 +08:00

iOS: Fix try_compile FILE_COPY not to fail

When building for iOS, the compiled target is placed into a bundle.
If a single-configuration generator is used, like Makefiles or Ninja,
the try_compile FILE_COPY behavior fails to find the bundle, because
it only looks for the bundle inside a Debug subfolder (presumably
to support a multi-configuration generator like Xcode).

Consider looking for the bundle in the root try_compile folder, as
well as in the location specified by CMAKE_TRY_COMPILE_CONFIGURATION.

Closes: #19211
This commit is contained in:
Alexandru Croitor
2019-04-30 12:41:06 +02:00
committed by Brad King
parent 7700df9b1e
commit 275b6b3194

View File

@@ -1040,7 +1040,14 @@ void cmCoreTryCompile::FindOutputFile(const std::string& targetName,
}
searchDirs.emplace_back("/Debug");
#if defined(__APPLE__)
std::string app = "/Debug/" + targetName + ".app";
std::string app = "/" + targetName + ".app";
if (config && config[0]) {
std::string tmp = "/";
tmp += config + app;
searchDirs.push_back(std::move(tmp));
}
std::string tmp = "/Debug" + app;
searchDirs.emplace_back(std::move(tmp));
searchDirs.push_back(std::move(app));
#endif
searchDirs.emplace_back("/Development");