[cmake-commits] alex committed cmCPackGenerators.cxx 1.19 1.20 cmCPackRPMGenerator.cxx NONE 1.1 cmCPackRPMGenerator.h NONE 1.1

cmake-commits at cmake.org cmake-commits at cmake.org
Wed Aug 8 11:33:44 EDT 2007


Update of /cvsroot/CMake/CMake/Source/CPack
In directory public:/mounts/ram/cvs-serv11168/Source/CPack

Modified Files:
	cmCPackGenerators.cxx 
Added Files:
	cmCPackRPMGenerator.cxx cmCPackRPMGenerator.h 
Log Message:

ENH: add empty RPM package generator, Eric Noulard wants to work on it

Alex


--- NEW FILE: cmCPackRPMGenerator.cxx ---
/*=========================================================================

  Program:   CMake - Cross-Platform Makefile Generator
  Module:    $RCSfile: cmCPackRPMGenerator.cxx,v $
  Language:  C++
  Date:      $Date: 2007/08/08 15:33:42 $
  Version:   $Revision: 1.1 $

  Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.
  See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.

     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
     PURPOSE.  See the above copyright notices for more information.

=========================================================================*/
#include "cmCPackRPMGenerator.h"

#include "cmSystemTools.h"
#include "cmMakefile.h"
#include "cmGeneratedFileStream.h"
#include "cmCPackLog.h"

#include <cmsys/SystemTools.hxx>
#include <cmsys/Glob.hxx>

//----------------------------------------------------------------------
cmCPackRPMGenerator::cmCPackRPMGenerator()
{
}

//----------------------------------------------------------------------
cmCPackRPMGenerator::~cmCPackRPMGenerator()
{
}

//----------------------------------------------------------------------
int cmCPackRPMGenerator::CompressFiles(const char* outFileName,
  const char* toplevel,
  const std::vector<std::string>& files)
{
  this->ReadListFile("CPackRPM.cmake");
  if (!this->IsSet("RPMBUILD_EXECUTABLE")) 
    {
    cmCPackLogger(cmCPackLog::LOG_ERROR, "Cannot find rpmbuild" << std::endl);
    return 0;
    }
  const char* rpmbuildExecutable = this->GetOption("RPMBUILD_EXECUTABLE");

  return 1;
}

//----------------------------------------------------------------------
int cmCPackRPMGenerator::InitializeInternal()
{
  return this->Superclass::InitializeInternal();
}


--- NEW FILE: cmCPackRPMGenerator.h ---
/*=========================================================================

  Program:   CMake - Cross-Platform Makefile Generator
  Module:    $RCSfile: cmCPackRPMGenerator.h,v $
  Language:  C++
  Date:      $Date: 2007/08/08 15:33:42 $
  Version:   $Revision: 1.1 $

  Copyright (c) 2002 Kitware, Inc. All rights reserved.
  See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details.

     This software is distributed WITHOUT ANY WARRANTY; without even 
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
     PURPOSE.  See the above copyright notices for more information.

=========================================================================*/

#ifndef cmCPackRPMGenerator_h
#define cmCPackRPMGenerator_h


#include "cmCPackGenericGenerator.h"

/** \class cmCPackRPMGenerator
 * \brief A generator for RPM packages
 *
 */
class cmCPackRPMGenerator : public cmCPackGenericGenerator
{
public:
  cmCPackTypeMacro(cmCPackRPMGenerator, cmCPackGenericGenerator);

  /**
   * Construct generator
   */
  cmCPackRPMGenerator();
  virtual ~cmCPackRPMGenerator();

protected:
  virtual int InitializeInternal();
  int CompressFiles(const char* outFileName, const char* toplevel,
    const std::vector<std::string>& files);
  virtual const char* GetOutputExtension() { return ".rpm"; }
  virtual const char* GetInstallPrefix() { return "/usr"; }

};

#endif

Index: cmCPackGenerators.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/CPack/cmCPackGenerators.cxx,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -d -r1.19 -r1.20
--- cmCPackGenerators.cxx	27 Jul 2007 14:55:24 -0000	1.19
+++ cmCPackGenerators.cxx	8 Aug 2007 15:33:42 -0000	1.20
@@ -37,6 +37,7 @@
 #if !defined(_WIN32) && !defined(__APPLE__) \
  && !defined(__QNXNTO__) && !defined(__BEOS__)
 #  include "cmCPackDebGenerator.h"
+#  include "cmCPackRPMGenerator.h"
 #endif
 
 
@@ -74,6 +75,8 @@
   && !defined(__QNXNTO__) && !defined(__BEOS__)
   this->RegisterGenerator("DEB", "Debian packages",
     cmCPackDebGenerator::CreateGenerator);
+  this->RegisterGenerator("RPM", "RPM packages",
+    cmCPackDebGenerator::CreateGenerator);
 #endif
 }
 



More information about the Cmake-commits mailing list