Denys Vlasenko
6b01b71e83
randomconfig fixes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-24 22:52:21 +01:00
Denys Vlasenko
9f93d62192
libbb: better unicode width support. Hopefully fixes bug 839.
...
Also opens up a possibility to make other unicode stuff smaller
and more correct later. but:
function old new delta
static.combining - 516 +516
bb_wcwidth - 328 +328
unicode_cut_nchars - 141 +141
mbstowc_internal - 93 +93
in_table - 78 +78
cal_main 899 961 +62
static.combining0x10000 - 40 +40
unicode_strlen - 31 +31
bb_mbstrlen 31 - -31
bb_mbstowcs 173 102 -71
------------------------------------------------------------------------------
(add/remove: 7/1 grow/shrink: 1/1 up/down: 1289/-102) Total: 1187 bytes
Uses code of Markus Kuhn, which is in public domain:
http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c
"Permission to use, copy, modify, and distribute this software
for any purpose and without fee is hereby granted. The author
disclaims all warranties with regard to this software."
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-24 07:44:03 +01:00
Denys Vlasenko
7be97c5b6b
ls: fix sort of very large files. +21 byte
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-18 13:02:27 +01:00
Denys Vlasenko
9c3b84a304
ls: make it so that group never glues itself to file size
...
+ smaller enhancements: inode is long long; -h is a bit narrower; etc
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-18 01:55:00 +01:00
Denys Vlasenko
28055028a7
fold: unicode support. Based on a patch by Tomas Heinrich <heinrich.tomas@gmail.com>
...
General Unicode support is tweaked to expose unicode_status.
function old new delta
init_unicode - 77 +77
write2stdout - 19 +19
adjust_column 68 71 +3
unicode_status - 1 +1
unicode_is_enabled 1 - -1
grep_main 780 773 -7
fold_main 619 552 -67
check_unicode_in_env 77 - -77
------------------------------------------------------------------------------
(add/remove: 3/2 grow/shrink: 1/2 up/down: 100/-152) Total: -52 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-04 20:49:58 +01:00
Denys Vlasenko
d93fc61725
ls: fix "ls | cat" to not show "total NNN" header
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-23 16:22:25 +02:00
Denys Vlasenko
0bf44d00a4
libbb/human_readable.c: shrink; and reduce bss usage
...
also, move smart_ulltoaN there and comment usage locations
function old new delta
static.unit_chars 7 9 +2
utoa_to_buf 110 108 -2
make_human_readable_str 262 258 -4
fallbackSort 1723 1719 -4
static.fmt 97 92 -5
static.fmt_tenths 10 - -10
static.str 21 4 -17
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/5 up/down: 2/-42) Total: -40 bytes
text data bss dec hex filename
820981 453 6932 828366 ca3ce busybox_old
820968 453 6916 828337 ca3b1 busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-13 01:25:09 +02:00
Denys Vlasenko
1d63f046d0
ls: forgotten chunk from prev commit
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03 11:45:07 +02:00
Denys Vlasenko
cae409c6aa
ls: code shrink
...
function old new delta
count_dirs 81 86 +5
dnalloc 13 17 +4
showfiles 372 370 -2
ls_main 833 825 -8
showdirs 505 489 -16
splitdnarray 189 120 -69
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/4 up/down: 9/-95) Total: -86 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03 11:43:48 +02:00
Denys Vlasenko
ffd4774ad2
ls: fix for !FEATURE_LS_RECURSIVE (forgotten free); cleanups
...
no code changes if FEATURE_LS_RECURSIVE
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03 11:42:33 +02:00
Denys Vlasenko
0683d4d633
ls: add standards doc; record author of "total NNNN" code
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03 10:53:36 +02:00
Denys Vlasenko
76c7d9500a
ls: code shrink
...
function old new delta
list_single - 1006 +1006
print_name 211 209 -2
dnalloc 15 13 -2
splitdnarray 192 189 -3
ls_main 848 833 -15
showdirs 564 505 -59
showfiles 1460 372 -1088
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/6 up/down: 1006/-1169) Total: -163 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03 01:15:47 +02:00
Denys Vlasenko
87c150c7cc
ls: add "total NNNN" header if DESKTOP. By Johannes Stezenbach (js AT sig21.net)
...
function old new delta
showdirs 492 564 +72
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-10-03 01:14:15 +02:00
Denys Vlasenko
1b34d4f0b1
find: add zeroing of G.xxx; ftpd - remove extraneous zeroing of G.xxx
...
Brought "G trick" to the same shape in a few more places.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-09-30 02:39:57 +02:00
Denys Vlasenko
fda8f57360
tweaking Unicode support
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-11 22:26:48 +02:00
Denys Vlasenko
42a8fd0db0
added simplified Unicode support for non-locale-enabled builds
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-11 21:36:13 +02:00
Denys Vlasenko
ae05dd42ca
ls: make --color more compatible with coreutils
...
function old new delta
static.color_str - 34 +34
static.ls_longopts - 9 +9
ls_color_opt 9 - -9
ls_main 865 843 -22
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 0/1 up/down: 43/-31) Total: 12 bytes
text data bss dec hex filename
820145 450 7692 828287 ca37f busybox_old
820144 450 7692 828286 ca37e busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-03 12:22:19 +02:00
Denys Vlasenko
5508363fd0
ls: fix --color handling. Closes bug 435.
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-02 14:25:51 +02:00
Denis Vlasenko
5e34ff29bc
*: mass renaming of USE_XXXX to IF_XXXX
...
and SKIP_XXXX to IF_NOT_XXXX - the second one was especially
badly named. It was not skipping anything!
2009-04-21 11:09:40 +00:00
Denis Vlasenko
4d3a812b71
ls: warning fix
...
rm: accept and ignore -v (verbose)
2009-03-27 17:22:00 +00:00
Denis Vlasenko
3a014b85dc
ls: make readlink error to not disrupt output (try ls -l /proc/self/fd).
...
libbb: make xmalloc_readlink_or_warn warning more specific.
function old new delta
xmalloc_readlink_or_warn 33 61 +28
showfiles 1495 1460 -35
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 28/-35) Total: -7 bytes
2009-03-21 19:11:23 +00:00
Denis Vlasenko
c1969f69b1
ls: make color-related code more readable. Fix a case when
...
it was working non-deterministically.
function old new delta
bold - 34 +34
showfiles 1508 1495 -13
fgcolor 50 34 -16
bgcolor 34 - -34
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/2 up/down: 34/-63) Total: -29 bytes
2009-03-18 22:39:34 +00:00
Denis Vlasenko
245f91b649
ftpd + ls - timestamp = confused Mozilla. Prevent that.
2009-03-09 22:37:23 +00:00
Denis Vlasenko
c41cba5a57
ftpd: reuse ls applet for LIST/NLST/STAT generation
...
function old new delta
popen_ls - 211 +211
ftpd_main 1760 1826 +66
handle_dir_common 199 228 +29
get_remote_transfer_fd 89 104 +15
replace_char 30 34 +4
handle_upload_common 263 265 +2
bind_for_passive_mode 129 121 -8
cmdio_write 84 62 -22
escape_text 166 136 -30
init_data_sock_params 81 - -81
ftpdataio_dispose_transfer_fd 87 - -87
write_dirstats 149 - -149
write_filestats 603 - -603
------------------------------------------------------------------------------
(add/remove: 1/4 grow/shrink: 11/5 up/down: 384/-986) Total: -602 bytes
text data bss dec hex filename
808804 476 7864 817144 c77f8 busybox_old
808156 476 7864 816496 c7570 busybox_unstripped
2009-03-09 15:46:07 +00:00
Denis Vlasenko
5e4fda0aff
ftpd: code chrink, fixed some minor bugs
...
ls: update comment
*: openlog fixes (added LOG_PID, set LOG_DAEMON as appropriate)
function old new delta
xwrite_str - 26 +26
cmdio_write_ok - 15 +15
handle_cwd 40 45 +5
packed_usage 25668 25670 +2
cmdio_write_raw 7 9 +2
handle_upload_common 322 320 -2
udhcpd_main 1375 1372 -3
udhcpc_main 2362 2359 -3
port_cleanup 27 23 -4
handle_dir_common 221 209 -12
str_netfd_write 26 - -26
cmdio_get_cmd_and_arg 122 - -122
ftpd_main 2208 2050 -158
------------------------------------------------------------------------------
text data bss dec hex filename
809933 476 7864 818273 c7c61 busybox_old
809199 476 7864 817539 c7983 busybox_unstripped
2009-03-08 23:46:48 +00:00
Denis Vlasenko
248ce91017
ls: implement -Q and -g (-g was accepted but ignored)
...
function old new delta
print_name - 198 +198
showfiles 1489 1508 +19
ls_options 30 31 +1
opt_flags 112 108 -4
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/1 up/down: 218/-4) Total: 214 bytes
2009-03-03 14:09:04 +00:00
Denis Vlasenko
11a6f9b44f
ls: do not follow links with -s (closes bug 33),
...
display unsigned data with %XXu, not %XXd.
2009-03-03 13:20:22 +00:00
Denis Vlasenko
51f1b6c0e0
ls: fix a bug where we may use uninintialized variable
2008-07-15 05:21:47 +00:00
Denis Vlasenko
a60f84ebf0
*: rename ATTRIBUTE_XXX to just XXX.
2008-07-05 09:18:54 +00:00
Denis Vlasenko
7049ff8696
whitespace fixes. no code changes
2008-06-25 09:53:17 +00:00
Denis Vlasenko
cc3f20b9bd
fix breakage found by randomconfig
2008-06-23 22:31:52 +00:00
Denis Vlasenko
4a689e9b49
fix trivial error with inverted exit code in ls
2008-06-18 16:38:22 +00:00
Denis Vlasenko
c7497ea31b
build system: introduce FEATURE_ASSUME_UNICODE
...
ls: use it. also do G trick. with UNICODE off:
function old new delta
ls_main 843 871 +28
show_color 1 - -1
showdirs 500 497 -3
my_stat 100 97 -3
terminal_width 4 - -4
tabstops 4 - -4
status 122 118 -4
static.dotdir 4 - -4
current_time_t 4 - -4
all_fmt 4 - -4
------------------------------------------------------------------------------
(add/remove: 0/6 grow/shrink: 1/3 up/down: 28/-31) Total: -3 bytes
Also was tested with UNICODE on with glibc.
2008-06-13 11:16:09 +00:00
Denis Vlasenko
c93b162248
patch: shrink by Pascal Bellard <pascal.bellard AT ads-lu.com> (-80 bytes)
...
*: removal of #include <getopt.h>
2008-03-23 22:55:25 +00:00
Denis Vlasenko
1d42665b6b
*: shrink: use Vladimir's "o+" specifier instead of xatou(opt_param)
...
function old new delta
getopt32 1370 1385 +15
sulogin_main 490 494 +4
realpath_main 84 86 +2
sleep_main 76 77 +1
mt_main 256 257 +1
printenv_main 75 74 -1
fdformat_main 546 545 -1
usleep_main 44 42 -2
setlogcons_main 77 75 -2
ed_main 2654 2649 -5
deallocvt_main 69 64 -5
addgroup_main 373 368 -5
mkfs_minix_main 2989 2982 -7
tail_main 1221 1213 -8
sv_main 1254 1241 -13
du_main 348 328 -20
tftp_main 325 302 -23
split_main 581 558 -23
nc_main 1000 977 -23
diff_main 891 868 -23
arping_main 1797 1770 -27
ls_main 893 847 -46
od_main 2797 2750 -47
readprofile_main 1944 1895 -49
tcpudpsvd_main 1973 1922 -51
udhcpc_main 2590 2513 -77
grep_main 824 722 -102
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/22 up/down: 23/-560) Total: -537 bytes
text data bss dec hex filename
796973 658 7428 805059 c48c3 busybox_old
796479 662 7420 804561 c46d1 busybox_unstripped
2008-03-17 09:09:09 +00:00
Denis Vlasenko
9b49a5ed85
add -fvisibility=hidden to CC flags, mark XXX_main functions
...
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-11 10:05:36 +00:00
Denis Vlasenko
0c97c9d437
'simple' error message functions by Loic Grenie <loic.grenie@gmail.com>.
...
263 bytes saved.
2007-10-01 11:58:38 +00:00
Denis Vlasenko
4daad9004d
introduce bb_putchar(). saves ~1800 on uclibc (less on glibc).
2007-09-27 10:20:47 +00:00
Denis Vlasenko
fe7cd642b0
don't pass argc in getopt32, it's superfluous
...
(add/remove: 0/0 grow/shrink: 12/131 up/down: 91/-727) Total: -636 bytes
text data bss dec hex filename
773469 1058 11092 785619 bfcd3 busybox_old
772644 1058 11092 784794 bf99a busybox_unstripped
2007-08-18 15:32:12 +00:00
Denis Vlasenko
6ca409e0e4
trylink: produce even more info about final link stage
...
trylink: explain how to modify link and drastically decrease amount
of padding (unfortunately, needs hand editing ATM).
*: add ALIGN1 / ALIGN2 to global strings and arrays of bytes and shorts
size saving: 0.5k
2007-08-12 20:58:27 +00:00
Denis Vlasenko
f893da875a
ls,ps,watch: measure terminal width on fd 0, not 1
2007-08-09 08:27:24 +00:00
Denis Vlasenko
990d0f63ee
Replace index_in_[sub]str_array with index_in_[sub]strings,
...
which scans thru "abc\0def\0123\0\0" type strings. Saves 250 bytes.
text data bss dec hex filename
781266 1328 11844 794438 c1f46 busybox_old
781010 1328 11844 794182 c1e46 busybox_unstripped
2007-07-24 15:54:42 +00:00
Denis Vlasenko
bdc88fdc68
rework long option handling. saves ~1.2k
...
function old new delta
tar_longopts - 222 +222
static.udhcpc_longopts - 192 +192
start_stop_daemon_longopts - 150 +150
getopt32 1045 1185 +140
static.wget_longopts - 111 +111
static.od_longopts - 105 +105
getopt_longopts - 96 +96
install_longopts - 67 +67
ipcalc_longopts - 63 +63
static.hwclock_longopts - 54 +54
ftpgetput_longopts - 52 +52
static.dumpleases_longopts - 32 +32
env_longopts - 31 +31
runparts_longopts - 30 +30
mv_longopts - 24 +24
mkdir_longopts - 19 +19
find_pair 164 180 +16
bb_null_long_options - 16 +16
setconsole_longopts - 10 +10
display_speed 91 98 +7
collect_blk 467 474 +7
show_color 4 1 -3
ls_main 913 904 -9
bb_default_long_options 16 - -16
ls_color_opt 32 10 -22
setconsole_long_options 32 - -32
arith 2077 2030 -47
mv_long_options 48 - -48
mkdir_long_options 48 - -48
env_long_options 48 - -48
static.options 248 184 -64
runparts_long_options 80 - -80
ftpgetput_long_options 96 - -96
static.hwclock_long_options 112 - -112
install_long_options 112 - -112
static.long_options 144 - -144
static.wget_long_options 160 - -160
longopts 160 - -160
static.arg_options 304 - -304
tar_long_options 320 - -320
long_options 384 - -384
------------------------------------------------------------------------------
(add/remove: 17/15 grow/shrink: 4/5 up/down: 1444/-2209) Total: -765 bytes
text data bss dec hex filename
782618 1328 11900 795846 c24c6 busybox_old
781354 1328 11900 794582 c1fd6 busybox_unstripped
2007-07-23 17:14:14 +00:00
Denis Vlasenko
dc757aa16c
introduce and use bb_basename()
...
function old new delta
bb_basename - 26 +26
sv_main 1226 1225 -1
passwd_main 1985 1983 -2
showdirs 482 478 -4
sendCgi 1811 1807 -4
make_device 1354 1350 -4
handleIncoming 2443 2439 -4
func_name 82 78 -4
service_name 2292 2285 -7
main 909 901 -8
cmp_main 555 547 -8
test_main 434 422 -12
act 228 216 -12
find_pair 180 164 -16
rmmod_main 298 280 -18
find_pid_by_name 156 134 -22
modprobe_main 1606 1576 -30
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/16 up/down: 26/-156) Total: -130 bytes
text data bss dec hex filename
734933 3028 14400 752361 b7ae9 busybox_old
734801 3028 14400 752229 b7a65 busybox_unstripped
2007-06-30 08:04:05 +00:00
Denis Vlasenko
b6adbf1be2
usage.c: remove reference to busybox.h
...
*: s/include "busybox.h"/include "libbb.h"
2007-05-26 19:00:18 +00:00
Denis Vlasenko
16abcd90ae
teach find_root_device to deal with /dev/ subdirs
...
(by "Kirill K. Smirnov" <lich@math.spbu.ru>)
2007-04-13 23:59:52 +00:00
Denis Vlasenko
99912ca733
audit small applets and mark some of them as NOFORK.
...
Put big scary warnings in relevant places.
2007-04-10 15:43:37 +00:00
Denis Vlasenko
c86e052b81
fix accumulated whitespace and indentation damage
2007-03-20 11:30:28 +00:00
Denis Vlasenko
97fd6d81b4
ls: fix segfault-if-standalone-shell, add big fat comment.
2007-03-19 20:59:20 +00:00
Denis Vlasenko
49622d7846
selinux support by Yuichi Nakamura <ynakam@hitachisoft.jp> (HitachiSoft)
2007-03-10 16:58:49 +00:00