# # spec file for package busybox # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: busybox Version: 1.26.2 Release: 2.1 Summary: The Swiss Army Knife of Embedded Linux License: GPL-2.0+ Group: System/Base Url: http://www.busybox.net/ Source: http://busybox.net/downloads/%{name}-%{version}.tar.bz2 Source1: BusyBox.1 Source20: busybox.SuSE.config Source2: busybox.eisfair.config # other patches Patch100: busybox.install.patch Patch101: %{name}-1.18.3-libarchive.patch Patch103: busybox-resource.patch BuildRequires: libtirpc-devel BuildRoot: %{_tmppath}/%{name}-%{version}-build %description BusyBox combines tiny versions of many common UNIX utilities into a small single executable. It provides minimalist replacements for most of the utilities usually found in fileutils, shellutils, findutils, textutils, grep, gzip, tar, and more. BusyBox provides a fairly complete POSIX environment for any small or embedded system. The utilities in BusyBox generally have fewer options than their full-featured GNU cousins. The options that are included provide the expected functionality and behave very much like their GNU counterparts. %prep %setup -q %patch100 -p1 %patch101 -p1 %patch103 -p1 cp -a %{SOURCE1} docs/ cp -a %{SOURCE2} .config find -name CVS | xargs rm -rf find -name .cvsignore | xargs rm -rf find -name .svn | xargs rm -rf find -name .gitignore | xargs rm -rf %build export KCONFIG_NOTIMESTAMP=KCONFIG_NOTIMESTAMP export VERBOSE=-v export BUILD_VERBOSE=2 export CFLAGS="%{optflags} -fno-strict-aliasing -I/usr/include/tirpc" export CC="gcc" export HOSTCC=gcc make %{?_smp_mflags} -e oldconfig make -e %{?_smp_mflags} make -e doc busybox.links %{?_smp_mflags} %install install -d %{buildroot}/%{_bindir} install -d %{buildroot}/%{_sbindir} install -d %{buildroot}/%{_datadir}/busybox install busybox.links %{buildroot}%{_datadir}/busybox #install applets/install.sh %{buildroot}%{_bindir}/busybox.install install busybox %{buildroot}/%{_bindir} install -d %{buildroot}%{_mandir}/man1 install -m 644 docs/BusyBox.1 %{buildroot}%{_mandir}/man1 # mv for eisfair build %{__mv} %{buildroot}/%{_bindir}/busybox %{buildroot}/%{_sbindir}/udhcpc %files %defattr(-,root,root) %doc docs/mdev.txt %doc %{_mandir}/man1/BusyBox.1.gz %{_sbindir}/udhcpc #%{_bindir}/busybox #%{_bindir}/busybox.install %dir %{_datadir}/busybox %config %{_datadir}/busybox/busybox.links %changelog * Fri Nov 10 2017 kukuk@suse.de - Build against libtirpc in preparation of deprecating sunrpc from glibc * Sun Jul 2 2017 astieger@suse.com - update to 1.26.2: * many updates and fixes to individual tools * Tue Nov 1 2016 astieger@suse.com - update to 1.25.1: * fixes for hush, gunzip, ip route, ntpd - includes changes from 1.25.0: * many added and expanded implementations of command options - includes changes from 1.24.2: * fixes for build system (static build with glibc fixed), truncate, gunzip and unzip. * Thu Mar 3 2016 olaf@aepfle.de - Disable build timestamp * Sun Jan 3 2016 p.drouand@gmail.com - Update to version 1.24.1 * for a full list of changes see http://www.busybox.net/news.html - Refresh busybox.install.patch * Mon Apr 20 2015 mpluskal@suse.com - Update to 1.23.2 * for a full list of changes see http://www.busybox.net/news.html - Cleaned up spec file with spec-cleaner - Refreshed patches * Thu Oct 9 2014 olaf@aepfle.de - Remove mkinitrd scripts * Fri Sep 5 2014 andreas.stieger@gmx.de - update to 1.22.1: Many updates and fixes for most included tools, see see http://www.busybox.net/news.html - adjust busybox-resource.patch * Fri Dec 13 2013 p.drouand@gmail.com - Update to version 1.21.1 + fixes for ntfs detection (big-endian fix) + xz decompression of concatenated streams + mdev acquired a [ENV=regex;] extension instead of undocumented subsystem match hack it used to have prior to 1.21.x. - Changes from 1.21.0 + udhcpc: gracefully handle packets with CHECKSUM_PARTIAL + ifupdown: improve compatibility with Debian + get_linux_version_code: don't fail on Linux version strings like "3.0-foo" + build system: fix build failure when only gunzip is selected + CONFIG_PID_FILE_PATH: new configuration option for pidfile paths + declare strings with ALIGN1, as appropriate + nanddump: use the right operator of logic AND + nanddump: skip bad blocks when instructed to do so + nanddump: invert the meaning of the -o parameter to match upstream + mount: fix -o user=foo mishandling, fix unc= generation, add prefixpath= + build system: fix build of kconfig on Darwin + tar: support -J, --xz explicit compression option + simplify copyright/license notice that appears in the binary + mdev: tell kernel that we didn't find the firmware + lineedit: fix Alt-D when cursor==0 + lineedit: histfile can get emptied when CONFIG_FEATURE_EDITING_SAVE_ON_EXIT=y + build system: stop .eh_frame generation + build system: fix build failure when compressed help is selected, but bz2 compression is not + scripts/kconfig/mconf: work on systems w/o SIGWINCH + platform.h: disable ALIGNn macros for s390[x] + adduser: install to /usr, not /, like all other similar tools + ash: fix "read -s" + ^C. Closes 5504 + ash: fix a bug in >${varexp} handling. Closes 5282 + ash: implement export -n + ash: revert wrong "fix" for an apparent memory leak. Closes 5822 + awk: fix FS assignment behavior. Closes 5108 + awk: make -F STR interpret escape sequences. Closes 5126 + brctl: fix build failure by s/strtotimeval/bb_strtotimeval/ (android has strtotimeval) + busybox: tweak help text and copyright year + decompress_uncompress: comment out debug printout on corrupted data + decompress_uncompress: move 'code' variable into loop - sole user + dhcpd: write lease file on exit + dpkg: fix creation of .list files (were empty since b768aeb). Closes 5324 + du: document incompatibility with standard tool + examples/mdev_fat.conf: small addition + find: if DESKTOP=y, support -wholename (synonym for -path) + find: make -mindepth N -xdev correctly stop on mountpoints + ftpd: fix MDTM's month value. Closes 5336 + ftpd: free allocated string on error path + getty: fix for NOCTTY killing us with SIGHUP + grep: fix grep -Fw not respecting the -w option. Closes 5792 + ifconfig: do not accept "ifconfig eth0 up 1.2.3.4/17" (ip with mask). Closes 5786 + libbb: correctness/size tweaks in signal-related helpers + lineedit: in !EDITING config, return -1 on fgets error + login: increase login name size limit from 32 to 64 + lpr: don't send 0-byte print jobs (compat) + man: fix handling of gzipped manpages + mdev: add support for $DEVNAME and /dev/mdev.log debug aid + mdev: fix mode of dir1 in =dir1/dir2/file rule + mdev: remove undocumented subsystem/devname matching hack + mdev: when found, print major,minor into mdev.log + modprobe_small: make rmmod to NOT remove dependencies. Closes 5162 + mount: do not pass "comment=ANYTHING" option to kernel. Closes 5240 + mount: fix the wrongly stored fs creation time + mount: set up RO loop device if mount -o ro. Closes 4784 + mount: support strictatime option. Closes 5240 + ntpd: on time step, kill all outstanding replies from other peers + sed: fix handling of s/// which has empty matches + sed: fix zero chars match/replace + sha3: make size/speed optimization decision configurable + syslogd: do not segfault on parse error when using default config. Closes 5762 + telnet: convert CR -> CR LF, not CR -> CR NUL when sending data to server + telnet: convert Enter -> CR LF in line mode too + tftpd: fix -u USER to work with chroot. Closes 5348 + top/ps: argv0:"gdm-session-worker [pam/gdm-password]" == comm:"gdm-session-wor" + top: do not touch stdin if -b + top: fix "last CPU" parsing + top: implement scrolling up/down (_very_ useful) + udhcp[cd]: fix binding to network aliases. Closes 5432, 5438 + udhcpc: make -O work. Closes 5402 + udhcpc[6]: show select timeout in log + unzip: make options parsing more robust on getopt w/o gnu extensions + vi: do not set autoindent by default + vi: nuke FEATURE_VI_OPTIMIZE_CURSOR + vi: save/restore screen upon invocation + volume_id/ext: detect ext4 too + wget: correctly handle failure to -c (continue) + wget: make -c _not_ truncate the file + wget: reorder fread and poll: poll only if fread returns EAGAIN. Closes 5426 + wget: try reading after poll timeout - stdio may have buffered data. Closes 5426 + acpid: add missing lid switch definition + tar: fix 256-bit encoded number decoding + udhcpc[6]: allow discover_retries == 0 (infinite) + ash: fix a memory leak + sysctl: implement -q + powertop: fix error message + sha3sum: new applet + fbset: respect rgba configuration lines in fb.modes + fbsplash: support non-RGB565 pixels in 16-bit mode + flashcp: remove unused variable opts + mount: add unc option to CIFS mount (needed for Linux 3.4+) + nanddump: make dumping read-only partitions work + ps: use separate get_uptime() and make it work on non-linux too + declare strings with ALIGN1, as appropriate + udhcpc6: depend on ipv6 + include sys/resource.h where needed + disable format security warnings + build system: use pkg-config to look up selinux libs + ifenslave: fix missing close paren + sed: allow 'w' cmd to use two address form + tar: implement --no-recursion + unzip: ignore chmod errors + brctl: fix description and usage + su: do not change to home dir unless -l + ntpd: fix incorrect m_status field in outgoing packets. Closes 5120 + dmesg: handle multi-char log levels + klogd: handle multi-char log levels + syslogd: add option to log to Linux kernel printk buffer + syslogd: convert dummy functions to statics and get rid of IF_FEATURE_* checks + config: do not refer to HTTPS for wget + sendmail: use host rather than NIS domain name for HELO + mktemp: fix mktemp -u temp.XXXXXX returning garbage when TMPDIR is set + blkid: show filesystem when both label and UUID are missing, but type is known + volume_id: add exFAT detection + ln: support -T and -v + sed: support long opts and -iSFX + mkdir,rmdir: accept and ignore -v, --verbose + mv: accept but ignore -v + blkid: add type display for btrfs + blkid: add support for nilfs2 + blkid: add type display for hfsplus + volume_id: display hfs[+] 128-bit UUID properly + volume_id: uuid_format small code shrink + volume_id: add squashfs detection + testsuite: some more awk tests related to conditions + modinfo: match more standard module fields and fix version field + inetd: fix build failure in Android + android: fix 'stat', ifdef S_TYPEIS* in coreutiles/stat.c + platform.h: Android tweaks: ioprio defines, BB_ADDITIONAL_PATH + android: some sensible defconfig changes + libbb: add missing_syscalls.c: for now, only Android syscalls + fbsplash: fix regression from e4fa7b7 + adduser: make it accept "adduser USER GROUP" form + wget: add dummy --no-cache + testsuite: make mkfs.minix test not fail spuriously on big endian + refactor correct_password.c to avoid one if * Sun Dec 9 2012 p.drouand@gmail.com - Update to 1.20.2 (Bug fix release): * fix for variable expansion in redirection * fix for "pre-up" and "pre-down" handling * fixes for compressed man pages handling * important fix! due to misplaced s_mkfs_time field, ext4 driver couldn't mount our images * fix for getting uptime on non-Linux platforms * fix base-256 decoding - Remove busybox-1.19.4-ext2fs_h.diff: fixed on upstream release * Wed Aug 1 2012 lnussel@suse.de - fix path in busybox.install (bnc#680153) * Wed Jul 18 2012 aj@suse.de - Add missing sys/resource include (glibc 2.16) * Wed Jun 6 2012 seife+obs@b1-systems.com - busybox-1.19.4-ext2fs_h.diff: more complete fix for latest ext2_fs.h breakage from busybox git, drop busybox-1.19.4-typedef_umode_t.patch * Tue Apr 10 2012 ro@suse.de - busybox-1.19.4-typedef_umode_t.patch: fix compile as umode_t is only defined with KERNEL and is used in header linux/linux/ext2_fs.h * Tue Apr 10 2012 ro@suse.de - update to 1.19.4 - fix getty, mdev, modinfo and wget - update to 1.19.3 - fix chpasswd, crond, inetd, syslogd, tail, tftp - update to 1.19.2 - fix ash/hush, cttyhack, find, grep, less, patch, sed, top, uncompress - update to 1.19.0: - countless fixes in all utility programs, please see http://www.busybox.net/ for details - remove obsolete patches previously marked as upstreamed * Fri Sep 30 2011 uli@suse.com - cross-build fix: use %%__cc macro, set HOSTCC * Sat Sep 17 2011 jengelh@medozas.de - Remove redundant tags/sections from specfile * Sun Mar 13 2011 chris@computersalat.de - update to 1.18.13 see http://www.busybox.net/ for full changelog - add upstream patches o buildsys.patch o cksum.patch o klogd.patch o menuconfig.patch o modutils24.patch o wget.patch - rework libunarchive-array patch o -> libarchive patch - remove .gitignore files - added missing BusyBox.1 as S:1 - added export CFLAGS="{optflags} -fno-strict-aliasing" * Sun Oct 31 2010 jengelh@medozas.de - Use %%_smp_mflags * Wed Oct 6 2010 aj@suse.de - Update to busybox 1.17.2: * obsoletes patches busybox.dmesg-size.patch, busybox-1.17.1-make.patch, busybox-buildfix.patch * see http://www.busybox.net/ for full changelog * Mon Sep 20 2010 coolo@novell.com - add backported fix for make 3.82 * Tue Aug 4 2009 aj@suse.de - Fix build with updated kernel headers (busybox-buildfix.patch) * Thu Dec 18 2008 sassmann@suse.de - update to 1.12.3 bugfix release * has fixes for option parsing and line editing * Tue Nov 4 2008 sassmann@suse.de - updated config file to use a single config for both busybox and busybox-static * Wed Oct 15 2008 sassmann@suse.de - update to 1.12.1 see http://www.busybox.net/ for full changelog - removed patches included upstream * busybox-1.8.2-arping.patch * busybox-1.8.2-static * busybox-1.8.2-vi.patch - refreshed patches * busybox.libunarchive-array.patch * busybox.dmesg-size.patch - updated config file * removed awk math support and dc to get rid of libm * Wed Sep 3 2008 hare@suse.de - Call mkinitrd_setup during %%post and %%postun (bnc#413709) * Fri Aug 22 2008 prusnak@suse.cz - enabled SELinux support [Fate#303662] * Wed Jul 23 2008 hare@suse.de - Include mkinitrd scriptlets. * Thu Jan 17 2008 sassmann@suse.de - update to 1.8.2 see http://www.busybox.net/ for full changelog - added bugfixes * busybox-1.8.2-arping.patch * busybox-1.8.2-static * busybox-1.8.2-vi.patch * Fri Nov 16 2007 olh@suse.de - update to 1.8.1 see http://www.busybox.net/ for full changelog * Sun Jul 15 2007 olh@suse.de - update to 1.6.1 see http://www.busybox.net/ for full changelog * Fri May 11 2007 olh@suse.de - increase ash cmdline history size user kernel ringbuffer size for dmesg * Mon May 7 2007 olh@suse.de - gcc42 rejects out of bounds array access * Sat Apr 28 2007 olh@suse.de - update to 1.4.2 reduces binary size after e2fsprogs removal * Wed Dec 6 2006 trenn@suse.de - move to 1.2.2 and enable nearly everything. Most important (awk,less,vi and much more) binary on i386 now has 732k * Wed Aug 9 2006 ihno@suse.de - update to busybox 1.2.1 final Bugfix release. Bugs fixed: lash: "var=value" works without export tar: can extract git generated tarballs adduser: /etc/group is updated modprobe: look for modules.conf at the right place for 2.6 kernels all setuid and getgid calls are check return values in case somebody using per-process resource limits that prevent a user from having too many processes * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Mon Jan 16 2006 ihno@suse.de - Update to busybox 1.1.0 final * Wed Jan 11 2006 ihno@suse.de - update to busybox 1.1.0-pre1 * Wed Nov 16 2005 dmueller@suse.de - build against dietlibc unconditionally * Thu May 12 2005 uli@suse.de - use dietlibc on ARM - uclibc config file needs to be fixed * Fri Apr 1 2005 mmj@suse.de - Correct function declaration * Mon Jan 24 2005 nashif@suse.de - Update to 1.00 final * Tue Aug 17 2004 nashif@suse.de - Update to 1.00-rc3 * Thu Aug 5 2004 nashif@suse.de - Update to 1.00-rc2 * Wed Jul 21 2004 nashif@suse.de - Update to 1.00-rc1 * Tue May 11 2004 nashif@suse.de - Bug #39461 - Fixes netlink vulnerability * Tue Apr 27 2004 mmj@suse.de - Fix strict aliasing * Mon Mar 1 2004 nashif@suse.de - Update to 1.0 pre 8 * Wed Feb 11 2004 ro@suse.de - hack to build it on amd64 * Tue Feb 10 2004 schwab@suse.de - Fix building on ia64. * Wed Feb 4 2004 kukuk@suse.de - Remove wrong dietlibc requires * Mon Feb 2 2004 hare@suse.de - Fixed spec file to build on all archs. * Fri Jan 30 2004 hare@suse.de - Update to 1.00-pre5 - Patched dietlibc support to use a menuconfig option. * Sat Jan 10 2004 adrian@suse.de - build as user * Wed Dec 10 2003 uli@suse.de - build with dietlibc where available * Mon Jun 2 2003 nashif@suse.de - Set Autoreqprov: on * Thu May 29 2003 nashif@suse.de - Updated with latest stable release incl. patches. * Sat May 17 2003 nashif@suse.de - Removed CVS files * Sat Nov 2 2002 nashif@suse.de - Update to version 0.60.5 - Unique patch names * Mon Jun 10 2002 nashif@suse.de - Update to version 0.60.3 * Mon Nov 26 2001 nashif@suse.de - Update to version 0.60.2 - Major Changes: * msh was reworked * reworked hostname * Various bugfixes * Fri Aug 24 2001 nashif@suse.de - Update to version 0.60.1 - This is a relatively minor bug fixing release which fixes bugs in the following applets, among others: msh, sed, route, syslogd, ifconfig, lash - Rewrite of tftp * Sat Aug 4 2001 nashif@suse.de - Update to version 0.60.0 * Thu Jul 12 2001 nashif@suse.de - Update to version 0.52 * Wed Apr 11 2001 nashif@suse.de - Update to version 0.51 * Fri Feb 9 2001 nashif@suse.de - Fixed sync.c to compile * Mon Feb 5 2001 nashif@suse.de - Update to version 0.49 * Wed Dec 20 2000 uli@suse.de - disabled insmod for all archs except IA32, ARM and SH * Tue Dec 19 2000 nashif@suse.de - Update to 0.48 (Fixes many bugs) * Mon Nov 27 2000 nashif@suse.de - Fixed pathes in install script * Tue Nov 7 2000 nashif@suse.de - Added EM_486 and OPEN_MAX fixes * Wed Sep 27 2000 nashif@suse.de - Update to 0.47 - Fix nfsmount.c * Wed Aug 30 2000 nashif@suse.de - Fix for axp * Mon Aug 28 2000 nashif@suse.de - Update to version 0.46 * Thu Jul 6 2000 nashif@suse.de - Fix install script (Bug #3195) * Tue May 23 2000 nashif@suse.de - Initial Release (Version 0.43)