File sysvinit.spec of Package sysvinit

#
# spec file for package sysvinit (Version 2.86)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           sysvinit
%define MGVER  0.9.6s
%define PDVER  2.0.2
%define KPVER  2.13
%define SCVER  1.09
%define SIVER  2.86
%define START  0.52
License:        GPL v2 or later
Group:          System/Base
PreReq:         coreutils
AutoReqProv:    on
Version:        2.86
Release:        186.<RELEASE18>
Summary:        SysV-Style init
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  libselinux-devel libsepol-devel
Source:         sysvinit-2.86.tar.bz2
Source2:        killproc-2.13.tar.bz2
Source3:        powerd-2.0.2.tar.bz2
Source4:        showconsole-1.09.tar.bz2
Source5:        startpar-0.52.tar.bz2
Source6:        rc.powerd
Source7:        sysvinit-rpmlintrc
Source8:        mkinitrd-boot.sh
Source9:        mkinitrd-kill1.sh
Source10:       mkinitrd-kill2.sh
Patch:          sysvinit-2.86.dif
Patch1:         sysvinit-2.86-nfs4pidof.patch
Patch2:         powerd-2.0.2.dif
Patch3:         killproc-2.13.dif
Patch5:         sysvinit-2.86-sulogin.patch
Patch6:         sysvinit-2.82-startstop.patch
Patch7:         sysvinit-2.85-suse.patch
Patch8:         sysvinit-2.85-paths.patch
Patch9:         sysvinit-2.86-utmp.patch
Patch10:        showconsole-1.09.dif
Patch11:        sysvinit-2.86-race.patch
Patch12:        sysvinit-2.86-lib64.patch
Patch13:        sysvinit-2.82-multiline.patch
Patch14:        startpar-0.52.dif
Patch15:        sysvinit-2.86-usage-message.patch
Patch16:        sysvinit-2.86-full-time.patch
Patch17:        sysvinit-2.86-hddown.patch
Patch18:        sysvinit-2.86-selinux.patch
Patch19:        sysvinit-2.86-fuse-no-kill.patch

%description
System V style init programs by Miquel van Smoorenburg that control the
booting and shutdown of your system. These support a number of system
runlevels, each one associated with a specific set of utilities. For
example, the normal system runlevel is 3, which starts a getty on
virtual consoles tty1-tty6. Runlevel 5 starts xdm. Runlevel 0 shuts
down the system. See the individual man pages for inittab, initscript,
halt, init, killproc, killall5, powerd, reboot, runlevel, shutdown, and
telinit for more information.



Authors:
--------
    Miquel van Smoorenburg <miquels@drinkel.ow.nl>
    Florian La Roche <florian@suse.de>
    Werner Fink <werner@suse.de>

%prep
%setup -q -b 2 -b 3 -b 4 -b 5
%patch -P 1  -b .nfs4pidof
%patch -P 5  -b .sulogin
%patch -P 6  -b .ststdmn
%patch -P 7  -b .suse
%patch -P 8  -b .paths
%patch -P 9  -b .utmp
%patch -P 11 -b .race
%patch -P 12 -b .lib64
%patch -P 13 -b .multiline
%patch -P 15 -b .usage
%patch -P 16 -b .fulltime
%patch -P 17 -b .hddown
%patch -P 18 -b .selinux
%patch -P 19 -b .fuse
%patch
pushd ../powerd-%{PDVER}
%patch -P 2
popd
pushd ../killproc-%{KPVER}
%patch -P 3
popd
pushd ../showconsole-%{SCVER}
%patch -P 10
popd
pushd ../startpar-%{START}
%patch -P 14
popd
%_fixowner .
%_fixgroup .
/bin/chmod -Rf a+rX,g-w,o-w .

%build
  RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -D_FILE_OFFSET_BITS=64"
  export RPM_OPT_FLAGS
  CFLAGS="-Wall ${RPM_OPT_FLAGS} -D_GNU_SOURCE -D__NO_STRING_INLINES -pipe"
  CC=gcc
  make -C src CFLAGS="$CFLAGS" CC="$CC"
  pushd contrib/
    $CC $CFLAGS -o start-stop-daemon start-stop-daemon.c
  popd
pushd ../showconsole-%{SCVER}
  make
popd
pushd ../killproc-%{KPVER}
  make INC="-I../showconsole-%{SCVER} -L../showconsole-%{SCVER}"
