Denis Vlasenko
681023650e
grep: fix -Fo
2007-11-04 00:46:03 +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
ac074b3f87
grep: delete obsolete comment
2007-09-10 12:23:27 +00:00
Denis Vlasenko
04ea11b033
grep: fix grep -F -e str1 -e str2 (was matching str2 only)
...
by replacing "=" by "|=" here:
found |= strstr(line, gl->pattern) != NULL;
grep: optimization: stop on first -e match
grep: stop using bss. -40 bytes
2007-09-10 12:18:32 +00:00
Paul Fox
dcf9bba3b7
fix -xdev behavior in the presence of two or more nested mount points
...
on the command line, e.g. "find / /boot -xdev".
2007-09-06 17:45:16 +00:00
Denis Vlasenko
6ee023cf62
*: compile fixes for 64-bit build
2007-08-23 10:52:52 +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
838dacaa00
find: fix SELinux-related warning
2007-08-16 10:41:24 +00:00
Denis Vlasenko
319f8ebef8
httpd: round down sendfile byte count to 64k
...
*: style fixes
2007-08-13 11:09:30 +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
f868963c67
multiplier suffixes are short, store them directly in struct suffix_mult
...
function old new delta
xstrtoul_range_sfx 226 217 -9
xstrtoull_range_sfx 291 280 -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-20) Total: -20 bytes
text data bss dec hex filename
669128 2668 13616 685412 a7564 busybox_old
669108 2668 13616 685392 a7550 busybox_unstripped
2007-07-27 15:06:25 +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
4652daace9
grep: implement -m MAX_MATCHES; fix help text
...
grep_file 771 822 +51
packed_usage 22573 22610 +37
.rodata 128058 128090 +32
grep_main 842 853 +11
max_matches - 4 +4
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 4/0 up/down: 135/0) Total: 135 bytes
2007-07-15 12:39:08 +00:00
Denis Vlasenko
8d5aa870a6
grep: fix buglets with context printing
...
print_line 152 170 +18
did_print_line - 1 +1
grep_file 788 771 -17
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/1 up/down: 19/-17) Total: 2 bytes
text data bss dec hex filename
673368 2740 13968 690076 a879c busybox_old
673368 2740 13968 690076 a879c busybox_unstripped
2007-07-15 12:38:18 +00:00
Denis Vlasenko
4b9b0ced30
find: fix build failure on certain configs
...
(found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>)
2007-07-01 17:35:17 +00:00
Denis Vlasenko
99fcc62523
find: style fix
2007-07-01 17:29:44 +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
a19faf8bb7
find: -context support for SELinux (KaiGai Kohei <kaigai@kaigai.gr.jp>)
...
find: make it a bit smaller
function old new delta
.rodata 129018 129050 +32
parse_params 1509 1346 -163
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 32/-163) Total: -131 bytes
2007-06-19 22:22:57 +00:00
Denis Vlasenko
53a0e97196
find: make -size match GNU find
2007-06-16 00:30:52 +00:00
Denis Vlasenko
b941129ccb
find: add conditional support for -maxdepth and -regex
...
(needed for Linux 2.6.22-rc4 build)
-maxdepth:
# size busybox_old busybox_unstripped
text data bss dec hex filename
675622 2792 15728 694142 a977e busybox_old
675770 2792 15728 694290 a9812 busybox_unstripped
-regex:
# size busybox_old busybox_unstripped
text data bss dec hex filename
675770 2792 15728 694290 a9812 busybox_old
675894 2792 15728 694414 a988e busybox_unstripped
2007-06-15 23:43:11 +00:00
Denis Vlasenko
9acfed2d14
grep: selection done by FEATURE_GREP_EGREP_ALIAS was broken, fix.
...
(Maxime Bizon <mbizon@freebox.fr> (Freebox))
2007-06-08 15:41:27 +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
58394b1e29
xargs: simplify word list management
2007-04-15 08:38:50 +00:00
Denis Vlasenko
f5294e1f4c
hush: use NOFORK applets as appropriate. Net reduction of code size.
2007-04-14 10:09:57 +00:00
Denis Vlasenko
62f0479cf1
find: add support for -delete, -path (by Natanael Copa)
2007-04-13 10:00:12 +00:00
Mike Frysinger
3a62a737f7
make sure we free the grep data as well
2007-04-12 18:29:27 +00:00
Denis Vlasenko
51742f4bb0
style fixes. No code changes
2007-04-12 00:32:05 +00:00
Denis Vlasenko
8905496444
xargs: fix my brain fart (resulted in memory leak)
2007-04-10 21:41:16 +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
cd7001f705
factor out NOFORK/NOEXEC code from find. Use it for xargs too.
2007-04-09 21:32:30 +00:00
Denis Vlasenko
1b4b2cb20e
xargs: shrink code, ~80 bytes
...
applets.h: +#undef APPLET_NOEXEC
2007-04-09 21:30:53 +00:00
Denis Vlasenko
7e754f12d3
Implement first instance of NOFORK applet - echo
...
find: use NOFORK/NOEXEC; small -exec buglet also eliminated
vfork_daemon_rexec: honor PREFER_APPLETS
echo: small size improvements
find -exec echo {} \; with PREFER_APPLETS=y runs 4 times faster
2007-04-09 13:04:50 +00:00
Denis Vlasenko
b04b4357ff
find: fix -prune more. Add big comment about it.
2007-04-08 11:10:43 +00:00
Denis Vlasenko
bbd695d801
find: fix handling of -prune
...
recursive_actions: uppercase flag constants
2007-04-08 10:52:28 +00:00
Bernhard Reutner-Fischer
6d79dd66cb
- size and prune were mixed up
2007-04-05 09:40:12 +00:00
Denis Vlasenko
7d6c9296e7
find: missed 'ststic' on const data
2007-04-05 00:35:43 +00:00
Denis Vlasenko
56fce00fc7
find: un-DESKTOPize (Kai Schwenzfeier <niteblade@gmx.net>)
...
find: -group, -depth (Natanael Copa <natanael.copa@gmail.com>)
find: make constant array static, declare PARM_xx constants with enum
2007-04-04 23:41:35 +00:00
Bernhard Reutner-Fischer
febe3c4211
- sed -e "s/char[[:space:]]*\*[[:space:]]*argv\[\]/char **argv/g"
2007-04-04 20:52:03 +00:00
Bernhard Reutner-Fischer
a87ed2c716
- use index_in_str_array also for find_main
...
text data bss dec hex filename
2605 1 12 2618 a3a find.o.r18274
2602 1 12 2615 a37 find.o.r18275
2007-03-29 13:56:49 +00:00
Bernhard Reutner-Fischer
307d27df4f
- remove bloated switch statement.
...
text data bss dec hex filename
2706 1 12 2719 a9f find.o.r18273
2605 1 12 2618 a3a find.o.r18274
2007-03-29 13:56:02 +00:00
Bernhard Reutner-Fischer
557b458767
- implement a TODO: Use index_in_str_array in parse_params
...
text data bss dec hex filename
2771 1 12 2784 ae0 find.o.r18272
2749 1 12 2762 aca find.o.-try-switch
2706 1 12 2719 a9f find.o.r18273
2007-03-29 13:55:17 +00:00
Bernhard Reutner-Fischer
32773aca55
- Purely cosmetic type fiddling
2007-03-29 13:54:17 +00:00
Bernhard Reutner-Fischer
3e816c1252
- fold recurse, depthFirst and dereference params into one param flags.
...
Minor size improvement (-16b for size, -24b according to bloat-o-meter).
2007-03-29 10:30:50 +00:00
Denis Vlasenko
f8ea0f3a66
grep: "implement" -a and -I by ignoring them
2007-02-25 02:38:54 +00:00
Denis Vlasenko
385304d449
grep: implement -w
2007-02-25 02:38:20 +00:00
Denis Vlasenko
4222ae440a
ash: replace xstrdup (shell shall not die)
...
grep: fix mis-indented block
2007-02-25 02:37:49 +00:00
Denis Vlasenko
b292264bfd
find: fix -not support
2007-02-06 17:38:29 +00:00
Denis Vlasenko
1d76f439da
EXEC_PREFER_APPLETS support by Gabriel L. Somlo <somlo@cmu.edu>
2007-02-06 01:20:12 +00:00
Bernhard Reutner-Fischer
7154b99c89
- improve wording
2007-02-04 17:24:53 +00:00
Bernhard Reutner-Fischer
01986e9c6f
- remove duplicate menu entry
2007-02-04 17:21:55 +00:00
Denis Vlasenko
cf787cf3a5
find: support for !
2007-02-04 17:11:25 +00:00
Bernhard Reutner-Fischer
10b7996c1b
- strip 12 bytes off by using a smaller type for need_print.
...
- add TODO to switch this applet to index_in_str_array()
2007-02-04 16:09:04 +00:00
Denis Vlasenko
06af216528
suppress warnings about easch <applet>_main() having
...
no preceding prototype
2007-02-03 17:28:39 +00:00
Denis Vlasenko
4c97863109
assorted fixes for bugs found with randomconfig
2007-02-03 03:31:13 +00:00
Denis Vlasenko
a100707c04
find -user support by Natanael Copa <natanael.copa@gmail.com>
2007-02-02 01:17:52 +00:00
Denis Vlasenko
ab2aea4447
preparatory patch for -Wwrite-strings #4
2007-01-29 22:51:58 +00:00
Denis Vlasenko
b6aae0f381
preparatory patch for -Wwrite-strings #2
2007-01-29 22:51:25 +00:00
Denis Vlasenko
434ad5456b
fix warning in find.c
2007-01-27 13:45:17 +00:00
Denis Vlasenko
fc7f92253a
find: fix -mtime, -mmin, -perm (+ add symbolic perm handling)
...
chmod: better name for a variable
2007-01-26 23:00:05 +00:00
Denis Vlasenko
769d1e05e6
fix warning from needlessly-global functions
2007-01-22 23:04:27 +00:00
Denis Vlasenko
c9d34da375
find: fix misplaced #else (fix by Harald Kuthe <trhoudini@hotmail.com>)
2007-01-03 03:15:58 +00:00
Denis Vlasenko
666da5e2c6
merge post-1.3.0 fixes
2006-12-26 18:17:42 +00:00
Denis Vlasenko
9ac9e55e3c
sum: 40% size reduction (-300 bytes)
...
find: one_char -> LONE_CHAR
2006-12-23 15:58:11 +00:00
Denis Vlasenko
8f6c79240d
find: fix spurious -exec error messages
...
(bug reported by Bernhard Fischer <rep.nop@aon.at>)
2006-12-23 00:49:10 +00:00
Denis Vlasenko
4cccc03768
remove useless casts (type*) xzalloc(...)
2006-12-22 18:37:07 +00:00
Denis Vlasenko
5fa7148761
build system: add "release" target
...
find: support -size N (needed for above)
2006-12-12 22:31:15 +00:00
Denis Vlasenko
9225854144
mostly style fixes
2006-11-01 10:25:35 +00:00
Denis Vlasenko
31c65f2456
find: -type T was actually meaning ! -type T!
...
With this fix, "make mrproper" works correctly
2006-10-31 23:39:37 +00:00
Denis Vlasenko
5f18e7ca33
find: implement -prune. "make clean" now works! :)
2006-10-31 03:21:02 +00:00
Denis Vlasenko
a3b4fed8b3
find: fix implicit -print (sometime differed from standard)
2006-10-31 03:20:13 +00:00
Denis Vlasenko
6191a7a007
find: implement ( )
2006-10-30 02:10:47 +00:00
Denis Vlasenko
5d499e1600
find: a lot more compliant to 'standard' find
...
(we were not respecting order of actions!).
Add -o and -a handling.
2006-10-29 19:07:01 +00:00
Denis Vlasenko
e2fb719ba3
find: small improvement
2006-10-29 19:03:56 +00:00
Denis Vlasenko
df0553bbd2
find: fix -exec to work like stock find does.
2006-10-29 00:21:47 +00:00
Denis Vlasenko
8c35d65c43
recursive_action: add depth param
...
chmod: match coreutils versus following links
2006-10-27 23:42:25 +00:00
Denis Vlasenko
ddec5af6b0
rename functions to more understandable names
2006-10-26 23:25:17 +00:00
Denis Vlasenko
2295b49169
grep: "grep -h pattern file1 file2" ignored -h
...
(precluded kernel's "make modules")
2006-10-22 11:42:51 +00:00
Denis Vlasenko
e1a0d486e4
message string changes, mostly for consistency, also -32 bytes in .rodata
2006-10-20 13:28:22 +00:00
Denis Vlasenko
bf39216cc4
grep: -r didn't close files, producing "Too many open files"
2006-10-15 18:38:01 +00:00
Denis Vlasenko
3544ae6004
grep: fix combination of -r and -h
2006-10-14 14:51:59 +00:00
Denis Vlasenko
3a6755f56f
grep: add support for -r
2006-10-14 14:24:30 +00:00
Denis Vlasenko
2d5ca60bfb
bb_get_[chomped]line_from_file wasn't descriptive enough.
...
Renaming...
2006-10-12 22:43:20 +00:00
Denis Vlasenko
1385899416
attempt to regularize atoi mess.
2006-10-08 12:49:22 +00:00
Denis Vlasenko
7d219aab70
build system overhaul
2006-10-05 10:17:08 +00:00
Denis Vlasenko
8f8f268cfd
bb_applet_name -> applet_name
2006-10-03 21:00:43 +00:00
Denis Vlasenko
67b23e6043
getopt_ulflags -> getopt32.
...
It is impossible to formulate sane ABI based on
size of ulong because it can be 32-bit or 64-bit.
Basically it means that you cannot portably use
more that 32 option chars in one call anyway...
Make it explicit.
2006-10-03 21:00:06 +00:00
Denis Vlasenko
9275814a9e
lots of silly indent fixes
2006-10-03 19:56:34 +00:00
Denis Vlasenko
6c30db8bd3
grep: add help text; fix style
2006-09-29 21:04:12 +00:00
Denis Vlasenko
51937534fb
grep: implement -o option. Patch by Jac Goudsmit.
2006-09-29 20:58:53 +00:00
Denis Vlasenko
6248a734e2
xargs: simplify option parsing
2006-09-29 08:20:30 +00:00
Eric Andersen
3312c989e6
fix 'grep -C' which requires an argument
2006-09-25 22:18:56 +00:00
Rob Landley
e9a7a6212b
Change license statements (and clean up headers) on some of the files that
...
Erik or I are primary copyright holders on.
2006-09-22 02:52:41 +00:00
Bernhard Reutner-Fischer
7fee0c4357
- fix copy'n paste errors that got introduced when switching to the shorter boilerplate.
...
No object code changes.
2006-09-13 16:39:19 +00:00
Rob Landley
081e38483e
Remove xcalloc() and convert its callers to xzalloc(). About half of them
...
were using "1" as one of the arguments anyway, and as for the rest a multiply
and a push isn't noticeably bigger than pushing two arguments on the stack.
2006-08-03 20:07:35 +00:00
Rob Landley
d921b2ecc0
Remove bb_ prefixes from xfuncs.c (and a few other places), consolidate
...
things like xasprintf() into xfuncs.c, remove xprint_file_by_name() (it only
had one user), clean up lots of #includes... General cleanup pass. What I've
been doing for the last couple days.
And it conflicts! I've removed httpd.c from this checkin due to somebody else
touching that file. It builds for me. I have to catch a bus. (Now you know
why I'm looking forward to Mercurial.)
2006-08-03 15:41:12 +00:00
Mike Frysinger
441bfbf143
make the -0 xargs option a little more clear
2006-07-03 05:19:44 +00:00
Bernhard Reutner-Fischer
19008b8373
- reuse strings and messages. Saves about 600B
2006-06-07 20:17:41 +00:00
Bernhard Reutner-Fischer
e15d7573a1
- move #include busybox.h to the very top so we pull in the config
...
and eventual platform specific includes in early.
2006-06-02 20:56:16 +00:00
Bernhard Reutner-Fischer
95a040fac8
- use the defines CURRENT_TTY and VC_1; also shrink xargs a tiny bit:
...
add/remove: 0/0 grow/shrink: 2/6 up/down: 5/-37 (-32)
function old new delta
static.add_interface 271 274 +3
static.glob3 36 38 +2
static.renice_main 409 408 -1
static.readcmd 1083 1081 -2
static.changepath 176 174 -2
static.parse_opts 56 51 -5
static.rx_main 1095 1088 -7
static.xargs_main 759 739 -20
----------------------------------------------------------------
Result :-) -32
2006-05-27 09:36:43 +00:00