[Cmake-commits] CMake branch, next, updated. v2.8.4-1322-gba026f8

Eric Noulard eric.noulard at gmail.com
Fri Apr 1 13:28:35 EDT 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  ba026f8e6c14b57dcecddc2108cfa5762e82f1d8 (commit)
       via  bebefa7d363148191789d6eac63b4164915abdbb (commit)
       via  62c279e8805a666534cadad1851acdd603942564 (commit)
       via  792341fbad168b38d05fdd534ab414dbae88d5e6 (commit)
       via  b52eac0ab26309d38d1e0d2ba55406db86980991 (commit)
      from  e084018c37ac01458204a1823d303c19a6dd1d52 (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=ba026f8e6c14b57dcecddc2108cfa5762e82f1d8
commit ba026f8e6c14b57dcecddc2108cfa5762e82f1d8
Merge: e084018 bebefa7
Author:     Eric Noulard <eric.noulard at gmail.com>
AuthorDate: Fri Apr 1 13:28:34 2011 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Apr 1 13:28:34 2011 -0400

    Merge topic 'cpack-grouping-enum' into next
    
    bebefa7 Fix KWStyle warnings
    62c279e Merge branch 'cpack-grouping-enum' of git://cmake.org/stage/cmake into cpack-grouping-enum
    792341f Combine component packaging methods into an enum.
    b52eac0 Merge remote branch 'stage/CPack-fix11930-LeftOverComponents' into cpack-grouping-enum


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=bebefa7d363148191789d6eac63b4164915abdbb
commit bebefa7d363148191789d6eac63b4164915abdbb
Author:     Eric NOULARD <eric.noulard at gmail.com>
AuthorDate: Fri Apr 1 19:21:51 2011 +0200
Commit:     Eric NOULARD <eric.noulard at gmail.com>
CommitDate: Fri Apr 1 19:21:51 2011 +0200

    Fix KWStyle warnings

diff --git a/Source/CPack/cmCPackArchiveGenerator.cxx b/Source/CPack/cmCPackArchiveGenerator.cxx
index 5b4625b..0ce5b01 100644
--- a/Source/CPack/cmCPackArchiveGenerator.cxx
+++ b/Source/CPack/cmCPackArchiveGenerator.cxx
@@ -254,7 +254,8 @@ int cmCPackArchiveGenerator::PackageFiles()
     // in this case you'll get 1 package for each component.
     else
       {
-      return PackageComponents(componentPackageMethod == ONE_PACKAGE_PER_COMPONENT);
+      return PackageComponents(componentPackageMethod ==
+                               ONE_PACKAGE_PER_COMPONENT);
       }
   }
 
diff --git a/Source/CPack/cmCPackDebGenerator.cxx b/Source/CPack/cmCPackDebGenerator.cxx
index 582f3e6..5665404 100644
--- a/Source/CPack/cmCPackDebGenerator.cxx
+++ b/Source/CPack/cmCPackDebGenerator.cxx
@@ -250,7 +250,8 @@ int cmCPackDebGenerator::PackageFiles()
     // in this case you'll get 1 package for each component.
     else
       {
-      return PackageComponents(componentPackageMethod == ONE_PACKAGE_PER_COMPONENT);
+      return PackageComponents(componentPackageMethod ==
+                               ONE_PACKAGE_PER_COMPONENT);
       }
   }
   // CASE 3 : NON COMPONENT package.
diff --git a/Source/CPack/cmCPackGenerator.cxx b/Source/CPack/cmCPackGenerator.cxx
index 6d71ad2..c8a77d1 100644
--- a/Source/CPack/cmCPackGenerator.cxx
+++ b/Source/CPack/cmCPackGenerator.cxx
@@ -1307,10 +1307,10 @@ int cmCPackGenerator::PrepareGroupingKind()
     else
       {
       cmCPackLogger(cmCPackLog::LOG_WARNING, "["
-              << this->Name << "]"
-              << " requested component grouping type <"<< groupingType
-              << "> UNKNOWN not in (ALL_COMPONENTS_IN_ONE,IGNORE,ONE_PER_GROUP)"
-              << std::endl);
+          << this->Name << "]"
+          << " requested component grouping type <"<< groupingType
+          << "> UNKNOWN not in (ALL_COMPONENTS_IN_ONE,IGNORE,ONE_PER_GROUP)"
+          << std::endl);
       }
     }
 
