This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake".
The branch, next has been updated via 031a9c4558879f4f5b5b4f5122623a78066e4638 (commit) via 4a5c14a5a15bc82e8ea045fe1c8522682b17cbdd (commit) via ff88df48e8a693f213a44aee3ad2474f500857b5 (commit) from 81bb94aff906c89cd7bc0cf070df1c34c0a4086b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=031a9c4558879f4f5b5b4f5122623a78066e4638 commit 031a9c4558879f4f5b5b4f5122623a78066e4638 Merge: 81bb94a 4a5c14a Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Fri Aug 26 02:54:03 2016 -0400 Commit: CMake Topic Stage <kwro...@kitware.com> CommitDate: Fri Aug 26 02:54:03 2016 -0400 Merge topic '16101-xcode-fix-directory-exclude-from-all' into next 4a5c14a5 Xcode: Add targets marked as EXCLUDE_FROM_ALL to project (#16101) ff88df48 CMake Nightly Date Stamp https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4a5c14a5a15bc82e8ea045fe1c8522682b17cbdd commit 4a5c14a5a15bc82e8ea045fe1c8522682b17cbdd Author: Gregor Jasny <gja...@googlemail.com> AuthorDate: Fri Aug 19 21:50:48 2016 +0200 Commit: Gregor Jasny <gja...@googlemail.com> CommitDate: Fri Aug 26 08:53:39 2016 +0200 Xcode: Add targets marked as EXCLUDE_FROM_ALL to project (#16101) diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx index 780ca90..b4bc084 100644 --- a/Source/cmGlobalXCodeGenerator.cxx +++ b/Source/cmGlobalXCodeGenerator.cxx @@ -2635,13 +2635,10 @@ void cmGlobalXCodeGenerator::AddDependAndLinkInformation(cmXCodeObject* target) } bool cmGlobalXCodeGenerator::CreateGroups( - cmLocalGenerator* root, std::vector<cmLocalGenerator*>& generators) + std::vector<cmLocalGenerator*>& generators) { for (std::vector<cmLocalGenerator*>::iterator i = generators.begin(); i != generators.end(); ++i) { - if (this->IsExcluded(root, *i)) { - continue; - } cmMakefile* mf = (*i)->GetMakefile(); std::vector<cmSourceGroup> sourceGroups = mf->GetSourceGroups(); std::vector<cmGeneratorTarget*> tgts = (*i)->GetGeneratorTargets(); @@ -2873,7 +2870,7 @@ bool cmGlobalXCodeGenerator::CreateXCodeObjects( this->MainGroupChildren->AddObject(resourcesGroup); // now create the cmake groups - if (!this->CreateGroups(root, generators)) { + if (!this->CreateGroups(generators)) { return false; } @@ -3041,10 +3038,8 @@ bool cmGlobalXCodeGenerator::CreateXCodeObjects( std::vector<cmXCodeObject*> targets; for (std::vector<cmLocalGenerator*>::iterator i = generators.begin(); i != generators.end(); ++i) { - if (!this->IsExcluded(root, *i)) { - if (!this->CreateXCodeTargets(*i, targets)) { - return false; - } + if (!this->CreateXCodeTargets(*i, targets)) { + return false; } } // loop over all targets and add link and depend info diff --git a/Source/cmGlobalXCodeGenerator.h b/Source/cmGlobalXCodeGenerator.h index 0485d4f..303dfa0 100644 --- a/Source/cmGlobalXCodeGenerator.h +++ b/Source/cmGlobalXCodeGenerator.h @@ -92,8 +92,7 @@ private: cmXCodeObject* CreateOrGetPBXGroup(cmGeneratorTarget* gtgt, cmSourceGroup* sg); cmXCodeObject* CreatePBXGroup(cmXCodeObject* parent, std::string name); - bool CreateGroups(cmLocalGenerator* root, - std::vector<cmLocalGenerator*>& generators); + bool CreateGroups(std::vector<cmLocalGenerator*>& generators); std::string XCodeEscapePath(const std::string& p); std::string RelativeToSource(const char* p); std::string RelativeToBinary(const char* p); diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake b/Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake new file mode 100644 index 0000000..f686005 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake @@ -0,0 +1,6 @@ +enable_language(CXX) + +add_subdirectory(ExcludeFromAll EXCLUDE_FROM_ALL) + +add_executable(main main.cpp) +target_link_libraries(main PRIVATE foo) diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/CMakeLists.txt b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/CMakeLists.txt new file mode 100644 index 0000000..b1df6b0 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/CMakeLists.txt @@ -0,0 +1,4 @@ +add_library(bar STATIC bar.cpp) + +add_library(foo STATIC foo.cpp) +target_include_directories(foo PUBLIC .) diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp new file mode 100644 index 0000000..7a828bd --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp @@ -0,0 +1 @@ +#error This should be excluded from all target diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp new file mode 100644 index 0000000..2789e61 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp @@ -0,0 +1,3 @@ +#include "foo.h" + +int foo() { return 42; } diff --git a/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.h b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.h new file mode 100644 index 0000000..5d5f8f0 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.h @@ -0,0 +1 @@ +int foo(); diff --git a/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake b/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake index 9d514e1..6d9418b 100644 --- a/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake +++ b/Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake @@ -3,3 +3,15 @@ include(RunCMake) run_cmake(DoesNotExist) run_cmake(Missing) run_cmake(Function) + +set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/ExcludeFromAll) +set(RunCMake_TEST_NO_CLEAN 1) + +file(REMOVE_RECURSE "${RunCMake_TEST_BINARY_DIR}") +file(MAKE_DIRECTORY "${RunCMake_TEST_BINARY_DIR}") + +run_cmake(ExcludeFromAll) +run_cmake_command(ExcludeFromAll-build ${CMAKE_COMMAND} --build .) + +unset(RunCMake_TEST_BINARY_DIR) +unset(RunCMake_TEST_NO_CLEAN) diff --git a/Tests/RunCMake/add_subdirectory/main.cpp b/Tests/RunCMake/add_subdirectory/main.cpp new file mode 100644 index 0000000..8e69c08 --- /dev/null +++ b/Tests/RunCMake/add_subdirectory/main.cpp @@ -0,0 +1,6 @@ +#include "foo.h" + +int main(int, char**) +{ + return foo(); +} ----------------------------------------------------------------------- Summary of changes: Source/CMakeVersion.cmake | 2 +- Source/cmGlobalXCodeGenerator.cxx | 13 ++++--------- Source/cmGlobalXCodeGenerator.h | 3 +-- Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake | 6 ++++++ .../add_subdirectory/ExcludeFromAll/CMakeLists.txt | 4 ++++ Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp | 1 + Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp | 3 +++ .../{Framework => add_subdirectory/ExcludeFromAll}/foo.h | 0 Tests/RunCMake/add_subdirectory/RunCMakeTest.cmake | 12 ++++++++++++ Tests/RunCMake/add_subdirectory/main.cpp | 6 ++++++ 10 files changed, 38 insertions(+), 12 deletions(-) create mode 100644 Tests/RunCMake/add_subdirectory/ExcludeFromAll.cmake create mode 100644 Tests/RunCMake/add_subdirectory/ExcludeFromAll/CMakeLists.txt create mode 100644 Tests/RunCMake/add_subdirectory/ExcludeFromAll/bar.cpp create mode 100644 Tests/RunCMake/add_subdirectory/ExcludeFromAll/foo.cpp copy Tests/RunCMake/{Framework => add_subdirectory/ExcludeFromAll}/foo.h (100%) create mode 100644 Tests/RunCMake/add_subdirectory/main.cpp hooks/post-receive -- CMake _______________________________________________ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits