util-linux/util-linux.spec
Stephan Kulow 4efd0700ac Accepting request 210834 from Base:System
- Update to util-linux-2.24
  + Release highlights (2.24)
  fdisk(8):
    * the code has been completely refactored and moved to libfdisk
      (the library does not have a stable API yet)
    * user interface has been unified for all label types and it
      supports colors
    * GPT disk UUID, partition UUID and partition name modification
      is supported now
  pylibmount:
    * this new library provides PYTHON BINDINGS for libmount;
       use --with-python[=2|3] to enable the bindings
  last(1) and lastb(1):
    * the NEW IMPLEMENTATION has been merged from sysvinit to
      util-linux and extended; now it supports command line options
      --present, --since, and --time-format
    * use --enable-deprecated-last to enable the old util-linux
      last(1) implementation
  swapon(8):
    * the option --discard= and fstab mount option discard= allow
      to explicitly specify 'pages' or 'once' discard policy. If no
      policy is selected, the default behavior is to enable both.
      See swapon.8 man page for more details.
  libblkid and blkid(8):
    * supports LOGUUID= for external logs (e.g. extN and XFS)
    * generates a pseudo PARTUUID= for MBR partitions (based on MBR
      Id, Linux kernel supports the same concept for root= command
      line option)
  agetty(8):
    * supportes new issue file \S escape code to read information

OBS-URL: https://build.opensuse.org/request/show/210834
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/util-linux?expand=0&rev=173
2013-12-16 06:15:12 +00:00

936 lines
26 KiB
RPMSpec

