[BusyBox-cvs] busybox/debianutils pipe_progress.c, NONE, 1.1 Config.in, 1.5, 1.6 Makefile.in, 1.3, 1.4

Glenn McGrath bug1 at busybox.net
Fri Nov 14 10:04:35 UTC 2003


Update of /var/cvs/busybox/debianutils
In directory winder:/tmp/cvs-serv11324/debianutils

Modified Files:
	Config.in Makefile.in 
Added Files:
	pipe_progress.c 
Log Message:
NEW APPLET: pipe_progress, used by debian installer


--- NEW FILE: pipe_progress.c ---
/*
 * Monitor a pipe with a simple progress display.
 *
 * Copyright (C) 2003 by Rob Landley <rob at landley.net>, Joey Hess
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 *
 */

#include <stdio.h>
#include <unistd.h>
#include <time.h>

#include "busybox.h"

#define PIPE_PROGRESS_SIZE 4096

/*	Read a block of data from stdin, write it to stdout.
 *  Activity is indicated by a '.' to stderr
 */
extern int pipe_progress_main(int argc, char **argv)
{
	RESERVE_CONFIG_BUFFER(buf, PIPE_PROGRESS_SIZE);
	time_t t = time(NULL);
	size_t len;

	while ((len = fread(buf, 1, PIPE_PROGRESS_SIZE, stdin)) > 0) {
		time_t new_time = time(NULL);
		if (new_time != t) {
			t = new_time;
			fputc('.', stderr);
		}
		fwrite(buf, len, 1, stdout);
	}

	fputc('\n', stderr);

#ifdef CONFIG_FEATURE_CLEAN_UP
	RELEASE_CONFIG_BUFFER(buf);
#endif
	return 0;
}

Index: Makefile.in
===================================================================
RCS file: /var/cvs/busybox/debianutils/Makefile.in,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- Makefile.in	26 Jul 2003 09:16:00 -0000	1.3
+++ Makefile.in	14 Nov 2003 10:04:32 -0000	1.4
@@ -25,6 +25,7 @@
 
 DEBIANUTILS-y:=
 DEBIANUTILS-$(CONFIG_MKTEMP)		+= mktemp.o
+DEBIANUTILS-$(CONFIG_PIPE_PROGRESS)	+= pipe_progress.o
 DEBIANUTILS-$(CONFIG_READLINK)		+= readlink.o
 DEBIANUTILS-$(CONFIG_RUN_PARTS)		+= run_parts.o
 DEBIANUTILS-$(CONFIG_START_STOP_DAEMON)	+= start_stop_daemon.o

Index: Config.in
===================================================================
RCS file: /var/cvs/busybox/debianutils/Config.in,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- Config.in	6 Aug 2003 09:43:09 -0000	1.5
+++ Config.in	14 Nov 2003 10:04:31 -0000	1.6
@@ -11,6 +11,12 @@
 	help
 	  mktemp is used to create unique temporary files
 
+config CONFIG_PIPE_PROGRESS
+	bool "pipe_progress"
+	default n
+	help
+	  Display a dot to indicate pipe activity.
+
 config CONFIG_READLINK
 	bool "readlink"
 	default n




More information about the busybox-cvs mailing list