#
%bcond_with altconfig # use alternative config (defined by cfgfile)
%bcond_with linkfl # creates links to busybox binary and puts them into file list
+%bcond_without dynamic # don't build dynamic (base) version
%bcond_without static # don't build static version
%bcond_without initrd # don't build initrd version
%bcond_with dietlibc # build dietlibc-based initrd and static versions
%bcond_with glibc # build glibc-based initrd and static versions
-%bcond_with verbose # verbose build
+%bcond_without verbose # verbose build
# Options below are useful, when you want fileutils and grep providing.
# For example, ash package requires fileutils and grep.
%bcond_with fileutl_prov # adds fileutils providing
Summary(pt_BR.UTF-8): BusyBox é um conjunto de utilitários UNIX em um único binário
Name: busybox
# stable line only
-Version: 1.18.3
-Release: 1
-License: GPL
+Version: 1.22.1
+Release: 2
+License: GPL v2
Group: Applications
Source0: http://www.busybox.net/downloads/%{name}-%{version}.tar.bz2
-# Source0-md5: 660af4d44661d32b22025a66f4f78df2
+# Source0-md5: 337d1a15ab1cb1d4ed423168b1eb7d7e
Source1: %{name}.config
Source2: %{name}-initrd.config
%{?with_altconfig:Source3: %{cfgfile}}
+Patch100: http://busybox.net/downloads/fixes-1.22.1/busybox-1.22.1-ash.patch
+# Patch100-md5: 538d8cddbdfc449239b25a40bc8d1575
+Patch101: http://busybox.net/downloads/fixes-1.22.1/busybox-1.22.1-date.patch
+# Patch101-md5: bc381f9ceb3824141c968f5bc4353943
+Patch102: http://busybox.net/downloads/fixes-1.22.1/busybox-1.22.1-iplink.patch
+# Patch102-md5: 24686ec2750a8703feb57fc9c6aaed1d
+Patch103: http://busybox.net/downloads/fixes-1.22.1/busybox-1.22.1-nc.patch
+# Patch103-md5: 69eecaae5f812d08655dfdf34b60503f
Patch1: %{name}-logconsole.patch
Patch2: %{name}-printf-gettext.patch
Patch3: %{name}-loadfont.patch
URL: http://www.busybox.net/
BuildRequires: gcc >= 3.2
BuildRequires: perl-tools-pod
-BuildRequires: rpmbuild(macros) >= 1.333
+BuildRequires: rpmbuild(macros) >= 1.652
%if %{with initrd} || %{with static}
%if %{with dietlibc}
BuildRequires: dietlibc-static
%if %{with glibc}
BuildRequires: glibc-static
%else
-%if "%{_target_base_arch}" != "%{_arch}"
+%if "%{_target_base_arch}" != "%{_host_base_arch}"
BuildRequires: cross%{_target_base_arch}-uClibc-static
%else
%ifarch ppc %{x8664}
%define _bindir /bin
-%if "%{_target_base_arch}" != "%{_arch}"
+%if "%{_target_base_arch}" != "%{_host_base_arch}"
%define CrossOpts CROSS="%{_target_cpu}-pld-linux-"
%else
%define CrossOpts %{nil}
%prep
%setup -q
+%patch100 -p1
+%patch101 -p1
+%patch102 -p1
+%patch103 -p1
%patch1 -p1
%patch2 -p1
#%patch3 -p1
%{__make} \
%{?with_verbose:V=1} \
CROSS_CFLAGS="%{rpmcflags} -Os -D_BSD_SOURCE" \
- LDFLAGS="%{ld_rpmldflags} -static" \
+ LDFLAGS="%{rpmldflags} -static" \
%if %{with dietlibc}
LIBRARIES="-lrpc" \
CC="diet %{__cc}"
%{CrossOpts} \
CC="%{__cc}"
%else
- %if "%{_target_base_arch}" != "%{_arch}"
+ %if "%{_target_base_arch}" != "%{_host_base_arch}"
CROSS="%{_target_cpu}-uclibc-" \
%endif
CC="%{_target_cpu}-uclibc-gcc"
%{__make} clean
%endif
-
%if %{with altconfig}
install %{SOURCE3} .config
%else
%{__make} \
%{?with_verbose:V=1} \
CROSS_CFLAGS="%{rpmcflags} -Os -D_BSD_SOURCE" \
- LDFLAGS="%{ld_rpmldflags} -static" \
+ LDFLAGS="%{rpmldflags} -static" \
%if %{with dietlibc}
LIBRARIES="-lrpc" \
CC="diet %{__cc}"
%{CrossOpts} \
CC="%{__cc}"
%else
- %if "%{_target_base_arch}" != "%{_arch}"
+ %if "%{_target_base_arch}" != "%{_host_base_arch}"
CROSS="%{_target_cpu}-uclibc-" \
%endif
CC="%{_target_cpu}-uclibc-gcc"
%{__make} clean
%endif
+%if %{with dynamic}
%{__make} oldconfig
%{__make} \
%{?with_verbose:V=1} \
%{CrossOpts} \
CFLAGS_EXTRA="%{rpmcflags}" \
- LDFLAGS="%{ld_rpmldflags}" \
+ LDFLAGS="%{rpmldflags}" \
CC="%{__cc}"
%{__make} busybox.links docs/busybox.1
+%endif
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1,%{_libdir}/busybox}
-%{?with_static:install built/busybox.static $RPM_BUILD_ROOT%{_bindir}}
+%if %{with static}
+install -d $RPM_BUILD_ROOT%{_bindir}
+install built/busybox.static $RPM_BUILD_ROOT%{_bindir}
+%endif
+
%if %{with initrd}
install -d $RPM_BUILD_ROOT%{_libdir}/initrd
install built/busybox.initrd $RPM_BUILD_ROOT%{_libdir}/initrd/busybox
%endif
+%if %{with dynamic}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1,%{_libdir}/busybox}
install busybox.links $RPM_BUILD_ROOT%{_libdir}/busybox
install docs/busybox.1 $RPM_BUILD_ROOT%{_mandir}/man1
%else
install busybox $RPM_BUILD_ROOT%{_bindir}
%endif
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
+%if %{with dynamic}
%files
%defattr(644,root,root,755)
%doc AUTHORS README .config
%if %{with linkfl}
-%attr(755,root,root) %{_bindir}/*
+%attr(755,root,root) /bin/*
%attr(755,root,root) /sbin/*
%attr(755,root,root) %{_bindir}/*
%attr(755,root,root) %{_sbindir}/*
%endif
%{_libdir}/busybox
-%{_mandir}/man1/*
+%{_mandir}/man1/busybox.1*
+%endif
%if %{with static}
%files static