popd
pushd ../powerd-%{PDVER}
%ifnarch s390 s390x
  ./configure --prefix= --bindir='$(DESTDIR)/sbin' \
	--mandir='$(DESTDIR)%{_mandir}' \
	--sbindir='$(DESTDIR)/sbin'
  make CFLAGS="-I../sysvinit-%{version}/src $CFLAGS"
%endif
popd
pushd ../startpar-%{START}
  make CFLAGS="$CFLAGS"
popd

%install
  rm -rf ${RPM_BUILD_ROOT}
  mkdir  ${RPM_BUILD_ROOT}
  mkdir -m 755 -p ${RPM_BUILD_ROOT}/bin
  mkdir -m 755 -p ${RPM_BUILD_ROOT}/dev
  mkdir -m 755 -p ${RPM_BUILD_ROOT}/etc
  mkdir -m 755 -p ${RPM_BUILD_ROOT}/sbin
  mkdir -m 755 -p ${RPM_BUILD_ROOT}/usr/bin
  mkdir -m 755 -p ${RPM_BUILD_ROOT}/usr/include
  mkdir -m 755 -p ${RPM_BUILD_ROOT}%{_mandir}/man1
  mkdir -m 755 -p ${RPM_BUILD_ROOT}%{_mandir}/man5
  mkdir -m 755 -p ${RPM_BUILD_ROOT}%{_mandir}/man8
  make install -C src MANPATH=%{_mandir} ROOT=${RPM_BUILD_ROOT}
  install contrib/start-stop-daemon ${RPM_BUILD_ROOT}/sbin/
  test -p     ${RPM_BUILD_ROOT}/dev/initctl || {
    rm -f     ${RPM_BUILD_ROOT}/dev/initctl
    mknod     ${RPM_BUILD_ROOT}/dev/initctl p
    chmod 600 ${RPM_BUILD_ROOT}/dev/initctl
  }
pushd ../showconsole-%{SCVER}
  make install MANPATH=%{_mandir} INSTBINFLAGS="-m 0700" DESTDIR=${RPM_BUILD_ROOT}
popd
pushd ../killproc-%{KPVER}
  make install MANPATH=%{_mandir} INSTBINFLAGS="-m 0755" DESTDIR=${RPM_BUILD_ROOT}
popd
pushd ../powerd-%{PDVER}
%ifnarch s390 s390x
  make install DESTDIR=${RPM_BUILD_ROOT}
  cp README README.powerd
  cp SUPPORTED SUPPORTED.powerd
  cp FAQ FAQ.powerd
  echo '# ' > ${RPM_BUILD_ROOT}/etc/powerd.conf
  echo '# /etc/powerd.conf  for powerd version-2.02' >> ${RPM_BUILD_ROOT}/etc/powerd.conf
  echo '# ' >> ${RPM_BUILD_ROOT}/etc/powerd.conf
  echo '# read manual page of detectups(8) and powerd(8) its self.' >> ${RPM_BUILD_ROOT}/etc/powerd.conf
  echo '# ' >> ${RPM_BUILD_ROOT}/etc/powerd.conf
  mkdir -p ${RPM_BUILD_ROOT}/etc/init.d
  install -m 0744 %{SOURCE6} ${RPM_BUILD_ROOT}/etc/init.d/powerd
%endif
popd
pushd ../startpar-%{START}
  make install DESTDIR=${RPM_BUILD_ROOT}
popd
#
# Install mkinitrd scriptlets
#
  install -d $RPM_BUILD_ROOT/lib/mkinitrd/scripts
  install -m 0755 %{SOURCE8} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/boot-blogd.sh
  install -m 0755 %{SOURCE9} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/boot-killblogd.sh
  install -m 0755 %{SOURCE10} $RPM_BUILD_ROOT/lib/mkinitrd/scripts/boot-killblogd2.sh
#
# Remove files not packed:
#
  rm -f ${RPM_BUILD_ROOT}/usr/include/{initreq.h,libblogger.h}
  rm -f ${RPM_BUILD_ROOT}/usr/lib/libblogger.a
  rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/mesg.1*
%ifarch s390 s390x
  rm -f ${RPM_BUILD_ROOT}%{_mandir}/man8/powerd.8*
  rm -f ${RPM_BUILD_ROOT}%{_mandir}/man8/detectups.8*
  rm -f ${RPM_BUILD_ROOT}/sbin/powerd
  rm -f ${RPM_BUILD_ROOT}/sbin/detectups
