svn commit: trunk/busybox: coreutils scripts

aldot at busybox.net aldot at busybox.net
Wed Mar 28 16:48:40 UTC 2007


Author: aldot
Date: 2007-03-28 09:48:40 -0700 (Wed, 28 Mar 2007)
New Revision: 18263

Log:
- move additional fancy options not mandated by SUSv3 into a FANCY option


Modified:
   trunk/busybox/coreutils/Config.in
   trunk/busybox/coreutils/split.c
   trunk/busybox/scripts/defconfig


Changeset:
Modified: trunk/busybox/coreutils/Config.in
===================================================================
--- trunk/busybox/coreutils/Config.in	2007-03-28 16:46:03 UTC (rev 18262)
+++ trunk/busybox/coreutils/Config.in	2007-03-28 16:48:40 UTC (rev 18263)
@@ -541,9 +541,16 @@
 	default n
 	help
 	  split a file into pieces.
-	  
-	  http://www.opengroup.org/onlinepubs/007904975/utilities/split.html
 
+config FEATURE_SPLIT_FANCY
+	bool "fancy extensions"
+	default n
+	depends on SPLIT
+	help
+	  Add support for features not required by SUSv3.
+	  Supports additional suffixes 'b' for 512 bytes,
+	  'g' for 1GiB for the -b option.
+
 config STAT
 	bool "stat"
 	default n

Modified: trunk/busybox/coreutils/split.c
===================================================================
--- trunk/busybox/coreutils/split.c	2007-03-28 16:46:03 UTC (rev 18262)
+++ trunk/busybox/coreutils/split.c	2007-03-28 16:48:40 UTC (rev 18263)
@@ -12,10 +12,14 @@
 #include "busybox.h"
 
 static const struct suffix_mult split_suffices[] = {
+#if ENABLE_FEATURE_SPLIT_FANCY
 	{ "b", 512 },
+#endif
 	{ "k", 1024 },
 	{ "m", 1024*1024 },
+#if ENABLE_FEATURE_SPLIT_FANCY
 	{ "g", 1024*1024*1024 },
+#endif
 	{ NULL, 0 }
 };
 
@@ -58,10 +62,10 @@
 	char *pfx;
 	char *count_p;
 	const char *sfx;
-	unsigned long cnt = 1000;
-	unsigned long remaining = 0;
+	off_t cnt = 1000;
+	off_t remaining = 0;
 	unsigned opt;
-	int bytes_read, to_write;
+	ssize_t bytes_read, to_write;
 	char *src;
 
 	opt_complementary = "?2";
@@ -73,8 +77,9 @@
 		cnt = xatoul_sfx(count_p, split_suffices);
 	if (opt & SPLIT_OPT_a)
 		suffix_len = xatou(sfx);
+	sfx = "x";
+
 	argv += optind;
-	sfx = "x";
 	if (argv[0]) {
 		if (argv[1])
 			sfx = argv[1];
@@ -104,7 +109,7 @@
 		do {
 			if (!remaining) {
 				if (!pfx)
-					bb_error_msg_and_die("suffices exhausted");
+					bb_error_msg_and_die("suffixes exhausted");
 				xmove_fd(xopen(pfx, O_WRONLY | O_CREAT | O_TRUNC), 1);
 				pfx = next_file(pfx, suffix_len);
 				remaining = cnt;

Modified: trunk/busybox/scripts/defconfig
===================================================================
--- trunk/busybox/scripts/defconfig	2007-03-28 16:46:03 UTC (rev 18262)
+++ trunk/busybox/scripts/defconfig	2007-03-28 16:48:40 UTC (rev 18263)
@@ -194,6 +194,7 @@
 CONFIG_SLEEP=y
 CONFIG_FEATURE_FANCY_SLEEP=y
 CONFIG_SPLIT=y
+# CONFIG_FEATURE_SPLIT_FANCY is not set
 CONFIG_SORT=y
 CONFIG_FEATURE_SORT_BIG=y
 CONFIG_STAT=y
@@ -272,6 +273,7 @@
 CONFIG_FEATURE_READLINK_FOLLOW=y
 CONFIG_RUN_PARTS=y
 CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
+CONFIG_FEATURE_RUN_PARTS_FANCY=y
 CONFIG_START_STOP_DAEMON=y
 CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
 CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y




More information about the busybox-cvs mailing list