mirror of
https://github.com/Kitware/CMake.git
synced 2026-04-26 00:00:39 -05:00
Merge topic 'add-xz-support'
4035ef78cmake -E tar: error out on multiple compression formatsd811d238cmSystemTools: use an enumeration for compression formatsdf16dcfbcmake -E tar: add support for .xz files with 'J'b0a5d393cmake -E tar: clean up flag documentation
This commit is contained in:
@@ -1474,7 +1474,8 @@ bool cmSystemTools::IsPathToFramework(const char* path)
|
||||
|
||||
bool cmSystemTools::CreateTar(const char* outFileName,
|
||||
const std::vector<std::string>& files,
|
||||
bool gzip, bool bzip2, bool verbose)
|
||||
cmTarCompression compressType,
|
||||
bool verbose)
|
||||
{
|
||||
#if defined(CMAKE_BUILD_WITH_CMAKE)
|
||||
std::string cwd = cmSystemTools::GetCurrentWorkingDirectory();
|
||||
@@ -1488,10 +1489,24 @@ bool cmSystemTools::CreateTar(const char* outFileName,
|
||||
cmSystemTools::Error(e.c_str());
|
||||
return false;
|
||||
}
|
||||
cmArchiveWrite a(fout, (gzip? cmArchiveWrite::CompressGZip :
|
||||
(bzip2? cmArchiveWrite::CompressBZip2 :
|
||||
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)
|
||||
@@ -1516,7 +1531,6 @@ bool cmSystemTools::CreateTar(const char* outFileName,
|
||||
#else
|
||||
(void)outFileName;
|
||||
(void)files;
|
||||
(void)gzip;
|
||||
(void)verbose;
|
||||
return false;
|
||||
#endif
|
||||
@@ -1777,7 +1791,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);
|
||||
@@ -1789,7 +1803,6 @@ bool cmSystemTools::ExtractTar(const char* outFileName,
|
||||
}
|
||||
|
||||
bool cmSystemTools::ListTar(const char* outFileName,
|
||||
bool ,
|
||||
bool verbose)
|
||||
{
|
||||
#if defined(CMAKE_BUILD_WITH_CMAKE)
|
||||
|
||||
Reference in New Issue
Block a user