[Cmake-commits] CMake branch, next, updated. v3.1.0-1627-gb5061d4
Ben Boeckel
ben.boeckel at kitware.com
Fri Jan 9 12:06:00 EST 2015
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 b5061d40e11d93a449736ffa0b363a36bea97898 (commit)
via 7cd1b9bf75fcac42b937e5aae4d3f5a6a61fcb4e (commit)
via 312ac7257eacbe909f0544a8e9bce3f11f404a26 (commit)
via 54df2294ed54b2b6746d94534ff6584371e9d082 (commit)
from 5f3322884cc5903d3198f760191e2990c361330d (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=b5061d40e11d93a449736ffa0b363a36bea97898
commit b5061d40e11d93a449736ffa0b363a36bea97898
Merge: 5f33228 7cd1b9b
Author: Ben Boeckel <ben.boeckel at kitware.com>
AuthorDate: Fri Jan 9 12:05:59 2015 -0500
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Jan 9 12:05:59 2015 -0500
Merge topic 'add-xz-support' into next
7cd1b9bf cmSystemTools: remove unused gzip argument
312ac725 cmake -E tar: error out on multiple compression formats
54df2294 cmSystemTools: use an enumeration for compression formats
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7cd1b9bf75fcac42b937e5aae4d3f5a6a61fcb4e
commit 7cd1b9bf75fcac42b937e5aae4d3f5a6a61fcb4e
Author: Ben Boeckel <ben.boeckel at kitware.com>
AuthorDate: Fri Jan 9 12:04:56 2015 -0500
Commit: Ben Boeckel <ben.boeckel at kitware.com>
CommitDate: Fri Jan 9 12:05:48 2015 -0500
cmSystemTools: remove unused gzip argument
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
index 036e859..0271665 100644
--- a/Source/cmSystemTools.cxx
+++ b/Source/cmSystemTools.cxx
@@ -1800,7 +1800,7 @@ bool extract_tar(const char* outFileName, bool verbose,
#endif
bool cmSystemTools::ExtractTar(const char* outFileName,
- bool , bool verbose)
+ bool verbose)
{
#if defined(CMAKE_BUILD_WITH_CMAKE)
return extract_tar(outFileName, verbose, true);
@@ -1812,7 +1812,6 @@ bool cmSystemTools::ExtractTar(const char* outFileName,
}
bool cmSystemTools::ListTar(const char* outFileName,
- bool ,
bool verbose)
{
#if defined(CMAKE_BUILD_WITH_CMAKE)
diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h
index ad269b1..09ceea6 100644
--- a/Source/cmSystemTools.h
+++ b/Source/cmSystemTools.h
@@ -391,11 +391,11 @@ public:
TarCompressNone
};
static bool ListTar(const char* outFileName,
- bool gzip, bool verbose);
+ bool verbose);
static bool CreateTar(const char* outFileName,
const std::vector<std::string>& files,
cmTarCompression compressType, bool verbose);
- static bool ExtractTar(const char* inFileName, bool gzip,
+ static bool ExtractTar(const char* inFileName,
bool verbose);
// This should be called first thing in main
// it will keep child processes from inheriting the
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index b30c8a6..27dd08b 100644
--- a/Source/cmcmd.cxx
+++ b/Source/cmcmd.cxx
@@ -765,7 +765,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args)
if ( flags.find_first_of('t') != flags.npos )
{
- if ( !cmSystemTools::ListTar(outFile.c_str(), gzip, verbose) )
+ if ( !cmSystemTools::ListTar(outFile.c_str(), verbose) )
{
cmSystemTools::Error("Problem creating tar: ", outFile.c_str());
return 1;
@@ -783,7 +783,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args)
else if ( flags.find_first_of('x') != flags.npos )
{
if ( !cmSystemTools::ExtractTar(
- outFile.c_str(), gzip, verbose) )
+ outFile.c_str(), verbose) )
{
cmSystemTools::Error("Problem extracting tar: ", outFile.c_str());
return 1;
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=312ac7257eacbe909f0544a8e9bce3f11f404a26
commit 312ac7257eacbe909f0544a8e9bce3f11f404a26
Author: Ben Boeckel <ben.boeckel at kitware.com>
AuthorDate: Fri Jan 9 10:33:36 2015 -0500
Commit: Ben Boeckel <ben.boeckel at kitware.com>
CommitDate: Fri Jan 9 12:05:47 2015 -0500
cmake -E tar: error out on multiple compression formats
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index f7bb20e..b30c8a6 100644
--- a/Source/cmcmd.cxx
+++ b/Source/cmcmd.cxx
@@ -736,17 +736,27 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args)
cmSystemTools::cmTarCompression compress =
cmSystemTools::TarCompressNone;
bool verbose = false;
+ int nCompress = 0;
if ( flags.find_first_of('j') != flags.npos )
{
compress = cmSystemTools::TarCompressBZip2;
+ ++nCompress;
}
if ( flags.find_first_of('J') != flags.npos )
{
compress = cmSystemTools::TarCompressXZ;
+ ++nCompress;
}
if ( flags.find_first_of('z') != flags.npos )
{
compress = cmSystemTools::TarCompressGZip;
+ ++nCompress;
+ }
+ if ( nCompress > 1 )
+ {
+ cmSystemTools::Error("Can only compress a tar file one way; "
+ "at most one flag of z, j, or J may be used");
+ return 1;
}
if ( flags.find_first_of('v') != flags.npos )
{
http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=54df2294ed54b2b6746d94534ff6584371e9d082
commit 54df2294ed54b2b6746d94534ff6584371e9d082
Author: Ben Boeckel <ben.boeckel at kitware.com>
AuthorDate: Fri Jan 9 10:33:00 2015 -0500
Commit: Ben Boeckel <ben.boeckel at kitware.com>
CommitDate: Fri Jan 9 12:05:39 2015 -0500
cmSystemTools: use an enumeration for compression formats
Juggling 3 booleans was unwieldy.
diff --git a/Source/cmCTest.cxx b/Source/cmCTest.cxx
index f02d78e..e1391a7 100644
--- a/Source/cmCTest.cxx
+++ b/Source/cmCTest.cxx
@@ -1675,7 +1675,7 @@ std::string cmCTest::Base64GzipEncodeFile(std::string file)
files.push_back(file);
if(!cmSystemTools::CreateTar(tarFile.c_str(), files,
- true, false, false, false))
+ cmSystemTools::TarCompressGZip, false))
{
cmCTestLog(this, ERROR_MESSAGE, "Error creating tar while "
"encoding file: " << file << std::endl);
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx
index cd63347..036e859 100644
--- a/Source/cmSystemTools.cxx
+++ b/Source/cmSystemTools.cxx
@@ -1482,7 +1482,7 @@ bool cmSystemTools::IsPathToFramework(const char* path)
bool cmSystemTools::CreateTar(const char* outFileName,
const std::vector<std::string>& files,
- bool gzip, bool bzip2, bool xz,
+ cmTarCompression compressType,
bool verbose)
{
#if defined(CMAKE_BUILD_WITH_CMAKE)
@@ -1497,11 +1497,24 @@ bool cmSystemTools::CreateTar(const char* outFileName,
cmSystemTools::Error(e.c_str());
return false;
}
- cmArchiveWrite a(fout, (gzip? cmArchiveWrite::CompressGZip :
- (bzip2? cmArchiveWrite::CompressBZip2 :
- (xz? cmArchiveWrite::CompressXZ :
- cmArchiveWrite::CompressNone))),
- cmArchiveWrite::TypeTAR);
+ cmArchiveWrite::Compress compress = cmArchiveWrite::CompressNone;
+ switch (compressType)
+ {
+ case TarCompressGZip:
+ compress = cmArchiveWrite::CompressGZip;
+ break;
+ case TarCompressBZip2:
+ compress = cmArchiveWrite::CompressBZip2;
+ break;
+ case TarCompressXZ:
+ compress = cmArchiveWrite::CompressXZ;
+ break;
+ case TarCompressNone:
+ compress = cmArchiveWrite::CompressNone;
+ break;
+ }
+ cmArchiveWrite a(fout, compress,
+ cmArchiveWrite::TypeTAR);
a.SetVerbose(verbose);
for(std::vector<std::string>::const_iterator i = files.begin();
i != files.end(); ++i)
diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h
index 47d2771..ad269b1 100644
--- a/Source/cmSystemTools.h
+++ b/Source/cmSystemTools.h
@@ -383,11 +383,18 @@ public:
static void EnableVSConsoleOutput();
/** Create tar */
+ enum cmTarCompression
+ {
+ TarCompressGZip,
+ TarCompressBZip2,
+ TarCompressXZ,
+ TarCompressNone
+ };
static bool ListTar(const char* outFileName,
bool gzip, bool verbose);
static bool CreateTar(const char* outFileName,
- const std::vector<std::string>& files, bool gzip,
- bool bzip2, bool xz, bool verbose);
+ const std::vector<std::string>& files,
+ cmTarCompression compressType, bool verbose);
static bool ExtractTar(const char* inFileName, bool gzip,
bool verbose);
// This should be called first thing in main
diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx
index 6b3efb5..f7bb20e 100644
--- a/Source/cmcmd.cxx
+++ b/Source/cmcmd.cxx
@@ -733,21 +733,20 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args)
{
files.push_back(args[cc]);
}
- bool gzip = false;
- bool bzip2 = false;
- bool xz = false;
+ cmSystemTools::cmTarCompression compress =
+ cmSystemTools::TarCompressNone;
bool verbose = false;
if ( flags.find_first_of('j') != flags.npos )
{
- bzip2 = true;
+ compress = cmSystemTools::TarCompressBZip2;
}
if ( flags.find_first_of('J') != flags.npos )
{
- xz = true;
+ compress = cmSystemTools::TarCompressXZ;
}
if ( flags.find_first_of('z') != flags.npos )
{
- gzip = true;
+ compress = cmSystemTools::TarCompressGZip;
}
if ( flags.find_first_of('v') != flags.npos )
{
@@ -765,7 +764,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector<std::string>& args)
else if ( flags.find_first_of('c') != flags.npos )
{
if ( !cmSystemTools::CreateTar(
- outFile.c_str(), files, gzip, bzip2, xz, verbose) )
+ outFile.c_str(), files, compress, verbose) )
{
cmSystemTools::Error("Problem creating tar: ", outFile.c_str());
return 1;
-----------------------------------------------------------------------
Summary of changes:
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list