@@ -1328,10 +1328,10 @@ int cmCPackGenerator::PrepareGroupingKind()
       method = ONE_PACKAGE_PER_COMPONENT;
       }
     cmCPackLogger(cmCPackLog::LOG_WARNING, "["
-              << this->Name << "]"
-              << " One package per component group requested, but NO component groups exist:"
-              << " Ignoring component group."
-              << std::endl);
+         << this->Name << "]"
+         << " One package per component group requested, "
+         << "but NO component groups exist: Ignoring component group."
+         << std::endl);
     }
 
   // if user specified packaging method, override the default packaging method
@@ -1349,7 +1349,8 @@ int cmCPackGenerator::PrepareGroupingKind()
 
   cmCPackLogger(cmCPackLog::LOG_VERBOSE,  "["
         << this->Name << "]"
-        << " requested component grouping = " << method_names[componentPackageMethod]
+        << " requested component grouping = "
+        << method_names[componentPackageMethod]
         << std::endl);
 
   return 1;
diff --git a/Source/CPack/cmCPackGenerator.h b/Source/CPack/cmCPackGenerator.h
index f09c2a7..05d95b8 100644
--- a/Source/CPack/cmCPackGenerator.h
+++ b/Source/CPack/cmCPackGenerator.h
@@ -248,14 +248,16 @@ protected:
     ONE_PACKAGE,
     /* one package for each component */
     ONE_PACKAGE_PER_COMPONENT,
-    /* one package for each group, with left over components in their own package */
+    /* one package for each group,
+     * with left over components in their own package */
     ONE_PACKAGE_PER_GROUP,
     UNKNOWN_COMPONENT_PACKAGE_METHOD
   };
 
   /**
    * The component package method
-   * The default is ONE_PACKAGE_PER_GROUP, and generators may override the default
+   * The default is ONE_PACKAGE_PER_GROUP,
+   * and generators may override the default
    * before PrepareGroupingKind() is called.
    */
   ComponentPackageMethod componentPackageMethod;
diff --git a/Source/CPack/cmCPackRPMGenerator.cxx b/Source/CPack/cmCPackRPMGenerator.cxx
index 9f55d23..1a6c3be 100644
--- a/Source/CPack/cmCPackRPMGenerator.cxx
+++ b/Source/CPack/cmCPackRPMGenerator.cxx
@@ -215,7 +215,8 @@ int cmCPackRPMGenerator::PackageFiles()
     // in this case you'll get 1 package for each component.
     else
       {
-      return PackageComponents(componentPackageMethod == ONE_PACKAGE_PER_COMPONENT);
+      return PackageComponents(componentPackageMethod ==
+                               ONE_PACKAGE_PER_COMPONENT);
       }
   }
   // CASE 3 : NON COMPONENT package.

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=62c279e8805a666534cadad1851acdd603942564
commit 62c279e8805a666534cadad1851acdd603942564
Merge: 792341f 64a5e20
Author:     Eric NOULARD <eric.noulard at gmail.com>
AuthorDate: Fri Apr 1 19:10:43 2011 +0200
Commit:     Eric NOULARD <eric.noulard at gmail.com>
CommitDate: Fri Apr 1 19:10:43 2011 +0200

    Merge branch 'cpack-grouping-enum' of git://cmake.org/stage/cmake into cpack-grouping-enum


http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=792341fbad168b38d05fdd534ab414dbae88d5e6
commit 792341fbad168b38d05fdd534ab414dbae88d5e6
Author:     Clinton Stimpson <clinton at elemtech.com>
AuthorDate: Fri Mar 25 10:18:59 2011 -0600
Commit:     Clinton Stimpson <clinton at elemtech.com>
CommitDate: Fri Mar 25 10:18:59 2011 -0600

    Combine component packaging methods into an enum.
    
    Also allow generators to override the default packaging method.
    Add a ONE_PER_GROUP option so that method can be specified by the user without relying on defaults.

