xfsprogs/xfsprogs.spec
David Sterba 1d7db4622e Accepting request 558620 from home:mcgrof:branches:filesystems
- Deletes already merged xfs_io-stat-fix-typo-in-statfs-f_flags.patch
- Deletes already merged xfs_io-stat-treat-statfs.f_flags-as-optional.patch
- Refreshes patch xfsprogs-docdir.diff
- Update to v4.14.0:
  * xfs_io: stat: treat statfs.f_flags as optional
  * xfs_io: stat: fix typo in statfs->f_flags
  * xfsprogs: fix wrong variable types in pwrite/pread code
  * xfs_io: Allow partial writes
  * xfs_io: Add RWF_NOWAIT to pwritev2()
  * xfs_io: Add support for pwritev2()
  * xfs_io: Disable -V if pwritev is not available
  * xfs_repair: always release btree buffers when refcountbt checks fail
  * misc: fix ubsan warnings
  * misc: enable thread sanitizer if the builder wants it
  * misc: enable gcc/clang address sanitizer if the builder wants it
  * misc: enable ubsan if the builder wants it
  * xfs_repair: fix cowextsize field checking and repairing
  * xfs_repair: clear DAX flag from non-file inodes
  * xfs_repair: fix bag memory overwrite problems
  * xfs_io: add new error injection knobs to inject command
  * xfsprogs: explicitly cast troublesome types to match printf  format specifiers
  * db: increase metadump's default overly long extent discard  threshold
  * build: define _DEFAULT_SOURCE with _BSD_SOURCE for preadv
  * xfsprogs: add xfs_spaceman to .gitignore
  * xfs_io: report io error for pwrite -W and -w
  * xfs_metadump: zap stale data in DIR2_LEAF1 dirs
  * metadump: update manpage for dirty log/obfuscation issue
  * kill off u_int*_t types
  * xfs: trim writepage mapping to within eof
  * xfs: handle error if xfs_btree_get_bufs fails

OBS-URL: https://build.opensuse.org/request/show/558620
OBS-URL: https://build.opensuse.org/package/show/filesystems/xfsprogs?expand=0&rev=57
2017-12-21 16:10:43 +00:00

152 lines
4.4 KiB
RPMSpec

#
# spec file for package xfsprogs
#
# Copyright (c) 2017 SUSE LINUX 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/
#
%define _dracutmodulesdir %{_libexecdir}/dracut/modules.d
Name: xfsprogs
Version: 4.14.0
Release: 0
Summary: Utilities for managing the XFS file system
License: GPL-2.0+
Group: System/Filesystems
Url: http://xfs.org
Source0: https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-%{version}.tar.xz
Source1: https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/xfsprogs-%{version}.tar.sign
Source2: %{name}.keyring
Source3: module-setup.sh.in
Source4: dracut-fsck-help.txt
Patch0: xfsprogs-docdir.diff
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libblkid-devel
BuildRequires: readline-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: libuuid-devel
%if 0%{?suse_version} >= 1010
# hint for ZYPP
Supplements: filesystem(xfs)
%endif
%if 0%{?suse_version} >= 1310
BuildRequires: suse-module-tools
%endif
BuildRequires: xz
Requires(post): coreutils
%description
A set of commands to use the XFS file system, including mkfs.xfs.
XFS is a high performance journaling file system which originated on
the SGI IRIX platform. It is completely multithreaded. It can support
large files and large file systems, extended attributes, and variable
block sizes.It is extent based and makes extensive use of Btrees
(directories, extents, and free space) to aid both performance and
scalability.
Refer to the documentation at http://oss.sgi.com/projects/xfs/ for
complete details. This implementation is on-disk compatible with the
IRIX version of XFS.
%package devel
Summary: XFS Filesystem-specific Static Libraries and Headers
Group: Development/Libraries/C and C++
Requires: xfsprogs = %{version}
%description devel
xfsprogs-devel contains the libraries and header files needed to
develop XFS file system-specific programs.
You should install xfsprogs-devel if you want to develop XFS file
system-specific programs. If you install xfsprogs-devel, you will also
want to install xfsprogs.
%prep
%setup -q
%if 0%{?suse_version}
%patch0 -p1
%endif
%build
aclocal -I m4
autoconf
export OPTIMIZER="-fPIC"
export DEBUG=-DNDEBUG
export LIBUUID=%{_libdir}/libuuid.a
%configure --enable-readline=yes
make %{?_smp_mflags} V=1
PATH_TO_HELP="%{_dracutmodulesdir}/95suse-xfs/dracut-fsck-help.txt"
sed -e "s|@@PATH_TO_HELP@@|$PATH_TO_HELP|" %{SOURCE3} > module-setup.sh
%install
export DIST_ROOT=%{buildroot}
make install
make install-dev
# Move libhandle to usr, libhandle.{a,la} are symlinks to usr/lib* already so
# remove them first.
rm %{buildroot}/%{_lib}/libhandle.a
rm %{buildroot}/%{_lib}/libhandle.la
mv %{buildroot}/%{_lib}/* %{buildroot}%{_libdir}
%find_lang %{name}
install -m 0755 -d %{buildroot}/%{_dracutmodulesdir}/95suse-xfs/
install -m 0755 module-setup.sh %{buildroot}/%{_dracutmodulesdir}/95suse-xfs/
install -m 0644 %{SOURCE4} %{buildroot}/%{_dracutmodulesdir}/95suse-xfs/
%if 0%{?suse_version} >= 1310
%post
%{?regenerate_initrd_post}
/sbin/ldconfig
%postun
%{?regenerate_initrd_post}
/sbin/ldconfig
%posttrans
%{?regenerate_initrd_posttrans}
%else
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%endif
%files -f %{name}.lang
%defattr(-,root,root,755)
#UsrMerge
/sbin/*
#EndUsrMerge
%{_sbindir}/*
# this is only used by xfs cmds, therefore no urgent need for a shlib package
%{_libdir}/libhandle.so.*
%doc %{_mandir}/man[58]/*
%doc %{_defaultdocdir}/%{name}
%dir %{_libexecdir}/dracut
%dir %{_libexecdir}/dracut/modules.d
%dir %{_dracutmodulesdir}/95suse-xfs/
%{_dracutmodulesdir}/95suse-xfs/dracut-fsck-help.txt
%{_dracutmodulesdir}/95suse-xfs/module-setup.sh
%files devel
%defattr(-,root,root,755)
%{_includedir}/xfs
%{_libdir}/*.so
%{_libdir}/*.a
%{_libdir}/*.la
%{_mandir}/man3/*
%changelog