# rpm --rebuild busybox.*.src.rpm --with altconfig --define "cfgfile bb-emb-config.h"
%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 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
+#
# 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
# Fileutils, grep and shell provided with busybox have not such
# functionality as their GNU countenders.
#
-%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
-#
%ifnarch %{ix86} %{x8664} ppc
%define with_glibc 1
%endif
Summary(pt_BR.UTF-8): BusyBox é um conjunto de utilitários UNIX em um único binário
Name: busybox
# stable line only
-Version: 1.12.4
-Release: 4
+Version: 1.16.2
+Release: 1
License: GPL
Group: Applications
Source0: http://www.busybox.net/downloads/%{name}-%{version}.tar.bz2
-# Source0-md5: 5b8c427bf596732d6b6156672e6e093f
+# Source0-md5: 2ba980f720a5bdce4ec05423519acc35
Source1: %{name}.config
Source2: %{name}-initrd.config
%{?with_altconfig:Source3: %{cfgfile}}
Patch5: %{name}-insmod-morearchs.patch
Patch6: %{name}-dhcp.patch
Patch7: %{name}-fix_64_archs.patch
-Patch8: %{name}-inotify.patch
Patch9: %{name}-ash-export-PATH.patch
URL: http://www.busybox.net/
BuildRequires: gcc >= 3.2
BuildRequires: cross%{_target_base_arch}-uClibc-static
%else
%ifarch ppc %{x8664}
-BuildRequires: uClibc-static >= 2:0.9.29
+BuildRequires: uClibc-static >= 3:0.9.30.1
%else
-BuildRequires: uClibc-static >= 2:0.9.21
+BuildRequires: uClibc-static >= 3:0.9.30.1
%endif
%endif
%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _bindir /bin
-%define _initrd_bindir /bin
%if "%{_target_base_arch}" != "%{_arch}"
%define CrossOpts CROSS="%{_target_cpu}-pld-linux-"
%package initrd
Summary: Static busybox for initrd
Summary(pl.UTF-8): Statycznie skonsolidowany busybox dla initrd
-Group: Applications
-Conflicts: geninitrd < 3075
+Group: Base
+Conflicts: geninitrd < 10000.20
%description initrd
Static busybox for initrd.
%patch5 -p1
%patch6 -p1
%patch7 -p1
-%patch8 -p1
%patch9 -p1
%build
LDFLAGS="%{ld_rpmldflags} -static" \
%if %{with dietlibc}
LIBRARIES="-lrpc" \
- CC="diet gcc"
+ CC="diet %{__cc}"
%else
%if %{with glibc}
%{CrossOpts} \
LDFLAGS="%{ld_rpmldflags} -static" \
%if %{with dietlibc}
LIBRARIES="-lrpc" \
- CC="diet gcc"
+ CC="diet %{__cc}"
%else
%if %{with glibc}
%{CrossOpts} \
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_initrd_bindir},%{_bindir},%{_mandir}/man1,%{_libdir}/busybox}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1,%{_libdir}/busybox}
%{?with_static:install built/busybox.static $RPM_BUILD_ROOT%{_bindir}}
-%{?with_initrd:install built/busybox.initrd $RPM_BUILD_ROOT%{_initrd_bindir}/initrd-busybox}
+%if %{with initrd}
+install -d $RPM_BUILD_ROOT%{_libdir}/initrd
+install built/busybox.initrd $RPM_BUILD_ROOT%{_libdir}/initrd/busybox
+%endif
install busybox.links $RPM_BUILD_ROOT%{_libdir}/busybox
install docs/BusyBox.1 $RPM_BUILD_ROOT%{_mandir}/man1
%if %{with initrd}
%files initrd
%defattr(644,root,root,755)
-%attr(755,root,root) %{_initrd_bindir}/initrd-busybox
+%attr(755,root,root) %{_libdir}/initrd/busybox
%endif