diff --git a/Source/CPack/cmCPackArchiveGenerator.cxx b/Source/CPack/cmCPackArchiveGenerator.cxx
index 55d9890..5b4625b 100644
--- a/Source/CPack/cmCPackArchiveGenerator.cxx
+++ b/Source/CPack/cmCPackArchiveGenerator.cxx
@@ -244,7 +244,7 @@ int cmCPackArchiveGenerator::PackageFiles()
     // CASE 1 : COMPONENT ALL-IN-ONE package
     // If ALL COMPONENTS in ONE package has been requested
     // then the package file is unique and should be open here.
-    if (allComponentInOne)
+    if (componentPackageMethod == ONE_PACKAGE)
       {
       return PackageComponentsAllInOne();
       }
@@ -254,7 +254,7 @@ int cmCPackArchiveGenerator::PackageFiles()
     // in this case you'll get 1 package for each component.
     else
       {
-      return PackageComponents(ignoreComponentGroup);
+      return PackageComponents(componentPackageMethod == ONE_PACKAGE_PER_COMPONENT);
       }
   }
 
diff --git a/Source/CPack/cmCPackDebGenerator.cxx b/Source/CPack/cmCPackDebGenerator.cxx
index 82038e9..582f3e6 100644
--- a/Source/CPack/cmCPackDebGenerator.cxx
+++ b/Source/CPack/cmCPackDebGenerator.cxx
@@ -240,7 +240,7 @@ int cmCPackDebGenerator::PackageFiles()
     // CASE 1 : COMPONENT ALL-IN-ONE package
     // If ALL GROUPS or ALL COMPONENTS in ONE package has been requested
     // then the package file is unique and should be open here.
-    if (allComponentInOne)
+    if (componentPackageMethod == ONE_PACKAGE)
       {
       return PackageComponentsAllInOne();
       }
@@ -250,7 +250,7 @@ int cmCPackDebGenerator::PackageFiles()
     // in this case you'll get 1 package for each component.
     else
       {
-      return PackageComponents(ignoreComponentGroup);
+      return PackageComponents(componentPackageMethod == ONE_PACKAGE_PER_COMPONENT);
       }
   }
   // CASE 3 : NON COMPONENT package.
