Denys Vlasenko
05273daf6f
grep: makw -w support unconditional
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-04-26 08:45:44 +02:00
Denys Vlasenko
98a4c7cf3d
*: suppress ~60% of "aliased warnings" on gcc-4.4.1
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-02-04 15:00:15 +01:00
Denys Vlasenko
2ec91aead5
*: remove some uses of argc
...
function old new delta
whoami_main 34 37 +3
logname_main 60 63 +3
hostid_main 35 38 +3
ttysize_main 136 135 -1
nmeter_main 673 672 -1
logger_main 387 386 -1
uuencode_main 330 328 -2
ifupdown_main 2125 2123 -2
mesg_main 158 155 -3
free_main 333 330 -3
cal_main 902 899 -3
acpid_main 443 440 -3
ar_main 196 189 -7
find_main 476 467 -9
ifconfig_main 1235 1221 -14
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/12 up/down: 9/-49) Total: -40 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-01-04 14:15:38 +01:00
Denys Vlasenko
6dc0ace109
grep: fix a case when -o loops forever
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-12-04 02:48:14 +01:00
Denys Vlasenko
09449630fb
grep: fix -E + {range}; fix -o not printing all matches (bug 489)
...
two different bugs, one with EXTRA_COMPAT, other without.
function old new delta
grep_file 1132 1129 -3
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-29 01:20:09 +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
3266aa9ec2
trailing whitespace removal
2009-04-01 11:24:04 +00:00
Denis Vlasenko
83518d18a3
Compatibility fixes:
...
grep: support -z
find: support --mindepth
together +45 bytes
cpio: support -p (configurable, +230 bytes)
libbb: tweaks for cpio
2009-03-20 22:17:13 +00:00
Denis Vlasenko
a9acbe6cad
timeout: new applet. 370 bytes. by Roberto Foglietta.
2008-11-24 13:25:20 +00:00
Denis Vlasenko
f60719cd49
grep: fix 'echo aaa | grep -o a' + ENABLE_EXTRA_COMPAT case
...
by Natanael Copa
2008-09-30 22:37:29 +00:00
Denis Vlasenko
9ac706b7a6
grep: yet another fixlet for EXTRA_COMPAT
2008-09-19 21:32:51 +00:00
Denis Vlasenko
c110b7d61f
grep: fix EXTRA_COMPAT grep to honor -E and -i
2008-09-19 21:29:21 +00:00
Denis Vlasenko
3fd15e197e
grep: option to use GNU regex matching instead of POSIX one.
...
This fixes problems with NULs in files being scanned, but
costs +800 bytes. The same can be done to sed (TODO).
2008-08-09 16:15:14 +00:00
Denis Vlasenko
5415c856ea
libbb: [x]fopen_for_{read,write} introduced and used.
...
(by Valdimir)
function old new delta
config_open2 - 41 +41
config_read 507 542 +35
find_pair 169 187 +18
fopen_for_write - 14 +14
fopen_for_read - 14 +14
find_main 406 418 +12
xfopen_for_write - 10 +10
xfopen_for_read - 10 +10
popstring 134 140 +6
parse_inittab 396 401 +5
next_token 923 928 +5
pack_gzip 1659 1661 +2
bb__parsespent 117 119 +2
fallbackSort 1719 1717 -2
evalvar 1376 1374 -2
qrealloc 36 33 -3
...
...
...
...
singlemount 4579 4569 -10
process_stdin 443 433 -10
patch_main 1111 1101 -10
ifupdown_main 2175 2165 -10
file_action_grep 90 80 -10
uuidcache_init 649 637 -12
hush_main 797 785 -12
read_config 230 217 -13
dpkg_main 3835 3820 -15
read_line_input 3134 3110 -24
sysctl_main 232 203 -29
config_open 40 10 -30
WARN_BAD_LINE 44 - -44
login_main 1714 1575 -139
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737) Total: -563 bytes
2008-07-21 23:05:26 +00:00
Denis Vlasenko
a60f84ebf0
*: rename ATTRIBUTE_XXX to just XXX.
2008-07-05 09:18:54 +00:00
Denis Vlasenko
defc1ea340
*: introduce and use FAST_FUNC: regparm on i386, otherwise no-on
...
text data bss dec hex filename
808035 611 6868 815514 c719a busybox_old
804472 611 6868 811951 c63af busybox_unstripped
2008-06-27 02:52:20 +00:00
Denis Vlasenko
7049ff8696
whitespace fixes. no code changes
2008-06-25 09:53:17 +00:00
Denis Vlasenko
a05c0716c2
grep: make "-f -" work (+ testsuite)
...
diff: small code shrink
function old new delta
grep_main 722 714 -8
diffreg 1825 1793 -32
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-40) Total: -40 bytes
2008-06-07 05:19:31 +00:00
Bernhard Reutner-Fischer
636a1f85e8
- use EXIT_{SUCCESS,FAILURE}. No object-code changes
2008-05-19 09:29:47 +00:00
Denis Vlasenko
8ee649a02e
*: more uniform naming: s/xmalloc_getline/xmalloc_fgetline/
2008-03-26 20:04:27 +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
68404f13d4
*: add -Wunused-parameter; fix resulting breakage
...
function old new delta
procps_scan 1265 1298 +33
aliascmd 278 283 +5
parse_file_cmd 116 120 +4
dname_enc 373 377 +4
setcmd 90 93 +3
execcmd 57 60 +3
count_lines 72 74 +2
process_command_subs 340 339 -1
test_main 409 407 -2
mknod_main 179 177 -2
handle_incoming_and_exit 2653 2651 -2
argstr 1312 1310 -2
shiftcmd 131 128 -3
exitcmd 46 43 -3
dotcmd 297 294 -3
breakcmd 86 83 -3
evalpipe 353 349 -4
evalcommand 1180 1176 -4
evalcmd 109 105 -4
send_tree 374 369 -5
mkfifo_main 82 77 -5
evalsubshell 152 147 -5
typecmd 75 69 -6
letcmd 61 55 -6
add_cmd 1190 1183 -7
main 891 883 -8
ash_main 1415 1407 -8
parse_stream 1377 1367 -10
alloc_procps_scan 55 - -55
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 7/21 up/down: 54/-148) Total: -94 bytes
text data bss dec hex filename
797195 658 7428 805281 c49a1 busybox_old
797101 658 7428 805187 c4943 busybox_unstripped
2008-03-17 09:00:54 +00:00
Bernhard Reutner-Fischer
a985d306a1
- spelling fixes
2008-02-11 11:44:38 +00:00
Denis Vlasenko
8e8200a772
grep: fix wrong filename in error message
2008-01-24 01:30:36 +00:00
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
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
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
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
Mike Frysinger
3a62a737f7
make sure we free the grep data as well
2007-04-12 18:29:27 +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
febe3c4211
- sed -e "s/char[[:space:]]*\*[[:space:]]*argv\[\]/char **argv/g"
2007-04-04 20:52:03 +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
06af216528
suppress warnings about easch <applet>_main() having
...
no preceding prototype
2007-02-03 17:28:39 +00:00
Denis Vlasenko
4cccc03768
remove useless casts (type*) xzalloc(...)
2006-12-22 18:37:07 +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
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
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
Eric Andersen
3312c989e6
fix 'grep -C' which requires an argument
2006-09-25 22:18:56 +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
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
Rob Landley
8bb50782a5
Change llist_add_* to take the address of the list rather than returning the new
...
head, and change all the callers.
2006-05-26 23:44:51 +00:00
Rob Landley
dfba741457
Robert P. Day removed 8 gazillion occurrences of "extern" on function
...
definitions. (That should only be on prototypes.)
2006-03-06 20:47:33 +00:00
"Vladimir N. Oleynik"
716bbe96d4
make grep faster (close bug 758), reduce small memory leak in CONFIG_FEATURE_CLEANUP mode
2006-02-28 10:10:19 +00:00
"Vladimir N. Oleynik"
f704b27b5b
- new bb_opt_complementally syntax, use [-:?] only - 'free' chars
...
- new bb_getopt_ulflags features: check max and min args, convert first argv to options special for ar and tar applets
- use bb_default_error_retval for env applet
2005-10-14 09:56:52 +00:00
Bernhard Reutner-Fischer
aaf0e23330
- replace variables by defines to save space
...
- rename string denoting stdin from "-" to "(standard input)" to match
GNU grep.
2005-09-23 15:38:49 +00:00
"Vladimir N. Oleynik"
bf4497406f
SUSv3 -q compatibily exit status correction for grep again
2005-09-23 13:50:24 +00:00
"Vladimir N. Oleynik"
c96b703ab0
SUSv3 -q compatibily exit status correction for grep
2005-09-23 13:44:03 +00:00
"Vladimir N. Oleynik"
cf40d8175b
grep must have exit code >1 if input file not found. Small indent correcion also.
2005-09-23 13:23:15 +00:00
"Vladimir N. Oleynik"
23f62fc6f3
split libbb: moved xregcomp separatelly for speed up recompile
2005-09-14 16:59:11 +00:00
"Vladimir N. Oleynik"
b4f3cff6f5
removed strange extern void xregcomp(... from some applets, but declared from libbb.h
2005-09-14 16:22:50 +00:00
"Vladimir N. Oleynik"
27421a1878
1) bb_opt_complementaly -> bb_opt_complementally
...
2) better support long options
3) new flag '!' for bb_opt_complementally: produce bb_show_usage() if BB_GETOPT_ERROR internally
2005-09-05 14:46:07 +00:00
Mike Frysinger
15ca58648a
patch by srowe in Bug 359 to fix fgrep aliasing
2005-07-31 22:41:05 +00:00
Mike Frysinger
5ba5f4d2e7
In Bug 78, shortkey points out:
...
If you run `grep -h . file1 file2 file3 ...`, the output is not prefixed
with the filename. If you run `grep -h . file1` however, the filename
will incorrectly prefix the output.
2005-04-16 04:56:11 +00:00
Eric Andersen
31c27a9c65
Hiroshi Ito writes:
...
Hello
I'm using busy box on mipsel machine.
"grep -f file" will cause segmentation fault.
Vladimir N. Oleynik writes:
Hiroshi,
Thank for bug report, but your patch is full broken.
Worked patch attached.
(really changes is zero initialize, and indent correcting).
--w
vodz
2004-10-08 08:10:57 +00:00
Eric Andersen
abc513a90f
Make the grep option values a bit less horrible
2004-05-26 11:48:29 +00:00
Eric Andersen
dec7f81370
Rick Richardson writes:
...
Here is a patch that adds egrep -L support (the opposite of egrep -l).
I realize this is probably too late for 1.0. But I offer it for your
future consideration.
egrep -L is used in some networking startup scripts I inherited.
-Rick
2004-05-26 11:47:55 +00:00
Eric Andersen
7f164cd052
Patch from vodz to correct 'grep -e pattern1 -e pattern2' logic
2004-05-26 09:46:41 +00:00
Eric Andersen
aff114c33d
Larry Doolittle writes:
...
This is a bulk spelling fix patch against busybox-1.00-pre10.
If anyone gets a corrupted copy (and cares), let me know and
I will make alternate arrangements.
Erik - please apply.
Authors - please check that I didn't corrupt any meaning.
Package importers - see if any of these changes should be
passed to the upstream authors.
I glossed over lots of sloppy capitalizations, missing apostrophes,
mixed American/British spellings, and German-style compound words.
What is "pretect redefined for test" in cmdedit.c?
Good luck on the 1.00 release!
- Larry
2004-04-14 17:51:38 +00:00
Eric Andersen
c7bda1ce65
Remove trailing whitespace. Update copyright to include 2004.
2004-03-15 08:29:22 +00:00
Eric Andersen
8876fb2f59
last_patch89 from vodz:
...
Manuel,
I rewrite bb_getopt_ulflags() function for more universal usage.
My version support now:
- options with arguments (optional arg as GNU extension also)
- complementaly and/or incomplementaly and/or incongruously and/or list
options
- long_opt (all applets may have long option, add supporting is trivial)
This realisation full compatibile from your version.
Code size grow 480 bytes, but only coreutils/* over compensate this size
after using new function. Last patch reduced over 800 bytes and not full
applied to all. "mkdir" and "mv" applets have long_opt now for demonstrate
trivial addition support long_opt with usage new bb_getopt_ulflags().
Complementaly and/or incomplementaly and/or incongruously and/or list options
logic is not trivial, but new "cut" and "grep" applets using this logic
for examples with full demostrating. New "grep" applet reduced over 300
bytes.
Mark,
Also. I removed bug from "grep" applet.
$ echo a b | busybox grep -e a b
a b
a b
But right is printing one only.
--w
vodz
2003-06-20 09:01:58 +00:00
Glenn L McGrath
c5408fe7f7
Fix segfault when cleaning up
2003-04-27 02:22:01 +00:00
Glenn L McGrath
26df70a823
grep -f support, adds only 60 Bytes, but regex's now compiled as
...
required, rather than being pre-compiled.
2003-04-27 01:50:57 +00:00
Manuel Novoa III
cad5364599
Major coreutils update.
2003-03-19 09:13:01 +00:00
Aaron Lehmann
a170e1c858
Change if(x)free(x); to free(x);
2002-11-28 11:27:31 +00:00
Matt Kraai
eed9451cf6
* findutils/grep.c (grep_main): Remove unnecessary use of junk.
2002-02-22 22:08:16 +00:00
Matt Kraai
585f657e2d
Fix undeclared variable error.
2001-11-20 16:00:44 +00:00
Eric Andersen
81ee96fe62
Usr get_last_path_component() name basename()
2001-11-20 00:23:48 +00:00
Eric Andersen
6f8b7ea452
oops
2001-11-19 11:45:39 +00:00
Eric Andersen
55805bcba4
More scrubbing
2001-11-19 10:59:37 +00:00
Eric Andersen
43626d7671
Fixup CLEANUP behavior
2001-11-19 10:36:20 +00:00
Matt Kraai
a21c24bf03
Convert strdup call to xstrdup, and calloc calls to xcalloc (patch from
...
Steve Merrifield).
2001-11-12 16:58:07 +00:00
Eric Andersen
dba4e6f046
Add in grep -E support
2001-11-10 12:54:00 +00:00
Matt Kraai
bb0088e980
Make egrep only set REG_EXTENDED flag.
2001-10-31 16:16:31 +00:00
Eric Andersen
ccd96f1972
Patch from Charles Steinkuehler <charles@steinkuehler.net>
...
to properly handle extended regexps for egrep
2001-10-31 10:02:46 +00:00
Matt Kraai
999623e973
Use extended regular expressions when invoked as egrep (noted and initial
...
patch by Charles Steinkuehler).
2001-10-29 15:49:03 +00:00
Eric Andersen
bdfd0d78bc
Major rework of the directory structure and the entire build system.
...
-Erik
2001-10-24 05:00:29 +00:00
Eric Andersen
74400ccfd0
Scrub up some function prototypes.
...
-Erik
2001-10-18 04:11:39 +00:00
Eric Andersen
0034443140
Fix behavior of grep -lc to match GNU grep. SuS2 is ambiguous
...
on the correct behavior, so acting like GNU grep seems best
-Erik
2001-07-31 23:18:49 +00:00
Eric Andersen
86f0167e39
grep failed to compile when BB_FEATURE_CLEAN_UP was defined -- types were wrong.
2001-05-29 22:36:39 +00:00