Commit Graph

411 Commits

Author SHA1 Message Date
Thomas De Schampheleire
eedfc7121c busybox: copy config file from configure iso extract step
The three typical packages that use .config files in buildroot copy the
config file at different times in the build process:

    busybox copies its .config from the post-extract hook.
    linux copies its .config in the configure_cmds.
    uclibc copies its .config from the post-patch hook.

Copying the .config file from the configure step is the only way to properly
support an OVERRIDE_SRCDIR that does not yet have the .config file, because
the extract and patch steps are skipped in that case.

For example, when setting a BUSYBOX_OVERRIDE_SRCDIR to a cleanly extracted
busybox tarball:

$ make busybox-dirclean busybox
rm -Rf [..]/output/build/busybox-custom
>>> busybox custom Syncing from source dir
>>> /home/tdescham/repo/contrib/busybox-1.21.1
rsync -au --exclude .svn --exclude .git --exclude .hg --exclude .bzr
            --exclude CVS /home/tdescham/repo/contrib/busybox-1.21.1/
            [..]/output/build/busybox-custom
>>> busybox custom Configuring
/bin/sed -i -e "/\\<CONFIG_NOMMU\\>/d"
                            [..]/output/build/busybox-custom/.config
/bin/sed: can't read [..]/output/build/busybox-custom/.config:
                                            No such file or directory
make: *** [[..]/output/build/busybox-custom/.stamp_configured] Error 2

This patch modifies busybox.mk to copy the config file from the configure
step instead, as linux is doing, and fixing the described scenario.

This fixes bug #5030: https://bugs.busybox.net/show_bug.cgi?id=5030

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-14 21:36:37 +01:00
Peter Korsgaard
a37930a5ba busybox: ensure SHA passwords are supported if used
As reported on IRC, our default busybox configuration doesn't support SHA
encoded passwords, breaking login if enabled under system configuration.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-11 14:59:16 +01:00
Nathan Lynch
9b659b815b busybox: ensure $(BUSYBOX_BUILD_CONFIG) is writable
If $(BUSYBOX_CONFIG_FILE) is read-only (eg. because Buildroot's
source dir is), the sed fixups to $(BUSYBOX_BUILD_CONFIG) fail.

Fixes: #4363
Signed-off-by: Nathan Lynch <ntl@pobox.com>
[yann.morin.1998@free.fr: use $(INSTALL) instead of cp]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-28 22:55:55 +01:00
Peter Korsgaard
99fa554bd6 busybox: 1.22.1: correct ash patch
Upstream initially put the wrong patch online:

http://lists.busybox.net/pipermail/busybox/2014-January/080364.html

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-23 12:47:19 +01:00
Gustavo Zacarias
1052a4a75f busybox 1.22.1: add upstream iplink fix
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-23 12:46:14 +01:00
Peter Korsgaard
e385c1fa2b busybox: 1.22.1: add upstream date fix
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-21 08:44:31 +01:00
Gustavo Zacarias
62ca653d55 busybox: bump 1.22 series to 1.22.1
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-20 22:20:31 +01:00
Baruch Siach
ce2867352d busybox: udhcpc script: suppress useless error message
Suppress the following error:

route: SIOCDELRT: No such process

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-16 09:14:34 +01:00
Baruch Siach
f70de34859 busybox: udhcpc script: create resolv.conf
Eliminate the following error message on every boot:

grep: /etc/resolv.conf: No such file or directory

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-15 20:29:25 +01:00
Gustavo Zacarias
c75e5117b4 busybox 1.22.0: add line edit patch
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-15 14:20:20 +01:00
Thomas De Schampheleire
ba4ad9d27c deprecated handling: introduce BR2_DEPRECATED_SINCE_xxxx_xx
In order to keep better track of when a feature got deprecated, and hence
when it can be removed, a new set of symbols BR2_DEPRECATED_SINCE_xxxx_xx is
introduced. These symbols are automatically selected when BR2_DEPRECATED is
selected, and thus are transparent to the user.
A deprecated feature will no longer depend on BR2_DEPRECATED directly, but
rather on the appropriate BR2_DEPRECATED_SINCE_xxxx_xx. If that symbol does
not yet exist, it has to be created in Config.in.
When removing a deprecated feature, one should also check whether this was
the last feature using the BR2_DEPRECATED_SINCE_xxxx_xx symbol, in which
case the latter can be removed from Config.in.