@@ -560,11 +560,11 @@ bool cmCPackDebGenerator::SupportsComponentInstallation() const
 std::string cmCPackDebGenerator::GetComponentInstallDirNameSuffix(
     const std::string& componentName)
   {
-  if (ignoreComponentGroup) {
+  if (componentPackageMethod == ONE_PACKAGE_PER_COMPONENT) {
     return componentName;
   }
 
-  if (allComponentInOne) {
+  if (componentPackageMethod == ONE_PACKAGE) {
     return std::string("ALL_COMPONENTS_IN_ONE");
   }
   // We have to find the name of the COMPONENT GROUP
diff --git a/Source/CPack/cmCPackGenerator.cxx b/Source/CPack/cmCPackGenerator.cxx
index 691092f..6d71ad2 100644
--- a/Source/CPack/cmCPackGenerator.cxx
+++ b/Source/CPack/cmCPackGenerator.cxx
@@ -36,8 +36,7 @@ cmCPackGenerator::cmCPackGenerator()
   this->GeneratorVerbose = false;
   this->MakefileMap = 0;
   this->Logger = 0;
-  this->allComponentInOne = false;
-  this->ignoreComponentGroup = false;
+  this->componentPackageMethod = ONE_PACKAGE_PER_GROUP;
 }
 
 //----------------------------------------------------------------------
@@ -1263,14 +1262,23 @@ int cmCPackGenerator::CleanTemporaryDirectory()
 //----------------------------------------------------------------------
 int cmCPackGenerator::PrepareGroupingKind()
 {
-  // The default behavior is to create 1 package by component group
-  // unless the user asked to put all COMPONENTS in a single package
-  allComponentInOne = (NULL != (this->GetOption(
-                                      "CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE"))
-                      );
-  ignoreComponentGroup = (NULL != (this->GetOption(
-                                         "CPACK_COMPONENTS_IGNORE_GROUPS"))
-                         );
+  // find a component package method specified by the user
+  ComponentPackageMethod method = UNKNOWN_COMPONENT_PACKAGE_METHOD;
+
+  if(this->GetOption("CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE"))
+    {
+    method = ONE_PACKAGE;
+    }
+
+  if(this->GetOption("CPACK_COMPONENTS_IGNORE_GROUPS"))
+    {
+    method = ONE_PACKAGE_PER_COMPONENT;
+    }
+
+  if(this->GetOption("CPACK_COMPONENTS_ONE_PACKAGE_PER_GROUP"))
+    {
+    method = ONE_PACKAGE_PER_GROUP;
+    }
 
   std::string groupingType;
 
@@ -1286,40 +1294,63 @@ int cmCPackGenerator::PrepareGroupingKind()
         << " requested component grouping = "<< groupingType <<std::endl);
     if (groupingType == "ALL_COMPONENTS_IN_ONE")
       {
-      allComponentInOne = true;
+      method = ONE_PACKAGE;
       }
     else if (groupingType == "IGNORE")
       {
-      ignoreComponentGroup = true;
+      method = ONE_PACKAGE_PER_COMPONENT;
+      }
+    else if (groupingType == "ONE_PER_GROUP")
+      {
+      method = ONE_PACKAGE_PER_GROUP;
       }
     else
       {
       cmCPackLogger(cmCPackLog::LOG_WARNING, "["
               << this->Name << "]"
               << " requested component grouping type <"<< groupingType
-              << "> UNKNOWN not in (ALL_COMPONENTS_IN_ONE,IGNORE)"
+              << "> UNKNOWN not in (ALL_COMPONENTS_IN_ONE,IGNORE,ONE_PER_GROUP)"
               << std::endl);
       }
     }
 
-  cmCPackLogger(cmCPackLog::LOG_VERBOSE,  "["
-        << this->Name << "]"
-        << " requested component grouping = ("
-        << ", ALL_COMPONENTS_IN_ONE=" << allComponentInOne
-        << ", IGNORE_GROUPS=" << ignoreComponentGroup
-        << ")"
-        << std::endl);
   // Some components were defined but NO group
-  // force ignoreGroups
-  if (this->ComponentGroups.empty() && (!this->Components.empty())
-      && (!ignoreComponentGroup)) {
+  // fallback to default if not group based
+  if(method == ONE_PACKAGE_PER_GROUP &&
+     this->ComponentGroups.empty() && !this->Components.empty())
+    {
+    if(componentPackageMethod == ONE_PACKAGE)
+      {
+      method = ONE_PACKAGE;
+      }
+    else
+      {
+      method = ONE_PACKAGE_PER_COMPONENT;
+      }
     cmCPackLogger(cmCPackLog::LOG_WARNING, "["
               << this->Name << "]"
-              << " Some Components defined but NO component group:"
+              << " One package per component group requested, but NO component groups exist:"
               << " Ignoring component group."
               << std::endl);
-    ignoreComponentGroup = true;
-  }
+    }
+
+  // if user specified packaging method, override the default packaging method
+  if(method != UNKNOWN_COMPONENT_PACKAGE_METHOD)
+    {
+    componentPackageMethod = method;
+    }
+
+  const char* method_names[] =
+    {
+    "ALL_COMPONENTS_IN_ONE",
+    "IGNORE_GROUPS",
+    "ONE_PER_GROUP"
+    };
+
+  cmCPackLogger(cmCPackLog::LOG_VERBOSE,  "["
+        << this->Name << "]"
+        << " requested component grouping = " << method_names[componentPackageMethod]
+        << std::endl);
 
   return 1;
 }
diff --git a/Source/CPack/cmCPackGenerator.h b/Source/CPack/cmCPackGenerator.h
index 9549d0b..f09c2a7 100644
--- a/Source/CPack/cmCPackGenerator.h
+++ b/Source/CPack/cmCPackGenerator.h
@@ -125,7 +125,7 @@ protected:
    * CPACK_COMPONENTS_ALL_IN_ONE_PACKAGE
    * CPACK_COMPONENTS_IGNORE_GROUPS
    * or
