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