]> git.pld-linux.org Git - packages/SysVinit.git/blobdiff - SysVinit.spec
switch from wtmpx to wtmp
[packages/SysVinit.git] / SysVinit.spec
index 952d4b3ac613189c402b585724f73d99f2263dd5..6925a69edd7d1de5304b90de7f8101a0de49b789 100644 (file)
@@ -1,6 +1,5 @@
 #
 # Conditional build:
-%bcond_with    preconfigured
 %bcond_without selinux         # build without SELinux support
 #
 Summary:       System V initialization program
@@ -13,39 +12,30 @@ Summary(ru.UTF-8):  Программы, управляющие базовыми 
 Summary(tr.UTF-8):     System V başlatma programı
 Summary(uk.UTF-8):     Програми, що керують базовими системними процесами
 Name:          SysVinit
-Version:       2.86
-Release:       28
-License:       GPL
+Version:       2.88
+Release:       16
+License:       GPL v2+
 Group:         Base
-Source0:       ftp://ftp.cistron.nl/pub/people/miquels/software/sysvinit-%{version}.tar.gz
-# Source0-md5: 7d5d61c026122ab791ac04c8a84db967
+Source0:       http://download.savannah.gnu.org/releases/sysvinit/sysvinit-%{version}dsf.tar.bz2
+# Source0-md5: 6eda8a97b86e0a6f59dabbf25202aa6f
 Source1:       sysvinit.logrotate
 Source2:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/sysvinit-non-english-man-pages.tar.bz2
+Source3:       crypttab.5
 # Source2-md5: 9ae8a63a4685368fae19707f95475cca
 Patch0:                sysvinit-paths.patch
 Patch1:                sysvinit-bequiet.patch
-Patch2:                sysvinit-md5-bigendian.patch
-Patch3:                sysvinit-wtmp.patch
-Patch4:                sysvinit-man.patch
-Patch5:                sysvinit-halt.patch
-Patch6:                sysvinit-blowfish.patch
-Patch7:                sysvinit-autofsck.patch
-Patch8:                sysvinit-pidof.patch
-Patch9:                sysvinit-killall5.patch
-Patch10:       sysvinit-selinux.patch
-Patch11:       sysvinit-nopowerstates-single.patch
-Patch12:       sysvinit-lastlog.patch
-Patch13:       sysvinit-alt-fixes.patch
-Patch14:       sysvinit-chroot.patch
-Patch15:       sysvinit-console-open.patch
-Patch16:       sysvinit-godot.patch
-Patch17:       sysvinit-haltname.patch
-Patch18:       sysvinit-ipv6.patch
-Patch19:       sysvinit-maxproclen.patch
-Patch20:       sysvinit-quiet.patch
-Patch21:       sysvinit-timeval.patch
-Patch22:       sysvinit-no-abort.patch
-Patch23:       sysvinit-rebootconfirmation.patch
+Patch2:                sysvinit-wtmp.patch
+Patch3:                sysvinit-man.patch
+Patch4:                sysvinit-halt.patch
+Patch5:                sysvinit-autofsck.patch
+Patch6:                sysvinit-pidof.patch
+Patch7:                sysvinit-killall5.patch
+Patch8:                sysvinit-nopowerstates-single.patch
+Patch9:                sysvinit-lastlog.patch
+Patch10:       sysvinit-alt-fixes.patch
+Patch11:       sysvinit-quiet.patch
+Patch12:       sysvinit-rebootconfirmation.patch
+URL:           http://savannah.nongnu.org/projects/sysvinit/
 %if %{with selinux}
 BuildRequires: libselinux-devel >= 1.28
 BuildRequires: libsepol-devel
@@ -59,12 +49,12 @@ Requires:   /bin/awk
 %{?with_selinux:Requires:      libselinux >= 1.18}
 Requires:      login
 Requires:      mingetty
-Requires:      util-linux >= 2.20-5
+Requires:      util-linux >= 2.24-1
 Provides:      group(utmp)
 Provides:      virtual(init-daemon)
-Obsoletes:     upstart-SysVinit
 Obsoletes:     virtual(init-daemon)
 Obsoletes:     vserver-SysVinit
