Package Kit: add Zstd compression.
Change-Id: Idbdb7cf1bde659046a88ea69a76e3b5fc4cd7013 Reviewed-on: https://review.haiku-os.org/323 Reviewed-by: Adrien Destugues <[email protected]>
This commit is contained in:
committed by
waddlesplash
parent
b8a38e2bc1
commit
81375d4fbb
@@ -39,6 +39,7 @@ command_create(int argc, const char* const* argv)
|
||||
bool quiet = false;
|
||||
bool verbose = false;
|
||||
int32 compressionLevel = BPackageKit::BHPKG::B_HPKG_COMPRESSION_LEVEL_BEST;
|
||||
int32 compression = BPackageKit::BHPKG::B_HPKG_COMPRESSION_ZLIB;
|
||||
|
||||
while (true) {
|
||||
static struct option sLongOptions[] = {
|
||||
@@ -49,7 +50,7 @@ command_create(int argc, const char* const* argv)
|
||||
};
|
||||
|
||||
opterr = 0; // don't print errors
|
||||
int c = getopt_long(argc, (char**)argv, "+b0123456789C:hi:I:qv",
|
||||
int c = getopt_long(argc, (char**)argv, "+b0123456789C:hi:I:qvz",
|
||||
sLongOptions, NULL);
|
||||
if (c == -1)
|
||||
break;
|
||||
@@ -96,6 +97,10 @@ command_create(int argc, const char* const* argv)
|
||||
verbose = true;
|
||||
break;
|
||||
|
||||
case 'z':
|
||||
compression = BPackageKit::BHPKG::B_HPKG_COMPRESSION_ZSTD;
|
||||
break;
|
||||
|
||||
default:
|
||||
print_usage_and_exit(true);
|
||||
break;
|
||||
@@ -123,6 +128,10 @@ command_create(int argc, const char* const* argv)
|
||||
BPackageKit::BHPKG::B_HPKG_COMPRESSION_NONE);
|
||||
}
|
||||
|
||||
if (compressionLevel == 0)
|
||||
compression = BPackageKit::BHPKG::B_HPKG_COMPRESSION_NONE;
|
||||
writerParameters.SetCompression(compression);
|
||||
|
||||
PackageWriterListener listener(verbose, quiet);
|
||||
BPackageWriter packageWriter(&listener);
|
||||
status_t result = packageWriter.Init(packageFileName, &writerParameters);
|
||||
|
||||
@@ -45,6 +45,7 @@ command_recompress(int argc, const char* const* argv)
|
||||
bool quiet = false;
|
||||
bool verbose = false;
|
||||
int32 compressionLevel = BPackageKit::BHPKG::B_HPKG_COMPRESSION_LEVEL_BEST;
|
||||
int32 compression = BPackageKit::BHPKG::B_HPKG_COMPRESSION_ZLIB;
|
||||
|
||||
while (true) {
|
||||
static struct option sLongOptions[] = {
|
||||
@@ -55,7 +56,7 @@ command_recompress(int argc, const char* const* argv)
|
||||
};
|
||||
|
||||
opterr = 0; // don't print errors
|
||||
int c = getopt_long(argc, (char**)argv, "+0123456789:hqv",
|
||||
int c = getopt_long(argc, (char**)argv, "+0123456789:hqvz",
|
||||
sLongOptions, NULL);
|
||||
if (c == -1)
|
||||
break;
|
||||
@@ -86,6 +87,10 @@ command_recompress(int argc, const char* const* argv)
|
||||
verbose = true;
|
||||
break;
|
||||
|
||||
case 'z':
|
||||
compression = BPackageKit::BHPKG::B_HPKG_COMPRESSION_ZSTD;
|
||||
break;
|
||||
|
||||
default:
|
||||
print_usage_and_exit(true);
|
||||
break;
|
||||
@@ -124,6 +129,10 @@ command_recompress(int argc, const char* const* argv)
|
||||
BPackageKit::BHPKG::B_HPKG_COMPRESSION_NONE);
|
||||
}
|
||||
|
||||
if (compressionLevel == 0)
|
||||
compression = BPackageKit::BHPKG::B_HPKG_COMPRESSION_NONE;
|
||||
writerParameters.SetCompression(compression);
|
||||
|
||||
PackageWriterListener listener(verbose, quiet);
|
||||
BPackageWriter packageWriter(&listener);
|
||||
if (strcmp(outputPackageFileName, "-") == 0) {
|
||||
|
||||
@@ -50,6 +50,7 @@ static const char* kUsage =
|
||||
"\n"
|
||||
" -q - Be quiet (don't show any output except for errors).\n"
|
||||
" -v - Be verbose (show more info about created package).\n"
|
||||
" -z - Use Zstd compression.\n"
|
||||
"\n"
|
||||
" create [ <options> ] <package>\n"
|
||||
" Creates package file <package> from contents of current directory.\n"
|
||||
@@ -120,6 +121,7 @@ static const char* kUsage =
|
||||
" Defaults to 9.\n"
|
||||
" -q - Be quiet (don't show any output except for errors).\n"
|
||||
" -v - Be verbose (show more info about created package).\n"
|
||||
" -z - Use Zstd compression.\n"
|
||||
"\n"
|
||||
"Common Options:\n"
|
||||
" -h, --help - Print this usage info.\n"
|
||||
|
||||
Reference in New Issue
Block a user