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