+Conflicts:     rc-scripts < 0.4.9-1
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _sbindir        /sbin
@@ -123,14 +113,21 @@ sonlanmalarını sağlar/denetler.
 
 %package tools
 Summary:       Tools used for process and utmp management
+Summary(pl.UTF-8):     Narzędzia do zarządzania procesami i bazą utmp
 Group:         Base
+Obsoletes:     upstart-SysVinit
+Conflicts:     SysVinit < 2.86-27
+Conflicts:     rc-scripts < 0.4.5.1-6
+Conflicts:     util-linux < 2.22
 
 %description tools
-The sysvinit-tools package contains various tools used for process
-management.
+This package contains various tools used for process management.
+
+%description tools -l pl.UTF-8
+Ten pakiet zawiera różne narzędzia do zarządzania procesami.
 
 %prep
-%setup -q -n sysvinit-%{version}
+%setup -q -n sysvinit-%{version}dsf
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
@@ -141,26 +138,16 @@ management.
 %patch7 -p1
 %patch8 -p1
 %patch9 -p1
-%{?with_selinux:%patch10 -p1}
+%patch10 -p1
 %patch11 -p1
-%patch12 -p1
-%patch13 -p1
-%patch14 -p1
-%patch15 -p1
-%patch16 -p1
-%patch17 -p1
-%patch18 -p1
-%patch19 -p1
-%patch20 -p1
-%patch21 -p1
-%patch22 -p1
-%patch23 -p0
+%patch12 -p0
 
 %build
 %{__make} -C src \
+       %{?with_selinux:WITH_SELINUX=yes} \
        CC="%{__cc}" \
        LCRYPT="-lcrypt" \
-       OPTIMIZE="%{rpmcflags}" \
+       CFLAGS="%{rpmcflags}" \
        LDFLAGS="%{rpmldflags}"
 
 %install
@@ -175,28 +162,35 @@ install -d $RPM_BUILD_ROOT{/bin,%{_bindir},%{_sbindir},%{_mandir}/man{1,5,8}} \
 
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/sysvinit
 
-ln -sf ../var/run/initrunlvl $RPM_BUILD_ROOT%{_sysconfdir}
-ln -sf killall5 $RPM_BUILD_ROOT%{_sbindir}/pidof
+ln -s ../var/run/initrunlvl $RPM_BUILD_ROOT%{_sysconfdir}
+ln -s killall5 $RPM_BUILD_ROOT%{_sbindir}/pidof
 
-> $RPM_BUILD_ROOT/var/run/initrunlvl
 > $RPM_BUILD_ROOT%{_sysconfdir}/ioctl.save
+> $RPM_BUILD_ROOT/var/log/btmp
 > $RPM_BUILD_ROOT/var/log/faillog
 > $RPM_BUILD_ROOT/var/log/lastlog
-> $RPM_BUILD_ROOT/var/log/wtmpx
-> $RPM_BUILD_ROOT/var/log/btmpx
+> $RPM_BUILD_ROOT/var/log/wtmp
+> $RPM_BUILD_ROOT/var/run/initrunlvl
 
-echo .so last.1 > $RPM_BUILD_ROOT%{_mandir}/man1/lastb.1
 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/poweroff.8
 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/reboot.8
 echo .so init.8 > $RPM_BUILD_ROOT%{_mandir}/man8/telinit.8
 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