A followup patch will make sure the overview is added to the list of
deprecated features in the manual, so that a buildroot core developer can
easily determine which features to remove in a given development cycle.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-10 15:03:53 +01:00
Peter Korsgaard
49cfa71e41 busybox: add upstream 1.22.0 fixes
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-09 16:26:03 +01:00
Gustavo Zacarias
c906a2e5c5 busybox 1.22.x: disable touch -h
Disable the busybox touch --no-dereference since it requires lutimes
support and breaks old toolchains that don't support it (example:
avr32). Probably nobody cares that much since it's a new feature. Fixes:
http://autobuild.buildroot.net/results/9c2/9c29379719ae5cf5800c0dcb4cf514c5dc15d9b6/

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-02 09:44:55 +01:00
Gustavo Zacarias
4e8dadfe4b busybox: add 1.22.x series, deprecate 1.19.x
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-01-01 18:16:25 +01:00
Thomas De Schampheleire
3d86d29bf0 packages: remove package clean commands
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-12-08 19:42:34 +01:00
Thomas De Schampheleire
eb7bd9ef61 packages: remove uninstall commands
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-12-06 09:40:40 +01:00
Thomas De Schampheleire
bed4e27868 Config.in files: whitespace cleanup
This patch fixes the following whitespace problems in Config.in files:
- trailing whitespace
- spaces instead of tabs for indentation
- help text not indented with tab + 2 spaces

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-11 22:19:30 +01:00
Javier Viguera
fc6b5e4411 busybox: minor fixes to S01logging bootscript
* The PID file is not created unless the '-m' option is passed to
  start-stop-daemon.

* Remove the mark '-m 0' option as it's not supported by busybox's
  syslogd.

* Syslogd and Klogd forks to background by default giving as a result
  that the pid stored in the PID file is not correct. Let the
  background job be done by 'start-stop-daemon' by passing '-n'
  (foreground) to the daemons and '-b' to start-stop-daemon. This
  way the pid stored in the PID files is correct.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-06 12:00:41 +01:00
