]> git.pld-linux.org Git - packages/busybox.git/blob - busybox.spec
- BuildRequires for uClibc-devel-BOOT only when %%{BOOT is defined.
[packages/busybox.git] / busybox.spec
1 Summary:        Set of common unix utils for embeded systems
2 Name:           busybox
3 Version:        0.51
4 Release:        8
5 License:        GPL
6 Group:          Applications
7 Group(de):      Applikationen
8 Group(pl):      Aplikacje
9 Source0:        ftp://ftp.lineo.com/pub/busybox/%{name}-%{version}.tar.gz
10 Source1:        %{name}-config.h
11 Patch0:         %{name}-logconsole.patch
12 Patch1:         %{name}-tee.patch
13 Patch2:         %{name}-sh-name.patch
14 Patch3:         %{name}-printf-gettext.patch
15 Patch4:         %{name}-loadfont.patch
16 Patch5:         %{name}-cread.patch
17 URL:            http://busybox.lineo.com/
18 %{?BOOT:BuildRequires:  uClibc-devel-BOOT >= 20010521-3}
19 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
20
21 %description
22 BusyBox combines tiny versions of many common UNIX utilities into a
23 single small executable. It provides minimalist replacements for most
24 of the utilities you usually find in fileutils, shellutils, findutils,
25 textutils, grep, gzip, tar, etc. BusyBox provides a fairly complete
26 POSIX environment for any small or embedded system. The utilities in
27 BusyBox generally have fewer options than their full-featured GNU
28 cousins; however, the options that are included provide the expected
29 functionality and behave very much like their GNU counterparts.
30
31 BusyBox has been written with size-optimization and limited resources
32 in mind. It is also extremely modular so you can easily include or
33 exclude commands (or features) at compile time. This makes it easy to
34 customize your embedded systems. To create a working system, just add
35 a kernel, a shell (such as ash), and an editor (such as elvis-tiny or
36 ae).
37
38 %package BOOT
39 Summary:        busybox for PLD bootdisk
40 Group:          Applications
41 Group(de):      Applikationen
42 Group(pl):      Aplikacje
43
44 %description BOOT
45 busybox for PLD bootdisk.
46
47 %prep
48 %setup -q
49 %patch0
50 %patch1
51 %patch2 -p1
52 %patch3 -p1
53 %patch4 -p1
54 %patch5 -p1
55
56 %build
57 # BOOT
58 cp %{SOURCE1} Config.h
59 %{__make} \
60         CFLAGS_EXTRA="-m386 -I%{_libdir}/bootdisk%{_includedir}" \
61         LDFLAGS="-nostdlib -s" \
62         LIBRARIES="%{_libdir}/bootdisk%{_libdir}/crt0.o %{_libdir}/bootdisk%{_libdir}/libc.a -lgcc"
63
64 # TODO make main package dynamically linked
65
66 %install
67 rm -rf $RPM_BUILD_ROOT
68 %{__install} -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1}
69 %{__install} -d $RPM_BUILD_ROOT%{_libdir}/bootdisk/{bin,%{_libdir}/busybox}
70
71 %{__install} busybox $RPM_BUILD_ROOT%{_libdir}/bootdisk/bin/
72
73 for i in `cat busybox.links`; do
74         ln -sfn busybox "$RPM_BUILD_ROOT%{_libdir}/bootdisk/bin/`basename $i`"
75 done
76 %{__install} busybox.links $RPM_BUILD_ROOT%{_libdir}/bootdisk%{_libdir}/busybox
77 # change sh to lash (see sh_name patch)
78 mv -f $RPM_BUILD_ROOT%{_libdir}/bootdisk/bin/{sh,lash}
79
80 %{__install} busybox $RPM_BUILD_ROOT%{_bindir}
81 %{__install} busybox.links $RPM_BUILD_ROOT%{_libdir}/busybox
82 %{__install} docs/BusyBox.1 $RPM_BUILD_ROOT%{_mandir}/man1
83 echo ".so BusyBox.1" > $RPM_BUILD_ROOT%{_mandir}/man1/busybox.1
84
85 gzip -9nf AUTHORS TODO Changelog README
86
87 %clean
88 rm -rf $RPM_BUILD_ROOT
89
90 %files
91 %defattr(644,root,root,755)
92 %doc *.gz
93 %attr(755,root,root) %{_bindir}/*
94 %{_libdir}/busybox
95 %{_mandir}/man1/*
96
97 %files BOOT
98 %defattr(644,root,root,755)
99 %attr(755,root,root) %{_libdir}/bootdisk/bin/*
100 %{_libdir}/bootdisk%{_libdir}/*
This page took 0.043352 seconds and 4 git commands to generate.