changeset 366:03d1f75d2059

Upgrade to busybox 1.11.1.
author Rob Landley <rob@landley.net>
date Fri, 18 Jul 2008 08:30:50 -0500
parents f9ec1fd54034
children b375712e7634
files download.sh sources/patches/busybox-awk.patch
diffstat 2 files changed, 2 insertions(+), 91 deletions(-) [+]
line wrap: on
line diff
--- a/download.sh	Sun Jul 13 07:57:49 2008 -0500
+++ b/download.sh	Fri Jul 18 08:30:50 2008 -0500
@@ -61,8 +61,8 @@
 SHA1=89d537fd18190402ff226ff885ddbc14f6227a9b \
 download &&
 
-URL=http://www.busybox.net/downloads/busybox-1.11.0.tar.bz2 \
-SHA1=03738bbaa2be1676de37d1696e0a7f99ba27324f \
+URL=http://www.busybox.net/downloads/busybox-1.11.1.tar.bz2 \
+SHA1=73b041364d377125949dd8f5c191bcbb3daee6e9 \
 download &&
 
 URL=ftp://ftp.gnu.org/gnu/make/make-3.81.tar.bz2 \
--- a/sources/patches/busybox-awk.patch	Sun Jul 13 07:57:49 2008 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-diff -d -urpN busybox.0/editors/awk.c busybox.1/editors/awk.c
---- busybox.0/editors/awk.c	2008-06-28 19:39:23.000000000 +0200
-+++ busybox.1/editors/awk.c	2008-07-01 03:49:27.000000000 +0200
-@@ -681,11 +681,6 @@ static ALWAYS_INLINE int isalnum_(int c)
- 	return (isalnum(c) || c == '_');
- }
- 
--static FILE *afopen(const char *path, const char *mode)
--{
--	return (*path == '-' && *(path+1) == '\0') ? stdin : xfopen(path, mode);
--}
--
- /* -------- working with variables (set/get/copy/etc) -------- */
- 
- static xhash *iamarray(var *v)
-@@ -2740,7 +2735,7 @@ static rstream *next_input_file(void)
- 			ind = getvar_s(incvar(intvar[ARGIND]));
- 			fname = getvar_s(findvar(iamarray(intvar[ARGV]), ind));
- 			if (fname && *fname && !is_assignment(fname))
--				F = afopen(fname, "r");
-+				F = xfopen_stdin(fname);
- 		}
- 	} while (!F);
- 
-@@ -2757,8 +2752,9 @@ int awk_main(int argc, char **argv)
- {
- 	unsigned opt;
- 	char *opt_F, *opt_W;
--	llist_t *opt_v = NULL;
--	int i, j, flen;
-+	llist_t *list_v = NULL;
-+	llist_t *list_f = NULL;
-+	int i, j;
- 	var *v;
- 	var tv;
- 	char **envp;
-@@ -2816,35 +2812,33 @@ int awk_main(int argc, char **argv)
- 			*s1 = '=';
- 		}
- 	}
--	opt_complementary = "v::";
--	opt = getopt32(argv, "F:v:f:W:", &opt_F, &opt_v, &g_progname, &opt_W);
-+	opt_complementary = "v::f::"; /* -v and -f can occur multiple times */
-+	opt = getopt32(argv, "F:v:f:W:", &opt_F, &list_v, &list_f, &opt_W);
- 	argv += optind;
- 	argc -= optind;
- 	if (opt & 0x1)
- 		setvar_s(intvar[FS], opt_F); // -F
--	while (opt_v) { /* -v */
--		if (!is_assignment(llist_pop(&opt_v)))
-+	while (list_v) { /* -v */
-+		if (!is_assignment(llist_pop(&list_v)))
- 			bb_show_usage();
- 	}
--	if (opt & 0x4) { // -f
--		char *s = s; /* die, gcc, die */
--		FILE *from_file = afopen(g_progname, "r");
--		/* one byte is reserved for some trick in next_token */
--		if (fseek(from_file, 0, SEEK_END) == 0) {
--			flen = ftell(from_file);
--			s = xmalloc(flen + 4);
--			fseek(from_file, 0, SEEK_SET);
--			i = 1 + fread(s + 1, 1, flen, from_file);
--		} else {
-+	if (list_f) { /* -f */
-+		do {
-+			char *s = NULL;
-+			FILE *from_file;
-+
-+			g_progname = llist_pop(&list_f);
-+			from_file = xfopen_stdin(g_progname);
-+			/* one byte is reserved for some trick in next_token */
- 			for (i = j = 1; j > 0; i += j) {
- 				s = xrealloc(s, i + 4096);
- 				j = fread(s + i, 1, 4094, from_file);
- 			}
--		}
--		s[i] = '\0';
--		fclose(from_file);
--		parse_program(s + 1);
--		free(s);
-+			s[i] = '\0';
-+			fclose(from_file);
-+			parse_program(s + 1);
-+			free(s);
-+		} while (list_f);
- 	} else { // no -f: take program from 1st parameter
- 		if (!argc)
- 			bb_show_usage();