Thomas Petazzoni
a4ffd7ca82 busybox: add patches to fix build with the musl C library
Those patches have been submitted upstream.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-09 16:03:22 +02:00
Gustavo Zacarias
149e4f8960 busybox: set/unset CONFIG_NOMMU
Set busybox .config CONFIG_NOMMU appropiately and streamline this new
setting with the previous BUSYBOX_DISABLE_MMU_APPLETS in a single
BUSYBOX_SET_MMU definition (since it's not just applets now).

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-08-10 10:29:42 +02:00
Gustavo Zacarias
caae7fa1d7 busybox: register mdev as hotplug helper when selected
It's also done in the kernel configuration, however users may be using
some other pre-built kernel and miss functionality like firmware
loading.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2013-07-28 16:32:07 +02:00
Thomas Petazzoni
17733c2e14 busybox: don't use kernel headers directly
The kernel headers are part of the staging directory, so there is no
reason to point the Busybox CFLAGS directly to them.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-07-03 07:32:53 +02:00
Gustavo Zacarias
72da1a3464 busybox: bump 1.21.x series to 1.21.1
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-29 21:02:51 +02:00
Peter Korsgaard
584f418ec1 busybox: udhcpc.script: fix resolv.conf handling with multiple interfaces
When udhcpc is used on multiple network devices at the same time (or a mix
of dhcp and fixed configuration), /etc/resolv.conf should contain the
union of information from all the interfaces.

Currently that's not the case. The udhcpc script simply overwrites
resolv.conf with the information from the specific interface on each dhcp
bound/renew event.

Fix it by tagging lines with the interface they came from when added,
and drop the affected lines on deconfig/renew. As /etc/resolv.conf is
often a symlink to /tmp (and rootfs might be read only), special care
has to be taken when it is updated.

Notice that I'm not really aware of any official documentation requiring
that '#' comments in /etc/resolv.conf must be supported, but atleast
glibc and uClibc do.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-26 15:20:50 +02:00
Peter Korsgaard
8432d81a84 busybox: udhcpc.script: cleanup
ifconfig up is a no-op if the device is already running, so let's just
do that unconditionally.

Systems might have multiple network devices, and perhaps run udhcpc on
another interface even when booted over nfs, so don't disable the
per-interface deconfig based on the global nfsroot= setting on the kernel
command line.

If you don't want udhcpc to mess with kernel level IP autoconfiguration
(E.G. for nfs boot), you should instead ensure udhcpc/ifup/ifplugd isn't
started for that interface.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-26 14:34:25 +02:00
Peter Korsgaard
0c229f70ea busybox: use a single udhcpc script, with or without avahi-autoipd
We're currently using two different udhcpc scripts, one in the busybox
package and another in the avahi one, which calls avahi-autoipd on
dhcp failures.

The avahi one actually only does something differently from the default
if avahi-autoipd is available, so let's just always use this one instead
of the complicated logic about writing the file if not present /
overwriting it afterwards.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-26 14:22:13 +02:00
Alexandre Belloni
8dfd59d114 Normalize separator size to 80
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 22:30:24 +02:00
Gustavo Zacarias
32a2f502c6 busybox 1.21.0: update mdev patch and add ntfs volume patch
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-05-14 17:20:10 +02:00
Gustavo Zacarias
1cb4f40a09 busybox 1.21.0: update mdev patch
Update the mdev patch so that subsystem matching is reintroduced.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-04-23 20:39:23 +02:00
Gustavo Zacarias
246d12b5b4 busybox: move patches to new model
On commit 5538e47662 the versioned package
patches changed the directory structure but the packages weren't fixed.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-04-23 08:59:23 +02:00
Patrick Ziegler
79154f49f5 busybox: don't disable static option
Don't change the busybox STATIC option if buildroots PREFER_STATIC_LIB option
is not set. Not to prefer static linking doesn't imply prefer dynamic linking
for all packages.

Signed-off-by: Patrick Ziegler <patrick.ziegler@fh-kl.de>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-04-17 21:51:11 +02:00
Tilman Keskinöz
1b22957a2c Fix path to pidfile
Signed-off-by: Tilman Keskinöz <arved@arved.at>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-03-31 20:56:50 +02:00
Peter Korsgaard
e4ee2811e3 busybox: 1.21.0 platform fix-on-fix
The unxz hunk was missing.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-02-27 19:23:58 +01:00
Peter Korsgaard
44efedbec4 busybox: add 1.21.0 xz fix
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-02-27 18:55:02 +01:00
Peter Korsgaard
d8024d2d87 busybox: 1.21.1 fix for move_to_unaligned16()
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-02-27 15:57:37 +01:00
Simon Dawson
34945ebbd0 busybox: support millisecond watchdog periods
The BusyBox watchdog application supports reset periods specified in
milliseconds. The Buildroot package will only allow an integer reset period,
which prevents the use of the required "ms" suffix. Change the watchdog period
configuration item to a string, to allow the use of the "ms" suffix.

Signed-off-by: Simon Dawson <spdawson@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-02-18 22:30:42 +01:00
Arnout Vandecappelle (Essensium/Mind)
f026d3642d busybox: busybox-update-config should depend on busybox-configure
Before the config file can be copied, it has to exist.  The
other xxx-update-config targets do this as well.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-02-05 21:38:16 +01:00
Gustavo Zacarias
323eec4c3c busybox: add mdev patch for 1.21.0
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-02-05 14:33:45 +01:00
Gustavo Zacarias
198388ba4c busybox: add 1.21.x series
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-01-21 23:38:24 +01:00
Gustavo Zacarias
e7ac4d3987 busybox: add ntp patch for 1.20.2
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-01-21 14:26:37 +01:00
Gustavo Zacarias
6f62ce55f0 busybox: remove deprecated 1.18.x
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-12-10 21:51:19 +01:00
Arnout Vandecappelle
5e0f1e1fcf busybox: fix link with tirpc
Busybox does partial linking of its modules before linking everything
together into the binary.  Those partial links are done without the
standard libraries, but that also means -ltirpc can't be found.  In
addition, this probably fails horribly with static linking (untested).

The problem is that the LDFLAGS are also used in the partial links.
So instead, use CFLAGS_busybox, which is only used for the busybox
link step.  Also make sure that this is passed through the environment,
not on the command line, so the busybox Makefile can still append to
it.

Fixes e.g.
http://autobuild.buildroot.net/results/e8351e3ba86fdcdb2999548658271a6fde0526a9

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-21 11:07:35 +01:00
Thomas Petazzoni
7266e7630d busybox: add support to link against libtirpc when available
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-06 08:20:16 +01:00
Thomas Petazzoni
8f579792f1 busybox: don't force FEATURE_NFS_MOUNT
Instead of making the Busybox configuration more complicated by trying
to adjust it depending on whether RPC is available or not (which gets
complicated when RPC support can be provided by libtirpc), simplify
things by letting the user enable FEATURE_NFS_MOUNT or not depending
on whether RPC support is available or not.

Our default configuration do not enable FEATURE_NFS_MOUNT, so users
will not face any build problems by default. Only if they explicitly
enable FEATURE_NFS_MOUNT will they have to make sure that the
toolchain has RPC support, or that libtirpc is enabled (support for
this added in a followup patch).

[Peter: remove from CONFIGURE_CMDS as well]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-04 01:11:02 +01:00
Peter Korsgaard
6fce747d08 busybox: add 1.20.2 upstream fixes
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-10-29 13:51:40 +01:00
Peter Korsgaard
9ec1c5d9d3 busybox: add 1.19.4 / 1.20.2 fixes
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-09-04 13:08:19 +02:00
Danomi Manchego
3a887b7eb8 busybox: add license info
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-15 12:02:48 +02:00
Maxime Ripard
c92aacd330 Rework of the init system
Since we have now two uncompatible init systems, and we want only one of
them at the same time in use in the rootfs, we need to select a
particular init system. This patch also adds $(PKG)_INSTALL_INIT_SYSTEMD
and $(PKG)_INSTALL_INIT_SYSV hooks that are called when the matching
init systems are selected to install properly the init scripts of the
package.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-30 23:12:17 +02:00
Arnout Vandecappelle (Essensium/Mind)
e1502ebc0c all packages: rename XXXTARGETS to xxx-package
Also remove the redundant $(call ...).

This is a purely mechanical change, performed with
find package linux toolchain boot -name \*.mk | \
  xargs sed -i -e 's/$(eval $(call GENTARGETS))/$(eval $(generic-package))/' \
               -e 's/$(eval $(call AUTOTARGETS))/$(eval $(autotools-package))/' \
               -e 's/$(eval $(call CMAKETARGETS))/$(eval $(cmake-package))/'

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-17 20:23:05 +02:00
Gustavo Zacarias
aaa8125a93 busybox: bump 1.20.x series to 1.20.2
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-07-02 20:24:21 +02:00