mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Sascha Hauer <s.hauer@pengutronix.de>
To: barebox@lists.infradead.org
Subject: [PATCH 13/16] add generic uncompress command
Date: Mon, 28 Nov 2011 23:10:06 +0100	[thread overview]
Message-ID: <1322518209-2965-14-git-send-email-s.hauer@pengutronix.de> (raw)
In-Reply-To: <1322518209-2965-1-git-send-email-s.hauer@pengutronix.de>

Using the new uncompress function we can now implement a command which
can uncompress all known compression types. This supplements the unlzo
command.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 commands/Kconfig                   |   10 +++++-----
 commands/Makefile                  |    2 +-
 commands/{unlzo.c => uncompress.c} |   23 ++++++++++++-----------
 3 files changed, 18 insertions(+), 17 deletions(-)
 rename commands/{unlzo.c => uncompress.c} (73%)

diff --git a/commands/Kconfig b/commands/Kconfig
index e5c0fb5..890be78 100644
--- a/commands/Kconfig
+++ b/commands/Kconfig
@@ -402,13 +402,13 @@ config CMD_GPIO
 	  include gpio_set_value, gpio_get_value, gpio_direction_input and
 	  gpio_direction_output commands to control gpios.
 
-config CMD_UNLZO
+config CMD_UNCOMPRESS
 	bool
-	select LZO_DECOMPRESS
-	prompt "unlzo"
+	prompt "uncompress"
 	help
-	  Say yes here to get the unlzo command. lzo is a fast compression
-	  algorithm by Markus Franz Xaver Johannes Oberhumer.
+	  Say yes here to get the uncompress command. uncompress handles
+	  lzo, gzip and bzip2 compressed files depending on the compiled
+	  in compression libraries
 
 config CMD_I2C
 	bool
diff --git a/commands/Makefile b/commands/Makefile
index 5c51916..0aae666 100644
--- a/commands/Makefile
+++ b/commands/Makefile
@@ -47,7 +47,7 @@ obj-$(CONFIG_CMD_INSMOD)	+= insmod.o
 obj-$(CONFIG_CMD_BMP)		+= bmp.o
 obj-$(CONFIG_USB_GADGET_DFU)	+= dfu.o
 obj-$(CONFIG_CMD_GPIO)		+= gpio.o
-obj-$(CONFIG_CMD_UNLZO)		+= unlzo.o
+obj-$(CONFIG_CMD_UNCOMPRESS)	+= uncompress.o
 obj-$(CONFIG_CMD_I2C)		+= i2c.o
 obj-$(CONFIG_CMD_UBI)		+= ubi.o
 obj-$(CONFIG_CMD_MENU)		+= menu.o
diff --git a/commands/unlzo.c b/commands/uncompress.c
similarity index 73%
rename from commands/unlzo.c
rename to commands/uncompress.c
index 0b6dd4b..fff6227 100644
--- a/commands/unlzo.c
+++ b/commands/uncompress.c
@@ -1,5 +1,5 @@
 /*
- * unlzo.c - uncompress a lzo compressed file
+ * uncompress.c - uncompress a lzo compressed file
  *
  * Copyright (c) 2010 Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix
  *
@@ -25,11 +25,11 @@
 #include <errno.h>
 #include <fcntl.h>
 #include <fs.h>
-#include <lzo.h>
+#include <uncompress.h>
 
-static int do_unlzo(struct command *cmdtp, int argc, char *argv[])
+static int do_uncompress(struct command *cmdtp, int argc, char *argv[])
 {
-	int from, to, ret, retlen;
+	int from, to, ret;
 
 	if (argc != 3)
 		return COMMAND_ERROR_USAGE;
@@ -47,7 +47,8 @@ static int do_unlzo(struct command *cmdtp, int argc, char *argv[])
 		goto exit_close;
 	}
 
-	ret = unlzo(from, to, &retlen);
+	ret = uncompress_fd_to_fd(from, to, uncompress_err_stdout);
+
 	if (ret)
 		printf("failed to decompress\n");
 
@@ -57,13 +58,13 @@ exit_close:
 	return ret;
 }
 
-static const __maybe_unused char cmd_unlzo_help[] =
-"Usage: unlzo <infile> <outfile>\n"
-"Uncompress a lzo compressed file\n";
+static const __maybe_unused char cmd_uncompress_help[] =
+"Usage: uncompress <infile> <outfile>\n"
+"Uncompress a compressed file\n";
 
-BAREBOX_CMD_START(unlzo)
-        .cmd            = do_unlzo,
+BAREBOX_CMD_START(uncompress)
+        .cmd            = do_uncompress,
         .usage          = "lzop <infile> <outfile>",
-        BAREBOX_CMD_HELP(cmd_unlzo_help)
+        BAREBOX_CMD_HELP(cmd_uncompress_help)
 BAREBOX_CMD_END
 
-- 
1.7.7.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  parent reply	other threads:[~2011-11-28 22:10 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-28 22:09 uncompress work Sascha Hauer
2011-11-28 22:09 ` [PATCH 01/16] armlinux: remove unnecessary include Sascha Hauer
2011-11-28 22:09 ` [PATCH 02/16] arm bootm: " Sascha Hauer
2011-11-28 22:09 ` [PATCH 03/16] scripts/mkimage.c: " Sascha Hauer
2011-11-28 22:09 ` [PATCH 04/16] use kernel bunzip implementation Sascha Hauer
2011-11-28 22:09 ` [PATCH 05/16] remove old bzlib Sascha Hauer
2011-11-28 22:09 ` [PATCH 06/16] add kernel gunzip implementation Sascha Hauer
2011-11-28 22:10 ` [PATCH 07/16] remove old zlib Sascha Hauer
2011-12-03 18:47   ` Jean-Christophe PLAGNIOL-VILLARD
2011-11-28 22:10 ` [PATCH 08/16] lib: prompt for uncompression functions Sascha Hauer
2011-11-28 22:10 ` [PATCH 09/16] bootm: do not select uncompression methods Sascha Hauer
2011-11-28 22:10 ` [PATCH 10/16] add file detection support Sascha Hauer
2011-11-28 23:10   ` Marc Kleine-Budde
2011-11-29 19:41     ` Sascha Hauer
2011-11-29 19:40   ` Sascha Hauer
2011-11-28 22:10 ` [PATCH 11/16] lzo: export decompress_unlzo function Sascha Hauer
2011-11-28 22:10 ` [PATCH 12/16] Add generic uncompress function Sascha Hauer
2011-11-28 22:10 ` Sascha Hauer [this message]
2011-11-28 22:10 ` [PATCH 14/16] update configs and default envs for uncompress Sascha Hauer
2011-11-28 22:10 ` [PATCH 15/16] remove now unused unlzo function Sascha Hauer
2011-11-28 22:10 ` [PATCH 16/16] bootm: use generic uncompress function Sascha Hauer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1322518209-2965-14-git-send-email-s.hauer@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox