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