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

Reply via email to