-   * CPACK_COMPONENTS_GROUPING
+   * CPACK_COMPONENTS_ONE_PACKAGE_PER_GROUP
    * @return 1 on success 0 on failure.
    */
   virtual int PrepareGroupingKind();
@@ -237,16 +237,28 @@ protected:
    */
   std::map<std::string, cmCPackComponent> Components;
   std::map<std::string, cmCPackComponentGroup> ComponentGroups;
+
   /**
-   * If true All component will be put in a single package.
+   * If components are enabled, this enum represents the different
+   * ways of mapping components to package files.
    */
-  bool allComponentInOne;
+  enum ComponentPackageMethod
+  {
+    /* one package for all components */
+    ONE_PACKAGE,
+    /* one package for each component */
+    ONE_PACKAGE_PER_COMPONENT,
+    /* one package for each group, with left over components in their own package */
+    ONE_PACKAGE_PER_GROUP,
+    UNKNOWN_COMPONENT_PACKAGE_METHOD
+  };
+
   /**
-   * If true component grouping will be ignored.
-   * You will still get 1 package for each component unless
-   * allComponentInOne is true.
+   * The component package method
+   * The default is ONE_PACKAGE_PER_GROUP, and generators may override the default
+   * before PrepareGroupingKind() is called.
    */
-  bool ignoreComponentGroup;
+  ComponentPackageMethod componentPackageMethod;
 
   cmCPackLog* Logger;
 private:
diff --git a/Source/CPack/cmCPackRPMGenerator.cxx b/Source/CPack/cmCPackRPMGenerator.cxx
index c926be6..9f55d23 100644
--- a/Source/CPack/cmCPackRPMGenerator.cxx
+++ b/Source/CPack/cmCPackRPMGenerator.cxx
@@ -205,7 +205,7 @@ int cmCPackRPMGenerator::PackageFiles()
     // CASE 1 : COMPONENT ALL-IN-ONE package
     // If ALL COMPONENTS in ONE package has been requested
     // then the package file is unique and should be open here.
-    if (allComponentInOne)
+    if (componentPackageMethod == ONE_PACKAGE)
       {
       return PackageComponentsAllInOne();
       }
@@ -215,7 +215,7 @@ int cmCPackRPMGenerator::PackageFiles()
     // in this case you'll get 1 package for each component.
     else
       {
-      return PackageComponents(ignoreComponentGroup);
+      return PackageComponents(componentPackageMethod == ONE_PACKAGE_PER_COMPONENT);
       }
   }
   // CASE 3 : NON COMPONENT package.
@@ -252,11 +252,11 @@ bool cmCPackRPMGenerator::SupportsComponentInstallation() const
 std::string cmCPackRPMGenerator::GetComponentInstallDirNameSuffix(
     const std::string& componentName)
   {
-  if (ignoreComponentGroup) {
+  if (componentPackageMethod == ONE_PACKAGE_PER_COMPONENT) {
     return componentName;
   }
 
-  if (allComponentInOne) {
+  if (componentPackageMethod == ONE_PACKAGE) {
     return std::string("ALL_COMPONENTS_IN_ONE");
   }
   // We have to find the name of the COMPONENT GROUP

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b52eac0ab26309d38d1e0d2ba55406db86980991
commit b52eac0ab26309d38d1e0d2ba55406db86980991
Merge: 9b6e16f 6dfc818
Author:     Clinton Stimpson <clinton at elemtech.com>
AuthorDate: Fri Mar 25 09:02:09 2011 -0600
Commit:     Clinton Stimpson <clinton at elemtech.com>
CommitDate: Fri Mar 25 09:02:09 2011 -0600

    Merge remote branch 'stage/CPack-fix11930-LeftOverComponents' into cpack-grouping-enum


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

Summary of changes:
 Source/CPack/cmCPackArchiveGenerator.cxx |    3 ++-
 Source/CPack/cmCPackDebGenerator.cxx     |    3 ++-
 Source/CPack/cmCPackGenerator.cxx        |   19 ++++++++++---------
 Source/CPack/cmCPackGenerator.h          |    6 ++++--
 Source/CPack/cmCPackRPMGenerator.cxx     |    3 ++-
 5 files changed, 20 insertions(+), 14 deletions(-)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list