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