New upstream v4.20.2

- Properly split out libraries into libs subpackages
- Slightly modernize the spec
This commit is contained in:
Neal Gompa 2019-03-10 09:37:49 -04:00
parent ee2286396a
commit facf7308e0
3 changed files with 93 additions and 15 deletions

1
.gitignore vendored
View File

@ -60,3 +60,4 @@
/btrfs-progs-v4.17.1.tar.xz
/btrfs-progs-v4.19.tar.xz
/btrfs-progs-v4.19.1.tar.xz
/btrfs-progs-v4.20.2.tar.xz

View File

@ -1,6 +1,9 @@
# Disable for now until version handling question is dealt with
%bcond_with python
Name: btrfs-progs
Version: 4.19.1
Release: 2%{?dist}
Version: 4.20.2
Release: 1%{?dist}
Summary: Userspace programs for btrfs
License: GPLv2
@ -12,7 +15,11 @@ BuildRequires: gcc, autoconf, automake
BuildRequires: e2fsprogs-devel, libuuid-devel, zlib-devel, libzstd-devel
BuildRequires: libacl-devel, libblkid-devel, lzo-devel
BuildRequires: asciidoc, xmlto
BuildRequires: systemd, python3-devel >= 3.4
BuildRequires: systemd
%if %{with python}
BuildRequires: python3-devel >= 3.4
%endif
%define _root_sbindir /sbin
@ -20,34 +27,87 @@ BuildRequires: systemd, python3-devel >= 3.4
The btrfs-progs package provides all the userspace programs needed to create,
check, modify and correct any inconsistencies in the btrfs filesystem.
%package -n libbtrfs
Summary: btrfs filesystem-specific runtime libraries
License: GPLv2
# This was not properly split out before
Conflicts: %{name} < 4.20.2
%description -n libbtrfs
libbtrfs contains the main library used by btrfs
filesystem-specific programs.
%package -n libbtrfsutil
Summary: btrfs filesystem-specific runtime utility libraries
License: LGPLv3
# This was not properly split out before
Conflicts: %{name}-devel < 4.20.2
%description -n libbtrfsutil
libbtrfsutil contains an alternative utility library used by btrfs
filesystem-specific programs.
%package devel
Summary: btrfs filesystem-specific libraries and headers
Requires: btrfs-progs = %{version}-%{release}
# libbtrfsutil is LGPLv3
License: GPLv2 and LGPLv3
Requires: %{name} = %{version}-%{release}
Requires: libbtrfs%{?_isa} = %{version}-%{release}
Requires: libbtrfsutil%{?_isa} = %{version}-%{release}
%description devel
btrfs-progs-devel contains the libraries and header files needed to
develop btrfs filesystem-specific programs.
It includes development files for two libraries:
- libbtrfs (GPLv2)
- libbtrfsutil (LGPLv3)
You should install btrfs-progs-devel if you want to develop
btrfs filesystem-specific programs.
%if %{with python}
%package -n python3-btrfsutil
Summary: Python 3 bindings for libbtrfsutil
License: LGPLv3
Requires: libbtrfsutil%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python3-btrfsutil}
%description -n python3-btrfsutil
python3-btrfsutil contains Python 3 bindings to the libbtrfsutil library,
which can be used for btrfs filesystem-specific programs in Python.
You should install python3-btrfsutil if you want to use or develop
btrfs filesystem-specific programs in Python.
%endif
%prep
%setup -q -n %{name}-v%{version}
%autosetup -n %{name}-v%{version}
%build
./autogen.sh
%configure CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing"
%configure CFLAGS="%{optflags} -fno-strict-aliasing" %{!?with_python:--disable-python}
make %{?_smp_mflags}
%if %{with python}
pushd libbtrfsutil/python
%py3_build
popd
%endif
%install
rm -rf $RPM_BUILD_ROOT
make mandir=%{_mandir} bindir=%{_sbindir} libdir=%{_libdir} incdir=%{_includedir} install DESTDIR=$RPM_BUILD_ROOT
make mandir=%{_mandir} bindir=%{_sbindir} libdir=%{_libdir} incdir=%{_includedir} install DESTDIR=%{buildroot}
# Nuke the static lib
rm -f $RPM_BUILD_ROOT/%{_libdir}/*.a
rm -f %{buildroot}/%{_libdir}/*.a
%if %{with python}
pushd libbtrfsutil/python
%py3_install
popd
%endif
%files
%doc COPYING
%{_libdir}/libbtrfs.so.0*
%license COPYING
%{_sbindir}/btrfsck
%{_sbindir}/fsck.btrfs
%{_sbindir}/mkfs.btrfs
@ -62,15 +122,32 @@ rm -f $RPM_BUILD_ROOT/%{_libdir}/*.a
%{_mandir}/man8/*.gz
%{_udevrulesdir}/64-btrfs-dm.rules
%files -n libbtrfs
%license COPYING
%{_libdir}/libbtrfs.so.0*
%files -n libbtrfsutil
%license libbtrfsutil/COPYING*
%{_libdir}/libbtrfsutil.so.1*
%files devel
%{_includedir}/*
%{_libdir}/libbtrfs.so
%{_libdir}/libbtrfsutil.so
%{_libdir}/libbtrfsutil.so
%{_libdir}/libbtrfsutil.so.1
%{_libdir}/libbtrfsutil.so.1.1.0
%if %{with python}
%files -n python3-btrfsutil
%license libbtrfsutil/COPYING*
%{python3_sitearch}/btrfsutil.*.so
%{python3_sitearch}/btrfsutil-*.egg-info
%endif
%changelog
* Sun Mar 10 2019 Neal Gompa <ngompa13@gmail.com> - 4.20.2-1
- New upstream release
- Properly split out libraries into libs subpackages
- Slightly modernize the spec
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.19.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

View File

@ -1 +1 @@
SHA512 (btrfs-progs-v4.19.1.tar.xz) = 834b0a16216437301637d44561fd265db167b7084de7d43d36802907645627d955421c1f5c46f0eb72d85f8b8d70905e5f6c0d539a34693704aa188085dfeec4
SHA512 (btrfs-progs-v4.20.2.tar.xz) = a542423589e7ee35b9a1791ef13e4c8ea4be56b33d6119a18d046233cfc04678c525cad545387aeb48e0dbd8249c5a501100fdee8f6d6882c906e0a737a1778a