summaryrefslogtreecommitdiffstats
path: root/Source/CPack/cmCPackNSISGenerator.cxx
diff options
context:
space:
mode:
authorEric NOULARD <eric.noulard@gmail.com>2010-08-11 17:48:39 (GMT)
committerBrad King <brad.king@kitware.com>2010-08-11 18:09:52 (GMT)
commitcd7b8a03f5403603da44432470f177601b5bf42b (patch)
tree4527678b66fe7a43415b538c989e061b0148fe8c /Source/CPack/cmCPackNSISGenerator.cxx
parent7c20f7b244c98b177e0eca13b3617c83d4691a77 (diff)
downloadCMake-cd7b8a03f5403603da44432470f177601b5bf42b.zip
CMake-cd7b8a03f5403603da44432470f177601b5bf42b.tar.gz
CMake-cd7b8a03f5403603da44432470f177601b5bf42b.tar.bz2
CPack: Refactor API in order to handle multi-file packages
The multi-argument CompressFiles(...) method has been replace by the no-argument PackageFiles() method and 3 more member variables. This will enable implemention of multi-package generators. Now each specific generator (which overloads PackageFiles()) may decide to change the name and/or the number of generated package files.
Diffstat (limited to 'Source/CPack/cmCPackNSISGenerator.cxx')
-rw-r--r--Source/CPack/cmCPackNSISGenerator.cxx13
1 files changed, 6 insertions, 7 deletions
diff --git a/Source/CPack/cmCPackNSISGenerator.cxx b/Source/CPack/cmCPackNSISGenerator.cxx
index 8329546..f6f9fbc 100644
--- a/Source/CPack/cmCPackNSISGenerator.cxx
+++ b/Source/CPack/cmCPackNSISGenerator.cxx
@@ -43,11 +43,10 @@ cmCPackNSISGenerator::~cmCPackNSISGenerator()
}
//----------------------------------------------------------------------
-int cmCPackNSISGenerator::CompressFiles(const char* outFileName,
- const char* toplevel, const std::vector<std::string>& files)
+int cmCPackNSISGenerator::PackageFiles()
{
- (void)outFileName; // TODO: Fix nsis to force out file name
- (void)toplevel;
+ // TODO: Fix nsis to force out file name
+
std::string nsisInFileName = this->FindTemplate("NSIS.template.in");
if ( nsisInFileName.size() == 0 )
{
@@ -74,7 +73,7 @@ int cmCPackNSISGenerator::CompressFiles(const char* outFileName,
std::vector<std::string>::const_iterator it;
for ( it = files.begin(); it != files.end(); ++ it )
{
- std::string fileN = cmSystemTools::RelativePath(toplevel,
+ std::string fileN = cmSystemTools::RelativePath(toplevel.c_str(),
it->c_str());
if (!this->Components.empty())
{
@@ -88,13 +87,13 @@ int cmCPackNSISGenerator::CompressFiles(const char* outFileName,
<< str.str().c_str() << std::endl);
this->SetOptionIfNotSet("CPACK_NSIS_DELETE_FILES", str.str().c_str());
std::vector<std::string> dirs;
- this->GetListOfSubdirectories(toplevel, dirs);
+ this->GetListOfSubdirectories(toplevel.c_str(), dirs);
std::vector<std::string>::const_iterator sit;
cmOStringStream dstr;
for ( sit = dirs.begin(); sit != dirs.end(); ++ sit )
{
std::string componentName;
- std::string fileN = cmSystemTools::RelativePath(toplevel, sit->c_str());
+ std::string fileN = cmSystemTools::RelativePath(toplevel.c_str(), sit->c_str());
if ( fileN.empty() )
{
continue;