24434a14bd
Sync to a long-awaited upstream release. Version update. Only a handful of local packages that will be upstreamed later. This set of changes is not suitable for direct copy to currently released products because there are changes in mkfs defaults (12.x, 13.x, SLES). Fine for Factory. (forwarded request 208357 from dsterba) OBS-URL: https://build.opensuse.org/request/show/208360 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/btrfsprogs?expand=0&rev=36
196 lines
6.5 KiB
RPMSpec
196 lines
6.5 KiB
RPMSpec
#
|
|
# spec file for package btrfsprogs
|
|
#
|
|
# 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/
|
|
#
|
|
|
|
|
|
Name: btrfsprogs
|
|
Url: http://btrfs.wiki.kernel.org/index.php/Main_Page
|
|
Version: 3.12
|
|
Release: 0
|
|
%define tar_version v3.12
|
|
Summary: Utilities for the Btrfs filesystem
|
|
License: GPL-2.0
|
|
Group: System/Filesystems
|
|
#Git-Web: http://git.kernel.org/cgit/linux/kernel/git/mason/btrfs-progs.git
|
|
#Git-Clone: git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs
|
|
# git archive --format=tar --prefix=btrfs-progs-`git describe --tags --match "v*"`/ HEAD > %D/btrfs-progs-`git describe --tags --match "v*"`.tar
|
|
Source: btrfs-progs-%{tar_version}.tar.bz2
|
|
Source1: boot-btrfs.sh
|
|
Source4: setup-btrfs.sh
|
|
|
|
Patch162: 0162-btrfs-progs-fix-loop-device-mount-checks.patch
|
|
Patch163: 0163-btrfs-progs-fsck-fix-segfault.patch
|
|
Patch164: 0164-btrfs-progs-convert-set-label-or-copy-from-origin.patch
|
|
Patch165: 0165-Revert-btrfs-progs-update-options-in-find-root.c.patch
|
|
Patch166: 0166-Btrfs-progs-add-some-verbose-output-to-find-root.patch
|
|
Patch167: 0167-Btrfs-progs-make-find_and_setup_root-return-an-error.patch
|
|
Patch168: 0168-Btrfs-progs-don-t-bug-out-if-we-can-t-find-the-last-.patch
|
|
Patch169: 0169-btrfs-progs-Check-metadata-mirrors-in-find-root.patch
|
|
Patch170: 0170-btrfs-progs-In-find-root-dump-bytenr-for-every-slot.patch
|
|
|
|
Patch1000: local-version-override.patch
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
BuildRequires: libacl-devel
|
|
BuildRequires: libattr-devel
|
|
BuildRequires: libblkid-devel
|
|
BuildRequires: libext2fs-devel
|
|
BuildRequires: libuuid-devel
|
|
BuildRequires: lzo-devel
|
|
BuildRequires: udev
|
|
BuildRequires: zlib-devel
|
|
# for /bin/true
|
|
Requires: coreutils
|
|
Supplements: filesystem(btrfs)
|
|
|
|
%description
|
|
Utilities needed to create and maintain btrfs file systems under Linux.
|
|
|
|
%package -n libbtrfs0
|
|
Summary: Library for interacting with Btrfs
|
|
Group: System/Libraries
|
|
|
|
%description -n libbtrfs0
|
|
This package contains the libbtrfs.so shared library needed for some
|
|
applications to interface with btrfs.
|
|
|
|
%package -n libbtrfs-devel
|
|
Summary: Include Files and Libraries for developing with Btrfs
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%description -n libbtrfs-devel
|
|
This package contains the libraries and headers files for developers to
|
|
build applications to interface with btrfs.
|
|
|
|
%prep
|
|
%setup -q -n btrfs-progs-%{tar_version}
|
|
%patch162 -p1
|
|
%patch163 -p1
|
|
%patch164 -p1
|
|
%patch165 -p1
|
|
%patch166 -p1
|
|
%patch167 -p1
|
|
%patch168 -p1
|
|
%patch169 -p1
|
|
%patch170 -p1
|
|
%patch1000 -p1
|
|
|
|
%build
|
|
make %{?_smp_mflags} CFLAGS="%{optflags}" all btrfs-convert \
|
|
btrfs-zero-log btrfs-select-super btrfs-image btrfstune \
|
|
btrfs-find-root
|
|
|
|
%install
|
|
make install DESTDIR=${RPM_BUILD_ROOT} prefix=%{_prefix} bindir=%{_sbindir} mandir=%{_mandir} libdir=%{_libdir}
|
|
install -m 0755 -d ${RPM_BUILD_ROOT}/%{_sbindir}
|
|
install -m 0755 -d ${RPM_BUILD_ROOT}/%{_bindir}
|
|
# move some utilities out of /usr/sbin
|
|
mv ${RPM_BUILD_ROOT}/%{_sbindir}/btrfs-map-logical ${RPM_BUILD_ROOT}/%{_bindir}
|
|
# mkinitrd rescue utilities
|
|
install -m 0755 btrfs-zero-log ${RPM_BUILD_ROOT}/%{_sbindir}
|
|
install -m 0755 btrfs-select-super ${RPM_BUILD_ROOT}/%{_sbindir}
|
|
install -m 0755 btrfs-image ${RPM_BUILD_ROOT}/%{_sbindir}
|
|
install -m 0755 btrfstune ${RPM_BUILD_ROOT}/%{_sbindir}
|
|
install -m 0755 btrfs-find-root ${RPM_BUILD_ROOT}/%{_sbindir}
|
|
#UsrMerge
|
|
install -m 0755 -d ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs-zero-log ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs-convert ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs-select-super ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs-image ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfstune ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfsck ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs-find-root ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs-debug-tree ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/btrfs-show-super ${RPM_BUILD_ROOT}/sbin
|
|
ln -s %{_sbindir}/mkfs.btrfs ${RPM_BUILD_ROOT}/sbin
|
|
#EndUsrMerge
|
|
# command line options are not compatible (bnc#599224)
|
|
echo -e '#!/bin/sh\nexit 0' > ${RPM_BUILD_ROOT}/%{_sbindir}/fsck.btrfs
|
|
chmod +x ${RPM_BUILD_ROOT}/%{_sbindir}/fsck.btrfs
|
|
#UsrMerge
|
|
ln -s %{_sbindir}/fsck.btrfs ${RPM_BUILD_ROOT}/sbin
|
|
#EndUsrMerge
|
|
install -d -m0755 ${RPM_BUILD_ROOT}/lib/mkinitrd/scripts/
|
|
install -m 0755 %{S:1} ${RPM_BUILD_ROOT}/lib/mkinitrd/scripts/
|
|
install -m 0755 %{S:4} ${RPM_BUILD_ROOT}/lib/mkinitrd/scripts/
|
|
rm -f ${RPM_BUILD_ROOT}/%{_libdir}/*.la
|
|
# don't install .a for now
|
|
rm -f ${RPM_BUILD_ROOT}/%{_libdir}/*.a
|
|
|
|
%post -n libbtrfs0 -p /sbin/ldconfig
|
|
|
|
%postun -n libbtrfs0 -p /sbin/ldconfig
|
|
|
|
%files
|
|
%defattr(-, root, root)
|
|
/sbin/fsck.btrfs
|
|
# mkinitrd utils
|
|
#UsrMerge
|
|
/sbin/btrfs
|
|
/sbin/btrfs-zero-log
|
|
/sbin/btrfs-convert
|
|
/sbin/btrfs-select-super
|
|
/sbin/btrfs-image
|
|
/sbin/btrfstune
|
|
/sbin/btrfsck
|
|
/sbin/btrfs-find-root
|
|
/sbin/mkfs.btrfs
|
|
/sbin/btrfs-debug-tree
|
|
/sbin/btrfs-show-super
|
|
#EndUsrMerge
|
|
%{_sbindir}/btrfs
|
|
%{_sbindir}/btrfs-zero-log
|
|
%{_sbindir}/btrfs-convert
|
|
%{_sbindir}/btrfs-select-super
|
|
%{_sbindir}/btrfs-image
|
|
%{_sbindir}/btrfstune
|
|
%{_sbindir}/btrfsck
|
|
%{_sbindir}/btrfs-find-root
|
|
%{_sbindir}/fsck.btrfs
|
|
%{_sbindir}/mkfs.btrfs
|
|
%{_sbindir}/btrfs-debug-tree
|
|
%{_sbindir}/btrfs-show-super
|
|
/lib/mkinitrd/scripts/boot-btrfs.sh
|
|
/lib/mkinitrd/scripts/setup-btrfs.sh
|
|
# other
|
|
/usr/bin/btrfs-map-logical
|
|
%_mandir/man8/btrfs-image.8.gz
|
|
%_mandir/man8/btrfsck.8.gz
|
|
%_mandir/man8/mkfs.btrfs.8.gz
|
|
%_mandir/man8/btrfs.8.gz
|
|
%_mandir/man8/btrfs-convert.8.gz
|
|
%_mandir/man8/btrfs-debug-tree.8.gz
|
|
%_mandir/man8/btrfs-find-root.8.gz
|
|
%_mandir/man8/btrfs-map-logical.8.gz
|
|
%_mandir/man8/btrfs-show-super.8.gz
|
|
%_mandir/man8/btrfs-zero-log.8.gz
|
|
%_mandir/man8/btrfstune.8.gz
|
|
|
|
%files -n libbtrfs0
|
|
%defattr(-, root, root)
|
|
%{_libdir}/libbtrfs.so.*
|
|
|
|
%files -n libbtrfs-devel
|
|
%defattr(-, root, root)
|
|
%dir %{_includedir}/btrfs
|
|
%{_includedir}/btrfs/*
|
|
%{_libdir}/libbtrfs.so
|
|
|
|
%changelog
|