Accepting request 605498 from home:mcgrof:branches:filesystems
- Fix OpenSUSE Tumbleweed package build (bsc#1091300) due to the libhandle1 library shared object (so) name expectations, this is documented here: https://en.opensuse.org/openSUSE:Shared_library_packaging_policy - Move systemd check to use a macro, to make it clear when the check is used and for what purpose exactly. Perhaps this should be moved later into a generic OpenSUSE/SUSE macro as a generic check as I suspect tons of other rpms will likely need the same. - Address -Werror errors on old compilers, for the life of me I can't see how xfsprogs is at fault, so just disable -Werror on older compilers for now. In the future we can consider adding a work around for the compiler instead of disabling -Werror entirely, but for now this is the best I can come up with. - Drop make_xfs_scrub_interp_explicit.patch, this is now upstream - Update to v4.16.1 (using verbiage from xfsprogs/doc/CHANGES now): * fsck.xfs: remove bashism which may interfere with boot (Eric Sandeen) * platforms: warn of impending deprecation of irix, freebsd, darwin * mkfs.xfs : enable sparse inodes by default (Darrick Wong) * fsck.xfs: allow forced boot-time repairs using xfs_repair (Jan Tulak) * xfs_repair: new -e flag alters exit code for fixed errors (Jan Tulak) * xfs_repair: fix to allow zeroing of corrupt log (Xiao Yang) * xfs_repair: remove old dead code (Eric Sandeen) * xfs_io: fix operation time reporting (Dave Chinner) * xfs_io: add RWF_DSYNC support to pwrite (Dave Chinner) * xfs_io: support a basic extent swap command (Brian Foster) * xfs_scrub: Many updates, still experimental (Darrick Wong) * xfs_db: print transaction reservation type information * libxfs: framework to detect memory leaks (Eric Sandeen) * misc: Fix up new warnings from gcc 7.3 (Darrick Wong) * misc: enable link time optimization, if requested (Darrick Wong) * misc: enable retpolines across all xfsprogs utilities (Darrick Wong) OBS-URL: https://build.opensuse.org/request/show/605498 OBS-URL: https://build.opensuse.org/package/show/filesystems/xfsprogs?expand=0&rev=68
This commit is contained in:
parent
80e7d12f7f
commit
936923d48c
@ -1,10 +0,0 @@
|
||||
diff --git a/scrub/xfs_scrub_all.in b/scrub/xfs_scrub_all.in
|
||||
index fff05da3ea7a..80f07d5c8b02 100644
|
||||
--- a/scrub/xfs_scrub_all.in
|
||||
+++ b/scrub/xfs_scrub_all.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env python3
|
||||
+#!/usr/bin/python3
|
||||
|
||||
# Run online scrubbers in parallel, but avoid thrashing.
|
||||
#
|
@ -1,17 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2.0.14 (GNU/Linux)
|
||||
|
||||
iQIcBAABAgAGBQJalL8QAAoJECCuFpLhPd7gjgwQAJ7yXVQ3M/ZAIQ+Qi1y4qc1s
|
||||
mNz8qjxrrWLqkWa1Pl3bcpGv/VuULoTT7XUF66AL7S2O44xioQ2KrJ/NCLWQ/9Ai
|
||||
hI+kw0EIGzwZh1Crj86vUA9TeAV59qme8wWL3saqtvjnLfcVdwlPkXAviOwaEx+Z
|
||||
qYYkhyFUGQFqxgQxnK5iAqeNDDWb8Xuy0NVahTcWOQGKaHXnyUvRmyEcHlHzjN/b
|
||||
Sn0GCySSwtzu2rk0j0Wg3xqUcLUDPyt4kQ+6/temgJmiqkHVqkiku2YfLFJCTuKC
|
||||
QrnhPqSRTqkTLRnCyrjoFENdnSfEFE9AO4tUQwc5DJoTMsXk9X9cVHdRO4D7F7Tj
|
||||
55ENcm39DnH3g7xogsIE/pQD4VHgs68Ye65szERZ15JelOuGFTJj/mfayJz2b5Gb
|
||||
vXVa5EvQ8GVanDIo/Yz5adqG605cNJw0SH3Q/vPBPQ47tM3Xqx4QwLHVVnIybjJr
|
||||
du8Rm5GL+kiI9jel+INP2orlc3VnuWA81vQmkgr0OkcWuHTRfBYr6EA9GsYpkJ8q
|
||||
EbDu+kGW5nOANljXwdQ8cJI7fo5MhJkUf8+7XaFJMYpN99ny7TnmFbBUGGfeHGnH
|
||||
UWmGwOxIsnB+IAuUktnD40v8YdQtI6cWMO69dIjAH3ACj74gFOS91tzyOLng9IVZ
|
||||
9/TrDZb8EeVD6JROortO
|
||||
=LHS8
|
||||
-----END PGP SIGNATURE-----
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:27c36de9346a274143ad06c65b2fdbafd2806f3f37fa2c1235a08ed920d2bf3c
|
||||
size 1188964
|
17
xfsprogs-4.16.1.tar.sign
Normal file
17
xfsprogs-4.16.1.tar.sign
Normal file
@ -0,0 +1,17 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Version: GnuPG v2.0.14 (GNU/Linux)
|
||||
|
||||
iQIcBAABAgAGBQJa59q/AAoJECCuFpLhPd7gcwIQAJrN1TcTAHck+u/6z/CpaO/0
|
||||
bXqUn0CZqMCuZPBWiovIJyLeS6qBkDJ55VWFcc8zxNCjdzrNWV2xr34fYyF0vBXQ
|
||||
rGbuedzTiQDs+T3OQNKDVZyQWh0S9SbKZAeCxMIA4deGWckji8N75TMruYGagjuv
|
||||
YeesetmGal4xxaCieKjWbkRwQYATRszSXWGtKWnW4Q0iSESuZzIggfKbrFrUJUmu
|
||||
DMQwSj+R5ybRkj7b20tosztHl0nVoKsTF+pqp1fLDEYjZ0QX9bjKPpQpgvk5u7k/
|
||||
rfeZeToSoYXUl4qmGdeOQgpZeMLRKGdPXu7HY/gJpieqI5RN29wMVsC1iC13ojHl
|
||||
4jorpRBwVHAZYOlDHD21n1W5A5oohMXChy3LVwRzXx4NrALIV69mbpe9W9x/e4Px
|
||||
lpOrNxoqmCpge4uU67c8OcWHPXidur2l/kYkatWZ+6S1ICYR+rJNEyKkKAJDvRQh
|
||||
7JBdpmJceCMio2+2RI+/UHkRlkCaiZww8FQVMQWUrVxroN1nkoEX+rZwcttJ/zzj
|
||||
sN3LFE/GyAxxcBux4XhVgK9Z+BMou1RXCir4utoISnmg6d5dT3fwASAPZgdc7qIv
|
||||
TXOHNTM6UZlYQOvOsj+z6cBMdwPfBDHhpT9qHvIUQ2XFEAh6OmBFIgb1nPX+cJTl
|
||||
GSuqaPvYTsM9D785VAyg
|
||||
=sxJN
|
||||
-----END PGP SIGNATURE-----
|
3
xfsprogs-4.16.1.tar.xz
Normal file
3
xfsprogs-4.16.1.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3d5c2da46112b86cbd967fee43cea731d38a1b2aaf601b57674ed34e808652df
|
||||
size 1199632
|
@ -1,3 +1,37 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue May 8 22:35:08 UTC 2018 - lurodriguez@suse.com
|
||||
|
||||
- Fix OpenSUSE Tumbleweed package build (bsc#1091300) due to the libhandle1
|
||||
library shared object (so) name expectations, this is documented here:
|
||||
https://en.opensuse.org/openSUSE:Shared_library_packaging_policy
|
||||
- Move systemd check to use a macro, to make it clear when the check is
|
||||
used and for what purpose exactly. Perhaps this should be moved later
|
||||
into a generic OpenSUSE/SUSE macro as a generic check as I suspect tons
|
||||
of other rpms will likely need the same.
|
||||
- Address -Werror errors on old compilers, for the life of me I can't see
|
||||
how xfsprogs is at fault, so just disable -Werror on older compilers for
|
||||
now. In the future we can consider adding a work around for the compiler
|
||||
instead of disabling -Werror entirely, but for now this is the best I can
|
||||
come up with.
|
||||
- Drop make_xfs_scrub_interp_explicit.patch, this is now upstream
|
||||
- Update to v4.16.1 (using verbiage from xfsprogs/doc/CHANGES now):
|
||||
* fsck.xfs: remove bashism which may interfere with boot (Eric Sandeen)
|
||||
* platforms: warn of impending deprecation of irix, freebsd, darwin
|
||||
* mkfs.xfs : enable sparse inodes by default (Darrick Wong)
|
||||
* fsck.xfs: allow forced boot-time repairs using xfs_repair (Jan Tulak)
|
||||
* xfs_repair: new -e flag alters exit code for fixed errors (Jan Tulak)
|
||||
* xfs_repair: fix to allow zeroing of corrupt log (Xiao Yang)
|
||||
* xfs_repair: remove old dead code (Eric Sandeen)
|
||||
* xfs_io: fix operation time reporting (Dave Chinner)
|
||||
* xfs_io: add RWF_DSYNC support to pwrite (Dave Chinner)
|
||||
* xfs_io: support a basic extent swap command (Brian Foster)
|
||||
* xfs_scrub: Many updates, still experimental (Darrick Wong)
|
||||
* xfs_db: print transaction reservation type information
|
||||
* libxfs: framework to detect memory leaks (Eric Sandeen)
|
||||
* misc: Fix up new warnings from gcc 7.3 (Darrick Wong)
|
||||
* misc: enable link time optimization, if requested (Darrick Wong)
|
||||
* misc: enable retpolines across all xfsprogs utilities (Darrick Wong)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 19 20:46:25 UTC 2018 - lurodriguez@suse.com
|
||||
|
||||
|
141
xfsprogs.spec
141
xfsprogs.spec
@ -18,12 +18,37 @@
|
||||
|
||||
%define _dracutmodulesdir %{_libexecdir}/dracut/modules.d
|
||||
|
||||
# Note: requiring split_so_package does imply xfs_use_systemd, however,
|
||||
# needing xfs_use_systemd does not imply requiring split_so_package. These
|
||||
# need to be kept split for now.
|
||||
|
||||
# We're strict now about packages with shared objects, they must be in their
|
||||
# own package. This is not a requirement for older releases so do not do the
|
||||
# split there. For details see:
|
||||
# https://en.opensuse.org/openSUSE:Shared_library_packaging_policy
|
||||
%if 0%{?suse_version} >= 1315
|
||||
%define split_so_package 1
|
||||
%else
|
||||
%define split_so_package 0
|
||||
%endif
|
||||
|
||||
# Starting with OpenSUSE Leap 42.1 and SLE12-SP1 we get systemd
|
||||
%if 0%{?sle_version} >= 120100
|
||||
%define xfs_use_systemd 1
|
||||
%else
|
||||
%define xfs_use_systemd 0
|
||||
%endif
|
||||
|
||||
Name: xfsprogs
|
||||
Version: 4.15.1
|
||||
Version: 4.16.1
|
||||
Release: 0
|
||||
|
||||
Summary: Utilities for managing the XFS file system
|
||||
License: GPL-2.0-or-later
|
||||
Group: System/Filesystems
|
||||
%if 0%{?suse_version} > 1310
|
||||
%else
|
||||
%endif
|
||||
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
|
||||
@ -31,7 +56,6 @@ Source2: %{name}.keyring
|
||||
Source3: module-setup.sh.in
|
||||
Source4: dracut-fsck-help.txt
|
||||
Patch0: xfsprogs-docdir.diff
|
||||
Patch1: make_xfs_scrub_interp_explicit.patch
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: libblkid-devel
|
||||
@ -48,8 +72,7 @@ BuildRequires: suse-module-tools
|
||||
%endif
|
||||
BuildRequires: xz
|
||||
Requires(post): coreutils
|
||||
# Starting with OpenSUSE Leap 42.1 and SLE12-SP1 we get systemd
|
||||
%if 0%{?sle_version} >= 120100
|
||||
%if 0%{?xfs_use_systemd} == 1
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: pkgconfig(systemd)
|
||||
%endif
|
||||
@ -67,6 +90,20 @@ 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.
|
||||
|
||||
%if 0%{?split_so_package} == 1
|
||||
|
||||
%package -n libhandle1
|
||||
Summary: XFS Filesystem-specific Shared library
|
||||
Group: Development/Libraries/C and C++
|
||||
|
||||
%description -n libhandle1
|
||||
libhandle1 contains the shared libraries needed by xfsprogs
|
||||
to run xfsprogs programs.
|
||||
|
||||
libhandle1 is always needed by xfsprogs. If you want to use this
|
||||
library for your own new xfs tools install xfsprogs-devel.
|
||||
%endif
|
||||
|
||||
%package devel
|
||||
Summary: XFS Filesystem-specific Static Libraries and Headers
|
||||
Group: Development/Libraries/C and C++
|
||||
@ -85,7 +122,6 @@ want to install xfsprogs.
|
||||
%setup -q
|
||||
%if 0%{?suse_version}
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%endif
|
||||
|
||||
%build
|
||||
@ -95,9 +131,20 @@ autoconf
|
||||
export OPTIMIZER="-fPIC"
|
||||
export DEBUG=-DNDEBUG
|
||||
export LIBUUID=%{_libdir}/libuuid.a
|
||||
%if 0%{?sle_version} >= 120100
|
||||
%if 0%{?xfs_use_systemd} == 1
|
||||
export USE_SYSTEMD="--with-systemd-unit-dir=%{_unitdir}"
|
||||
%endif
|
||||
|
||||
# Some paranoid compiler errors appear with read() which *do not* appear
|
||||
# on newer compilers. With -Werror we'd fail building the packages so
|
||||
# we need to work around these compilers for now. I tried fixing
|
||||
# these concerns but in no way saw any issues with the warning issued,
|
||||
# as such I don't think this is a real code issue, but more a compiler
|
||||
# issue.
|
||||
%if 0%{?sle_version} < 150000
|
||||
export CFLAGS="$CFLAGS -Wno-error"
|
||||
%endif
|
||||
|
||||
%configure --enable-readline=yes $USE_SYSTEMD
|
||||
make %{?_smp_mflags} V=1
|
||||
|
||||
@ -118,6 +165,56 @@ 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/
|
||||
|
||||
# This seems more complex than it looks but deserves some notes otherwise
|
||||
# anyone trying to undertand this will really scratch their heads. First the
|
||||
# split_so_package implies that instead of doing the ldconfig's for the main
|
||||
# xfsprogs package we'd be doing it now for the libhandle1 package. But if a
|
||||
# system has systemd, the main xfsprogs package requires its own set of
|
||||
# pre/post/prerun/postrun hooks for the main xfsprogs for the service files.
|
||||
# For the systems that lack the requirement for libhandle1, we can expect them
|
||||
# to also not require systemd, and as such the only package in those system
|
||||
# requiring hooks is the main xfsprogs package which provides the libhandle so
|
||||
# file.
|
||||
%if 0%{?split_so_package} == 1
|
||||
|
||||
%if 0%{?suse_version} >= 1310
|
||||
|
||||
%if 0%{?xfs_use_systemd} == 1
|
||||
%pre
|
||||
%service_add_pre xfs_scrub@.service xfs_scrub_all.service xfs_scrub_all.timer xfs_scrub_fail@.service
|
||||
|
||||
%post
|
||||
%service_add_post xfs_scrub@.service xfs_scrub_all.service xfs_scrub_all.timer xfs_scrub_fail@.service
|
||||
|
||||
%preun
|
||||
%service_del_preun xfs_scrub@.service xfs_scrub_all.service xfs_scrub_all.timer xfs_scrub_fail@.service
|
||||
|
||||
%postun
|
||||
%service_del_postun xfs_scrub@.service xfs_scrub_all.service xfs_scrub_all.timer xfs_scrub_fail@.service
|
||||
%endif
|
||||
|
||||
%post -n libhandle1
|
||||
%{?regenerate_initrd_post}
|
||||
/sbin/ldconfig
|
||||
|
||||
%postun -n libhandle1
|
||||
%{?regenerate_initrd_post}
|
||||
/sbin/ldconfig
|
||||
|
||||
%posttrans -n libhandle1
|
||||
%{?regenerate_initrd_posttrans}
|
||||
|
||||
%else
|
||||
|
||||
%postun -n libhandle1
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%endif
|
||||
|
||||
%else
|
||||
# Below are systems that do not require the libhandle1 package. For these,
|
||||
# its as we had things before, and xfsprogs provides the so library.
|
||||
|
||||
%if 0%{?suse_version} >= 1310
|
||||
%post
|
||||
%{?regenerate_initrd_post}
|
||||
@ -129,10 +226,12 @@ install -m 0644 %{SOURCE4} %{buildroot}/%{_dracutmodulesdir}/95suse-xfs/
|
||||
|
||||
%posttrans
|
||||
%{?regenerate_initrd_posttrans}
|
||||
%else
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%postun -p /sbin/ldconfig
|
||||
%else
|
||||
%postun
|
||||
%post -p /sbin/ldconfig
|
||||
%endif
|
||||
|
||||
%endif
|
||||
|
||||
%files -f %{name}.lang
|
||||
@ -141,11 +240,12 @@ install -m 0644 %{SOURCE4} %{buildroot}/%{_dracutmodulesdir}/95suse-xfs/
|
||||
/sbin/*
|
||||
#EndUsrMerge
|
||||
%{_sbindir}/*
|
||||
# this is only used by xfs cmds, therefore no urgent need for a shlib package
|
||||
%if 0%{?split_so_package} != 1
|
||||
%{_libdir}/libhandle.so.*
|
||||
%endif
|
||||
%dir %{_libdir}/xfsprogs/
|
||||
%{_libdir}/xfsprogs/xfs_scrub_all.cron
|
||||
%if 0%{?sle_version} >= 120100
|
||||
%if 0%{?xfs_use_systemd} == 1
|
||||
%{_libdir}/xfsprogs/xfs_scrub_fail
|
||||
%{_unitdir}/xfs_scrub@.service
|
||||
%{_unitdir}/xfs_scrub_all.service
|
||||
@ -160,12 +260,27 @@ install -m 0644 %{SOURCE4} %{buildroot}/%{_dracutmodulesdir}/95suse-xfs/
|
||||
%{_dracutmodulesdir}/95suse-xfs/dracut-fsck-help.txt
|
||||
%{_dracutmodulesdir}/95suse-xfs/module-setup.sh
|
||||
|
||||
%files devel
|
||||
%if 0%{?split_so_package} == 1
|
||||
%files -n libhandle1
|
||||
%{_libdir}/libhandle.so.1.0.3
|
||||
# The .1 symlink belongs to the main library package as per the
|
||||
# documentation here:
|
||||
# https://en.opensuse.org/openSUSE:Shared_library_packaging_policy
|
||||
%{_libdir}/libhandle.so.1
|
||||
%endif
|
||||
|
||||
%files -n xfsprogs-devel
|
||||
%defattr(-,root,root,755)
|
||||
%{_includedir}/xfs
|
||||
%{_libdir}/*.so
|
||||
# The symlink single so file belongs in devel packages as per rpm lint
|
||||
# and documentation here:
|
||||
# https://en.opensuse.org/openSUSE:Shared_library_packaging_policy
|
||||
%{_libdir}/libhandle.so
|
||||
# Archives for static builds
|
||||
%{_libdir}/*.a
|
||||
# Description of the libraries for libtool
|
||||
%{_libdir}/*.la
|
||||
|
||||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
|
Loading…
Reference in New Issue
Block a user