Commit Graph

136 Commits

Author SHA1 Message Date
yadi.hu@windriver.com 7e8ca6fb18 BusyBox: Fixing broadcast address is not fed and rightly initialized
When using udhcpc along with ip command(/sbin/ip), broadcast address is not
assigned. Broadcast address is successfully assigned when using udhcpc without
ip command existence.

with ip command:
    $ifconfig eth0|grep Bcast
          inet addr:128.224.162.141  Bcast:0.0.0.0  Mask:255.255.254.0
    $
without ip command:
    $ifconfig eth0|grep Bcast
          inet addr:128.224.162.141  Bcast:128.224.163.255  Mask:255.255.254.0
    $

/etc/udhcp.d/50default[simple.script] is called to set ip address by dhcp
client, In case of ifconfig, it doesn't care of it's existence because it
will automatically calculate broadcast address then assign it if there is
no broadcast option. However in case of ip command, it requires broadcast
address statically.

(From OE-Core rev: 666c6a126cd12d2555361f5b573b6a26437df780)

Signed-off-by: Hu <yadi.hu@windriver.com>
Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-11-04 10:27:10 +00:00
Michael Gloff 6870dff3ec syslog: Change unused variable declaration LOCAL=0 to LOG_LOCAL=1
This fix allows the correct appending of -L to syslogd arguments when both file and remote logging are selected.

(From OE-Core rev: ca68019760de6c5d5401be8eae7e65e7e6ca9021)

Signed-off-by: Michael Gloff <mgloff@emacinc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-29 12:12:43 +01:00
Richard Purdie 28e3f8ca6f fixup
(From OE-Core rev: 20992e8a00c585ab6b0611ca23ccd57e2b86b727)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-23 23:01:59 +01:00
Hongxu Jia f026b7a211 busybox : fix do_compile failed on qemumips when DEBUG_BUILD (ICE)
Build busybox on mips with -g -O, there is a ice failure:
...
shell/ash.c:8758:1: internal compiler error: in dwarf2out_var_location, at dwarf2out.c:21264
...
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
{standard input}: Assembler messages:
{standard input}: Warning: missing .end at end of assembly
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive
...

The following line caused the ice failure on mips:
...
void evaltreenr(union node *, int) __attribute__ ((alias("evaltree"),__noreturn__));
...
So remove evaltreenr which was a alias of evaltree, and use evaltree
to instead.

