mirror of
https://github.com/oasislinux/oasis.git
synced 2026-10-14 15:57:47 +02:00
91 lines
2.4 KiB
Diff
91 lines
2.4 KiB
Diff
From c0b84520a7c92b67b195c6ec9ed9185438810380 Mon Sep 17 00:00:00 2001
|
|
From: Michael Forney <mforney@mforney.org>
|
|
Date: Sat, 3 Dec 2016 23:50:27 -0800
|
|
Subject: [PATCH] pax: Support xz compression with -J flag
|
|
|
|
---
|
|
bin/pax/options.c | 25 ++++++++++++++++++++++---
|
|
1 file changed, 22 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/bin/pax/options.c b/bin/pax/options.c
|
|
index 9dd2ea0ce25..63f17f2c1c7 100644
|
|
--- a/bin/pax/options.c
|
|
+++ b/bin/pax/options.c
|
|
@@ -156,6 +156,7 @@ static int xz_id(char *_blk, int _size);
|
|
#define GZIP_CMD "gzip" /* command to run as gzip */
|
|
#define COMPRESS_CMD "compress" /* command to run as compress */
|
|
#define BZIP2_CMD "bzip2" /* command to run as bzip2 */
|
|
+#define XZ_CMD "xz" /* command to run as xz */
|
|
|
|
/*
|
|
* Format specific routine table
|
|
@@ -312,7 +313,7 @@ pax_options(int argc, char **argv)
|
|
/*
|
|
* process option flags
|
|
*/
|
|
- while ((c=getopt(argc,argv,"ab:cdf:ijklno:p:rs:tuvwx:zB:DE:G:HLOPT:U:XYZ0"))
|
|
+ while ((c=getopt(argc,argv,"ab:cdf:ijklno:p:rs:tuvwx:zB:DE:G:HJLOPT:U:XYZ0"))
|
|
!= -1) {
|
|
switch (c) {
|
|
case 'a':
|
|
@@ -568,6 +569,12 @@ pax_options(int argc, char **argv)
|
|
Hflag = 1;
|
|
flg |= CHF;
|
|
break;
|
|
+ case 'J':
|
|
+ /*
|
|
+ * use xz. Non standard option.
|
|
+ */
|
|
+ gzip_program = XZ_CMD;
|
|
+ break;
|
|
case 'L':
|
|
/*
|
|
* follow symlinks
|
|
@@ -744,7 +751,7 @@ tar_options(int argc, char **argv)
|
|
* process option flags
|
|
*/
|
|
while ((c = getoldopt(argc, argv,
|
|
- "b:cef:hjmopqruts:vwxzBC:F:HI:LNOPXZ014578")) != -1) {
|
|
+ "b:cef:hjmopqruts:vwxzBC:F:HI:JLNOPXZ014578")) != -1) {
|
|
switch (c) {
|
|
case 'b':
|
|
/*
|
|
@@ -911,6 +918,12 @@ tar_options(int argc, char **argv)
|
|
incfiles[nincfiles - 1].file = optarg;
|
|
incfiles[nincfiles - 1].dir = chdname;
|
|
break;
|
|
+ case 'J':
|
|
+ /*
|
|
+ * use xz. Non standard option.
|
|
+ */
|
|
+ gzip_program = XZ_CMD;
|
|
+ break;
|
|
case 'L':
|
|
/*
|
|
* follow symlinks
|
|
@@ -1194,7 +1207,7 @@ cpio_options(int argc, char **argv)
|
|
dflag = 1;
|
|
act = -1;
|
|
nodirs = 1;
|
|
- while ((c=getopt(argc,argv,"abcdfijklmoprstuvzABC:E:F:H:I:LO:SZ6")) != -1)
|
|
+ while ((c=getopt(argc,argv,"abcdfijklmoprstuvzABC:E:F:H:I:JLO:SZ6")) != -1)
|
|
switch (c) {
|
|
case 'a':
|
|
/*
|
|
@@ -1378,6 +1391,12 @@ cpio_options(int argc, char **argv)
|
|
(void)fputs("\n\n", stderr);
|
|
cpio_usage();
|
|
break;
|
|
+ case 'J':
|
|
+ /*
|
|
+ * use xz. Non standard option.
|
|
+ */
|
|
+ gzip_program = XZ_CMD;
|
|
+ break;
|
|
case 'L':
|
|
/*
|
|
* follow symbolic links
|
|
--
|
|
2.49.0
|
|
|