Sfoglia il codice sorgente

Make cmCPackGenerator not inherit from cmObject

Daniel Pfeifer 9 anni fa
parent
commit
2214011f7b

+ 1 - 1
Source/CPack/cmCPackArchiveGenerator.h

@@ -23,7 +23,7 @@ class cmCPackComponent;
 class cmCPackArchiveGenerator : public cmCPackGenerator
 class cmCPackArchiveGenerator : public cmCPackGenerator
 {
 {
 public:
 public:
-  cmTypeMacro(cmCPackArchiveGenerator, cmCPackGenerator);
+  typedef cmCPackGenerator Superclass;
 
 
   /**
   /**
    * Construct generator
    * Construct generator

+ 5 - 4
Source/CPack/cmCPackGenerator.h

@@ -20,7 +20,8 @@ class cmInstalledFile;
 class cmMakefile;
 class cmMakefile;
 
 
 #define cmCPackTypeMacro(klass, superclass)                                   \
 #define cmCPackTypeMacro(klass, superclass)                                   \
-  cmTypeMacro(klass, superclass);                                             \
+  typedef superclass Superclass;                                              \
+  const char* GetNameOfClass() CM_OVERRIDE { return #klass; }                 \
   static cmCPackGenerator* CreateGenerator() { return new klass; }            \
   static cmCPackGenerator* CreateGenerator() { return new klass; }            \
   class cmCPackTypeMacro_UseTrailingSemicolon
   class cmCPackTypeMacro_UseTrailingSemicolon
 
 
@@ -36,10 +37,10 @@ class cmMakefile;
  * \brief A superclass of all CPack Generators
  * \brief A superclass of all CPack Generators
  *
  *
  */
  */
-class cmCPackGenerator : public cmObject
+class cmCPackGenerator
 {
 {
 public:
 public:
-  cmTypeMacro(cmCPackGenerator, cmObject);
+  virtual const char* GetNameOfClass() = 0;
   /**
   /**
    * If verbose then more information is printed out
    * If verbose then more information is printed out
    */
    */
@@ -83,7 +84,7 @@ public:
    * Construct generator
    * Construct generator
    */
    */
   cmCPackGenerator();
   cmCPackGenerator();
-  ~cmCPackGenerator() CM_OVERRIDE;
+  virtual ~cmCPackGenerator();
 
 
   //! Set and get the options
   //! Set and get the options
   void SetOption(const std::string& op, const char* value);
   void SetOption(const std::string& op, const char* value);