Merge branch '14297-partial-xcode-zero-check' into release-3.11

Merge-request: !1790
This commit is contained in:
Brad King committed 2018-02-23 08:17:51 -05:00
commit 72a85d9f0b
5 files changed
+26 -1

No files matched your search

+5 -1
View File
@@ -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());
@@ -236,3 +236,17 @@ if(XCODE_VERSION VERSION_GREATER_EQUAL 8)
deploymeny_target_test(${SDK})
endforeach()
endif()
function(XcodeDependOnZeroCheck)
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/XcodeDependOnZeroCheck-build)
set(RunCMake_TEST_NO_CLEAN 1)
file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}")
file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}")
run_cmake(XcodeDependOnZeroCheck)
run_cmake_command(XcodeDependOnZeroCheck-build ${CMAKE_COMMAND} --build . --target parentdirlib)
run_cmake_command(XcodeDependOnZeroCheck-build ${CMAKE_COMMAND} --build . --target subdirlib)
endfunction()
XcodeDependOnZeroCheck()
@@ -0,0 +1 @@
BUILD AGGREGATE TARGET ZERO_CHECK
@@ -0,0 +1,4 @@
set(CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY TRUE)
project(XcodeDependOnZeroCheck CXX)
add_subdirectory(zerocheck)
add_library(parentdirlib foo.cpp)
@@ -0,0 +1,2 @@
project(subproject)
add_library(subdirlib ../foo.cpp)