-rm -f $RPM_BUILD_ROOT%{_includedir}/initreq.h
-rm -f $RPM_BUILD_ROOT%{_mandir}/README.sysvinit-non-english-man-pages
+%{__rm} $RPM_BUILD_ROOT%{_includedir}/initreq.h
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/README.sysvinit-non-english-man-pages
 
 cp -a man/intl/* $RPM_BUILD_ROOT%{_mandir}
 
+cp %{SOURCE3} $RPM_BUILD_ROOT%{_mandir}/man5
+
 # in util-linux
-rm $RPM_BUILD_ROOT{/bin/mountpoint,%{_mandir}/man1/mountpoint.1*}
+%{__rm} $RPM_BUILD_ROOT{/bin/mountpoint,%{_mandir}/man1/mountpoint.1*}
+%{__rm} $RPM_BUILD_ROOT{/sbin/sulogin,%{_mandir}/man8/sulogin.8*,%{_mandir}/*/man8/sulogin.8*}
+%{__rm} $RPM_BUILD_ROOT{/usr/bin/utmpdump,%{_mandir}/man1/utmpdump.1*}
+%{__rm} $RPM_BUILD_ROOT{/usr/bin/{last,lastb,mesg},%{_mandir}/man1/{last,lastb,mesg}.1*,%{_mandir}/*/man1/{last,lastb,mesg}.1*}
+
+# fools rpm-build-macros, don't package this file
+:>$RPM_BUILD_ROOT%{_mandir}/man1/utmpdump.1
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -205,14 +199,14 @@ rm -rf $RPM_BUILD_ROOT
 %groupadd -g 22 utmp
 
 %post
-touch %{_sysconfdir}/ioctl.save /var/log/{{fail,last}log,btmpx}
+touch %{_sysconfdir}/ioctl.save /var/log/{btmp,{fail,last}log}
 chmod 000 %{_sysconfdir}/ioctl.save /var/log/{fail,last}log
 chown root:root %{_sysconfdir}/ioctl.save /var/log/faillog
 chown root:utmp /var/log/lastlog
 chmod 600 %{_sysconfdir}/ioctl.save
+chmod 640 /var/log/btmp
 chmod 640 /var/log/faillog
 chmod 664 /var/log/lastlog
-chmod 640 /var/log/btmpx
 if [ -p /dev/initctl ]; then
        %{_sbindir}/telinit u || :
 fi
@@ -227,9 +221,19 @@ if [ "$1" = "0" ]; then
        %groupremove utmp
 fi
 
+%triggerpostun -- SysVinit < 2.88-16
+if [ -e /var/log/wtmpx ]; then
+       # wtmp always takes precedence, it's safe to remove wtmpx
+       if [ -s /var/log/wtmp ]; then
+               rm -f /var/log/wtmpx
+       else
+               mv /var/log/wtmpx /var/log/wtmp
+       fi
+fi
+
 %files
 %defattr(644,root,root,755)
-%doc doc/{Propaganda,Changelog,*.lsm} src/initscript.sample
+%doc COPYRIGHT README doc/{Changelog,Propaganda} src/initscript.sample
 
 %attr(755,root,root) %{_sbindir}/bootlogd
 %attr(755,root,root) %{_sbindir}/halt
@@ -243,17 +247,15 @@ fi
 %ghost %{_sysconfdir}/initrunlvl
 %ghost /var/run/initrunlvl
 %attr(600,root,root) %ghost %{_sysconfdir}/ioctl.save
-%attr(640,root,root) %ghost /var/log/faillog
-%attr(664,root,utmp) %ghost /var/log/lastlog
-%attr(664,root,utmp) %ghost /var/log/wtmpx
-%attr(640,root,root) %ghost /var/log/btmpx
+%attr(640,root,root) %ghost /var/log/btmp
+%attr(664,root,utmp) %ghost /var/log/wtmp
 
+%{_mandir}/man5/crypttab.5*
 %{_mandir}/man5/inittab.5*
 %{_mandir}/man5/initscript.5*
 %{_mandir}/man8/bootlogd.8*
 %{_mandir}/man8/halt.8*
 %{_mandir}/man8/init.8*
-%{_mandir}/man8/lastlog.8*
 %{_mandir}/man8/poweroff.8
 %{_mandir}/man8/reboot.8
 %{_mandir}/man8/runlevel.8*
@@ -322,72 +324,42 @@ fi
 %files tools
 %defattr(644,root,root,755)
 %attr(755,root,root) /bin/pidof
+%attr(755,root,root) %{_sbindir}/fstab-decode
 %attr(755,root,root) %{_sbindir}/killall5
 %attr(755,root,root) %{_sbindir}/lastlog
 %attr(755,root,root) %{_sbindir}/pidof
-%attr(755,root,root) %{_sbindir}/sulogin
-%attr(755,root,root) %{_bindir}/last
-%attr(755,root,root) %{_bindir}/lastb
-%attr(755,root,root) %{_bindir}/mesg
-%attr(755,root,root) %{_bindir}/utmpx-dump
-%attr(755,root,root) %{_bindir}/wall
-%{_mandir}/man1/last.1*
-%{_mandir}/man1/lastb.1*
-%{_mandir}/man1/mesg.1*
+%attr(2755,root,tty) %{_bindir}/wall
+%attr(640,root,root) %ghost /var/log/faillog
+%attr(664,root,utmp) %ghost /var/log/lastlog
 %{_mandir}/man1/wall.1*
 %{_mandir}/man8/killall5.8*
+%{_mandir}/man8/lastlog.8*
 %{_mandir}/man8/pidof.8*
-%{_mandir}/man8/sulogin.8*
+%{_mandir}/man8/fstab-decode.8*
 %lang(cs) %{_mandir}/cs/man8/lastlog.8*
-%lang(es) %{_mandir}/es/man1/last.1*
-%lang(es) %{_mandir}/es/man1/lastb.1
-%lang(es) %{_mandir}/es/man1/mesg.1*
 %lang(es) %{_mandir}/es/man1/wall.1*
 %lang(es) %{_mandir}/es/man8/killall5.8*
 %lang(es) %{_mandir}/es/man8/pidof.8*
-%lang(es) %{_mandir}/es/man8/sulogin.8*
-%lang(fi) %{_mandir}/fi/man1/last.1*
-%lang(fi) %{_mandir}/fi/man1/mesg.1*
 %lang(fi) %{_mandir}/fi/man1/wall.1*
-%lang(fr) %{_mandir}/fr/man1/last.1*
-%lang(fr) %{_mandir}/fr/man1/mesg.1*
 %lang(fr) %{_mandir}/fr/man1/wall.1*
 %lang(fr) %{_mandir}/fr/man8/killall5.8*
 %lang(fr) %{_mandir}/fr/man8/lastlog.8*
 %lang(fr) %{_mandir}/fr/man8/pidof.8*
-%lang(hu) %{_mandir}/hu/man1/last.1*
-%lang(hu) %{_mandir}/hu/man1/mesg.1*
 %lang(hu) %{_mandir}/hu/man1/wall.1*
 %lang(hu) %{_mandir}/hu/man8/lastlog.8*
-%lang(it) %{_mandir}/it/man1/last.1*
-%lang(it) %{_mandir}/it/man1/lastb.1
-%lang(it) %{_mandir}/it/man1/mesg.1*
 %lang(it) %{_mandir}/it/man1/wall.1*
 %lang(it) %{_mandir}/it/man8/killall5.8*
 %lang(it) %{_mandir}/it/man8/lastlog.8*
 %lang(it) %{_mandir}/it/man8/pidof.8*
-%lang(it) %{_mandir}/it/man8/sulogin.8*
-%lang(ja) %{_mandir}/ja/man1/last.1*
-%lang(ja) %{_mandir}/ja/man1/lastb.1
-%lang(ja) %{_mandir}/ja/man1/mesg.1*
 %lang(ja) %{_mandir}/ja/man1/wall.1*
 %lang(ja) %{_mandir}/ja/man8/killall5.8*
 %lang(ja) %{_mandir}/ja/man8/lastlog.8*
 %lang(ja) %{_mandir}/ja/man8/pidof.8*
-%lang(ja) %{_mandir}/ja/man8/sulogin.8*
-%lang(ko) %{_mandir}/ko/man1/last.1*
-%lang(ko) %{_mandir}/ko/man1/lastb.1
-%lang(ko) %{_mandir}/ko/man1/mesg.1*
 %lang(ko) %{_mandir}/ko/man8/killall5.8*
 %lang(ko) %{_mandir}/ko/man8/pidof.8*
-%lang(ko) %{_mandir}/ko/man8/sulogin.8*
-%lang(pl) %{_mandir}/pl/man1/last.1*
-%lang(pl) %{_mandir}/pl/man1/lastb.1
-%lang(pl) %{_mandir}/pl/man1/mesg.1*
 %lang(pl) %{_mandir}/pl/man1/wall.1*
 %lang(pl) %{_mandir}/pl/man8/killall5.8*
 %lang(pl) %{_mandir}/pl/man8/lastlog.8*
 %lang(pl) %{_mandir}/pl/man8/pidof.8*
-%lang(pl) %{_mandir}/pl/man8/sulogin.8*
 %lang(ru) %{_mandir}/ru/man8/lastlog.8*
 %lang(sv) %{_mandir}/sv/man8/lastlog.8*
This page took 0.108362 seconds and 4 git commands to generate.