Commit Graph

222 Commits

Author SHA1 Message Date
Andreas Oberritter 33dd5fb96c busybox: make bash a valid login shell if enabled
Add bash to /etc/shells if busybox is built with bash applet anabled
to fix login via dropbear.

(From OE-Core rev: 86a2db0b2997fd05882ae0119ef45b1ea5411d39)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-29 11:17:23 +01:00
Andre McCurdy a9268f9ac2 busybox: fix typo in CVE-2016-2147_2.patch Upstream-Status tag
(From OE-Core rev: 7fe8bb9c736eadbd1201c008e57527cee9de9a71)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-21 08:22:08 +01:00
Andre McCurdy c52cc23531 busybox: drop unmaintained _git recipe
The busybox _git recipe is not formally tested or kept up to date.
The gstreamer _git recipes were recently removed from oe-core and the
justifications for that change apply to the busybox _git recipe too.

(From OE-Core rev: 139c97fa7f71a554ce85900ac33054a216db62e9)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-14 09:47:08 +01:00
Nathan Rossi 97f30c70bd busybox: In defconfig enable ASH_CMDCMD for built-in 'command'
It is common for *ash shells to have 'command' available as a built-in
function. POSIX 2008 also documents the availability of this command.

Additionally the /etc/profile of base-files requires this command to be
available as of commit e77cdb7611 ("base-files: profile: Do not assume
that the tty command exists"). If it is not available the following
message is output during login on a image using busybox.

    -sh: command: not found

It however should be noted that tcsh and csh do not provide 'command'
(built-in or otherwise).

(From OE-Core rev: e41c90b852167bbcb434da57b84280e855acae33)

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-12 15:18:46 +01:00
Martin Balik 104dac10f2 busybox: Security fix BUG9071
(From OE-Core rev: 0354a9b7adad27b012bcd6bb6cab54dfe0297bcd)

Signed-off-by: Martin Balik <martin.balik@siemens.com>
Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Andrej Valek 36b2865318 busybox: Security fix CVE-2016-6301
ntpd: NTP server denial of service flaw

CVE: CVE-2016-6301
(From OE-Core rev: 301dc9df16cce1f4649f90af47159bc21be0de59)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-10 23:00:42 +01:00
Andre McCurdy 3ed3ba16cb busybox.inc: drop comment explaining '-e MAKEFLAGS=' in EXTRA_OEMAKE
EXTRA_OEMAKE no longer contains '-e MAKEFLAGS=' so the comment
explaining that it needs to be removed / over-ridden is obsolete.

(From OE-Core rev: 19be2237798f51c01c1c21a68382d114a2f6ead2)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05 23:22:13 +01:00
Andre McCurdy 2b52d7ebc0 busybox: ignore the largefile distro feature ( always enable LFS )
(From OE-Core rev: f16723f66837a2acad3c114e4064e0ab1cb3a7a6)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-22 11:35:20 +00:00
Haiqing Bai 66395bad7e busybox: ifupdown:pass interface device name for ipv6 route command
IPv6 routes need the device argument for link-local routes, or they
cannot be used at all. E.g. "gateway fe80::def" seems to be used in
some places, but kernel refuses to insert the route unless device
name is explicitly specified in the route addition.

(From OE-Core rev: 96ed437d57316153453bb5e170a4fd4f3a95883d)

Signed-off-by: Haiqing Bai <Haiqing.Bai@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-03-10 14:50:11 +00:00
Richard Purdie bc72e4dac2 busybox: Guard against interrupted compiles
If busybox is interrupted during do_compile, it can corrupt .config with
the suid version, or worse. Typically this leads to files disappearing,
particularly /etc/init.d/* which leads to an empty busybox-hwclock.
That then results in errors at do_rootfs time due to the missing package.

The fix is to use any 'orig' present to restore stat at the start of
compile.

(From OE-Core rev: 601abb497531823a73bdec3baf56952086e5b4f4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-23 22:38:49 +00:00
Maxin B. John dd501e3075 busybox: refresh the flock patch
Upstream accepted the flock fix with some improvements. Backport those
changes.

(From OE-Core rev: 16813b55d1cd624820f955ab752c922f305856e8)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-23 12:05:21 +00:00
Robert P. J. Day 63663b13f3 busybox: add comments to separate Runit from SELinux content in defconfig
There is no break in busybox's "defconfig" file to show where Runit
settings suddenly morph into SELinux settings, so add some comments.

(From OE-Core rev: 0fa590ed6c26aa065a9da8edbf65436fa1f6d04f)

(From OE-Core rev: 21c3d1b354dbb6cd6f3d574785f70858d828d977)

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-17 09:57:03 +00:00
Joshua Lock c4e2c59088 meta: remove True option to getVar calls
getVar() now defaults to expanding by default, thus remove the True
option from getVar() calls with a regex search and replace.

Search made with the following regex: getVar ?\(( ?[^,()]*), True\)

(From OE-Core rev: 7c552996597faaee2fbee185b250c0ee30ea3b5f)

Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16 10:23:23 +00:00
Lukasz Nowak b010c327c7 busybox: allow libiproute to handle table ids larger than 255
These changes are required for compatibility with ConnMan, which by default
uses table ids greater than 255.

(From OE-Core rev: e9114bdd8a83b88f59526780910c49e3092fdd57)

Signed-off-by: Lukasz Nowak <lnowak@tycoint.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16 10:23:22 +00:00
Nathan Lynch f8aca15f75 busybox: enable fractional sleep arguments
Fractional durations (e.g. 0.5s) for the sleep command are useful and
not terribly uncommon in practice, especially in scripts associated
with test cases (e.g. mdadm, lttng-tools).  Enable FEATURE_FLOAT_SLEEP
by default in order to avoid having to patch every instance of a
script using a fractional sleep.

The busybox binary gains a few hundred bytes in text (armv5e shown):

$ size -x busybox.nosuid.{before,after}
   text	   data	    bss	    dec	    hex	filename
0x89382	  0x71d	 0x2250	 572655	  8bcef	busybox.nosuid.before
0x8954e	  0x721	 0x2250	 573119	  8bebf	busybox.nosuid.after

(From OE-Core rev: 0f53db8a63ed35031b1fcc85057b39ad43c9abd1)

Signed-off-by: Nathan Lynch <nathan_lynch@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-30 15:48:05 +00:00
Mike Looijmans c31fde649f busybox/mdev.conf: Ignore eMMC RPMB and boot block devices
eMMC devices may report block devices like "mmcblk0rpmb" and
"mmcblk0boot0". These are not actually block devices and any
read/write operation on them will fail. To prevent spamming error
messages attempting to mount them, just ignore these devices.

(From OE-Core rev: 9f4a85eb929f67420d9689d7dddadd120ed49843)

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-06 23:35:33 +00:00
Markus Lehtonen df80b81076 sysklogd and busybox: ignore return code from init script stop
The init script will return '1' if we try to stop the service and it is
not currently running. The prerm scriptlet must not fail because of this
because it will cause package deinstallation of upgrade fail if opkg
package manager is used.

[YOCTO #10299]

(From OE-Core rev: 806a910927f479207d47b06c20a0497e91203266)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-11 22:19:21 +01:00
Juro Bystricky a6f0bced4c busybox: Avoid race building libbb
When building busybox, an occasional error was observed.
The error is consistently the same:

libbb/appletlib.c:164:13: error: 'NUM_APPLETS' undeclared (first use in this function)
  while (i < NUM_APPLETS) {

The reason is the include file where NUM_APPLETS is defined is not yet generated (or is being modified)
at the time libbb/appletlib.c is compiled.
The attached patchset fixes the problem by assuring libb is compiled as the last directory.

[YOCTO#10116]

(From OE-Core rev: a866a05e2c7d090a77aa6e95339c93e3592703a6)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-15 12:15:07 +01:00
Jérémy Rosen 9da9abdd4d busybox: allow overriding compiler name in KConfig
The KConfig infrastructure needs to build HOST binaries in order to
provide its infratstructure. Yocto needs to force the HOSTCC and HOSTCPP
variables to BUILD_CC and BUILD_CPP to make sure that the proper compiler
is used when compiling host binaries

(From OE-Core rev: 50fb24c889b6add053a5638a7367a8896dfebd8a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-14 22:22:07 +01:00
Stefan Agner a477fcd752 busybox: avoid circular dependency when using initramfs
The kernel does not automatically mount devtmpfs when using initramfs
based booting (even when using CONFIG_DEVTMPFS_MOUNT). If the rootfs
is built with USE_DEVFS=1 (which is the default), the system ends up
with a completely empty /dev to begin with.

Busybox uses the first entry in inittab slightly different than
other init systems:
<id>: WARNING: This field has a non-traditional meaning for BusyBox init!

The id field is used by BusyBox init to specify the controlling tty for
the specified process to run on.  The contents of this field are
appended to "/dev/" and used as-is.

Since /dev/null is not there yet, Busybox throws errors instead of
executing the commands, and hence never mounts devtmpfs:
init started: BusyBox v1.24.1 (2016-09-04 11:53:14 PDT)
can't open /dev/null: No such file or directory
can't open /dev/null: No such file or directory
can't open /dev/null: No such file or directory
can't open /dev/null: No such file or directory
can't open /dev/null: No such file or directory
can't open /dev/null: No such file or directory
can't open /dev/null: No such file or directory

Avoid this circular dependency by not specifing <id>. With that
Busybox ends up using the stdio of the init process and executes
the inittab just fine.

(From OE-Core rev: 82de49b899bca915259ea7ea149f50e1401c2426)

Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-08 00:32:43 +01:00
Dengke Du 08acf58572 busybox: fix "sed n (flushes pattern space, terminates early)" testcase failure
It is a busybox upstream known bug. When the busybox sed sub-command 'n'
hit the files EOF, it print an extra character that have been printed, but
the GNU sed would not print it.

In busybox source code ../editors/sed.c
------------------------------------------------------------------------
    case 'n':
        if (!G.be_quiet)
                sed_puts(pattern_space, last_gets_char);
            if (next_line) {
                    free(pattern_space);
                    pattern_space = next_line;
                    last_gets_char = next_gets_char;
                    next_line = get_next_line(&next_gets_char, &last_puts_char, last_gets_char);
                    substituted = 0;
                    linenum++;
                    break;
            }
            /* fall through */

    /* Quit.  End of script, end of input. */
    case 'q':
        /* Exit the outer while loop */
            free(next_line);
            next_line = NULL;
            goto discard_commands;
------------------------------------------------------------------------
when read at the end of the file, the 'next_line' is null, it would go
"case 'q'" and goto discard_commands, the discard_commands would print
the old pattern space which have been printed.

So in order to comply with GNU sed, in case 'n', when the next_line is null
I add "else" at the end of the second "if": "goto again;" and send it to
the busybox upstream, the busybox maintainer adopt it and make a little
changes to the patch, we can see it at:

His reply:

	http://lists.busybox.net/pipermail/busybox/2016-September/084613.html

The new patch on busybox master branch:

	https://git.busybox.net/busybox/commit/?id=76d72376e0244a5cafd4880cdc623e37d86a75e4

(From OE-Core rev: 5a680c267454d7c135c4bfe4e551a780f38a5087)

Signed-off-by: Dengke Du <dengke.du@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-03 23:45:54 +01:00
Richard Purdie f755bab792 busybox: Add parallel make fix
We're seeing regular parallel make failures in applet headers in busybox.
This adds a patch to try and avoid the issue, building upon a fix already
backported from upstream. The patch has been sent to upstream.

[YOCTO #10116]

(From OE-Core rev: 199cef0e8a50b20d0ee6fefd1d4cf3372eba7728)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-20 16:06:02 +01:00
Richard Purdie d3d395b939 busybox: Backport makefile fix from upstream
This at least partially addresses one of the build races we've seen
on the autobuilder in busybox. Its a straightforward backport from
upstream.

(From OE-Core rev: 8599059164ad0eb908fd1177044af8bc9a9881e4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-18 09:27:52 +01:00
Stefan Agner 4a4a24fccc busybox: Fix busybox-init on non-tty consoles
When using non-tty consoles (e.g. VirtIO console /dev/hvc0) the
current init system fails with:
process '/sbin/getty 115200 hvc0' (pid 545) exited. Scheduling for restart.
can't open /dev/ttyhvc0: No such file or directory

The first field needs to be a valid device. The BusyBox inittab example
explains as follows:
"<id>: WARNING: This field has a non-traditional meaning for BusyBox init!

The id field is used by BusyBox init to specify the controlling tty for
the specified process to run on.  The contents of this field are
appended to "/dev/" and used as-is."

(From OE-Core rev: a53393082f331a613cb3eb973a07bab22cefcde8)

Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-10 10:46:34 +01:00
Aníbal Limón 140f6c7308 busybox-syslog.default: When systemd is enabled don't use circular buffer
Busybox syslog uses a shmmem circular buffer [1][2] when launch with -C option
when systemd (is enabled) takes the control of syslog messages and then forward
the messages to busybox syslog daemon, systemd journald don't usage of shmmem
circular buffer.

If -C is specified busybox-syslog never be able to read the forwarded
messages from systemd journald and don't wrote it to /var/log/messages.

This file is only installed when systemd is enabled [3].

[1] https://git.busybox.net/busybox/tree/sysklogd/syslogd.c?h=1_24_stable#n464
[2] https://git.busybox.net/busybox/tree/sysklogd/logread.c?h=1_24_stable#n82
[3] http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-core/busybox/busybox.inc#n295

(From OE-Core rev: 07ea6b5fb1eae175e18ecdab3ca37304215cd428)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-01 11:47:13 +01:00
Khem Raj ec8c9eb269 busybox/mdev: Ensure /sys is mounted before using it
echo would fail if /sys is not mounted and boot would abort

(From OE-Core rev: b8901336e72639342a1d784557043fa47a9d90ff)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-13 13:41:30 +01:00
Ross Burton 5073e5bbf1 busybox: don't build ar
As it's not 1978 anymore, nobody is using ar for anything apart from static
archives.  If people are using static archives, then binutils provides a far
more capable ar.

(From OE-Core rev: 664a7743a7a2dd6a5c3676c06c35b692af2907e2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-29 07:58:43 +01:00
Armin Kuster a421090cfa busybox: musl mips64 ip fix
(From OE-Core rev: ef64e61c598b64922ca3e1f9126139a0470b71c2)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-29 07:41:43 +01:00
Armin Kuster 9f3d7ae8f6 busybox: Security fix CVE-2016-2147
busybox <= 1.24.2

(From OE-Core rev: 8a7a392ef37b3d5bd8ef81ab17d976696ad64dfe)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-29 07:41:43 +01:00
Armin Kuster 2928ca48e9 busybox: Security Fix CVE-2016-2148
busybox <= 1.24.2

(From OE-Core rev: ff1a31824a2a43e63682a176a904de43ad0e1c2e)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-29 07:41:43 +01:00
Maxin B. John 2755304a7d busybox: update flock behavior to match upstream
In "util-linux" implementation of flock, -c 'PROG ARGS' means run
"sh -c 'PROG ARGS'". At present, busybox implementation doesn't follow it.
That causes errors like the one listed below:

smart install /media/cronie-1.5.0-r0.core2_64.rpm
Updating cache...
  <snip>
  Output from cronie-1.5.0-r0@core2_64:
  Running groupadd commands...
  NOTE: cronie: Performing groupadd with [ --system crontab]
  ERROR: cronie: groupadd command did not succeed.
  error: %pre(cronie-1.5.0-r0.core2_64) scriptlet failed, exit status 1
  error:   install: %pre scriptlet failed (2), skipping
  cronie-1.5.0-r0.core2_64

This is because we use flock command in preinstall scripts in packages
which create new groups/users.

[YOCTO #9496]

(From OE-Core rev: 84686b51043c5a6b0ae184d00f547ccbd7832f39)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-22 16:28:57 +01:00
Khem Raj 3c5ee61b6d busybox: Drop -r passthrough patch
This was added to help clang compile busybox but since then
the option has been added to llvm and now we have upgraded clang
to 3.8 which has this option available

Fix git recipe to build with mdev feature and update to tip when here

(From OE-Core rev: e617b6f9bf0aa3f1a7a19019f6953d0a102f3039)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-20 23:12:26 +00:00
Alejandro del Castillo 656aeff16a busybox.inc: add tail symlink so busybox can commit suicide cleanly
update-alternatives-opkg uses tail, which requires a temporary symlink
on tmpdir during removal, to avoid errors of the type:

/usr/bin/update-alternatives: line 113: tail: command not found

(From OE-Core rev: 398728a78ddb6cbf770045e2684d910a0ba0fc90)

Signed-off-by: Alejandro del Castillo <alejandro.delcastillo@ni.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-09 16:58:11 +00:00
Maxin B. John c7355b90d0 busybox: drop patches that are not valid anymore
1. Removed following patches
        a) busybox-appletlib-dependency.patch
         - Kbuild rules handles that dependency
        b) get_header_tar.patch
         - tar applet uses a different code path to handle that scenario now.

2. Updated the upstream-status of fail_on_no_media.patch as Denied.

(From OE-Core rev: 48f5c2962a4121ba6172b535c90eaa16e8afa538)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:39:31 +00:00
Maxin B. John adfcaf2740 busybox: Add musl config for _git recipe
busybox_git recipe also requires musl specific configuration

(From OE-Core rev: 2f551835cb9414597eed1f1ae94632aa516488f9)

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-18 07:39:31 +00:00
Mark O'Donovan 691277f889 udhcpc: specify full path for ip command calls
(From OE-Core rev: 97dd53468537968422569797122ddef4b779a488)

Signed-off-by: Mark O'Donovan <modonovan@biotector.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-11 12:27:49 +00:00
Richard Purdie 6ab50017e1 busybox/gtk/perl/base-passwd: Ensure data is correctly expanded
Where variables are used in python, we need to ensure they are expanded.
This happens to work at the moment but likely will not happen in future
and isn't good code practise.

Its mostly an issue around key values, since bitbake has already
performed key expansion when these functions are executed.

(From OE-Core rev: 6d1142b56948c048111c4f78d9909c1846ab225b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-04 23:39:00 +00:00
Andre McCurdy d11cc29758 busybox: fix stop -vs- start typo in rcS script
Also make the rcS and rcK comments match the code.

(From OE-Core rev: 8b033e6faa0a6927f1e1ee2484381eff8231a549)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-26 22:32:00 +00:00
Andre McCurdy fa801e775d busybox: backport upstream truncate open mode fix
https://git.busybox.net/busybox/commit/?h=1_24_stable&id=be729c1d3b5c923f10871dd68ea94156d0f8c803

(From OE-Core rev: 123958a4b098fae32fe46552bddec21266698cfa)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-26 22:31:58 +00:00
Khem Raj be145ad5dc busybox: Add support for busybox-init
in config metadata we can configure busybox based init and device
initializer ( mdev ) using e.g.

VIRTUAL-RUNTIME_dev_manager = "busybox-mdev"
VIRTUAL-RUNTIME_login_manager = "busybox"
VIRTUAL-RUNTIME_init_manager = "busybox"
VIRTUAL-RUNTIME_initscripts = "initscripts"
VIRTUAL-RUNTIME_keymaps = "keymaps"
DISTRO_FEATURES_BACKFILL_CONSIDERED += "sysvinit"

busybox can be used to provide init system
combined with mdev it makes it a complete init
system for really tiny systems.

This patch uses above defines to configure features in busybox to enable
the init system and mdev in a configurable manner

(From OE-Core rev: 75cb4fe38fade382450c5f6f35d5dcf55962143e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-25 12:44:12 +00:00
Matthias Schiffer 4cba706801 busybox: generalize recipe to work with arbitrary install directories
Allow configuring base_bindir, base_sbindir, bindir and sbindir
arbitrarily.

Also change the temporary symlinks created in the postinst script from
relative to absolute to make the code simpler and more flexible. There was
no reason to use relative links anyways, as directly afterwards
update-alternatives would replace them by absolute links anyways.

(From OE-Core rev: d7907c9a32733d716202d6baf76dc450fe791f31)

Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-28 09:25:19 +00:00
Khem Raj c4207ee4d9 busybox: Add config for musl
Default config is enabling additional features that dont compile with
musl so lets disable them for musl case

(From OE-Core rev: 7568e432890d828fec59134e14d7f60445ff4a1a)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-12 23:42:55 +00:00
Andre McCurdy 2739ed08a8 busybox: backport upstream fixes for unzip
http://git.busybox.net/busybox/commit/?h=1_24_stable&id=6767af17f11144c7cd3cfe9ef799d7f89a78fe65
  http://git.busybox.net/busybox/commit/?h=1_24_stable&id=092fabcf1df5d46cd22be4ffcd3b871f6180eb9c

(From OE-Core rev: e69c955d825bdfaa17eb7a75f26df8b7b646f04d)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08 10:20:49 +00:00
Andre McCurdy 88e45cdd4d busybox: enable resize applet
The /etc/profile script contains a call to resize, which improves
the usability of shells run on the serial console.

  http://git.openembedded.org/openembedded-core/commit/?id=cc6360f4c4d97e0000f9d3545f381224ee99ce7d

Unfortunately the resize applet is not currently enabled in busybox
defconfig, so resize is never called. Fix that.

(From OE-Core rev: 2136fecd662a6eeea02322628021de7982b5d35e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:12 +00:00
Andre McCurdy 87de4a1cc3 busybox: disable support for mounting NFS file systems on Linux < 2.6.23
The busybox CONFIG_FEATURE_MOUNT_NFS config option is described as:

  Enable mounting of NFS file systems on Linux kernels prior
  to version 2.6.23. Note that in this case mounting of NFS
  over IPv6 will not be possible.

Since OE-core sets OLDEST_KERNEL = "2.6.32", CONFIG_FEATURE_MOUNT_NFS
is not required in the default busybox defconfig.

(From OE-Core rev: b47ff1605940694150e497d8f18d6201e1627415)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:12 +00:00
Andre McCurdy 73cc839746 busybox: update 1.23.2 -> 1.24.1
The busybox defconfig has also been refreshed, with all new apps
and features disabled by default. Update _git recipe version too.

(From OE-Core rev: 4d5f51dd3b2733f15cb2eee40e622ec43f46d91c)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:12 +00:00
Andre McCurdy f8ac40878c busybox: re-order defconfig to align with busybox 1.24.1
No functional changes, simply re-order lines in defconfig so that
the existing options don't move elsewhere in the file when run
though busybox 1.24.1 'make oldconfig'.

(From OE-Core rev: 28f197915d816ea249b036f8a4dfe11d477f94e7)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:12 +00:00
Andre McCurdy 3648a37b2d busybox.inc: remove '-e MAKEFLAGS=' from EXTRA_OEMAKE
Busybox Kbuild likes to control its own MAKEFLAGS (it adds -rR, etc),
so avoid over-riding MAKEFLAGS. Relying on 'make -e' is no longer
required so remove that too.

(From OE-Core rev: 1d841e103b229bf70a1c24c1cc22b7bdc8c9bf64)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:11 +00:00
Andre McCurdy bf28ea907f busybox.inc: set CC=${CC} via make command line
Busybox currently relies on 'make -e' to over-ride CC and the make
command line to over-ride LD. Set CC via the make command line to be
consistent with LD and to allow '-e' to be dropped from EXTRA_OEMAKE.

(From OE-Core rev: b7c265e1edd5c82126c1f3915ba5ca9efef57c00)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:11 +00:00
Andre McCurdy f21dce1044 busybox.inc: fix CONFIG_EXTRA_CFLAGS configmangle
With current busybox Kbuild, setting .config to:

  CONFIG_EXTRA_CFLAGS="foo" "bar"

and then running 'make oldconfig' results in .config containing:

  CONFIG_EXTRA_CFLAGS="foo"

ie the CONFIG_EXTRA_CFLAGS configmangle in the busybox.inc doesn't
currently work as intended. Remove the extra \" \" to ensure that
${HOST_CC_ARCH} gets added to CONFIG_EXTRA_CFLAGS.

(From OE-Core rev: 5f822373fadff2415cf1602b9d58fae0dbd33730)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01 21:32:11 +00:00