Up to 5.14.2.
[packages/xfsprogs.git] / xfsprogs.spec
CommitLineData
bcc8f09e
JB
1#
2# Conditional build:
83f8c239
AM
3%bcond_without debug_asserts
4#
80ded214 5Summary: Tools for the XFS filesystem
809af116 6Summary(pl.UTF-8): Narzędzia do systemu plików XFS
80ded214 7Name: xfsprogs
5ce44843 8Version: 5.14.2
34474d6a 9Release: 1
636af8bd 10License: LGPL v2.1 (libhandle), GPL v2 (the rest)
80ded214 11Group: Applications/System
d2d84c6a 12Source0: https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/%{name}-%{version}.tar.xz
5ce44843 13# Source0-md5: 597e7067b8aa24d440bc87c29e987377
a32e9a39 14Source1: xfs_lsprojid
bc92c0b0 15Patch0: %{name}-miscfix-v2.patch
8e06f9de 16Patch1: %{name}-pl.po-update.patch
21b95c60 17# Patch1-md5: 5996ff94e993eb0f956376bffce8d77d
964bc873 18URL: https://xfs.wiki.kernel.org/
058705df
JB
19# for <attr/attributes.h>
20BuildRequires: attr-devel
1faeb583 21BuildRequires: autoconf >= 2.50
1c0f6863 22BuildRequires: automake
cb58e4a3 23BuildRequires: bash
1467f630 24BuildRequires: device-mapper-devel
7fb2d2e7 25BuildRequires: gettext-tools
7f3b3fd0 26BuildRequires: glibc-static
4cf17b4d 27BuildRequires: inih-devel
51a52578 28BuildRequires: libblkid-devel
d2d84c6a
JB
29# without .la file so that -static-libtool-libs won't take libedit.a
30BuildRequires: libedit-devel >= 3.1-1.20191231.1
1467f630 31BuildRequires: libicu-devel
92a53cbb 32BuildRequires: libtool
a5769371 33BuildRequires: libuuid-devel
7f3b3fd0 34BuildRequires: libuuid-static
dec839eb 35BuildRequires: rpm >= 4.4.9-56
9656c3b9 36BuildRequires: rpmbuild(macros) >= 1.402
2849b9f4
AG
37BuildRequires: userspace-rcu-devel
38BuildRequires: userspace-rcu-static
3eb6b74a 39BuildRequires: sed >= 4.0
d2d84c6a
JB
40BuildRequires: tar >= 1:1.22
41BuildRequires: xz
7c029ef7 42Obsoletes: xfsprogs-initrd
c826f244 43BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80ded214 44
dec839eb
ER
45%if "%{pld_release}" == "ac"
46# libtool in ac doesn't do the reordering of args properly
47%define filterout_ld -Wl,--as-needed
48%endif
49
80ded214
AM
50%description
51A set of commands to use the XFS filesystem, including mkfs.xfs.
52
53XFS is a high performance journaling filesystem which originated on
54the SGI IRIX platform. It is completely multi-threaded, can support
55large files and large filesystems, extended attributes, variable block
56sizes, is extent based, and makes extensive use of Btrees
57(directories, extents, free space) to aid both performance and
58scalability.
59
60This implementation is on-disk compatible with the IRIX version of
61XFS.
62
ddc220a9
JR
63%description -l pl.UTF-8
64Zbiór komend do użytku z systemem plików XFS, włączając w to mkfs.xfs.
80ded214 65
ddc220a9
JR
66XFS jest wysoko wydajnym systemem plików z kroniką, który oryginalnie
67był używany na platformie SGI IRIX. Jest to w pełni wielowątkowy,
68obsługujący wielkie pliki oraz wielkie systemy, o rozszerzonych
69atrybutach, zmiennych wielkościach bloków, mocno wykorzystujący
70B-drzewa by uzyskać wysoką wydajność oraz skalowalność.
80ded214 71
3eb6b74a
JB
72%package scrub
73Summary: xfs_scrub - XFS online check and repair feature (EXPERIMENTAL!)
74Summary(pl.UTF-8): xfs_scrub - sprawdzanie i naprawianie zamontowanego systemu plików XFS (EKSPERYMENTALNE!)
75Group: Applications/System
76Requires: %{name} = %{version}-%{release}
77Requires: systemd-units >= 38
78
79%description scrub
80xfs_scrub is an XFS online check and repair feature.
81
82WARNING: EXPERIMENTAL, use at your own risk!
83
84%description scrub -l pl.UTF-8
85xfs_scrub służy do sprawdzania i naprawiania zamontowanego systmeu
86plików XFS w locie.
87
88UWAGA: EXPERIMENTALNE, użycie na własne ryzyko!
89
80ded214
AM
90%package devel
91Summary: Header files and libraries to develop XFS software
809af116 92Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki
80ded214 93Group: Development/Libraries
8b4647b2 94Requires: %{name} = %{version}-%{release}
2528905a 95Requires: libuuid-devel
80ded214
AM
96
97%description devel
98Header files and libraries to develop software which operates on XFS
99filesystems.
100
ddc220a9
JR
101%description devel -l pl.UTF-8
102Pliki nagłówkowe i biblioteki potrzebne do rozwoju oprogramowania
103operującego na systemie plików XFS.
80ded214 104
1c0f6863 105%package static
106Summary: Static XFS software libraries
809af116 107Summary(pl.UTF-8): Biblioteki statyczne do XFS
1c0f6863 108Group: Development/Libraries
8b4647b2 109Requires: %{name}-devel = %{version}-%{release}
1c0f6863 110
111%description static
112Static XFS software libraries.
113
ddc220a9 114%description static -l pl.UTF-8
1c0f6863 115Biblioteki statyczne do XFS.
116
80ded214 117%prep
600886d5 118%setup -q
80ded214 119%patch0 -p1
3acabec5 120%patch1 -p1
4ede93fd 121
3eb6b74a
JB
122%{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' scrub/xfs_scrub_all.in tools/xfsbuflock.py
123
80ded214 124%build
ff9c0a4e 125%{__aclocal} -I m4
551b0d1f 126%{__autoconf}
1c0f6863 127%configure \
83f8c239 128 DEBUG="%{?with_debug_asserts:-DDEBUG}%{!?with_debug_asserts:-DNDEBUG}" \
8745a86f
JB
129 OPTIMIZER="%{rpmcflags}" \
130 --enable-blkid \
d2d84c6a 131 --enable-editline \
8745a86f 132 --enable-gettext \
d2d84c6a
JB
133 --enable-libicu \
134 --disable-lto \
1467f630 135 --enable-scrub=yes
00d1530a 136
2849b9f4 137%{__make} \
03dcab3f 138 V=1
80ded214
AM
139
140%install
141rm -rf $RPM_BUILD_ROOT
8745a86f 142install -d $RPM_BUILD_ROOT/etc/cron.d
df004a70 143
9656c3b9
ER
144DIST_ROOT=$RPM_BUILD_ROOT
145DIST_INSTALL=$(pwd)/install.manifest
146DIST_INSTALL_DEV=$(pwd)/install-dev.manifest
59aa30e8 147export DIST_ROOT DIST_INSTALL DIST_INSTALL_DEV
ff9c0a4e
JB
148
149%{__make} install \
150 DIST_MANIFEST="$DIST_INSTALL"
151%{__make} install-dev \
152 DIST_MANIFEST="$DIST_INSTALL_DEV"
80ded214 153
8745a86f 154install -p %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/xfs_lsprojid
cb190f67 155
8745a86f
JB
156# adjust symlink to point to actual library, not libhandle.so symlink, which we remove afterwards
157ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libhandle.so.*.*.*) \
158 $RPM_BUILD_ROOT%{_libdir}/libhandle.so
159# adjust library path used at link time
160%{__sed} -i -e "s|libdir='/%{_lib}'|libdir='%{_libdir}'|" \
161 $RPM_BUILD_ROOT%{_libdir}/libhandle.la
162# already in /usr
163%{__rm} $RPM_BUILD_ROOT/%{_lib}/libhandle.{so,la,a}
51a52578 164
8745a86f
JB
165# install cron file
166%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{name}/xfs_scrub_all.cron,/etc/cron.d/xfs_scrub_all}
b756248b 167
8745a86f 168# (config file paths are specified in libfrog/projects.c)
6e781c10
PG
169echo "#10:/mnt/ftp/roman" >> $RPM_BUILD_ROOT/etc/projects
170echo "#ftproman:10" >> $RPM_BUILD_ROOT/etc/projid
171
03dcab3f 172%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
5e040522 173
8745a86f 174%find_lang %{name}
28e86fdc 175
80ded214
AM
176%clean
177rm -rf $RPM_BUILD_ROOT
178
3eb6b74a 179%post -p /sbin/ldconfig
c7083593
JR
180%postun -p /sbin/ldconfig
181
3eb6b74a
JB
182%post scrub
183%systemd_reload
184
01483858 185%files -f %{name}.lang
80ded214 186%defattr(644,root,root,755)
636af8bd 187%doc README doc/{CHANGES,CREDITS}
6e781c10
PG
188%config(noreplace) %verify(not md5 mtime size) /etc/projects
189%config(noreplace) %verify(not md5 mtime size) /etc/projid
8745a86f
JB
190%attr(755,root,root) /sbin/fsck.xfs
191%attr(755,root,root) /sbin/mkfs.xfs
8745a86f
JB
192%attr(755,root,root) /sbin/xfs_repair
193%attr(755,root,root) %{_sbindir}/xfs_*
1467f630 194%exclude %{_sbindir}/xfs_scrub*
8745a86f
JB
195%attr(755,root,root) /%{_lib}/libhandle.so.*.*
196%attr(755,root,root) %ghost /%{_lib}/libhandle.so.1
28e86fdc
AM
197%dir %{_libdir}/%{name}
198%attr(755,root,root) %{_libdir}/%{name}/xfs_scrub_fail
275db5b4
AM
199%{_mandir}/man5/projects.5*
200%{_mandir}/man5/projid.5*
0c1d4bf9
JB
201%{_mandir}/man5/xfs.5*
202%{_mandir}/man8/fsck.xfs.8*
203%{_mandir}/man8/mkfs.xfs.8*
204%{_mandir}/man8/xfs_*.8*
3eb6b74a
JB
205%exclude %{_mandir}/man8/xfs_scrub*.8*
206
207%files scrub
208%defattr(644,root,root,755)
1467f630
AM
209%attr(755,root,root) %{_sbindir}/xfs_scrub
210%attr(755,root,root) %{_sbindir}/xfs_scrub_all
3eb6b74a
JB
211%{systemdunitdir}/xfs_scrub@.service
212%{systemdunitdir}/xfs_scrub_all.service
213%{systemdunitdir}/xfs_scrub_all.timer
214%{systemdunitdir}/xfs_scrub_fail@.service
215%config(noreplace) %verify(not md5 mtime size) /etc/cron.d/xfs_scrub_all
216%{_mandir}/man8/xfs_scrub.8*
217%{_mandir}/man8/xfs_scrub_all.8*
80ded214
AM
218
219%files devel
220%defattr(644,root,root,755)
8745a86f
JB
221%attr(755,root,root) %{_libdir}/libhandle.so
222%{_libdir}/libhandle.la
353bc53d 223%{_includedir}/xfs
e7ecd7c8
AM
224%{_mandir}/man2/ioctl_xfs_ag_geometry.2*
225%{_mandir}/man2/ioctl_xfs_bulkstat.2*
851787e1
AM
226%{_mandir}/man2/ioctl_xfs_fsbulkstat.2*
227%{_mandir}/man2/ioctl_xfs_fscounts.2*
7caeff7f 228%{_mandir}/man2/ioctl_xfs_fsgeometry.2*
851787e1 229%{_mandir}/man2/ioctl_xfs_fsgetxattr.2*
7caeff7f 230%{_mandir}/man2/ioctl_xfs_fsgetxattra.2*
851787e1 231%{_mandir}/man2/ioctl_xfs_fsinumbers.2*
7caeff7f
JB
232%{_mandir}/man2/ioctl_xfs_fssetxattr.2*
233%{_mandir}/man2/ioctl_xfs_getbmap.2*
234%{_mandir}/man2/ioctl_xfs_getbmapa.2*
851787e1
AM
235%{_mandir}/man2/ioctl_xfs_getbmapx.2*
236%{_mandir}/man2/ioctl_xfs_getresblks.2*
237%{_mandir}/man2/ioctl_xfs_goingdown.2*
e7ecd7c8 238%{_mandir}/man2/ioctl_xfs_inumbers.2*
28e86fdc 239%{_mandir}/man2/ioctl_xfs_scrub_metadata.2*
7caeff7f 240%{_mandir}/man2/ioctl_xfs_setresblks.2*
0c1d4bf9
JB
241%{_mandir}/man3/*handle.3*
242%{_mandir}/man3/xfsctl.3*
1c0f6863 243
244%files static
245%defattr(644,root,root,755)
8745a86f 246%{_libdir}/libhandle.a
This page took 0.192597 seconds and 4 git commands to generate.