aboutsummaryrefslogtreecommitdiff
path: root/applets (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix install with hardlinks and a custom PREFIX. Closes 10801Denys Vlasenko2018-02-231-9/+9
| | | | | | | | | | | | Trying to install busybox with hardlinks and a custom PREFIX will fail for applets not in the /bin directory, because relative pathnames are used. applets/install.sh is *supposed to* use the absolute pathname for hardlinks but it fails to do so because the wrong check is used in the if statement. While fixing it, shore up other sloppy coding in applets/install.sh Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applets/install: accept more than one install optionYann E. MORIN2018-01-041-12/+16
| | | | | | | | Currently, it is impossible to pass more than one option to the isntall script, so it totally prevents using --noclobber. Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applets/install: respect noclobber for script wrappers tooYann E. MORIN2018-01-041-12/+8
| | | | | | | | Simplify the handling of --noclobber so that it applies to all types of installation types, even to script wrappers. Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Automatically disable FEATURE_COMPRESS_USAGE for small builds.Denys Vlasenko2017-01-061-0/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: always rewrite NUM_APPLETS.hDenys Vlasenko2016-08-231-10/+11
| | | | | | | Conditional rewrite can keep NUM_APPLETS.h mtime old, this causes make to try to regenerate it at every invocation. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: different fix for include/applet_tables.h/include/NUM_APPLETS.hDenys Vlasenko2016-08-211-3/+16
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: fix include/NUM_APPLETS.h generationDenys Vlasenko2016-08-141-5/+2
| | | | | | TBH, it's more like "work around my bad makefile-fu" than "fix"... Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* config: disentangle PREFER_APPLETS from SH_STANDALONE and SH_NOFORKDenys Vlasenko2016-07-221-1/+3
| | | | | | | | On user request. I thought enabling/disabling them all together is more consistent. Evidently, some people do want them to be separately selectable. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: fix a few warnings for allnoconfig buildDenys Vlasenko2016-07-051-0/+2
| | | | | | Not that allnoconfig build is useful in any way... Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: finer-grained selection of search speedup table.Denys Vlasenko2016-04-021-32/+33
| | | | | | | | | | | KNOWN_APPNAME_OFFSETS=8 versus KNOWN_APPNAME_OFFSETS=0: function old new delta find_applet_by_name 55 136 +81 applet_nameofs - 14 +14 run_applet_and_exit 757 758 +1 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applet_tables: save space by removing applet name offsetsRon Yorston2016-03-301-18/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The array applet_nameofs consumes two bytes per applet. It encodes nofork/noexec flags suid flags the offset of the applet name in the applet_name string Change the applet_table build tool to store the flags in two separate arrays (applet_flags and applet_suid). Replace applet_nameofs[] with a smaller version that only stores a limited number of offsets. This requires changes to the macros APPLET_IS_NOFORK, APPLET_IS_NOEXEC and APPLET_SUID. According to Valgrind the original find_applet_by_name required 353 cycles per call, averaged over all names. Adjusting the number of known offsets allows space to be traded off against execution time: KNOWN_OFFSETS cycles bytes (wrt KNOWN_OFFSETS = 0) 0 9057 - 2 4604 32 4 2407 75 8 1342 98 16 908 130 32 884 194 This patch uses KNOWN_OFFSETS = 8. v2: Remove some dead code from the applet_table tool; Treat the applet in the middle of the table as a special case. v3: Use the middle applet to adjust the start of the linear search as well as the last applet found. v4: Use an augmented linear search in find_applet_by_name. Drop the special treatment of the middle name from get_applet_name: most of the advantage now derives from the last stored value. v5: Don't store index in applet_nameofs, it can be calculated. v6: Tweaks by Denys function old new delta find_applet_by_name 25 125 +100 applet_suid - 92 +92 run_applet_no_and_exit 452 460 +8 run_applet_and_exit 695 697 +2 applet_name_compare 31 - -31 applet_nameofs 734 14 -720 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 3/1 up/down: 202/-751) Total: -549 bytes text data bss dec hex filename 925464 906 17160 943530 e65aa busybox_old 924915 906 17160 942981 e6385 busybox_unstripped Signed-off-by: Ron Yorston <rmy@pobox.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Aboriginal linux/musl build fixesDenys Vlasenko2015-10-051-0/+9
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applets: Add installation of individual binariesClayton Shotwell2015-07-011-2/+24
| | | | | | | | Adding support to install individual binaries if the option is enabled. This also installs the shared libbusybox.so.* library. Signed-off-by: Clayton Shotwell <clshotwe@rockwellcollins.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* false: make "false --help" exit with 1Denys Vlasenko2014-09-181-0/+17
| | | | | | | function old new delta run_applet_no_and_exit 447 445 -2 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: use od -b instead of od -t x1Denys Vlasenko2013-11-261-6/+6
| | | | | | od -t is not available in non-CONFIG_DESKTOPed busybox od Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: do not generate MAX_APPLET_NAME_LEN (unused)Denys Vlasenko2013-11-261-5/+5
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* buildsys: Add helper to list suid appletsBernhard Reutner-Fischer2013-07-261-0/+54
| | | | | | | | | | | | | Add a helper script that lists all applets that - do or may require SUID provileges (busybox.cfg.suid) - do not require SUID provileges (busybox.cfg.nosuid) Some setups prefer to build two busybox binaries, one that is suid which contains all applets that do or may require suid privileges, and a second one for all the rest (which drops suid). To ease splitting these two binaries, generate a list of CONFIG_ items for the suid binary. Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* style fixes, no code changesDenys Vlasenko2012-09-021-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Fix one-applet build for tcpsvdDenys Vlasenko2012-03-191-8/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applet_tables: fix single applet build failure. Closes 4009Denys Vlasenko2011-09-161-1/+8
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applets/install.sh: afer quoting of variablesDenys Vlasenko2011-04-051-35/+34
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fix install.shDenys Vlasenko2011-04-041-6/+10
| | | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applet_tables: do not include libbb.h, that header ir for target buildsDenys Vlasenko2011-03-281-2/+8
| | | | | | ...and applets/applet_tables.c is built on *host*. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fix bit rot in scripts/Makefile.IMA #2Denys Vlasenko2011-03-061-0/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* .gitignore: add missing ignoresBjørn Forsman2011-03-061-0/+1
| | | | | | | Ignore output files created by "make defconfig; make". Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fix "make install"Bernd Jendrissek2011-02-201-1/+1
| | | | | Signed-off-by: Bernd Jendrissek <bernd.jendrissek@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* whitespace fixesDenys Vlasenko2011-02-031-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* simpler check for odDenys Vlasenko2010-09-161-1/+2
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* build system: test that od is present in the host systemDenys Vlasenko2010-09-161-0/+6
| | | | Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
* *: make GNU licensing statement forms more regularDenys Vlasenko2010-08-166-6/+6
| | | | | | | This change retains "or later" state! No licensing _changes_ here, only form is adjusted (article, space between "GPL" and "v2" and so on). Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: fix "see file License ..." - the file is named LICENSE (in uppercase)Denys Vlasenko2010-08-162-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* make usage_compressed.h generation _always_ update mtimeDenys Vlasenko2010-07-081-5/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* randomconfig fixesDenys Vlasenko2010-07-051-2/+0
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Yet another attempt to stamp out "make -j" problemsDenys Vlasenko2010-07-041-1/+7
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: do not rebuild ash and hush on any change to any .c fileDenys Vlasenko2010-06-262-3/+23
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* remove defconfig. Now "make defconfig" simply uses defaults from Config.inDenys Vlasenko2010-06-061-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* make it possible to have include/applets.h-esque entries in .c filesDenys Vlasenko2010-06-061-3/+3
| | | | | | As an example, bunzip2 and bzcat is changed to use it. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Remove requirement that include/applets.h must be sortedDenys Vlasenko2010-06-053-37/+75
| | | | | | | | First, I _again_ violated it - two xz-related applets are in wrong positions. Second, planned in-applet help text thing will be so much easier without this requirement... Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mass renaming Kbuild -> Kbuild.src, Config.in -> Config.srcDenys Vlasenko2010-06-041-0/+0
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ash,hush: make it possible to build them individuallyDenys Vlasenko2010-03-231-2/+4
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* whitespace fixesDenys Vlasenko2010-01-251-3/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: more fixes to parallel buildDenys Vlasenko2009-11-251-3/+0
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: fix parallel makeDenys Vlasenko2009-11-241-0/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* applets/usage_compressed: combine many seds in one; hide dd statsBernhard Reutner-Fischer2009-10-271-7/+8
| | | | | Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mkfs_ext2: use compatible inode sizes; add -I <inodesize>. (by Vladimir)Denys Vlasenko2009-10-221-3/+3
| | | | | | | | | | function old new delta mkfs_ext2_main 2385 2495 +110 packed_usage 26400 26447 +47 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/0 up/down: 157/0) Total: 157 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ok, last fix wasn't correct... this one is betterDenys Vlasenko2009-10-021-2/+5
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fix a typo in prev commitDenys Vlasenko2009-10-021-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Update documentation generator so that it sucks lessDenys Vlasenko2009-10-024-20/+121
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* do not store 1st two bytes of compressed help textDenys Vlasenko2009-08-201-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* add .gitignore filesMike Frysinger2009-05-051-0/+2
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>