Install links patch from Yann E. Morin. (Another thing hanging around in my tree forever. Tweaked the docs a bit.)
This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)
No binary (build failed)
—
(log yok)
| @@ -58,14 +58,19 @@ Installing busybox consists of creating symlinks (or hardlinks) to the busybox | |
| binary for each applet enabled in busybox, and making sure these symlinks are | |
| in the shell's command $PATH. Running "make install" creates these symlinks, | |
| or "make install-hardlinks" creates hardlinks instead (useful on systems with | |
| - | a limited number of inodes). This install process ues the file |
| + | a limited number of inodes). This install process uses the file |
| "busybox.links" (created by make), which contains the list of enabled applets | |
| and the path at which to install them. | |
| - | The special applet name "busybox" (or with any optional suffix, such as |
| - | "busybox-static") uses the first argument to determine which applet to behave |
| - | as (for example, "./busybox cat LICENSE"). (Running the busybox applet with |
| - | no arguments gives a list of all enabled applets.) |
| + | Installing links to busybox is not always necessary. The special applet name |
| + | "busybox" (or with any optional suffix, such as "busybox-static") uses the |
| + | first argument to determine which applet to behave as, for example |
| + | "./busybox cat LICENSE". (Running the busybox applet with no arguments gives |
| + | a list of all enabled applets.) The standalone shell can also call busybox |
| + | applets without links to busybox under other names in the filesystem. You can |
| + | also configure a standaone install capability into the busybox base applet, |
| + | and then install such links at runtime with one of "busybox --install" (for |
| + | hardlinks) or "busybox --install -s" (for symlinks). |
| Building out-of-tree: | |
| ===================== | |
| @@ -129,8 +129,7 @@ help: | |
| @echo ' oldconfig - resolve any unresolved symbols in .config' | |
| @echo | |
| @echo 'Installation:' | |
| - | @echo ' install - install busybox and symlinks into $prefix' |
| - | @echo ' install-hardlinks - install busybox and hardlinks into $prefix' |
| + | @echo ' install - install busybox into $prefix' |
| @echo ' uninstall' | |
| @echo | |
| @echo 'Development:' | |
| @@ -196,8 +195,8 @@ defconfig: scripts/config/conf | |
| allbareconfig: scripts/config/conf | |
| @./scripts/config/conf -y $(CONFIG_CONFIG_IN) | |
| - | sed -i -r -e "s/^(CONFIG_DEBUG|USING_CROSS_COMPILER|CONFIG_STATIC|CONFIG_SELINUX).*/# \1 is not set/" .config |
| - | sed -i -e "/FEATURE/s/=.*//;/^[^#]/s/.*FEATURE.*/# \0 is not set/;" .config |
| + | @sed -i -r -e "s/^(CONFIG_DEBUG|USING_CROSS_COMPILER|CONFIG_STATIC|CONFIG_SELINUX).*/# \1 is not set/" .config |
| + | @sed -i -e "/FEATURE/s/=.*//;/^[^#]/s/.*FEATURE.*/# \0 is not set/;" .config |
| @echo "CONFIG_FEATURE_BUFFERS_GO_ON_STACK=y" >> .config | |
| @./scripts/config/conf -o $(CONFIG_CONFIG_IN) | |
| @@ -220,7 +219,7 @@ busybox.links: $(top_srcdir)/applets/busybox.mkll include/config.h $(top_srcdir) | |
| - $(SHELL) $^ >$@ | |
| install: $(top_srcdir)/applets/install.sh busybox busybox.links | |
| - | $(SHELL) $< $(PREFIX) |
| + | $(SHELL) $< $(PREFIX) $(INSTALL_OPTS) |
| ifeq ($(strip $(CONFIG_FEATURE_SUID)),y) | |
| @echo | |
| @echo | |
| @@ -236,9 +235,6 @@ uninstall: busybox.links | |
| rm -f $(PREFIX)/bin/busybox | |
| for i in `cat busybox.links` ; do rm -f $(PREFIX)$$i; done | |
| - | install-hardlinks: $(top_srcdir)/applets/install.sh busybox busybox.links |
| - | $(SHELL) $< $(PREFIX) --hardlinks |
| - | |
| # see if we are in verbose mode | |
| KBUILD_VERBOSE := | |
| ifdef V | |
| @@ -28,17 +28,16 @@ system. | |
| BusyBox is extremely configurable. This allows you to include only the | |
| components you need, thereby reducing binary size. Run 'make config' or 'make | |
| - | menuconfig' to select the functionality that you wish to enable. The run |
| + | menuconfig' to select the functionality that you wish to enable. Then run |
| 'make' to compile BusyBox using your configuration. | |
| After the compile has finished, you should use 'make install' to install | |
| - | BusyBox. This will install the '/bin/busybox' binary, and will also create |
| - | symlinks pointing to the '/bin/busybox' binary for each utility that you |
| - | compile into BusyBox. By default, 'make install' will place these symlinks |
| - | into the './_install' directory, unless you have defined 'PREFIX', thereby |
| - | specifying some alternative location (i.e., 'make PREFIX=/tmp/foo install'). |
| - | If you wish to install using hardlinks, rather than the default of using |
| - | symlinks, you can use 'make PREFIX=/tmp/foo install-hardlinks' instead. |
| + | BusyBox. This will install the 'bin/busybox' binary, in the target directory |
| + | specified by PREFIX. PREFIX can be set when configuring BusyBox, or you can |
| + | specify an alternative location at install time (i.e., with a command line |
| + | like 'make PREFIX=/tmp/foo install'). If you enabled any applet installation |
| + | scheme (either as symlinks or hardlinks), these will also be installed in |
| + | the location pointed to by PREFIX. |
| =head1 USAGE | |