[YOCTO #6625]

(From OE-Core rev: e9e2884a29e95703c5b1a2fffe5e6febfa77b5cd)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-23 23:01:59 +01:00
Richard Tollerton 4f597a81f3 busybox: enable `tar -m`
CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y is needed for the commit
"udev-cache: strip timestamps on extract". Enabling this flag increases
the size of busybox by 0 bytes on x86.

(From OE-Core rev: 11a772b3297ef36f3ebc4b67c9477022352d1c55)

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-23 23:01:58 +01:00
Saul Wold 3f0bbf6659 busybox: Add Upstream-Status to patch
(From OE-Core rev: a81d4fd4ac3b2cfb144650a9bdde918d9f7d73a2)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-11 10:53:05 +01:00
Saul Wold a40db96621 busybox: Make busybox connman aware
This change makes busybox aware of both connman and the standard dhcp
client, while there is a caveat about using busybox's ifup/ifdown, this
change will make the 3 possibly dhcp clients behave better when busybox
is used.

Enable the CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP feature to busybox will
search for various external clients and then add connman as an external
client.

[YOCTO #6521]

(From OE-Core rev: 06bdccb5c4df44745863a2290cbb83fd190f66df)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-06 10:23:40 +01:00
Ben Shelton acfe054e32 busybox: mdev: Ensure /dev/initctl exists after tmpfs mount
During boot, there is a brief window during which /dev/initctl is
missing, which breaks initscripts that would need to access it. This
occurs because /etc/init.d/mountall.sh (rcS.d/S02...) attempts to ensure
/dev/initctl is present, but /etc/init.d/mdev (rcS.d/S06...) mounts over
/dev and clobbers the work done by mountall, and then does not wait
synchronously until initctl is ready before continuing.

To close this window, in /etc/init.d/mdev, we check whether /dev/initctl
is present, and if not, we remove it and recreate it.  This is the same
thing that is done by /etc/init.d/mountall.sh, and we have verified that
any writers of /dev/initctl will wait synchronously until sysvinit
notices the change in fd and does the read, so no race exists.

(From OE-Core rev: 53543363a8ab4424c17ed7aec0e8aefc4df86b3d)

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
Signed-off-by: Ben Shelton <ben.shelton@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-23 21:59:13 +01:00
Bill Pittman 034790df8f busybox: mdev: Use mdev.seq
/dev/mdev.seq exists to synchronize concurrently running instances of
mdev and to ensure that they execute in the proper order.  Without this
synchronization, it is possible to have inconsistent mount points, to
leak device nodes, or to have a node erroneously removed in rapid
hotplug scenarios.

Enable the use of mdev.seq by creating an empty /dev/mdev.seq at boot.

(From OE-Core rev: 3b256653ae9ab2cf56b21cb82a8bd2a562397b27)

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
Signed-off-by: Ben Shelton <ben.shelton@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-23 21:59:13 +01:00
Gratian Crisan 67e1a5244d busybox: mdev: Make /dev/shm world-writable
Otherwise, users cannot use named semaphores or shared memory.

(From OE-Core rev: a8f35be467836d8fa0bc8f8e85eba6f89a13f087)

Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
Signed-off-by: Ben Shelton <ben.shelton@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-23 21:59:13 +01:00
Hongxu Jia 8673b60f26 busybox: enable CONFIG_FEATURE_AWK_LIBM by default
It was required by tzselect which is provided by eglibc utils.
The eglibc is a fundamental package, so enable math functions
of awk is reasonable.

Here is the error if we not enable that:
...
root@qemuarm:~# tzselect -c +4852+00220
awk: cmd. line:39: Math support is not compiled in
...

[YOCTO #6544]

(From OE-Core rev: 52a3df6a57c22df9da5ce05134395cf0756c63c6)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-07-19 00:09:01 +01:00
Chen Qi 5d6ffdc475 busybox: handle syslog related files properly
If CONFIG_SYSLOGD is not enabled, then the related service file should
not be installed as it will always fail at system start-up. The error
message is as following.

	[FAILED] Failed to start System Logging Service.

The same logic applies to CONFIG_KLOGD.

So we should first check the configuration before we install these
service files.

[YOCTO #5302]

(From OE-Core rev: b44e291a87539fbb8e6da1a16c56f425a417e7bd)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-14 08:43:55 +01:00
Saul Wold b6ef8dccfe busybox: put udhcpc in background
If the interface is slow to come up udhcpc will continue in the background

[YOCTO #6339]

(From OE-Core rev: 45af0ba08dbc676be41fd29e9877fe820b531f7c)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-06 10:27:46 +01:00
Otavio Salvador 4c14b09498 Globally replace 'base_contains' calls with 'bb.utils.contains'
The base_contains is kept as a compatibility method and we ought to
not use it in OE-Core so we can remove it from base metadata in
future.

(From OE-Core rev: d83b16dbf0862be387f84228710cb165c6d2b03b)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-25 17:19:19 +01:00
Mike Looijmans e45da211a7 PR bumps to remove PRINC use in meta-openpli
Resolves warnings of this kind in the OpenPLi layer:
 WARNING: Use of PRINC * was detected in the recipe *

(From OE-Core rev: 5ffb38d6ace7faae839c8cac7327b5b1c2daae1a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-24 17:55:14 +01:00
Wenlin Kang 467b19efba busybox: fix a sh link wrong
When both bash and busybox be installed, without ash support
in busybox,if bash is installed before busybox in the final stage,
even if ALTERNATIVE_PRIORITY of bash > ALTERNATIVE_PRIORITY of busybox,
the symlink from /bin/sh to bash can be yet overwritten by busybox.

(From OE-Core rev: 6ef650359cc2a49376eb5ca92bc97b34cdd82862)

Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-09 09:53:14 +01:00
Drew Moseley e4ec48a2e0 busybox: Specify '-nostdlib' when linking to a .o file.
Ensure that linking to the built-in.a file uses the 'nostlib'
option.  Submitted to busybox mailing list here:

    http://lists.busybox.net/pipermail/busybox/2014-March/080730.html

This has been accepted into upstream busybox so it will not be needed
for future versions.

(From OE-Core rev: fdfff57304e6641ef5a8db0fb456bfd46bf1e2dd)

Signed-off-by: Drew Moseley <drew_moseley@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-05 23:24:01 +01:00
Drew Moseley 32acba5f62 busybox: Use CCLD
Use the CCLD variable to ensure proper tuning parameters.
Notably when building on a x86-64 host with an i686 toolchain
there is an error building built-in.o because it is trying to
link 32-bit and 64-bit object files:

     i686-pc-linux-gnu-ld --sysroot=/work/dmoseley/Mentor/amd-2014.05/build.genericx86-64-external/tmp/sysroots/genericx86-64     -r -o applets/built-in.o applets/ap
     i686-pc-linux-gnu-ld: Relocatable linking with relocations from format elf64-x86-64 (applets/applets.o) to format elf32-i386 (applets/built-in.o) is not support
     make[1]: *** [applets/built-in.o] Error 1

(From OE-Core rev: 088d2f0185da6648305b4719ee9cb0d2f2b37c6f)

Signed-off-by: Drew Moseley <drew_moseley@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-05 23:24:01 +01:00
Jonathan Liu 24979a1f7e busybox: disable fsck.minix and mkfs.minix
The MINIX and MINIX 2 filesystems are not really used anymore.

(From OE-Core rev: 4a47c943a76e79af82d47d8fa83c6687e0d915a0)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-23 09:08:54 +00:00
Matthieu Crapet b88321ac78 recipes: convert remaining SUMMARY/DESCRIPTION cosmetic issues (part 2)
Completes previous commit b5292d4115a4555a66b5e35acdc67dd71fb8577f.
Updates SUMMARY[doc] (meta/conf/documentation.conf).

Changes:
- rename DESCRIPTION with length < 80 to (non present tag) SUMMARY
- drop final point character at the end of SUMMARY string
- remove trailing whitespace of SUMMARY line

Note: don't bump PR

(From OE-Core rev: ad17dfd31a2b97b3e610a0ea0889f5ecb2a63b97)

Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-20 14:28:13 +00:00
Chen Qi d5909eb578 busybox-syslog: add more comments to systemd configuration file
Add more comments to the systemd configuration file for busybox's
syslogd utility. The purpose is to easy the life of system administrators.

These comments are mostly derived from the comments in syslogd.c in
busybox.

[YOCTO #5722]

(From OE-Core rev: eba4f2bd2a0becc086f107dbd0d3ec5222c5eed2)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-13 11:41:22 +00:00
Chen Qi b1ea345537 busybox: upgrade to stable 1.22.1
Upgrade busybox to the stable release 1.22.1.

During this upgrade, 9 patches are removed. Reasons are detailed below.

The following 6 patches are removed as they have been merged.
    meta/recipes-core/busybox/busybox/busybox-lineedit-initialize-delptr.patch
    meta/recipes-core/busybox/busybox/busybox-list-suid-and-non-suid-app-configs.patch
    meta/recipes-core/busybox/busybox/busybox-sed-fix-sed-clusternewline-testcase.patch
    meta/recipes-core/busybox/busybox/busybox-sulogin-empty-root-password.patch
    meta/recipes-core/busybox/busybox/find-get-rid-of-nested-functions.patch
    meta/recipes-core/busybox/busybox/testsuite-du-du-k-works-fix-false-positive.patch

The following three patches are removed because they are mainly about moving
binaries from /bin to /usr/bin to make the update-alternative work correctly
at rootfs time. We can easily solve this problem by changing recipes. There's
no compelling reason why such patches are needed.
    meta/recipes-core/busybox/busybox/run-parts.in.usr-bin.patch
    meta/recipes-core/busybox/busybox/stat-usr-bin.patch
    meta/recipes-core/busybox/busybox/watch.in.usr-bin.patch

(From OE-Core rev: fa282186d82e8fe3c590d4ea79e464116e5ceea2)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 11:22:12 +00:00
Ming Liu 7be3064bf5 busybox: lineedit: initialize delptr
In vi mode, the 'p' and 'P' commands caused a segfault when nothing had
been put in the buffer yet because the delptr was not initialized.

(From OE-Core rev: 21ba0297409bfc6e0fb89f45c9bfed8981c7df5b)

Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:16:50 +00:00
Chen Qi 2b702032fa busybox: enable SEAMLESS_XZ by default
We have enabled SEAMLESS_GZ and SEAMLESS_BZ2 in defconfig, it's
reasonable for us to enable SEAMLESS_XZ as well. Otherwise, we
couldn't extract tar.xz file while we could extract tar.gz file.
Such situation would be somewhat confusing.

(From OE-Core rev: 6482a43211a3a4858030ae3c59f5726c0ccba261)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:16:50 +00:00
Muhammad Tauqir Ahmad 8babb8ff17 busybox: get rid of nested functions in find
This allows us to compile busybox using clang. Nested functions is
a gcc extension not supported by clang.

(From OE-Core rev: d2bf599f36ed1a04c661fc0a71e664e219532cbc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-16 12:13:58 +00:00
Richard Purdie 6ab56c54f3 classes/recipes: More optimal DISTRO_FEATURES references
Using the contains function results in more optimal sstate checksums
resulting in better cache reuse as we as more consistent code.

(From OE-Core rev: 9c93526756e7cbbff027c88eb972f877bcb1f057)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-05 14:24:43 +00:00
Chen Qi 3c182d2208 busybox: add busybox_git.bb recipe
Add busybox_git.bb recipe so that it would be easier to hack with
busybox. Set DEFAULT_PREFERENCE to "-1" in the git recipe so that we
still use the busybox_1.21.1.bb recipe by default.

(From OE-Core rev: d290bbe6d9826fbcfa2e0a7624886284697ed7eb)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-30 22:26:27 +00:00
Jackie Huang 660304f1bd busybox: fix sed auto insert newline testcase
backport the patch from busybox upstream to fix the
auto insert newline issue.

busybox defect:
https://bugs.busybox.net/show_bug.cgi?id=6584

(From OE-Core rev: db00fa405c025c61844df2e9589fe635fc5df0e2)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-01 11:09:05 +00:00
Richard Purdie 5e42796675 recipes: Remove PR = r0 from all recipes
Remove all PR = "r0" from all .bb files in oe-core. This was done
with the command sed -e '/^PR.*=.*r0\"/d' recipes*/*/*.bb -i

We've switching to the PR server, PR bumps are no longer needed and
this saves people either accidentally bumping them or forgetting to
remove the lines (r0 is the default anyway).

(From OE-Core rev: 58ae94f1b06d0e6234413dbf9869bde85f154c85)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-30 14:52:04 +00:00
Saul Wold 72b5535ff2 busybox: Add depmod (adds 2240 bytes)
This will allow packages that update kernel modules to run correctly

(From OE-Core rev: 72c23255cc88b5e2cd6f783231e6f42bf5190df7)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-16 13:31:37 +01:00
Eric Bénard 5454f92e57 busybox: update mdev.conf
busybox 1.21.1 's mdev has changed the way the device's name is
reported so now we get input/event0 instead of event0.
I think this commit is responsible of this new behaviour :
http://git.busybox.net/busybox/commit/util-linux/mdev.c?id=c3cf1e30a3022453311a7e9fe11d94c7a381640e

Update mdev.conf according to this behaviour so that sound
and input devices are correctly populated (and now
/etc/mdev/find-touchscreen.sh is executed).

Tested on an arm board.

(From OE-Core rev: 61b2950ebbc01f5e4fd7aece05bf371100c0c390)

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-26 16:37:56 +01:00
Hongxu Jia 44c65db250 busybox: move su to /bin for lsb command check test
In busybox, util-linux and shadow, su has been moved to /usr/bin/,
but lsb cmdchk needs su in /bin.

Move su to /bin could fix this issue.

[YOCTO#5175]

(From OE-Core rev: daff19fe6f0490dc7036602e8b0ca40a23b55556)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-17 19:34:54 +01:00
Chen Qi 101662d357 busybox-syslog: add configuration file /etc/syslog.conf
By default, busybox has CONFIG_FEATURE_SYSLOGD_CFG enabled, but it
doesn't ship a configuration file.

This patch adds a configuration file (/etc/syslog.conf) to the
busybox-syslog package. This configuration file mainly serves as a
placeholder now.

The advantages of this change are:
1. Make the users aware of the fact that the /etc/syslog.conf file
   will actually be parsed by busybox's syslogd utility. And configuring
   that file will change the logging behaviour.
2. In a systemd based system, this file will prevent the same configuration
   file provided by the sysklogd package from messing things up.

[YOCTO #5066]

(From OE-Core rev: b7f6688f0700a1575037362af7a8ca94dccce471)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-06 23:03:21 +01:00
Chen Qi abfe9af9e5 busybox: configure system user id to range from 100 to 999
Previously, the range was 0 to 0. This made it impossible to use
busybox's adduser utility to add a system user. The following error
would appear.

      adduser: no uids left

This patch fixes this problem by giving it a reasonable range.

(From OE-Core rev: c4555007d04ccacbc192827b70a97f9a48500a22)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-30 16:23:46 +01:00
Paul Eggleton 3095ee5154 busybox: set default log buffer size to 64 at compile time
This provides a more reasonable log buffer size to avoid losing earlier
events, and 64K is not a problem for modern systems. When the buffer is
used on sysvinit-based systems, which it isn't by default, 64K is already
the runtime default size unless /etc/syslog-startup.conf is modified or
deleted, so this only really affects systems using systemd. This
completely removes the need for the busybox bbappend in meta-oe.

(From OE-Core rev: 6d6a3f805b0fad6f904afb52dc12bfb543e3eec5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-30 16:23:43 +01:00
Paul Eggleton b18b210c1e busybox: enable shared memory logging for systemd
The default command-line options for launching busybox's syslogd are
"-C" if using sysvinit; but because we use /etc/default/busybox-syslog
when using systemd which the sysvinit initscript doesn't use, and no
/etc/default/busybox-syslog is installed by default in OE-Core, the
default arguments with systemd were no arguments at all with OE-Core
alone. Effectively merge in the bbappend from meta-oe that adds a
default file in order to set the default options to "-C" for systemd as
well.

(From OE-Core rev: a23aa8e7467cf2b7f4e8ff85a3aa841ff6b508e5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-26 11:47:19 +01:00
Florin Sarbu 02521a40d3 busybox.inc: Avoid error when SYSLOG is not enabled
Add -f to rm of ${D}${sysconfdir}/syslog-startup.conf.${BPN} so as to
not error out when the busybox config used does not have SYSLOG enabled
and DISTRO_FEATURES does not contain sysvinit.

(From OE-Core rev: 4c5756149754d0b18b14595db335f8f5e14cc0a3)

Signed-off-by: Florin Sarbu <florin.sarbu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-22 15:11:13 +01:00
Chen Qi 86d8d89c21 busybox: remove syslog-startup.conf if sysvinit not in DISTRO_FEATURES
sysvinit and systemd have different ideas about configuration files (or
environment files in systemd), so basically we can't use the same one in
both cases.

To avoid confusion, this patch removes syslog-startup.conf if 'sysvinit'
is not in DISTRO_FEATURES.

[YOCTO #4837]
[YOCTO #4860]

(From OE-Core rev: 89f62147a61108b4be40001e1fbe3be33bacf00b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-12 13:09:52 +01:00
Hongxu Jia 16ce101c3f busybox: move /bin/su to /usr/bin/su to match util-linux and shadow
Both of util-linux and shadow have su binary in /usr/bin, fix busybox
to use the same path so they can be properly tracked by alternatives.

[YOCTO #4926]

(From OE-Core rev: e01735756a76d27b724b9e7829f78e8a335c1f60)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-31 06:59:58 +01:00
Muhammad Shakeel fe378e1d46 busybox: Add syslog-init alternative only if SysV in enabled
If systemd is enabled then syslog is handled through a service file
and related files in /etc/init.d are removed. This removes following
warning:

WARNING: busybox: NOT adding alternative provide /etc/init.d/syslog:
/etc/init.d/syslog.busybox does not exist

(From OE-Core rev: 29c3ecee32d9bfb03099a4f10456fd0270e107fb)

Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-31 06:59:56 +01:00
Mark Hatle e9b5ef1c20 busybox: fix ip reference in simple.script
The ip is being installed into /sbin as of the latest busybox.

(From OE-Core rev: 222ae6001db286d66462c6334f7f054ca727b7be)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-18 21:23:42 +01:00
Chen Qi 131e5e7e8f busybox: upgrade to stable 1.21.1
Merged or backported patches are dropped.
The wget_dl_dir_fix.patch was submitted more than 1 year ago, it's
about the -P option behavior, and it's not accepted, so I dropped
this patch too.

(From OE-Core rev: a2f31a6a6accb8eee2084cb39edb8e9af4b4189f)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-05 15:44:13 +01:00
Chen Qi cb53421428 busybox: fix the on-target upgrade problem
We now can have a 'one-binary' version of busybox, or 'two-binary'
version of busybox, controlled by the 'BUSYBOX_SPLIT_SUID' variable.
This makes on-target upgrade a problem, as we have to support the
following four upgrading paths.

For convenience, in the following context, A is used to denote a
'two-binary' version of busybox while B is used to denote a 'one-binary'
version of busybox.

A --(upgrade)--> B
B --(upgrade)--> A
A --(upgrade)--> A
B --(upgrade)--> B

This patch makes effort to support the above four situations.

[YOCTO #4802]

(From OE-Core rev: 4e571e97750f3ac6a62cd0d2d10c08be98230630)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-07-05 15:34:21 +01:00
Björn Stenberg 67d95bffa9 busybox: Add ptest
Install busybox test suite and run it as ptest.

(From OE-Core rev: 0d29dc5b5f7742df60fdba90835ef77425963bde)

Signed-off-by: Anders Roxell <anders.roxell@enea.com>
Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-25 17:44:58 +01:00
Chen Qi 680ff5552d busybox: add the ability to split the busybox binary
This patch enables us to split the busybox into two binaries, one
containing suid applications, and the other containing nosuid apps.

Add a variable, BUSYBOX_SPLIT_SUID, to control whether to split the
busybox binary into two parts. We default it to "1" to enable the
splitting, but users could still override it to disable the splitting.
After all, busybox has no internal support for this suid apps splitting,
so there might be users out there who want just one busybox binary.

The basic idea here is to build the busybox twice, each with the correct
configuration items. We extract the non-app part of the original .config
file, and merge this part with the suid-app part to form a .config which
contains only suid apps. The same strategy applies to the non-suid apps.

[YOCTO #4207]

(From OE-Core rev: e5a1442819dfb74e86a6f69da008ba6908c8bbc7)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-25 17:44:52 +01:00
Chen Qi 72d5bbe59e busybox: enable to list suid and non-suid app configs
This patch, written by Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>,
adds the ability to busybox to list configuration items of suid apps
and non-suid apps separately.

`make busybox.cfg.suid' generates a file containing config items of the
suid apps.

'make busybox.cfg.nosuid' generates a file containing config items of
the non-suid apps.

This patch helps to separate busybox into two binaries, the suid one and
the non-suid one.

[YOCTO #4207]

(From OE-Core rev: 832d1b5575c76f61623f2e0337554287d056422b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-25 17:44:52 +01:00
Chen Qi 3d230db5c4 busybox: add a config fragment to enable login utilities
Create a config fragment to enable the login/passwd utilities of busybox.

[YOCTO #4207]

(From OE-Core rev: 2a37490d4d55a1a6e4c4d268231a9d8904d38f8b)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-25 17:44:51 +01:00
Chen Qi 726483741a busybox: add support for CONFIG_FEATURE_INDIVIDUAL
Previously, if CONFIG_FEATURE_INDIVIDUAL was enabled for busybox,
yocto-based systems could start correctly.

This is because if busybox is built as individual apps, '/bin/busybox'
may not be present, so setting the default ALTERNATIVE_TARGET to
'/bin/busybox' is not appropriate and could lead to errors.

This patch fixes this problem by checking the existence of '/bin/busybox'
before setting the ALTERNATIVE_TARGET to '/bin/busybox'.

After this change, if busybox is built as individual apps, we'll have
links like '/bin/ls -> /bin/ls.busybox', otherwise, we'll have links
like '/bin/ls -> /bin/busybox'.

Note there's a grep expression change in this patch. The old expression
doesn't work well, it has an unwanted underscore, so I changed it to make
it work.

[YOCTO #4570]

(From OE-Core rev: 87efa83191f0b4f4cec3a821b6dfe425c781c077)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-25 17:44:51 +01:00
Chen Qi 6984890b2e busybox: remove the postinst part of the recipe
Remove the pkg_postinst_${PN} from this recipe, as it's redundant.
It basically wants to do the same thing as the update-alternatives
does. But it doesn't do it well.

(From OE-Core rev: 5b961afc784747eb8240540e542a789849118596)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-25 17:44:51 +01:00
Jonathan Liu 4380876084 busybox: backport sulogin empty root password fix
This allows system maintenance login if the root password is empty.

(From OE-Core rev: 28bb8fe5c144e02c28bff54b5b81c8da33b9f58b)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-05-24 14:14:46 +01:00