%endif
  chmod 444 ${RPM_BUILD_ROOT}%{_mandir}/man?/*

%post
if test ! -p dev/blog ; then
    mknod -m 0640 dev/blog p
fi
if test -x /sbin/telinit -a -p /dev/initctl -a -f /proc/1/exe -a -d /proc/1/root -a ! -d /.build ; then
    if test $(stat -Lc '%%D-%%i' /) = $(stat -Lc '%%D-%%i' /proc/1/root) ; then
	/sbin/telinit u
    fi
fi
[ -x /sbin/mkinitrd_setup ] && mkinitrd_setup
exit 0

%postun
[ -x /sbin/mkinitrd_setup ] && mkinitrd_setup
exit 0

%clean
rm -rf ${RPM_BUILD_ROOT}

%files
%defattr (-,root,root,755)
%ifnarch s390 s390x
%config /etc/powerd.conf
%config /etc/init.d/powerd
%doc   ../powerd-%{PDVER}/README.powerd
%doc   ../powerd-%{PDVER}/SUPPORTED.powerd
%doc   ../powerd-%{PDVER}/FAQ.powerd
%doc   ../powerd-%{PDVER}/powerd.conf.monitor
%doc   ../powerd-%{PDVER}/powerd.conf.peer
%endif
%doc   contrib/start-stop-daemon.README
# %doc contrib/bootlogd.README
%dir /lib/mkinitrd
%dir /lib/mkinitrd/scripts
/lib/mkinitrd/scripts/boot-blogd.sh
/lib/mkinitrd/scripts/boot-killblogd.sh
/lib/mkinitrd/scripts/boot-killblogd2.sh
/dev/initctl
/bin/mountpoint
/bin/pidof
/bin/usleep
/bin/fsync
# /sbin/bootlogd
/sbin/blogger
/sbin/blogd
/sbin/showconsole
/sbin/setconsole
/sbin/isserial
/sbin/checkproc
/sbin/pidofproc
/sbin/halt
/sbin/init
# /sbin/intr
/sbin/killproc
/sbin/killall5
/sbin/pidof
%ifnarch s390 s390x
/sbin/powerd
/sbin/detectups
%endif
/sbin/poweroff
/sbin/reboot
/sbin/runlevel
/sbin/startproc
/sbin/start_daemon
/sbin/shutdown
/sbin/start-stop-daemon
/sbin/sulogin
/sbin/telinit
/sbin/startpar
/sbin/vhangup
/sbin/mkill
/usr/bin/last
/usr/bin/lastb
/usr/bin/utmpdump
# /usr/include/libblogger.h
# /usr/lib/libblogger.a
%doc %{_mandir}/man1/last.1.gz
%doc %{_mandir}/man1/lastb.1.gz
%doc %{_mandir}/man1/usleep.1.gz
%doc %{_mandir}/man1/fsync.1.gz
%doc %{_mandir}/man1/mountpoint.1.gz
# %doc %{_mandir}/man8/bootlogd.8.gz
%doc %{_mandir}/man8/blogger.8.gz
%doc %{_mandir}/man8/blogd.8.gz
%doc %{_mandir}/man8/showconsole.8.gz
%doc %{_mandir}/man8/setconsole.8.gz
%doc %{_mandir}/man8/isserial.8.gz
%doc %{_mandir}/man8/checkproc.8.gz
%doc %{_mandir}/man8/pidofproc.8.gz
%doc %{_mandir}/man8/halt.8.gz
%doc %{_mandir}/man5/initscript.5.gz
%doc %{_mandir}/man5/inittab.5.gz
%doc %{_mandir}/man8/init.8.gz
#%doc %{_mandir}/man8/intr.8.gz
%doc %{_mandir}/man8/killall5.8.gz
%doc %{_mandir}/man8/killproc.8.gz
%doc %{_mandir}/man8/pidof.8.gz
%ifnarch s390 s390x
%doc %{_mandir}/man8/powerd.8.gz
%doc %{_mandir}/man8/detectups.8.gz
%endif
%doc %{_mandir}/man8/poweroff.8.gz
%doc %{_mandir}/man8/reboot.8.gz
%doc %{_mandir}/man8/runlevel.8.gz
%doc %{_mandir}/man8/startproc.8.gz
%doc %{_mandir}/man8/start_daemon.8.gz
%doc %{_mandir}/man8/shutdown.8.gz
%doc %{_mandir}/man8/sulogin.8.gz
%doc %{_mandir}/man8/telinit.8.gz
%doc %{_mandir}/man8/startpar.8.gz
%doc %{_mandir}/man8/vhangup.8.gz
%doc %{_mandir}/man8/mkill.8.gz

%changelog
openSUSE Build Service is sponsored by