summaryrefslogtreecommitdiff
path: root/meta/recipes-core/busybox/busybox.inc
AgeCommit message (Collapse)AuthorFiles
2017-04-29busybox: make bash a valid login shell if enabledAndreas Oberritter1
Add bash to /etc/shells if busybox is built with bash applet anabled to fix login via dropbear. Signed-off-by: Andreas Oberritter <obi@opendreambox.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-04-05busybox.inc: drop comment explaining '-e MAKEFLAGS=' in EXTRA_OEMAKEAndre McCurdy1
EXTRA_OEMAKE no longer contains '-e MAKEFLAGS=' so the comment explaining that it needs to be removed / over-ridden is obsolete. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-03-21busybox: ignore the largefile distro feature ( always enable LFS )Andre McCurdy1
Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-01-23busybox: Guard against interrupted compilesRichard Purdie1
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. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16meta: remove True option to getVar callsJoshua Lock1
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\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-10-11sysklogd and busybox: ignore return code from init script stopMarkus Lehtonen1
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] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-13busybox: allow overriding compiler name in KConfigJérémy Rosen1
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 Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-08-10busybox: Fix busybox-init on non-tty consolesStefan Agner1
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." Signed-off-by: Stefan Agner <stefan@agner.ch> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-09busybox.inc: add tail symlink so busybox can commit suicide cleanlyAlejandro del Castillo1
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 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-02-11udhcpc: specify full path for ip command callsMark O'Donovan1
Signed-off-by: Mark O'Donovan <modonovan@biotector.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-02-04busybox/gtk/perl/base-passwd: Ensure data is correctly expandedRichard Purdie1
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. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-24busybox: Add support for busybox-initKhem Raj1
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 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-27busybox: generalize recipe to work with arbitrary install directoriesMatthias Schiffer1
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. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01busybox.inc: remove '-e MAKEFLAGS=' from EXTRA_OEMAKEAndre McCurdy1
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. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01busybox.inc: set CC=${CC} via make command lineAndre McCurdy1
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. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01busybox.inc: fix CONFIG_EXTRA_CFLAGS configmangleAndre McCurdy1
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. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01busybox.inc: don't set .config CROSS_COMPILER_PREFIXAndre McCurdy1
Setting CROSS_COMPILER_PREFIX via .config is redundant (setting CROSS_COMPILE via the make command line will always over-ride it). Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01busybox: move EXTRA_OEMAKE etc into busybox.incAndre McCurdy1
EXTRA_OEMAKE options and do_install_ptest() are common to both busybox recipes, so move into busybox.inc. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-01busybox.inc: don't export EXTRA_OEMAKEAndre McCurdy1
EXTRA_OEMAKE is private to OE and shouldn't be exported to the busybox build. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-11-16busybox: Schedule mdev after mountallKhem Raj1
mdev does automounting of block media, which expects /run/ to be mounted, so let mounting happen before running mdev service and mountall is done with at 03 so trigger mdev at 04 This helps in mounting the devices which are plugged on boot Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-12busybox.inc: remove redundant @DATADIR@ replacementAndre McCurdy1
The busybox defconfig doesn't contain a @DATADIR@ marker, so the attempt to replace it in do_prepare_config is redundant. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-06busybox: fixes for when base_bindir != /binJoshua Lock1
* Replace all hard-coded paths with variables * Run sed over busybox.links.* to replace /bin with ${base_bindir} Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-19busybox-mdev: Support automatic mounting of block devicesmike.looijmans@topic.nl1
Upon inserting a USB stick or similar device, mdev will run an automounter script that mounts valid partitions on /media/<device>. The script first checks /etc/fstab entries so that mounting on UUID or LABEL or using custom mount options is still possible. If /etc/fstab does not contain particular mount options, the script will create (and remove) the mountpoint automatically. The script also supports full disk partitions (devices without partition table). The following environments can be set in /etc/default/mdev: MDEV_AUTOMOUNT=n (Disables automounting completely) MDEV_AUTOMOUNT_ROOT=/media (Change the mount root location) Automatic mounting for a particular device can be disabled by creating a file "/dev/<device>.nomount". This is helpful in scripts that create partitions for example, and want to perform specific actions which require the device to remain unmounted. A more complex variation (using LABEL based mounts) on this script has been in use in OpenPLi for many years now, and I've used this one on many projects already, so it's about time to push this to mainline. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-12-19busybox-mdev: Install missing find-touchscreen.shmike.looijmans@topic.nl1
mdev.conf references the find-touchscreen.sh script, but this file was not being installed. Add the script to the busybox-mdev package. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Acked-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-06-14busybox: handle syslog related files properlyChen Qi1
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] 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-06busybox: put udhcpc in backgroundSaul Wold1
If the interface is slow to come up udhcpc will continue in the background [YOCTO #6339] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-25Globally replace 'base_contains' calls with 'bb.utils.contains'Otavio Salvador1
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. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-08busybox: fix a sh link wrongWenlin Kang1
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. Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-05busybox: Use CCLDDrew Moseley1
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 Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-20recipes: convert remaining SUMMARY/DESCRIPTION cosmetic issues (part 2)Matthieu Crapet1
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 Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-12-05classes/recipes: More optimal DISTRO_FEATURES referencesRichard Purdie1
Using the contains function results in more optimal sstate checksums resulting in better cache reuse as we as more consistent code. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-06busybox-syslog: add configuration file /etc/syslog.confChen Qi1
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] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-26busybox: enable shared memory logging for systemdPaul Eggleton1
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. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-08-22busybox.inc: Avoid error when SYSLOG is not enabledFlorin Sarbu1
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. Signed-off-by: Florin Sarbu <florin.sarbu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-09busybox: remove syslog-startup.conf if sysvinit not in DISTRO_FEATURESChen Qi1
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] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-07-30busybox: Add syslog-init alternative only if SysV in enabledMuhammad Shakeel1
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 Signed-off-by: Muhammad Shakeel <muhammad_shakeel@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-07-05busybox: fix the on-target upgrade problemChen Qi1
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] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-06-25busybox: Add ptestBjörn Stenberg1
Install busybox test suite and run it as ptest. 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>
2013-06-25busybox: add the ability to split the busybox binaryChen Qi1
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] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-06-25busybox: add support for CONFIG_FEATURE_INDIVIDUALChen Qi1
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] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-06-25busybox: remove the postinst part of the recipeChen Qi1
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. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-05-16busybox-mdev: Startup at level S03 instead of S06Mike Looijmans1
The udev hotplug deamon starts at 03, so mdev should start at the same point. This fixes the bug that when modutils (runs at 04) initializes devices that the mdev hotplug will often not pick them up, resulting in missing device nodes and similar problems. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-05-09class/lib: Fix up various file access methodsRichard Purdie1
There are various bits of cruft that have built up around our file accesses. This patch cleans some of them up, specifically: * Remove pointless "from __builtin__ import file" * Use open(), not file() * Wrap file usage in a with container to ensure files are closed * Add missing .close() calls in some cases Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-04-18busybox: hard-code the syslog service fileRoss Burton1
Previously this was using ${PN}-syslog.service, which changes with multilib. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-04-15busybox: Add inetd related filesTing Liu1
Add back inetd and inetd.conf files which are needed if CONFIG_INETD is enabled in the defconfig. Grabbed these files from oe-classic This patch is based on the previous patch for denzil: http://patches.openembedded.org/patch/33235/ Signed-off-by: Ting Liu <b28495@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-04-15busybox: detects customized configs when do_installTing Liu1
After using 'bitbake -c menuconfig busybox' to customize defconfig, do_install fail to detect the changes. Grep configs in ${B}/.config instead of ${WORKDIR}/defconfig. Signed-off-by: Ting Liu <b28495@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-03-26busybox: order and group initscript variables logicallyRoss Burton1
Signed-off-by: Ross Burton <ross.burton@intel.com>
2013-03-26busybox: enable systemd integration for syslogdRadu Moisan1
Signed-off-by: Radu Moisan <radu.moisan@intel.com> Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Ross Burton <ross.burton@intel.com>
2013-02-13busybox: add config fragmentsChen Qi1
Add config fragments to busybox. The implementation makes use of merge_config.sh script in kern-tools-native. The use case is similar to the yocto kernel's configuration fragments. We also add kern-tools-native to busybox's DEPENDS variable to ensure that merge_config.sh is available when required. [YOCTO #3379] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-03bzip2 and busybox: Incorrect LICENSEElizabeth Flanagan1
The license for bzip2 is not quite BSD. I have an email out to the maintainer to see if we can utilize a common BSD license (or something else) however, for now, we should revert bzip2 back to a special license. As busybox also utilizes a lightly modified bzip2, this also effects busybox. Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>