[Cmake-commits] CMake branch, next, updated. v2.8.4-1080-g24e676e

Eric Noulard eric.noulard at gmail.com
Thu Mar 3 15:20:18 EST 2011


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  24e676e43f7d322985b2d270b1b068a91879f256 (commit)
       via  fe530ff5e90f8eada47b4480375b9898f018eefc (commit)
      from  90deaa3315ab9024e7d1e906f7c00adfa5b84976 (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 -----------------------------------------------------------------
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=24e676e43f7d322985b2d270b1b068a91879f256
commit 24e676e43f7d322985b2d270b1b068a91879f256
Merge: 90deaa3 fe530ff
Author:     Eric Noulard <eric.noulard at gmail.com>
AuthorDate: Thu Mar 3 15:20:15 2011 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Thu Mar 3 15:20:15 2011 -0500

    Merge topic 'CPackArchive-PackageOrphanComponents' into next
    
    fe530ff CPackArchive package all components specified in CPACK_COMPONENTS_ALL


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fe530ff5e90f8eada47b4480375b9898f018eefc
commit fe530ff5e90f8eada47b4480375b9898f018eefc
Author:     Eric NOULARD <eric.noulard at gmail.com>
AuthorDate: Thu Mar 3 21:19:13 2011 +0100
Commit:     Eric NOULARD <eric.noulard at gmail.com>
CommitDate: Thu Mar 3 21:19:13 2011 +0100

    CPackArchive package all components specified in CPACK_COMPONENTS_ALL
    
    When asking for group packaging the components not belonging to
    any group should be packaged separately.

diff --git a/Source/CPack/cmCPackArchiveGenerator.cxx b/Source/CPack/cmCPackArchiveGenerator.cxx
index 3c670a1..b629c63 100644
--- a/Source/CPack/cmCPackArchiveGenerator.cxx
+++ b/Source/CPack/cmCPackArchiveGenerator.cxx
@@ -143,6 +143,39 @@ int cmCPackArchiveGenerator::PackageComponents(bool ignoreGroup)
       // add the generated package to package file names list
       packageFileNames.push_back(packageFileName);
       }
+    // Handle Orphan components (components not belonging to any groups)
+    std::map<std::string, cmCPackComponent>::iterator compIt;
+    for (compIt=this->Components.begin();
+         compIt!=this->Components.end(); ++compIt )
+      {
+      // Does the component belong to a group?
+      if (compIt->second.Group==NULL)
+        {
+        cmCPackLogger(cmCPackLog::LOG_VERBOSE,
+            "Component <"
+              << compIt->second.Name
+              << "> does not belong to any group, package it separately."
+              << std::endl);
+        std::string localToplevel(
+          this->GetOption("CPACK_TEMPORARY_DIRECTORY")
+                                 );
+        std::string packageFileName = std::string(toplevel);
+
+        localToplevel += "/"+ compIt->first;
+        packageFileName += "/"+
+        GetComponentPackageFileName(this->GetOption("CPACK_PACKAGE_FILE_NAME"),
+                                    compIt->first,
+                                    false)
+                              + this->GetOutputExtension();
+        {
+          DECLARE_AND_OPEN_ARCHIVE(packageFileName,archive);
+          // Add the files of this component to the archive
+          addOneComponentToArchive(archive,&(compIt->second));
+        }
+        // add the generated package to package file names list
+        packageFileNames.push_back(packageFileName);
+        }
+      }
     }
   // CPACK_COMPONENTS_IGNORE_GROUPS is set
   // We build 1 package per component
diff --git a/Tests/CPackComponentsForAll/RunCPackVerifyResult.cmake b/Tests/CPackComponentsForAll/RunCPackVerifyResult.cmake
index 45a3b17..e797b7c 100644
--- a/Tests/CPackComponentsForAll/RunCPackVerifyResult.cmake
+++ b/Tests/CPackComponentsForAll/RunCPackVerifyResult.cmake
@@ -39,7 +39,7 @@ if(CPackGen MATCHES "ZIP")
         set(expected_count 1)
     endif(${CPackComponentWay} STREQUAL "default")
     if (${CPackComponentWay} STREQUAL "OnePackPerGroup")
-        set(expected_count 2)
+        set(expected_count 3)
     endif (${CPackComponentWay} STREQUAL "OnePackPerGroup")
     if (${CPackComponentWay} STREQUAL "IgnoreGroup")
         set(expected_count 4)

-----------------------------------------------------------------------

Summary of changes:
 Source/CPack/cmCPackArchiveGenerator.cxx           |   33 ++++++++++++++++++++
 .../RunCPackVerifyResult.cmake                     |    2 +-
 2 files changed, 34 insertions(+), 1 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list