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