#
# spec file for package util-linux
#
# Copyright (c) 2013 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/
#
%bcond_without sysvinit_tools
%bcond_without enable_su
%bcond_without enable_eject
%bcond_with enable_last
Name: util-linux
BuildRequires: audit-devel
BuildRequires: binutils-devel
BuildRequires: fdupes
BuildRequires: gettext-devel
# Use rpmbuild -D 'VERIFY_SIG 1' to verify signature during build or run
# one-shot check by
# xzcat util-linux-*.tar.xz | \
# sh -x gpg-offline --verify --package=util-linux *.tar.sign -
%if 0%{?VERIFY_SIG}
BuildRequires: gpg-offline
%endif
BuildRequires: libselinux-devel
BuildRequires: libsepol-devel
BuildRequires: libtool
BuildRequires: ncurses-devel
BuildRequires: pam-devel
BuildRequires: pkg-config
BuildRequires: readline-devel
%if 0%{?suse_version} <= 1230
BuildRequires: pkgconfig(systemd)
%else
BuildRequires: systemd-rpm-macros
%endif
BuildRequires: utempter-devel
BuildRequires: zlib-devel
Version: 2.24
Release: 0
# util-linux is a base package and uuidd pre-requiring pwdutils pulls
# that into the core build cycle. pwdutils also pulls in the whole
# ldap stack into it. Avoid this whole mess which is done only to
# make the rpm install check of uuidd happy which has support to work without
# these tools as well
#!BuildIgnore: pwdutils
Url: https://www.kernel.org/pub/linux/utils/util-linux/
Supplements: filesystem(minix)
Provides: fsck-with-dev-lock = %{version}
# bnc#651598:
Provides: util-linux(fake+no-canonicalize)
PreReq: %install_info_prereq permissions
Recommends: %{name}-lang = %{version}
Summary: A collection of basic system utilities
License: GPL-2.0+
Group: System/Base
Source: ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.24/%{name}-%{version}.tar.xz
Source1: util-linux-rpmlintrc
# XXX: make nologin part of util-linux upstream
Source2: nologin.c
Source3: nologin.8
Source4: raw.init
Source5: etc.raw
Source6: etc_filesystems
Source7: baselibs.conf
Source8: login.pamd
Source9: remote.pamd
Source10: su.pamd
Source11: su.default
Source12: ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.24/%{name}-%{version}.tar.sign
Source13: %{name}.keyring
# TODO: split to separate package
Source40: klogconsole.tar.bz2
# XXX: Run a program in a new session and with controlling tty
Source22: setctsid.c
Source23: setctsid.8
# XXX: ppc specific, still needed?
Source28: mkzimage_cmdline.8
Source29: mkzimage_cmdline.c
Source31: addnote.c
#
Source26: README.raw
Source30: README.largedisk
Source50: uuidd.rc
Source51: blkid.conf
##
## util-linux patches
##
# 241372 - remove legacy warnings from fdisk
Patch1: util-linux-2.24-fdisk_remove_bogus_warnings.patch
Patch2: util-linux-2.23.1-eject-fpie.patch
# PATCH-EXTEND-UPSTREAM: Let `su' handle /sbin and /usr/sbin in path
Patch4: make-sure-sbin-resp-usr-sbin-are-in-PATH.diff
# disable encryption
Patch12: util-linux-2.23.1-noenc-suse.diff
# PATCH-FIX-UPSTREAM blkdiscard-BLKSSZGET-fills-in-an-int.patch tytso@mit.edu
Patch13: blkdiscard-BLKSSZGET-fills-in-an-int.patch
# PATCH-FIX-SUSE -- better support of S390 in agetty
Patch14: tty3270-on-serial-line-of-s390.patch
# hack for boot.localfs
Patch20: util-linux-HACK-boot.localfs.diff
##
## klogconsole
##
Patch55: klogconsole-quiet.patch
Patch56: klogconsole.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: %insserv_prereq %fillup_prereq /bin/sed
#
%if %{with enable_eject}
Provides: eject = 2.1.0-166.8
%endif
Provides: login = 4.0-33.7
%if %{with enable_eject}
# File conflict of eject (up to 12.3 and SLE11).
Obsoletes: eject < 2.1.0-166.8
%endif
# File conflict of login (up to 12.1 and SLE11).
Obsoletes: login < 4.0-33.7
%if %{with enable_su}
# File conflict of su and kill (up to 12.3 and SLE11).
# It should be coreutils < 8.21-4, but coreutils provide Release-less symbol.
Conflicts: coreutils < 8.21
%endif
%if %{with sysvinit_tools}
# File conflict of sulogin and utmpdump (up to 12.3 and SLE11).
Conflicts: sysvinit-tools < 2.88+-87
%endif
#
# Using "Requires" here would lend itself to help upgrading, but since
# util-linux is in the initial bootstrap, that is not a good thing to do:
#
Recommends: adjtimex
Recommends: time
Recommends: which
%description
This package contains a large variety of low-level system utilities
that are necessary for a Linux system to function. It contains the
mount program, the fdisk configuration tool, and more.
%package -n libblkid1
Summary: Filesystem detection library
Group: System/Filesystems
%description -n libblkid1
Library for filesystem detection.
%package -n libblkid-devel
Summary: Development files for the filesystem detection library
Group: Development/Libraries/C and C++
Requires: libblkid1 = %{version}
%description -n libblkid-devel
Files needed to develop applications using the library for filesystem
detection.
%package -n uuidd
Summary: Helper daemon to guarantee uniqueness of time-based UUIDs
Group: System/Filesystems
PreReq: %fillup_prereq
PreReq: %insserv_prereq
PreReq: permissions
PreReq: pwdutils
%description -n uuidd
The uuidd package contains a userspace daemon (uuidd) which guarantees
uniqueness of time-based UUID generation even at very high rates on
SMP systems.
%package -n libuuid1
Summary: Library to generate UUIDs
Group: System/Filesystems
%description -n libuuid1
A library to generate universally unique IDs (UUIDs).
%package -n libuuid-devel
Summary: Development files for libuuid1
Group: Development/Libraries/C and C++
Requires: libuuid1 = %{version}
%description -n libuuid-devel
Files to develop applications using the library to generate universally
unique IDs (UUIDs).
%package -n libmount1
Summary: Device mount library
Group: System/Filesystems
%description -n libmount1
Library designed to be used in low-level utils like
mount(8) and /usr/sbin/mount.<type> helpers.
%package -n libmount-devel
Summary: Development files for libmount1
Group: Development/Libraries/C and C++
Requires: libmount1 = %{version}
%description -n libmount-devel
Files to develop applications using the libmount library.
%lang_package
%prep
%if 0%{?VERIFY_SIG}
xzcat %{S:0} | %gpg_verify %{S:12} -
%endif
%setup -q -n %{name}-%{version} -b 40
%patch1 -p1
%patch2 -p1
%patch4 -p1
%patch12 -p1
%patch13 -p1
%patch14 -p0
#
%patch20 -p1
#
# setctsid
cp -p %{S:22} %{S:23} .
# nologin
cp -p %{S:2} %{S:3} %{S:26} %{S:30} .
pushd ../klogconsole
%patch55 -p1
%patch56 -p1
popd
%build
pushd ../klogconsole
# klogconsole build
make %{?_smp_mflags} CFLAGS="%{optflags}" CC="%{__cc}"
popd
# setctsid build
rm -f setctsid
make %{?_smp_mflags} setctsid CFLAGS="%{optflags}" CC="%{__cc}"
#
# Version check for libutempter
#
uhead=$(find %_includedir -name utempter.h 2>/dev/null)
if test -n "$uhead" && grep -q utempter_add_record "$uhead"
then
uhead=--with-utempter
else
uhead=--without-utempter
fi
#
# util-linux itself
#
autoreconf -fi
export SUID_CFLAGS="-fpie"
export SUID_LDFLAGS="-pie"
%configure \
--docdir=%{_docdir}/%{name} \
--with-audit \
--with-gnu-ld \
--with-ncurses \
--with-selinux \
$uhead \
--with-systemdsystemunitdir=%_unitdir \
--with-bashcompletiondir=%{_datadir}/bash-completion \
--enable-mesg \
--enable-partx \
--enable-raw \
--enable-write \
--enable-line \
--enable-new-mount \
--enable-login-utils \
--enable-tunelp \
%if %{with enable_last}
--enable-last \
%else
--disable-last \
%endif
--enable-logger \
%if %{with enable_eject}
--enable-eject \
%else
--disable-eject \
%endif
%if %{with sysvinit_tools}
--enable-sulogin \
--enable-sulogin-emergency-mount \
--enable-mountpoint \
%else
--disable-sulogin \
--disable-mountpoint \
%endif
%if %{with enable_su}
--enable-kill \
--enable-su \
%else
--disable-su \
--disable-kill \
%endif
--disable-use-tty-group \
--disable-static \
--disable-silent-rules \
--disable-rpath
#
make %{?_smp_mflags}
#
%{__cc} -fwhole-program %{optflags} -o nologin nologin.c
%{__cc} -fwhole-program %{optflags} -o mkzimage_cmdline %{S:29}
%{__cc} -fwhole-program %{optflags} -o chrp-addnote %{SOURCE31}
%check
if ! make check; then
echo "cat test diffs:"
find tests/diff -type f | xargs -r cat
#exit 1
fi
%install
mkdir -p %{buildroot}{%{_sysconfdir}/{init.d,pam.d,default},%{_mandir}/man{1,8},/bin,/sbin,%{_bindir},%{_sbindir},%{_infodir}}
mkdir -p %{buildroot}%{_localstatedir}/lib/libuuid/
mkdir -p %{buildroot}%{_localstatedir}/run/uuidd/
install -m 744 %{SOURCE50} %{buildroot}%{_initddir}/uuidd
install -m 644 %{SOURCE51} %{buildroot}%{_sysconfdir}/blkid.conf
install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/pam.d/login
install -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/pam.d/remote
%if %{with enable_su}
install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su
install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/pam.d/su-l
install -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/default/su
%endif
mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates
pushd ../klogconsole
# klogconsole install
make install DEST=%{buildroot}
popd
#
# util-linux install
#
%make_install
#UsrMerge
%if %{with enable_su}
ln -s %{_bindir}/kill %{buildroot}/bin
ln -s %{_bindir}/su %{buildroot}/bin
%endif
ln -s %{_bindir}/logger %{buildroot}/bin
ln -s %{_bindir}/dmesg %{buildroot}/bin
ln -s %{_bindir}/more %{buildroot}/bin
ln -s %{_bindir}/mount %{buildroot}/bin
ln -s %{_bindir}/umount %{buildroot}/bin
ln -s %{_bindir}/findmnt %{buildroot}/bin
ln -s %{_bindir}/lsblk %{buildroot}/bin
ln -s %{_sbindir}/agetty %{buildroot}/sbin
ln -s %{_sbindir}/blockdev %{buildroot}/sbin
ln -s %{_sbindir}/cfdisk %{buildroot}/sbin
ln -s %{_sbindir}/ctrlaltdel %{buildroot}/sbin
ln -s %{_sbindir}/fdisk %{buildroot}/sbin
ln -s %{_sbindir}/fsck.minix %{buildroot}/sbin
ln -s %{_sbindir}/fsck.cramfs %{buildroot}/sbin
ln -s %{_sbindir}/hwclock %{buildroot}/sbin
ln -s %{_sbindir}/losetup %{buildroot}/sbin
ln -s %{_sbindir}/mkfs %{buildroot}/sbin
ln -s %{_sbindir}/mkfs.bfs %{buildroot}/sbin
ln -s %{_sbindir}/mkfs.minix %{buildroot}/sbin
ln -s %{_sbindir}/mkfs.cramfs %{buildroot}/sbin
ln -s %{_sbindir}/mkswap %{buildroot}/sbin
ln -s %{_sbindir}/pivot_root %{buildroot}/sbin
ln -s %{_sbindir}/raw %{buildroot}/sbin
ln -s %{_sbindir}/sfdisk %{buildroot}/sbin
ln -s %{_sbindir}/swapoff %{buildroot}/sbin
ln -s %{_sbindir}/swapon %{buildroot}/sbin
ln -s %{_sbindir}/blkid %{buildroot}/sbin
ln -s %{_sbindir}/findfs %{buildroot}/sbin
ln -s %{_sbindir}/fsck %{buildroot}/sbin
ln -s %{_sbindir}/switch_root %{buildroot}/sbin
ln -s %{_sbindir}/wipefs %{buildroot}/sbin
ln -s %{_sbindir}/fsfreeze %{buildroot}/sbin
ln -s %{_sbindir}/swaplabel %{buildroot}/sbin
ln -s %{_sbindir}/fstrim %{buildroot}/sbin
ln -s %{_sbindir}/chcpu %{buildroot}/sbin
#EndUsrMerge
install -m 644 %{SOURCE6} %{buildroot}%{_sysconfdir}/filesystems
install -m 755 nologin %{buildroot}/%{_sbindir}
#UsrMerge
ln -s %{_sbindir}/nologin %{buildroot}/sbin
#EndUsrMerge
rm -f %{buildroot}/%{_libdir}/libblkid.la
rm -f %{buildroot}/%{_libdir}/libuuid.la
rm -f %{buildroot}/%{_libdir}/libmount.la
%ifnarch ppc ppc64
install -m 755 mkzimage_cmdline %{buildroot}/%{_bindir}
install -m 644 %{S:28} %{buildroot}%{_mandir}/man8
install -m 755 chrp-addnote %{buildroot}/%{_bindir}
%endif
install -m 644 nologin.8 %{buildroot}%{_mandir}/man8
# setctsid install
install -m 755 setctsid %{buildroot}/%{_sbindir}
install -m 444 setctsid.8 %{buildroot}%{_mandir}/man8/
echo -e "#! /bin/bash\n/sbin/blockdev --flushbufs \$1" > %{buildroot}%{_sbindir}/flushb
chmod 755 %{buildroot}%{_sbindir}/flushb
# Install scripts to configure raw devices at boot time
install -m 644 $RPM_SOURCE_DIR%{_sysconfdir}.raw %{buildroot}%{_sysconfdir}/raw
install -m 755 $RPM_SOURCE_DIR/raw.init %{buildroot}%{_initddir}/raw
ln -sf ../..%{_sysconfdir}/init.d/raw %{buildroot}%{_sbindir}/rcraw
# upstream moved getopt examples from datadir to docdir but we keep
# the old location because we would need to fix the manpage first
mv %{buildroot}%{_docdir}/%{name}/getopt %{buildroot}%{_datadir}/
# Stupid hack so we don't have a tcsh dependency
chmod 644 %{buildroot}%{_datadir}/getopt/getopt*.tcsh
# Following files we don't want to package, so remove them
rm -f %{buildroot}%{_bindir}/pg
rm -f %{buildroot}%{_mandir}/man1/pg.1*
# Do not package these files to get rid of the perl dependency
rm -f %{buildroot}%{_bindir}/chkdupexe
rm -f %{buildroot}%{_mandir}/man1/chkdupexe.1
# we use this tools from pwdutils
rm -f %{buildroot}/%{_bindir}/{chfn,chsh,newgrp}
rm -f %{buildroot}/%{_sbindir}/{vigr,vipw}
rm -f %{buildroot}/%{_mandir}/man1/{chfn.1*,chsh.1*,newgrp.1*}
rm -f %{buildroot}/%{_mandir}/man8/{vigr.8*,vipw.8*}
# login is always and only in /bin
mv %{buildroot}/%{_bindir}/login %{buildroot}/bin/
# arch dependent
%ifarch s390 s390x
rm -f %{buildroot}%{_sysconfdir}/fdprm
rm -f %{buildroot}%{_bindir}/cytune
rm -f %{buildroot}%{_sbindir}/fdformat
rm -f %{buildroot}%{_sbindir}/hwclock
#UsrMerge
rm -f %{buildroot}/sbin/hwclock
#EndUsrMerge
rm -f %{buildroot}%{_sbindir}/klogconsole
rm -f %{buildroot}%{_bindir}/setterm
rm -f %{buildroot}%{_sbindir}/tunelp
rm -f %{buildroot}/%{_mandir}/man8/cytune.8*
rm -f %{buildroot}/%{_mandir}/man8/fdformat.8*
rm -f %{buildroot}/%{_mandir}/man8/hwclock.8*
rm -f %{buildroot}/%{_mandir}/man8/klogconsole.8*
rm -f %{buildroot}/%{_mandir}/man8/tunelp.8*
%endif
%ifarch ia64 %sparc m68k
rm -f %{buildroot}/%{_mandir}/man8/cfdisk.8*
rm -f %{buildroot}/%{_mandir}/man8/sfdisk.8*
rm -f %{buildroot}%{_sbindir}/cfdisk
#UsrMerge
rm -f %{buildroot}/sbin/cfdisk
#EndUsrMerge
rm -f %{buildroot}%{_sbindir}/sfdisk
#UsrMerge
rm -f %{buildroot}/sbin/sfdisk
#EndUsrMerge
%endif
%ifarch ia64 m68k
rm -f %{buildroot}%{_sbindir}/fdisk
#UsrMerge
rm -f %{buildroot}/sbin/fdisk
#EndUsrMerge
rm -f %{buildroot}%{_mandir}/man8/fdisk.8*
%endif
%find_lang %{name} %{name}.lang
# create list of setarch(8) symlinks
find %{buildroot}%{_bindir}/ -regextype posix-egrep -type l \
-regex ".*(linux32|linux64|s390|s390x|i386|ppc|ppc64|ppc32|sparc|sparc64|sparc32|sparc32bash|mips|mips64|mips32|ia64|x86_64|parisc|parisc32|parisc64)$" \
-printf "%{_bindir}/%f\n" >> %{name}.files
find %{buildroot}%{_mandir}/man8 -regextype posix-egrep \
-regex ".*(linux32|linux64|s390|s390x|i386|ppc|ppc64|ppc32|sparc|sparc64|sparc32|sparc32bash|mips|mips64|mips32|ia64|x86_64|parisc|parisc32|parisc64)\.8.*" \
-printf "%{_mandir}/man8/%f*\n" >> %{name}.files
# clock.txt from uuidd is a ghost file
touch %{buildroot}%{_localstatedir}/lib/libuuid/clock.txt
# rcuuidd helper
ln -sf ../..%{_sysconfdir}/init.d/uuidd %{buildroot}%{_sbindir}/rcuuidd
# remove duplicate manpages
%fdupes -s %{buildroot}/%{_mandir}
%post
%{fillup_and_insserv raw}
%set_permissions %{_bindir}/wall %{_bindir}/write %{_bindir}/mount %{_bindir}/umount
%if %{with enable_su}
%set_permissions %{_bindir}/su
# Safely migrate PAM files from coreutils to util-linux
# (openSUSE 12.3->13.1, SLE11->SLE12)
#
# coreutils with su were upgraded (and su removed) before util-linux
# with su was installed (see the Conflicts above). If the admin edited
# the PAM file, the seemingly no more used modified file was saved as
# .rpmsave and the new clean file was installed. As we want
# "noreplace" upgrade, and the contents of the clean file contents has
# no changes, we should restore admin modification, and rename the
# clean file to .rpmnew, as it would happen if the file was not moved
# from one package to another.
for PAM_FILE in default/su pam.d/su pam.d/su-l ; do
if test -f %{_sysconfdir}/$PAM_FILE.rpmsave ; then
mv %{_sysconfdir}/$PAM_FILE %{_sysconfdir}/$PAM_FILE.rpmnew
mv %{_sysconfdir}/$PAM_FILE.rpmsave %{_sysconfdir}/$PAM_FILE
fi
done
%endif
%if %{with enable_eject}
%set_permissions %{_bindir}/eject
%endif
# mount option 'code=' is now called 'codepage=' so change fstab
if [ -f etc/fstab ]; then
sed -i 's:code=:codepage=:' etc/fstab
fi
%postun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/ipc.info.gz
%{insserv_cleanup}
%verifyscript
%verify_permissions -e %{_bindir}/wall -e %{_bindir}/write -e %{_bindir}/mount -e %{_bindir}/umount
%if %{with enable_su}
%verify_permissions -e %{_bindir}/su
%endif
%if %{with enable_eject}
%verify_permissions -e %{_bindir}/eject
%endif
%post -n libblkid1 -p /sbin/ldconfig
%postun -n libblkid1 -p /sbin/ldconfig
%post -n libmount1 -p /sbin/ldconfig
%postun -n libmount1 -p /sbin/ldconfig
%pre -n uuidd
%{_sbindir}/groupadd -r uuidd 2>/dev/null || :
%{_sbindir}/useradd -r -g uuidd -c "User for uuidd" \
-d /var/run/uuidd uuidd 2>/dev/null || :
%preun -n uuidd
%{stop_on_removal uuidd}
%post -n uuidd
%{fillup_and_insserv -n uuidd}
%set_permissions %{_sbindir}/uuidd
%postun -n uuidd
%{restart_on_update uuidd}
%{insserv_cleanup}
%post -n libuuid1 -p /sbin/ldconfig
%postun -n libuuid1 -p /sbin/ldconfig
%verifyscript -n uuidd
%verify_permissions -e %{_sbindir}/uuidd
%files lang -f %{name}.lang
%files -f %{name}.files
# Common files for all archs
%defattr(-,root,root)
# util-linux documentation files
%doc Documentation/blkid.txt
%doc Documentation/cal.txt
%doc Documentation/cfdisk.txt
%doc Documentation/col.txt
%doc Documentation/deprecated.txt
%doc Documentation/fdisk.txt
%doc Documentation/getopt.txt
%doc Documentation/howto-debug.txt
%doc Documentation/hwclock.txt
%doc Documentation/modems-with-agetty.txt
%doc Documentation/mount.txt
%doc Documentation/pg.txt
%doc Documentation/sfdisk.txt
%config %attr(744,root,root) %{_sysconfdir}/init.d/raw
%config(noreplace) %attr(644,root,root) %{_sysconfdir}/raw
%config(noreplace) %{_sysconfdir}/filesystems
%config(noreplace) %{_sysconfdir}/blkid.conf
%config(noreplace) %{_sysconfdir}/pam.d/login
%config(noreplace) %{_sysconfdir}/pam.d/remote
%if %{with enable_su}
%config(noreplace) %{_sysconfdir}/pam.d/su
%config(noreplace) %{_sysconfdir}/pam.d/su-l
%config(noreplace) %{_sysconfdir}/default/su
%endif
#UsrMerge
%if %{with enable_su}
/bin/kill
/bin/su
%endif
/bin/dmesg
/bin/more
/bin/mount
/bin/umount
/bin/findmnt
/bin/logger
/bin/login
/bin/lsblk
/sbin/agetty
/sbin/blockdev
/sbin/ctrlaltdel
/sbin/fsck.minix
/sbin/fsck.cramfs
/sbin/losetup
/sbin/mkfs
/sbin/mkfs.bfs
/sbin/mkfs.minix
/sbin/mkfs.cramfs
/sbin/mkswap
/sbin/nologin
/sbin/pivot_root
/sbin/raw
/sbin/swapoff
/sbin/swapon
/sbin/blkid
/sbin/findfs
/sbin/fsck
/sbin/switch_root
/sbin/wipefs
/sbin/fsfreeze
/sbin/swaplabel
/sbin/fstrim
/sbin/chcpu
#EndUsrMerge
%if %{with enable_su}
%{_bindir}/kill
%{_bindir}/su
%endif
%if %{with enable_eject}
%if 0%{?suse_version} <= 1310
%verify(not mode) %attr(4750,root,audio) %{_bindir}/eject
%else
%{_bindir}/eject
%endif
%endif
%{_bindir}/cal
%{_bindir}/chrt
%{_bindir}/col
%{_bindir}/colcrt
%{_bindir}/colrm
%{_bindir}/column
%{_bindir}/dmesg
%{_bindir}/fallocate
%{_bindir}/findmnt
%{_bindir}/flock
%{_bindir}/getopt
%{_bindir}/hexdump
%{_bindir}/ionice
%{_bindir}/ipcmk
%{_bindir}/ipcrm
%{_bindir}/ipcs
%{_bindir}/isosize
%if %{with enable_last}
%{_bindir}/last
%{_bindir}/lastb
%endif
%{_bindir}/line
%{_bindir}/logger
%{_bindir}/look
%{_bindir}/lsblk
%{_bindir}/lscpu
%{_bindir}/lslocks
%{_bindir}/mcookie
%{_bindir}/mesg
%{_bindir}/more
%{_bindir}/mount
%{_bindir}/namei
%{_bindir}/nsenter
%{_bindir}/prlimit
%{_bindir}/rename
%{_bindir}/renice
%{_bindir}/rev
%{_bindir}/script
%{_bindir}/scriptreplay
%{_bindir}/setarch
%{_bindir}/setsid
%{_bindir}/tailf
%{_bindir}/taskset
%{_bindir}/ul
%{_bindir}/umount
%{_bindir}/unshare
%if %{with sysvinit_tools}
%{_bindir}/mountpoint
%{_bindir}/utmpdump
%endif
%{_bindir}/uuidgen
%ifnarch ppc ppc64
%{_bindir}/chrp-addnote
%{_bindir}/mkzimage_cmdline
%endif
%{_bindir}/wdctl
%{_sbindir}/addpart
%{_sbindir}/agetty
%{_sbindir}/blkid
%{_sbindir}/blkdiscard
%{_sbindir}/blockdev
%{_sbindir}/chcpu
%{_sbindir}/ctrlaltdel
%{_sbindir}/delpart
%{_sbindir}/findfs
%{_sbindir}/fsck
%{_sbindir}/fsck.minix
%{_sbindir}/fsck.cramfs
%{_sbindir}/fsfreeze
%{_sbindir}/fstrim
%{_sbindir}/ldattach
%{_sbindir}/losetup
%{_sbindir}/mkfs
%{_sbindir}/mkfs.bfs
%{_sbindir}/mkfs.minix
%{_sbindir}/mkfs.cramfs
%{_sbindir}/mkswap
%{_sbindir}/nologin
%{_sbindir}/partx
%{_sbindir}/pivot_root
%{_sbindir}/raw
%{_sbindir}/rcraw
%{_sbindir}/resizepart
%{_sbindir}/rtcwake
%{_sbindir}/runuser
%{_sbindir}/setctsid
%if %{with sysvinit_tools}
%{_sbindir}/sulogin
%endif
%{_sbindir}/swaplabel
%{_sbindir}/swapoff
%{_sbindir}/swapon
%{_sbindir}/switch_root
%{_sbindir}/wipefs
%verify(not mode) %attr(0755,root,tty) %{_bindir}/wall
%{_bindir}/whereis
%verify(not mode) %attr(0755,root,tty) %{_bindir}/write
%if %{with enable_su}
%{_mandir}/man1/kill.1.gz
%{_mandir}/man1/su.1.gz
%endif
%{_mandir}/man1/cal.1.gz
%{_mandir}/man1/chrt.1.gz
%{_mandir}/man1/col.1.gz
%{_mandir}/man1/colcrt.1.gz
%{_mandir}/man1/colrm.1.gz
%{_mandir}/man1/column.1.gz
%{_mandir}/man1/dmesg.1.gz
%if %{with enable_eject}
%{_mandir}/man1/eject.1.gz
%endif
%{_mandir}/man1/fallocate.1.gz
%{_mandir}/man1/flock.1.gz
%{_mandir}/man1/getopt.1.gz
%{_mandir}/man1/hexdump.1.gz
%{_mandir}/man1/ipcrm.1.gz
%{_mandir}/man1/ipcs.1.gz
%if %{with enable_last}
%{_mandir}/man1/last.1.gz
%{_mandir}/man1/lastb.1.gz
%endif
%{_mandir}/man1/line.1.gz
%{_mandir}/man1/logger.1.gz
%{_mandir}/man1/login.1.gz
%{_mandir}/man1/look.1.gz
%{_mandir}/man1/lscpu.1.gz
%{_mandir}/man1/mcookie.1.gz
%{_mandir}/man1/mesg.1.gz
%{_mandir}/man1/more.1.gz
%{_mandir}/man1/namei.1.gz
%{_mandir}/man1/nsenter.1.gz
%{_mandir}/man1/ionice.1.gz
%{_mandir}/man1/prlimit.1.gz
%{_mandir}/man1/rename.1.gz
%{_mandir}/man1/rev.1.gz
%{_mandir}/man1/renice.1.gz
%{_mandir}/man1/setsid.1.gz
%{_mandir}/man1/script.1.gz
%{_mandir}/man1/scriptreplay.1.gz
%{_mandir}/man1/setterm.1.gz
%{_mandir}/man1/tailf.1.gz
%{_mandir}/man1/taskset.1.gz
%{_mandir}/man1/ul.1.gz
%{_mandir}/man1/unshare.1.gz
%{_mandir}/man1/wall.1.gz
%{_mandir}/man1/whereis.1.gz
%{_mandir}/man1/write.1.gz
%{_mandir}/man1/ipcmk.1.gz
%if %{with sysvinit_tools}
%{_mandir}/man1/mountpoint.1.gz
%{_mandir}/man1/utmpdump.1.gz
%endif
%{_mandir}/man1/runuser.1.gz
%{_mandir}/man1/uuidgen.1.gz
%{_mandir}/man5/fstab.5.gz
%{_mandir}/man8/addpart.8.gz
%{_mandir}/man8/agetty.8.gz
%{_mandir}/man8/blockdev.8.gz
%{_mandir}/man8/delpart.8.gz
%{_mandir}/man8/ctrlaltdel.8.gz
%{_mandir}/man8/blkid.8.gz
%{_mandir}/man8/blkdiscard.8.gz
%{_mandir}/man8/switch_root.8.gz
%{_mandir}/man8/mkfs.bfs.8.gz
%{_mandir}/man8/mkfs.minix.8.gz
%{_mandir}/man8/findfs.8.gz
%{_mandir}/man8/fsck.8.gz
%{_mandir}/man8/fsck.cramfs.8.gz
%{_mandir}/man8/fsck.minix.8.gz
%{_mandir}/man8/isosize.8.gz
%{_mandir}/man8/ldattach.8.gz
%{_mandir}/man8/losetup.8.gz
%{_mandir}/man8/lslocks.8.gz
%{_mandir}/man8/mkfs.8.gz
%{_mandir}/man8/mkfs.cramfs.8.gz
%{_mandir}/man8/mkswap.8.gz
%{_mandir}/man8/mount.8.gz
%{_mandir}/man8/nologin.8.gz
%{_mandir}/man8/findmnt.8.gz
%{_mandir}/man8/fsfreeze.8.gz
%{_mandir}/man8/swaplabel.8.gz
%{_mandir}/man8/readprofile.8.gz
%{_mandir}/man8/chcpu.8.gz
%ifnarch ppc ppc64
%{_mandir}/man8/mkzimage_cmdline.8.gz
%endif
%{_mandir}/man8/partx.8.gz
%{_mandir}/man8/pivot_root.8.gz
%{_mandir}/man8/raw.8.gz
%{_mandir}/man8/rtcwake.8.gz
%{_mandir}/man8/setarch.8.gz
%{_mandir}/man8/swapoff.8.gz
%{_mandir}/man8/swapon.8.gz
%{_mandir}/man8/umount.8.gz
%{_mandir}/man8/setctsid.8.gz
%{_mandir}/man8/wipefs.8.gz
%{_mandir}/man8/fstrim.8.gz
%{_mandir}/man8/lsblk.8.gz
%{_mandir}/man8/resizepart.8.gz
%if %{with sysvinit_tools}
%{_mandir}/man8/sulogin.8.gz
%endif
%{_mandir}/man8/wdctl.8.gz
%{_sbindir}/flushb
%{_sbindir}/readprofile
%dir %{_datadir}/getopt
%attr (755,root,root) %{_datadir}/getopt/getopt-parse.bash
%attr (755,root,root) %{_datadir}/getopt/getopt-parse.tcsh
# FIXME: Fix directory ownership.
%{_datadir}/bash-completion
%ifnarch ia64 m68k
#XXX: post our patches upstream
#XXX: call fdupes on /usr/share/man
#UsrMerge
/sbin/fdisk
#EndUsrMerge
%{_sbindir}/fdisk
%{_mandir}/man8/fdisk.8.gz
%endif
%ifnarch %sparc ia64 m68k
%{_mandir}/man8/cfdisk.8.gz
%{_mandir}/man8/sfdisk.8.gz
#UsrMerge
/sbin/cfdisk
/sbin/sfdisk
#EndUsrMerge
%{_sbindir}/cfdisk
%{_sbindir}/sfdisk
%endif
%ifnarch s390 s390x
%{_bindir}/cytune
%{_sbindir}/fdformat
#UsrMerge
/sbin/hwclock
#EndUsrMerge
%{_sbindir}/hwclock
%{_sbindir}/klogconsole
%{_bindir}/setterm
%{_sbindir}/tunelp
%{_mandir}/man8/cytune.8.gz
%{_mandir}/man8/fdformat.8.gz
%{_mandir}/man8/hwclock.8.gz
%{_mandir}/man8/klogconsole.8.gz
%{_mandir}/man8/tunelp.8.gz
%endif
%files -n libblkid1
%defattr(-, root, root)
/%{_libdir}/libblkid.so.1
/%{_libdir}/libblkid.so.1.*
%files -n libblkid-devel
%defattr(-, root, root)
%{_libdir}/libblkid.so
%dir %{_includedir}/blkid
%{_includedir}/blkid/blkid.h
%{_libdir}/pkgconfig/blkid.pc
%{_mandir}/man3/libblkid.3.gz
%files -n libmount1
%defattr(-, root, root)
/%{_libdir}/libmount.so.1
/%{_libdir}/libmount.so.1.*
%files -n libmount-devel
%defattr(-, root, root)
%{_libdir}/libmount.so
%dir %{_includedir}/libmount
%{_includedir}/libmount/libmount.h
%{_libdir}/pkgconfig/mount.pc
%files -n uuidd
%defattr(-, root, root)
%verify(not mode) %attr(0755,root,root) %{_sbindir}/uuidd
%attr(-,uuidd,uuidd) %dir %{_localstatedir}/lib/libuuid
%ghost %{_localstatedir}/lib/libuuid/clock.txt
%attr(-,uuidd,uuidd) %ghost %dir %{_localstatedir}/run/uuidd
%{_initddir}/uuidd
%{_mandir}/man8/uuidd.8.gz
%{_sbindir}/rcuuidd
%{_unitdir}/uuidd.service
%{_unitdir}/uuidd.socket
%files -n libuuid1
%defattr(-, root, root)
/%{_libdir}/libuuid.so.1
/%{_libdir}/libuuid.so.1.*
%files -n libuuid-devel
%defattr(-, root, root)
%{_libdir}/libuuid.so
%dir %{_includedir}/uuid
%{_includedir}/uuid/uuid.h
%{_libdir}/pkgconfig/uuid.pc
%{_mandir}/man3/uuid*
%changelog