123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309 |
- %define uclibc_version 0.9.30.1
- Summary: Statically linked binary providing simplified versions of system commands
- Name: busybox
- Version: 1.13.4
- Release: 2%{?_dist_release}
- License: GPLv2
- Group: System Environment/Shells
- Source: http://www.busybox.net/downloads/%{name}-%{version}.tar.bz2
- Source2: http://www.uclibc.org/downloads/uClibc-%{uclibc_version}.tar.bz2
- Source3: uClibc.config
- Patch0: busybox-1.12.1-static.patch
- Patch1: busybox-1.12.1-anaconda.patch
- Patch12: busybox-1.2.2-ls.patch
- Patch14: busybox-1.9.0-msh.patch
- Patch16: busybox-1.10.1-hwclock.patch
- Patch20: uClibc-0.9.30.1_remove-erroneous-hidden-defs.patch
- URL: http://www.busybox.net
- BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
- %description
- Busybox is a single binary which includes versions of a large number
- of system commands, including a shell. This package can be very
- useful for recovering from certain types of system failures,
- particularly those involving broken shared libraries.
- %package anaconda
- Group: System Environment/Shells
- Summary: Version of busybox configured for use with anaconda
- %description anaconda
- Busybox is a single binary which includes versions of a large number
- of system commands, including a shell. The version contained in this
- package is designed for use with the Red Hat installation program,
- anaconda. The busybox package provides a binary better suited to
- normal use.
- %prep
- %setup -q -a2
- %patch0 -b .static -p1
- %patch12 -b .ls -p1
- %patch14 -b .msh -p1
- %patch16 -b .ia64 -p1
- cat %{SOURCE3} >uClibc-%{uclibc_version}/.config1
- %patch20 -b .hidden-defs -p0
- %build
- # create static busybox - the executable is kept as busybox-static
- # We use uclibc instead of system glibc, uclibc is several times
- # smaller, this is important for static build.
- # Build uclibc first.
- cd uClibc-%{uclibc_version}
- # fixme:
- mkdir kernel-include
- cp -a /usr/include/asm kernel-include
- cp -a /usr/include/asm-generic kernel-include
- cp -a /usr/include/linux kernel-include
- # uclibc can't be built on ppc64, we set $arch to "" in this case
- arch=`uname -m | sed -e 's/i.86/i386/' -e 's/ppc/powerpc/' -e 's/ppc64//' -e 's/powerpc64//'`
- echo "TARGET_$arch=y" >.config
- echo "TARGET_ARCH=\"$arch\"" >>.config
- cat .config1 >>.config
- if test "$arch"; then yes "" | make oldconfig; fi
- if test "$arch"; then cat .config; fi
- if test "$arch"; then make V=1; fi
- if test "$arch"; then make install; fi
- if test "$arch"; then make install_kernel_headers; fi
- cd ..
- # we are back in busybox-NN.MM dir now
- make defconfig
- # gcc needs to be convinced to use neither system headers, nor libs,
- # nor startfiles (i.e. crtXXX.o files)
- if test "$arch"; then \
- mv .config .config1 && \
- grep -v ^CONFIG_SELINUX .config1 >.config && \
- yes "" | make oldconfig && \
- cat .config && \
- make V=1 \
- EXTRA_CFLAGS="-isystem uClibc-%{uclibc_version}/installed/include" \
- CFLAGS_busybox="-static -nostartfiles -LuClibc-%{uclibc_version}/installed/lib uClibc-%{uclibc_version}/installed/lib/crt1.o uClibc-%{uclibc_version}/installed/lib/crti.o uClibc-%{uclibc_version}/installed/lib/crtn.o"; \
- else \
- cat .config && \
- make V=1 CC="gcc $RPM_OPT_FLAGS"; \
- fi
- cp busybox busybox-static
- # create busybox optimized for anaconda
- make clean
- # revert the static patches
- patch -R -p1 <%{PATCH0}
- # applied anaconda patch
- patch -b --suffix .anaconda -p1 < %{PATCH1}
- make defconfig
- make CONFIG_DEBUG=y CC="gcc $RPM_OPT_FLAGS"
- cp busybox busybox.anaconda
- %install
- rm -rf $RPM_BUILD_ROOT
- mkdir -p $RPM_BUILD_ROOT/sbin
- install -m 755 busybox-static $RPM_BUILD_ROOT/sbin/busybox
- install -m 755 busybox.anaconda $RPM_BUILD_ROOT/sbin/busybox.anaconda
- %clean
- rm -rf $RPM_BUILD_ROOT
- %files
- %defattr(-,root,root,-)
- %doc LICENSE docs/busybox.net/*.html docs/busybox.net/images/*
- /sbin/busybox
- %files anaconda
- %defattr(-,root,root,-)
- %doc LICENSE docs/busybox.net/*.html docs/busybox.net/images/*
- /sbin/busybox.anaconda
- %changelog
- * Fri May 08 2009 MATSUBAYASHI Kohji <shaolin@vinelinux.org> - 1.13.4-2
- - add Patch20 to fix build failure on ppc
- http://lists.uclibc.org/pipermail/uclibc-cvs/2009-January/025891.html
- * Mon May 04 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 1.13.4-1
- - new upstream release
- - use uClibc for static build instead of glibc
- * Fri Sep 19 2008 Shu KONNO <owa@bg.wakwak.com> 1.2.0-1vl5
- - applied new versioning policy
- * Tue Aug 08 2006 Daisuke SUZUKI <daisuke@linux.or.jp> 1.2.0-0vl1
- - initial build for Vine Linux based on FC-devel
- * Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 1:1.2.0-1.1
- - rebuild
- * Tue Jul 4 2006 Ivana Varekova <varekova@redhat.com> - 1:1.2.0-1
- - update to 1.2.0
- * Thu Jun 8 2006 Jeremy Katz <katzj@redhat.com> - 1:1.1.3-2
- - fix so that busybox.anaconda has sh
- * Wed May 31 2006 Ivana Varekova <varekova@redhat.com> - 1:1.1.3-1
- - update to 1.1.3
- * Mon May 29 2006 Ivana Varekova <varekova@redhat.com> - 1:1.1.2-3
- - fix Makefile typo (#193354)
- * Fri May 5 2006 Ivana Varekova <varekova@redhat.com> - 1:1.1.2-1
- - update to 1.1.2
- * Thu May 4 2006 Ivana Varekova <varekova@redhat.com> - 1:1.1.1-2
- - add -Z option to id command, rename ps command -Z option (#190534)
- * Wed May 03 2006 Ivana Varekova <varekova@redhat.com> - 1:1.1.1-1
- - update to 1.1.1
- - fix CVE-2006-1058 - BusyBox passwd command
- fails to generate password with salt (#187386)
- - add -minimal-toc option
- - add RPM_OPT_FLAGS
- - remove asm/page.h used sysconf command to get PAGE_SIZE
- - add overfl patch to aviod Buffer warning
- * Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 1:1.01-2.2.1
- - bump again for double-long bug on ppc(64)
- * Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 1:1.01-2.2
- - rebuilt for new gcc4.1 snapshot and glibc changes
- * Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- - rebuilt
- * Thu Oct 13 2005 Daniel Walsh <dwalsh@redhat.com> - 1.01-2
- - Add sepol for linking load_policy
- * Thu Sep 1 2005 Ivana Varekova <varekova@redhat.com> - 1.01-1
- - update to 1.01
-
- * Tue May 11 2005 Ivana Varekova <varekova@redhat.com> - 1.00-5
- - add debug files to debug_package
- * Mon Mar 7 2005 Ivana Varekova <varekova@redhat.com> - 1.00-4
- - rebuilt
- * Wed Jan 26 2005 Ivana Varekova <varekova@redhat.com> - 1.00-3
- - update to 1.00 - fix bug #145681
- - rebuild
- * Thu Jan 13 2005 Jeremy Katz <katzj@redhat.com> - 1.00.rc1-6
- - enable ash as the shell in busybox-anaconda
- * Sat Oct 2 2004 Bill Nottingham <notting@redhat.com> - 1.00.rc1-5
- - fix segfault in SELinux patch (#134404, #134406)
- * Fri Sep 17 2004 Phil Knirsch <pknirsch@redhat.com> - 1.00.rc1-4
- - Fixed double free in freecon() call (#132809)
- * Fri Sep 10 2004 Daniel Walsh <dwalsh@redhat.com> - 1.00.rc1-3
- - Add CONFIG_STATIC=y for static builds
- * Wed Aug 25 2004 Jeremy Katz <katzj@redhat.com> - 1.00.rc1-2
- - rebuild
- * Fri Jun 25 2004 Dan Walsh <dwalsh@redhat.com> 1.00-pre10.1
- - Add BuildRequires libselinux-devel
- - Update to latest from upstream
- * Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- - rebuilt
- * Tue May 11 2004 Karsten Hopp <karsten@redhat.de> 1.00.pre8-4
- - add mknod to busybox-anaconda
- * Wed Apr 21 2004 Karsten Hopp <karsten@redhat.de> 1.00.pre8-3
- - fix LS_COLOR in anaconda patch
- * Tue Mar 23 2004 Jeremy Katz <katzj@redhat.com> 1.00.pre8-2
- - add awk to busybox-anaconda
- * Sat Mar 20 2004 Dan Walsh <dwalsh@redhat.com> 1.00-pre8.1
- - Update with latest patch.
- - Turn off LS_COLOR in static patch
- * Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
- - rebuilt
- * Tue Jan 27 2004 Dan Walsh <dwalsh@redhat.com> 1.00-pre5.2
- - Fix is_selinux_enabled calls
- * Mon Dec 29 2003 Dan Walsh <dwalsh@redhat.com> 1.00-pre5.1
- -Latest update
- * Wed Nov 26 2003 Dan Walsh <dwalsh@redhat.com> 1.00-pre3.2
- - Add insmod
- * Mon Sep 15 2003 Dan Walsh <dwalsh@redhat.com> 1.00-pre3.1
- - Upgrade to pre3
- * Thu Sep 11 2003 Dan Walsh <dwalsh@redhat.com> 1.00.2
- - Upgrade selinux support
- * Wed Jul 23 2003 Dan Walsh <dwalsh@redhat.com> 1.00.1
- - Upgrade to 1.00 package
- * Wed Jul 16 2003 Elliot Lee <sopwith@redhat.com> 0.60.5-10
- - Rebuild
- * Mon Jul 14 2003 Jeremy Katz <katzj@redhat.com> 0.60.5-9
- - rebuild
- * Mon Jul 14 2003 Jeremy Katz <katzj@redhat.com> 0.60.5-8
- - add dmesg to busybox-anaconda
- * Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- - rebuilt
- * Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- - rebuilt
- * Mon Jan 13 2003 Jeremy Katz <katzj@redhat.com> 0.60.5-5
- - lost nolock for anaconda mount when rediffing, it returns (#81764)
- * Mon Jan 6 2003 Dan Walsh <dwalsh@redhat.com> 0.60.5-4
- - Upstream developers wanted to eliminate the use of floats
- * Thu Jan 3 2003 Dan Walsh <dwalsh@redhat.com> 0.60.5-3
- - Fix free to work on large memory machines.
- * Sat Dec 28 2002 Jeremy Katz <katzj@redhat.com> 0.60.5-2
- - update Config.h for anaconda build to include more useful utils
- * Thu Dec 19 2002 Dan Walsh <dwalsh@redhat.com> 0.60.5-1
- - update latest release
- * Thu Dec 19 2002 Dan Walsh <dwalsh@redhat.com> 0.60.2-8
- - incorporate hammer changes
- * Fri Jun 21 2002 Tim Powers <timp@redhat.com>
- - automated rebuild
- * Thu May 23 2002 Tim Powers <timp@redhat.com>
- - automated rebuild
- * Mon May 06 2002 Florian La Roche <Florian.LaRoche@redhat.de>
- - fix compilation on mainframe
- * Tue Apr 2 2002 Jeremy Katz <katzj@redhat.com>
- - fix static busybox (#60701)
- * Thu Feb 28 2002 Jeremy Katz <katzj@redhat.com>
- - don't include mknod in busybox.anaconda so we get collage mknod
- * Fri Feb 22 2002 Jeremy Katz <katzj@redhat.com>
- - rebuild in new environment
- * Wed Jan 30 2002 Jeremy Katz <katzj@redhat.com>
- - update to 0.60.2
- - include more pieces for the anaconda version so that collage can go away
- - make the mount in busybox.anaconda default to -onolock
- * Wed Jan 09 2002 Tim Powers <timp@redhat.com>
- `- automated rebuild
- * Mon Jul 9 2001 Tim Powers <timp@redhat.com>
- - don't obsolete sash
- - fix URL and spelling in desc. to satisfy rpmlint
- * Thu Jul 05 2001 Florian La Roche <Florian.LaRoche@redhat.de>
- - add missing defattr for anaconda subpackage
- * Thu Jun 28 2001 Erik Troan <ewt@redhat.com>
- - initial build for Red Hat
|