From accd9eeb719916da974584b33b1aeced5f3bb346 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Thu, 22 Oct 2015 16:01:57 +0200 Subject: remove systemd support systemd people are not willing to play nice with the rest of the world. Therefore there is no reason for the rest of the world to cooperate with them. Signed-off-by: Denys Vlasenko --- libbb/systemd_support.c | 62 ------------------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 libbb/systemd_support.c (limited to 'libbb') diff --git a/libbb/systemd_support.c b/libbb/systemd_support.c deleted file mode 100644 index 542a3efff..000000000 --- a/libbb/systemd_support.c +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (C) 2011 Davide Cavalca - * - * Based on http://cgit.freedesktop.org/systemd/tree/src/sd-daemon.c - * Copyright 2010 Lennart Poettering - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation files - * (the "Software"), to deal in the Software without restriction, - * including without limitation the rights to use, copy, modify, merge, - * publish, distribute, sublicense, and/or sell copies of the Software, - * and to permit persons to whom the Software is furnished to do so, - * subject to the following conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ -#include "libbb.h" - -//config:config FEATURE_SYSTEMD -//config: bool "Enable systemd support" -//config: default y -//config: help -//config: If you plan to use busybox daemons on a system where daemons -//config: are controlled by systemd, enable this option. -//config: If you don't use systemd, it is still safe to enable it, -//config: but the downside is increased code size. - -//kbuild:lib-$(CONFIG_FEATURE_SYSTEMD) += systemd_support.o - -int sd_listen_fds(void) -{ - const char *e; - int n; - int fd; - - e = getenv("LISTEN_PID"); - if (!e) - return 0; - n = xatoi_positive(e); - /* Is this for us? */ - if (getpid() != (pid_t) n) - return 0; - - e = getenv("LISTEN_FDS"); - if (!e) - return 0; - n = xatoi_positive(e); - for (fd = SD_LISTEN_FDS_START; fd < SD_LISTEN_FDS_START + n; fd++) - close_on_exec_on(fd); - - return n; -} -- cgit v1.2.3-55-g6feb From 641caaec3d495f3a92f652f12ab70b02ba9312ac Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 23 Oct 2015 01:44:22 +0200 Subject: libbb: factor out code which queries screen width function old new delta get_terminal_width - 17 +17 stty_main 1196 1197 +1 pstree_main 321 319 -2 ls_main 735 731 -4 watch_main 232 225 -7 bb_progress_update 714 706 -8 ps_main 555 543 -12 run_applet_and_exit 708 695 -13 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/6 up/down: 18/-46) Total: -28 byte Signed-off-by: Denys Vlasenko --- coreutils/ls.c | 2 +- coreutils/stty.c | 2 +- include/libbb.h | 1 + libbb/appletlib.c | 2 +- libbb/progress.c | 9 +-------- libbb/xfuncs.c | 6 ++++++ procps/ps.c | 4 ++-- procps/pstree.c | 2 +- procps/watch.c | 2 +- 9 files changed, 15 insertions(+), 15 deletions(-) (limited to 'libbb') diff --git a/coreutils/ls.c b/coreutils/ls.c index 14c8beaff..c48498858 100644 --- a/coreutils/ls.c +++ b/coreutils/ls.c @@ -1105,7 +1105,7 @@ int ls_main(int argc UNUSED_PARAM, char **argv) #if ENABLE_FEATURE_AUTOWIDTH /* obtain the terminal width */ - get_terminal_width_height(STDIN_FILENO, &G_terminal_width, NULL); + G_terminal_width = get_terminal_width(STDIN_FILENO); /* go one less... */ G_terminal_width--; #endif diff --git a/coreutils/stty.c b/coreutils/stty.c index 378a848e7..b63b0b91a 100644 --- a/coreutils/stty.c +++ b/coreutils/stty.c @@ -1403,7 +1403,7 @@ int stty_main(int argc UNUSED_PARAM, char **argv) perror_on_device_and_die("%s"); if (stty_state & (STTY_verbose_output | STTY_recoverable_output | STTY_noargs)) { - get_terminal_width_height(STDOUT_FILENO, &G.max_col, NULL); + G.max_col = get_terminal_width(STDOUT_FILENO); output_func(&mode, display_all); return EXIT_SUCCESS; } diff --git a/include/libbb.h b/include/libbb.h index 28f57223d..82484f911 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -1399,6 +1399,7 @@ extern void print_login_prompt(void) FAST_FUNC; char *xmalloc_ttyname(int fd) FAST_FUNC RETURNS_MALLOC; /* NB: typically you want to pass fd 0, not 1. Think 'applet | grep something' */ int get_terminal_width_height(int fd, unsigned *width, unsigned *height) FAST_FUNC; +int get_terminal_width(int fd) FAST_FUNC; int tcsetattr_stdin_TCSANOW(const struct termios *tp) FAST_FUNC; diff --git a/libbb/appletlib.c b/libbb/appletlib.c index 0f83eda4b..58bb2f1a0 100644 --- a/libbb/appletlib.c +++ b/libbb/appletlib.c @@ -623,7 +623,7 @@ static int busybox_main(char **argv) output_width = 80; if (ENABLE_FEATURE_AUTOWIDTH) { /* Obtain the terminal width */ - get_terminal_width_height(0, &output_width, NULL); + output_width = get_terminal_width(2); } dup2(1, 2); diff --git a/libbb/progress.c b/libbb/progress.c index 372feb0c2..6154dca17 100644 --- a/libbb/progress.c +++ b/libbb/progress.c @@ -45,13 +45,6 @@ enum { STALLTIME = 5 }; -static unsigned int get_tty2_width(void) -{ - unsigned width; - get_terminal_width_height(2, &width, NULL); - return width; -} - void FAST_FUNC bb_progress_init(bb_progress_t *p, const char *curfile) { #if ENABLE_UNICODE_SUPPORT @@ -148,7 +141,7 @@ void FAST_FUNC bb_progress_update(bb_progress_t *p, unsigned ratio = 100 * beg_and_transferred / totalsize; fprintf(stderr, "%4u%%", ratio); - barlength = get_tty2_width() - 49; + barlength = get_terminal_width(2) - 49; if (barlength > 0) { /* god bless gcc for variable arrays :) */ char buf[barlength + 1]; diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c index 0c9969640..206edb4a0 100644 --- a/libbb/xfuncs.c +++ b/libbb/xfuncs.c @@ -270,6 +270,12 @@ int FAST_FUNC get_terminal_width_height(int fd, unsigned *width, unsigned *heigh *width = wh_helper(win.ws_col, 80, "COLUMNS", &err); return err; } +int FAST_FUNC get_terminal_width(int fd) +{ + unsigned width; + get_terminal_width_height(fd, &width, NULL); + return width; +} int FAST_FUNC tcsetattr_stdin_TCSANOW(const struct termios *tp) { diff --git a/procps/ps.c b/procps/ps.c index bde5f9485..fbafa68a9 100644 --- a/procps/ps.c +++ b/procps/ps.c @@ -622,7 +622,7 @@ int ps_main(int argc UNUSED_PARAM, char **argv) * and such large widths */ terminal_width = MAX_WIDTH; if (isatty(1)) { - get_terminal_width_height(0, &terminal_width, NULL); + terminal_width = get_terminal_width(0); if (--terminal_width > MAX_WIDTH) terminal_width = MAX_WIDTH; } @@ -672,7 +672,7 @@ int ps_main(int argc UNUSED_PARAM, char **argv UNUSED_PARAM) if (w_count) { terminal_width = (w_count == 1) ? 132 : MAX_WIDTH; } else { - get_terminal_width_height(0, &terminal_width, NULL); + terminal_width = get_terminal_width(0); /* Go one less... */ if (--terminal_width > MAX_WIDTH) terminal_width = MAX_WIDTH; diff --git a/procps/pstree.c b/procps/pstree.c index ed1a41289..c5fb83688 100644 --- a/procps/pstree.c +++ b/procps/pstree.c @@ -381,7 +381,7 @@ int pstree_main(int argc UNUSED_PARAM, char **argv) INIT_G(); - get_terminal_width_height(0, &G.output_width, NULL); + G.output_width = get_terminal_width(0); opt_complementary = "?1"; getopt32(argv, "p"); diff --git a/procps/watch.c b/procps/watch.c index 0397f21bf..97aa04767 100644 --- a/procps/watch.c +++ b/procps/watch.c @@ -72,7 +72,7 @@ int watch_main(int argc UNUSED_PARAM, char **argv) // STDERR_FILENO is procps3 compat: // "watch ls 2>/dev/null" does not detect tty size - get_terminal_width_height(STDERR_FILENO, &new_width, NULL); + new_width = get_terminal_width(STDERR_FILENO); if (new_width != width) { width = new_width; free(header); -- cgit v1.2.3-55-g6feb From d3d6534b2a86bdd651aa39dfabe620fe2208459f Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 23 Oct 2015 02:01:38 +0200 Subject: wget: if stderr is not a tty, progress bar shouldn't use tty-tricks function old new delta bb_progress_update 706 768 +62 Signed-off-by: Denys Vlasenko --- libbb/progress.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'libbb') diff --git a/libbb/progress.c b/libbb/progress.c index 6154dca17..3c2f01667 100644 --- a/libbb/progress.c +++ b/libbb/progress.c @@ -73,7 +73,7 @@ void FAST_FUNC bb_progress_update(bb_progress_t *p, { uoff_t beg_and_transferred; unsigned since_last_update, elapsed; - int barlength; + int notty; int kiloscale; //transferred = 1234; /* use for stall detection testing */ @@ -130,14 +130,17 @@ void FAST_FUNC bb_progress_update(bb_progress_t *p, } } + notty = !isatty(STDERR_FILENO); + if (ENABLE_UNICODE_SUPPORT) - fprintf(stderr, "\r%s", p->curfile); + fprintf(stderr, "\r%s" + notty, p->curfile); else - fprintf(stderr, "\r%-20.20s", p->curfile); + fprintf(stderr, "\r%-20.20s" + notty, p->curfile); beg_and_transferred = beg_size + transferred; if (totalsize != 0) { + int barlength; unsigned ratio = 100 * beg_and_transferred / totalsize; fprintf(stderr, "%4u%%", ratio); @@ -197,4 +200,6 @@ void FAST_FUNC bb_progress_update(bb_progress_t *p, hours = eta / 3600; fprintf(stderr, "%3u:%02u:%02u ETA", hours, secs / 60, secs % 60); } + if (notty) + fputc('\n', stderr); } -- cgit v1.2.3-55-g6feb From 00da72bee09cfe4a757cbba4465a76269dae9f43 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 23 Oct 2015 18:43:16 +0200 Subject: tidy up strtok use Signed-off-by: Denys Vlasenko --- libbb/kernel_version.c | 8 ++++---- shell/ash.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'libbb') diff --git a/libbb/kernel_version.c b/libbb/kernel_version.c index 738ed022b..9b6c62299 100644 --- a/libbb/kernel_version.c +++ b/libbb/kernel_version.c @@ -20,16 +20,16 @@ int FAST_FUNC get_linux_version_code(void) { struct utsname name; - char *s, *t; + char *t; int i, r; uname(&name); /* never fails */ - s = name.release; + t = name.release; r = 0; for (i = 0; i < 3; i++) { - t = strtok(s, "."); + t = strtok(t, "."); r = r * 256 + (t ? atoi(t) : 0); - s = NULL; + t = NULL; } return r; } diff --git a/shell/ash.c b/shell/ash.c index 8a1628e81..17121aa9b 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -2556,7 +2556,7 @@ updatepwd(const char *dir) new = stack_putstr(p, new); USTPUTC('/', new); } - p = strtok(0, "/"); + p = strtok(NULL, "/"); } if (new > lim) STUNPUTC(new); -- cgit v1.2.3-55-g6feb From 049b007865e2dfcfd2093db732b3bfbcb75b5c77 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sat, 24 Oct 2015 03:45:57 +0200 Subject: pmap: fix bogus {no such process} comm field text function old new delta read_cmdline 246 266 +20 procps_get_maps 196 193 -3 packed_usage 30413 30404 -9 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/2 up/down: 20/-12) Total: 8 bytes Signed-off-by: Denys Vlasenko --- libbb/procps.c | 8 +++++--- procps/pmap.c | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'libbb') diff --git a/libbb/procps.c b/libbb/procps.c index 05eefe0da..4edc54d48 100644 --- a/libbb/procps.c +++ b/libbb/procps.c @@ -588,12 +588,14 @@ void FAST_FUNC read_cmdline(char *buf, int col, unsigned pid, const char *comm) buf[sz] = ' '; sz--; } + if (base[0] == '-') /* "-sh" (login shell)? */ + base++; /* If comm differs from argv0, prepend "{comm} ". * It allows to see thread names set by prctl(PR_SET_NAME). */ - if (base[0] == '-') /* "-sh" (login shell)? */ - base++; + if (!comm) + return; comm_len = strlen(comm); /* Why compare up to comm_len, not COMM_LEN-1? * Well, some processes rewrite argv, and use _spaces_ there @@ -612,7 +614,7 @@ void FAST_FUNC read_cmdline(char *buf, int col, unsigned pid, const char *comm) buf[col - 1] = '\0'; } } else { - snprintf(buf, col, "[%s]", comm); + snprintf(buf, col, "[%s]", comm ? comm : "?"); } } diff --git a/procps/pmap.c b/procps/pmap.c index fd995a54d..aa221cfb8 100644 --- a/procps/pmap.c +++ b/procps/pmap.c @@ -20,7 +20,7 @@ //usage:#define pmap_trivial_usage //usage: "[-xq] PID" //usage:#define pmap_full_usage "\n\n" -//usage: "Display detailed process memory usage" +//usage: "Display process memory usage" //usage: "\n" //usage: "\n -x Show details" //usage: "\n -q Quiet" @@ -66,7 +66,7 @@ static int procps_get_maps(pid_t pid, unsigned opt) int ret; char buf[256]; - read_cmdline(buf, sizeof(buf), pid, "no such process"); + read_cmdline(buf, sizeof(buf), pid, NULL); printf("%u: %s\n", (int)pid, buf); if (!(opt & OPT_q) && (opt & OPT_x)) -- cgit v1.2.3-55-g6feb From db700330d8951d96ea70102797041730c925eeeb Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sun, 25 Oct 2015 20:36:03 +0100 Subject: tweak defconfig MONOTONIC_SYSCALL=y by default FEATURE_LAST_SMALL is gone: now FEATURE_LAST_FANCY is a "bool", not a "choice". Signed-off-by: Denys Vlasenko --- archival/ar.c | 16 +++------------- archival/bbunzip.c | 2 +- libbb/Config.src | 8 ++++---- miscutils/Config.src | 16 +++------------- 4 files changed, 11 insertions(+), 31 deletions(-) (limited to 'libbb') diff --git a/archival/ar.c b/archival/ar.c index f86c52d9b..e49d5cb2b 100644 --- a/archival/ar.c +++ b/archival/ar.c @@ -22,23 +22,13 @@ //config: default n # needs to be improved to be able to replace binutils ar //config: help //config: ar is an archival utility program used to create, modify, and -//config: extract contents from archives. An archive is a single file holding -//config: a collection of other files in a structure that makes it possible to -//config: retrieve the original individual files (called archive members). -//config: The original files' contents, mode (permissions), timestamp, owner, -//config: and group are preserved in the archive, and can be restored on -//config: extraction. +//config: extract contents from archives. In practice, it is used exclusively +//config: for object module archives used by compilers. //config: -//config: The stored filename is limited to 15 characters. (for more information -//config: see long filename support). -//config: ar has 60 bytes of overheads for every stored file. -//config: -//config: This implementation of ar can extract archives, it cannot create or -//config: modify them. //config: On an x86 system, the ar applet adds about 1K. //config: //config: Unless you have a specific application which requires ar, you should -//config: probably say N here. +//config: probably say N here: most compilers come with their own ar utility. //config: //config:config FEATURE_AR_LONG_FILENAMES //config: bool "Support for long filenames (not needed for debs)" diff --git a/archival/bbunzip.c b/archival/bbunzip.c index 90aac1427..548882f53 100644 --- a/archival/bbunzip.c +++ b/archival/bbunzip.c @@ -220,7 +220,7 @@ char* FAST_FUNC make_new_name_generic(char *filename, const char *expected_ext) //config:config UNCOMPRESS //config: bool "uncompress" -//config: default n +//config: default n # ancient //config: help //config: uncompress is used to decompress archives created by compress. //config: Not much used anymore, replaced by gzip/gunzip. diff --git a/libbb/Config.src b/libbb/Config.src index 19021fed1..b02ea14b0 100644 --- a/libbb/Config.src +++ b/libbb/Config.src @@ -16,7 +16,7 @@ config PASSWORD_MINLEN config MD5_SMALL int "MD5: Trade bytes for speed (0:fast, 3:slow)" - default 1 + default 1 # all "fast or small" options default to small range 0 3 help Trade binary size versus speed for the md5sum algorithm. @@ -30,7 +30,7 @@ config MD5_SMALL config SHA3_SMALL int "SHA3: Trade bytes for speed (0:fast, 1:slow)" - default 1 + default 1 # all "fast or small" options default to small range 0 1 help Trade binary size versus speed for the sha3sum algorithm. @@ -40,7 +40,7 @@ config SHA3_SMALL config FEATURE_FAST_TOP bool "Faster /proc scanning code (+100 bytes)" - default y + default n # all "fast or small" options default to small help This option makes top (and ps) ~20% faster (or 20% less CPU hungry), but code size is slightly bigger. @@ -208,7 +208,7 @@ config FEATURE_SKIP_ROOTFS config MONOTONIC_SYSCALL bool "Use clock_gettime(CLOCK_MONOTONIC) syscall" - default n + default y select PLATFORM_LINUX help Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring diff --git a/miscutils/Config.src b/miscutils/Config.src index d69abf1a2..06f1c52ba 100644 --- a/miscutils/Config.src +++ b/miscutils/Config.src @@ -308,23 +308,13 @@ config LAST help 'last' displays a list of the last users that logged into the system. -choice - prompt "Choose last implementation" - depends on LAST - default FEATURE_LAST_FANCY - -config FEATURE_LAST_SMALL - bool "small" - help - This is a small version of last with just the basic set of - features. - config FEATURE_LAST_FANCY - bool "huge" + bool "Turn on output of extra information" + default y + depends on LAST help 'last' displays detailed information about the last users that logged into the system (mimics sysvinit last). +900 bytes. -endchoice config HDPARM bool "hdparm" -- cgit v1.2.3-55-g6feb From ae57af6e78ed7179b2b12675ad86adc4e8d5bebd Mon Sep 17 00:00:00 2001 From: Ron Yorston Date: Sat, 30 May 2015 17:13:52 +0100 Subject: busybox: alter help message in standalone shell mode Signed-off-by: Ron Yorston Signed-off-by: Denys Vlasenko --- libbb/appletlib.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'libbb') diff --git a/libbb/appletlib.c b/libbb/appletlib.c index 58bb2f1a0..95e589e74 100644 --- a/libbb/appletlib.c +++ b/libbb/appletlib.c @@ -641,10 +641,19 @@ static int busybox_main(char **argv) ) " or: function [arguments]...\n" "\n" + IF_NOT_FEATURE_SH_STANDALONE( "\tBusyBox is a multi-call binary that combines many common Unix\n" "\tutilities into a single executable. Most people will create a\n" "\tlink to busybox for each function they wish to use and BusyBox\n" "\twill act like whatever it was invoked as.\n" + ) + IF_FEATURE_SH_STANDALONE( + "\tBusyBox is a multi-call binary that combines many common Unix\n" + "\tutilities into a single executable. The shell in this build\n" + "\tis configured to run built-in utilities without $PATH search.\n" + "\tYou don't need to install a link to busybox for each utility.\n" + "\tTo run external program, use full path (/sbin/ip instead of ip).\n" + ) "\n" "Currently defined functions:\n" ); -- cgit v1.2.3-55-g6feb From f23264b35f5bb138c6c3676079251e71bee42c8a Mon Sep 17 00:00:00 2001 From: Ron Yorston Date: Fri, 29 May 2015 11:31:40 +0100 Subject: lineedit: search applets as well as PATH for tab completion In standalone shell mode search the applet table as well as PATH when tab completing a command. Use a stupid linear search: we're also about to read all the directories on PATH so efficiency isn't a big concern. function old new delta add_match - 53 +53 complete_cmd_dir_file 687 724 +37 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/0 up/down: 90/0) Total: 90 bytes Signed-off-by: Ron Yorston Signed-off-by: Denys Vlasenko --- libbb/lineedit.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'libbb') diff --git a/libbb/lineedit.c b/libbb/lineedit.c index a83e07c0c..2ddb2b6e9 100644 --- a/libbb/lineedit.c +++ b/libbb/lineedit.c @@ -47,7 +47,8 @@ * It stems from simplistic "cmdedit_y = cmdedit_prmt_len / cmdedit_termw" * calculation of how many lines the prompt takes. */ -#include "libbb.h" +#include "busybox.h" +#include "NUM_APPLETS.h" #include "unicode.h" #ifndef _POSIX_VDISABLE # define _POSIX_VDISABLE '\0' @@ -774,6 +775,20 @@ static NOINLINE unsigned complete_cmd_dir_file(const char *command, int type) } pf_len = strlen(pfind); +#if ENABLE_FEATURE_SH_STANDALONE && NUM_APPLETS != 1 + if (type == FIND_EXE_ONLY) { + const char *p = applet_names; + + i = 0; + while (i < NUM_APPLETS) { + if (strncmp(pfind, p, pf_len) == 0) + add_match(xstrdup(p)); + p += strlen(p) + 1; + i++; + } + } +#endif + for (i = 0; i < npaths; i++) { DIR *dir; struct dirent *next; -- cgit v1.2.3-55-g6feb From fe0dc34746b141f158908e311b405dd332c3dcb1 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Fri, 30 Oct 2015 21:39:19 +0100 Subject: lineedit: FEATURE_REVERSE_SEARCH should not depend on SAVEHISTORY Signed-off-by: Denys Vlasenko --- libbb/Config.src | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'libbb') diff --git a/libbb/Config.src b/libbb/Config.src index b02ea14b0..6ba256290 100644 --- a/libbb/Config.src +++ b/libbb/Config.src @@ -114,7 +114,7 @@ config FEATURE_EDITING_SAVE_ON_EXIT config FEATURE_REVERSE_SEARCH bool "Reverse history search" default y - depends on FEATURE_EDITING_SAVEHISTORY + depends on FEATURE_EDITING help Enable readline-like Ctrl-R combination for reverse history search. Increases code by about 0.5k. -- cgit v1.2.3-55-g6feb