]> git.pld-linux.org Git - packages/SysVinit.git/blob - SysVinit.spec
- does not require logrotate; rel 19
[packages/SysVinit.git] / SysVinit.spec
1 #
2 # Conditional build:
3 %bcond_with     preconfigured
4 %bcond_without  selinux         # build without SELinux support
5 #
6 Summary:        System V initialization program
7 Summary(de.UTF-8):      System V-Intialisierungsprogramm
8 Summary(es.UTF-8):      Programa de inicialización System V
9 Summary(fr.UTF-8):      Programme d'initialisation Sys V
10 Summary(pl.UTF-8):      Program inicjalizujący w Systemie V
11 Summary(pt_BR.UTF-8):   Programa de inicialização System V
12 Summary(ru.UTF-8):      Программы, управляющие базовыми системными процессами
13 Summary(tr.UTF-8):      System V başlatma programı
14 Summary(uk.UTF-8):      Програми, що керують базовими системними процесами
15 Name:           SysVinit
16 Version:        2.86
17 Release:        19
18 License:        GPL
19 Group:          Base
20 Source0:        ftp://ftp.cistron.nl/pub/people/miquels/software/sysvinit-%{version}.tar.gz
21 # Source0-md5:  7d5d61c026122ab791ac04c8a84db967
22 Source1:        sysvinit.logrotate
23 Source2:        http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/sysvinit-non-english-man-pages.tar.bz2
24 # Source2-md5:  9ae8a63a4685368fae19707f95475cca
25 Patch0:         sysvinit-paths.patch
26 Patch1:         sysvinit-bequiet.patch
27 Patch2:         sysvinit-md5-bigendian.patch
28 Patch3:         sysvinit-wtmp.patch
29 Patch4:         sysvinit-man.patch
30 Patch5:         sysvinit-halt.patch
31 Patch6:         sysvinit-blowfish.patch
32 Patch7:         sysvinit-autofsck.patch
33 Patch8:         sysvinit-pidof.patch
34 Patch9:         sysvinit-killall5.patch
35 Patch10:        sysvinit-selinux.patch
36 Patch11:        sysvinit-nopowerstates-single.patch
37 Patch12:        sysvinit-lastlog.patch
38 Patch13:        sysvinit-alt-fixes.patch
39 Patch14:        sysvinit-chroot.patch
40 Patch15:        sysvinit-console-open.patch
41 Patch16:        sysvinit-godot.patch
42 Patch17:        sysvinit-haltname.patch
43 Patch18:        sysvinit-ipv6.patch
44 Patch19:        sysvinit-maxproclen.patch
45 Patch20:        sysvinit-quiet.patch
46 Patch21:        sysvinit-timeval.patch
47 Patch22:        sysvinit-no-abort.patch
48 Patch23:        sysvinit-rebootconfirmation.patch
49 %if %{with selinux}
50 BuildRequires:  libselinux-devel >= 1.28
51 BuildRequires:  libsepol-devel
52 %endif
53 BuildRequires:  rpmbuild(macros) >= 1.202
54 Requires(post): fileutils
55 Requires(postun):       /usr/sbin/groupdel
56 Requires(pre):  /usr/bin/getgid
57 Requires(pre):  /usr/sbin/groupadd
58 Requires:       /bin/awk
59 %{?with_selinux:Requires:       libselinux >= 1.18}
60 Requires:       login
61 Requires:       mingetty
62 Provides:       group(utmp)
63 Provides:       virtual(init-daemon)
64 Obsoletes:      virtual(init-daemon)
65 Obsoletes:      vserver-SysVinit
66 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67
68 %define         _sbindir        /sbin
69 # as in original flags
70 %define         specflags       -fomit-frame-pointer
71
72 %description
73 The SysVinit package contains a group of processes that control the
74 very basic functions of your system. SysVinit includes the init
75 program, the first program started by the Linux kernel when the system
76 boots. Init then controls the startup, running and shutdown of all
77 other programs.
78
79 %description -l de.UTF-8
80 SysVinit ist das erste Programm, das beim Systemstart vom Linux-Kernel
81 gestartet wird. Es steuert das Starten, Ausführen und Beenden aller
82 anderen Programme.
83
84 %description -l es.UTF-8
85 SysVinit es el primer programa ejecutado por el kernel Linux cuando se
86 inicia el sistema. Controla arranque, funcionamiento y cierre de todos
87 los otros programas.
88
89 %description -l fr.UTF-8
90 SysVinit est le premier programme exécuté par le noyau de Linux
91 lorsque le système démarre, il contrôle le lancement, l'exécution et
92 l'arrêt de tous les autres programmes.
93
94 %description -l pl.UTF-8
95 SysVinit jest pierwszym programem uruchamianym przez jądro podczas
96 startu systemu. Kontroluje start, pracę oraz zamykanie wszystkich
97 innych programów.
98
99 %description -l pt_BR.UTF-8
100 SysVinit é o primeiro programa executado pelo kernel Linux quando o
101 sistema é inicializado. Controla inicialização, funcionamento e
102 finalização de todos os outros programas.
103
104 %description -l ru.UTF-8
105 Пакет SysVinit содержит группу процессов, которые управляют самыми
106 базовыми функциями вашей системы. SysVinit включает программу init,
107 самую первую программу, которая запускается ядром Linux при загрузке
108 системы. После этого init управляет запуском, исполнением и остановом
109 всех остальных программ.
110
111 %description -l tr.UTF-8
112 SysVinit, sistem açılırken Linux çekirdeği tarafından çalıştırılan ilk
113 programdır. Diğer programların başlamalarını, çalışmalarını ve
114 sonlanmalarını sağlar/denetler.
115
116 %description -l uk.UTF-8
117 Пакет SysVinit містить групу процесів, котрі керують самими базовими
118 функціями вашої системи. SysVinit містить програму init, першу
119 програму, яку запускає ядро Linux під час загрузки системи. Після
120 цього init керує запуском, виконанням та зупинкою всіх інших програм.
121
122 %prep
123 %setup -q -n sysvinit-%{version}
124 %patch0 -p1
125 %patch1 -p1
126 %patch2 -p1
127 %patch3 -p1
128 %patch4 -p1
129 %patch5 -p1
130 %patch6 -p1
131 %patch7 -p1
132 %patch8 -p1
133 %patch9 -p1
134 %{?with_selinux:%patch10 -p1}
135 %patch11 -p1
136 %patch12 -p1
137 %patch13 -p1
138 %patch14 -p1
139 %patch15 -p1
140 %patch16 -p1
141 %patch17 -p1
142 %patch18 -p1
143 %patch19 -p1
144 %patch20 -p1
145 %patch21 -p1
146 %patch22 -p1
147 %patch23 -p0
148
149 %build
150 %{__make} -C src \
151         CC="%{__cc}" \
152         LCRYPT="-lcrypt" \
153         OPTIMIZE="%{rpmcflags}" \
154         LDFLAGS="%{rpmldflags}"
155
156 %install
157 rm -rf $RPM_BUILD_ROOT
158 install -d $RPM_BUILD_ROOT{/bin,%{_bindir},%{_sbindir},%{_mandir}/man{1,5,8}} \
159         $RPM_BUILD_ROOT{%{_includedir},%{_sysconfdir},/etc/logrotate.d,/var/{log,run}}
160
161 %{__make} install -C src \
162         ROOT=$RPM_BUILD_ROOT \
163         BIN_OWNER=`id -u` \
164         BIN_GROUP=`id -g`
165
166 install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/sysvinit
167
168 ln -sf ../var/run/initrunlvl $RPM_BUILD_ROOT%{_sysconfdir}
169 ln -sf killall5 $RPM_BUILD_ROOT%{_sbindir}/pidof
170
171 > $RPM_BUILD_ROOT/var/run/initrunlvl
172 > $RPM_BUILD_ROOT%{_sysconfdir}/ioctl.save
173 > $RPM_BUILD_ROOT/var/log/faillog
174 > $RPM_BUILD_ROOT/var/log/lastlog
175 > $RPM_BUILD_ROOT/var/log/wtmpx
176 > $RPM_BUILD_ROOT/var/log/btmpx
177
178 echo .so last.1 > $RPM_BUILD_ROOT%{_mandir}/man1/lastb.1
179 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/poweroff.8
180 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/reboot.8
181 echo .so init.8 > $RPM_BUILD_ROOT%{_mandir}/man8/telinit.8
182 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
183 rm -f $RPM_BUILD_ROOT%{_includedir}/initreq.h
184 rm -f $RPM_BUILD_ROOT%{_mandir}/README.sysvinit-non-english-man-pages
185
186 cp -a man/intl/* $RPM_BUILD_ROOT%{_mandir}
187
188 %clean
189 rm -rf $RPM_BUILD_ROOT
190
191 %pre
192 %groupadd -g 22 utmp
193
194 %post
195 touch %{_sysconfdir}/ioctl.save /var/log/{{fail,last}log,btmpx}
196 chmod 000 %{_sysconfdir}/ioctl.save /var/log/{fail,last}log
197 chown root:root %{_sysconfdir}/ioctl.save /var/log/faillog
198 chown root:utmp /var/log/lastlog
199 chmod 600 %{_sysconfdir}/ioctl.save
200 chmod 640 /var/log/faillog
201 chmod 660 /var/log/lastlog
202 chmod 640 /var/log/btmpx
203 if [ -p /dev/initctl ]; then
204         %{_sbindir}/telinit u || :
205 fi
206
207 %triggerpostun -- glibc
208 if [ -p /dev/initctl ]; then
209         %{_sbindir}/telinit u || :
210 fi
211
212 %postun
213 if [ "$1" = "0" ]; then
214         %groupremove utmp
215 fi
216
217 %files
218 %defattr(644,root,root,755)
219 %doc doc/{Propaganda,Changelog,*.lsm}
220
221 %attr(755,root,root) /bin/mountpoint
222 %attr(755,root,root) %{_sbindir}/*
223 %attr(755,root,root) %{_bindir}/last
224 %attr(755,root,root) %{_bindir}/lastb
225 %attr(755,root,root) %{_bindir}/mesg
226 %attr(755,root,root) %{_bindir}/utmpx-dump
227 %attr(2755,root,tty) %{_bindir}/wall
228
229 %attr(640,root,root) /etc/logrotate.d/sysvinit
230 %ghost %{_sysconfdir}/initrunlvl
231 %ghost /var/run/initrunlvl
232 %attr(600,root,root) %ghost %{_sysconfdir}/ioctl.save
233 %attr(640,root,root) %ghost /var/log/faillog
234 %attr(660,root,utmp) %ghost /var/log/lastlog
235 %attr(664,root,utmp) %ghost /var/log/wtmpx
236 %attr(640,root,root) %ghost /var/log/btmpx
237
238 %{_mandir}/man[158]/*
239 %lang(cs) %{_mandir}/cs/man[158]/*
240 %lang(de) %{_mandir}/de/man[158]/*
241 %lang(es) %{_mandir}/es/man[158]/*
242 %lang(fi) %{_mandir}/fi/man[158]/*
243 %lang(fr) %{_mandir}/fr/man[158]/*
244 %lang(hu) %{_mandir}/hu/man[158]/*
245 %lang(id) %{_mandir}/id/man[158]/*
246 %lang(it) %{_mandir}/it/man[158]/*
247 %lang(ja) %{_mandir}/ja/man[158]/*
248 %lang(ko) %{_mandir}/ko/man[158]/*
249 %lang(pl) %{_mandir}/pl/man[158]/*
250 %lang(ru) %{_mandir}/ru/man[158]/*
251 %lang(sv) %{_mandir}/sv/man[158]/*
252
253 # devel?
254 #%{_includedir}/initreq.h
This page took 0.050379 seconds and 3 git commands to generate.