]> git.pld-linux.org Git - packages/xfsprogs.git/blob - xfsprogs.spec
BR: pkgconfig systemd-devel
[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.19.0
9 Release:        3
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:  a55ac9550225b863c263852a4dcfd2fb
14 Source1:        xfs_lsprojid
15 Patch0:         %{name}-miscfix-v2.patch
16 Patch1:         %{name}-pl.po-update.patch
17 # Patch1-md5:   8e47349495b40cfbecda3be2bece0514
18 URL:            https://xfs.wiki.kernel.org/
19 # for <attr/attributes.h>
20 BuildRequires:  attr-devel
21 BuildRequires:  autoconf >= 2.69
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 < 3.1.11-2
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 Requires:       linux-libc-headers
97
98 %description devel
99 Header files and libraries to develop software which operates on XFS
100 filesystems.
101
102 %description devel -l pl.UTF-8
103 Pliki nagłówkowe i biblioteki potrzebne do rozwoju oprogramowania
104 operującego na systemie plików XFS.
105
106 %package static
107 Summary:        Static XFS software libraries
108 Summary(pl.UTF-8):      Biblioteki statyczne do XFS
109 Group:          Development/Libraries
110 Requires:       %{name}-devel = %{version}-%{release}
111
112 %description static
113 Static XFS software libraries.
114
115 %description static -l pl.UTF-8
116 Biblioteki statyczne do XFS.
117
118 %prep
119 %setup -q
120 %patch0 -p1
121 %patch1 -p1
122
123 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' scrub/xfs_scrub_all.in tools/xfsbuflock.py
124
125 %build
126 %{__aclocal} -I m4
127 %{__autoconf}
128 %configure \
129         DEBUG="%{?with_debug_asserts:-DDEBUG}%{!?with_debug_asserts:-DNDEBUG}" \
130         OPTIMIZER="%{rpmcflags}" \
131         --enable-blkid \
132         --enable-editline \
133         --enable-gettext \
134         --enable-libicu \
135         --disable-lto \
136         --enable-scrub=yes
137
138 %{__make} \
139         V=1
140
141 %install
142 rm -rf $RPM_BUILD_ROOT
143 install -d $RPM_BUILD_ROOT/etc/cron.d
144
145 DIST_ROOT=$RPM_BUILD_ROOT
146 DIST_INSTALL=$(pwd)/install.manifest
147 DIST_INSTALL_DEV=$(pwd)/install-dev.manifest
148 export DIST_ROOT DIST_INSTALL DIST_INSTALL_DEV
149
150 %{__make} install \
151         DIST_MANIFEST="$DIST_INSTALL"
152 %{__make} install-dev \
153         DIST_MANIFEST="$DIST_INSTALL_DEV"
154
155 install -p %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/xfs_lsprojid
156
157 # adjust symlink to point to actual library, not libhandle.so symlink, which we remove afterwards
158 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libhandle.so.*.*.*) \
159          $RPM_BUILD_ROOT%{_libdir}/libhandle.so
160 # adjust library path used at link time
161 %{__sed} -i -e "s|libdir='/%{_lib}'|libdir='%{_libdir}'|" \
162         $RPM_BUILD_ROOT%{_libdir}/libhandle.la
163 # already in /usr
164 %{__rm} $RPM_BUILD_ROOT/%{_lib}/libhandle.{so,la,a}
165
166 # install cron file
167 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{name}/xfs_scrub_all.cron,/etc/cron.d/xfs_scrub_all}
168
169 # (config file paths are specified in libfrog/projects.c)
170 echo "#10:/mnt/ftp/roman"  >> $RPM_BUILD_ROOT/etc/projects
171 echo "#ftproman:10" >> $RPM_BUILD_ROOT/etc/projid
172
173 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
174
175 %find_lang %{name}
176
177 %clean
178 rm -rf $RPM_BUILD_ROOT
179
180 %post   -p /sbin/ldconfig
181 %postun -p /sbin/ldconfig
182
183 %post scrub
184 %systemd_reload
185
186 %files -f %{name}.lang
187 %defattr(644,root,root,755)
188 %doc README doc/{CHANGES,CREDITS}
189 %config(noreplace) %verify(not md5 mtime size) /etc/projects
190 %config(noreplace) %verify(not md5 mtime size) /etc/projid
191 %attr(755,root,root) /sbin/fsck.xfs
192 %attr(755,root,root) /sbin/mkfs.xfs
193 %attr(755,root,root) /sbin/xfs_repair
194 %attr(755,root,root) %{_sbindir}/xfs_*
195 %exclude %{_sbindir}/xfs_scrub*
196 %attr(755,root,root) /%{_lib}/libhandle.so.*.*
197 %attr(755,root,root) %ghost /%{_lib}/libhandle.so.1
198 %{_datadir}/%{name}
199 %dir %{_libdir}/%{name}
200 %attr(755,root,root) %{_libdir}/%{name}/xfs_scrub_fail
201 %{_mandir}/man5/projects.5*
202 %{_mandir}/man5/projid.5*
203 %{_mandir}/man5/xfs.5*
204 %{_mandir}/man8/fsck.xfs.8*
205 %{_mandir}/man8/mkfs.xfs.8*
206 %{_mandir}/man8/xfs_*.8*
207 %exclude %{_mandir}/man8/xfs_scrub*.8*
208
209 %files scrub
210 %defattr(644,root,root,755)
211 %attr(755,root,root) %{_sbindir}/xfs_scrub
212 %attr(755,root,root) %{_sbindir}/xfs_scrub_all
213 %{systemdunitdir}/xfs_scrub@.service
214 %{systemdunitdir}/xfs_scrub_all.service
215 %{systemdunitdir}/xfs_scrub_all.timer
216 %{systemdunitdir}/xfs_scrub_fail@.service
217 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/xfs_scrub_all
218 %{_mandir}/man8/xfs_scrub.8*
219 %{_mandir}/man8/xfs_scrub_all.8*
220
221 %files devel
222 %defattr(644,root,root,755)
223 %attr(755,root,root) %{_libdir}/libhandle.so
224 %{_libdir}/libhandle.la
225 %{_includedir}/xfs
226 %{_mandir}/man2/ioctl_xfs_ag_geometry.2*
227 %{_mandir}/man2/ioctl_xfs_bulkstat.2*
228 %{_mandir}/man2/ioctl_xfs_fsbulkstat.2*
229 %{_mandir}/man2/ioctl_xfs_fscounts.2*
230 %{_mandir}/man2/ioctl_xfs_fsgeometry.2*
231 %{_mandir}/man2/ioctl_xfs_fsgetxattr.2*
232 %{_mandir}/man2/ioctl_xfs_fsgetxattra.2*
233 %{_mandir}/man2/ioctl_xfs_fsinumbers.2*
234 %{_mandir}/man2/ioctl_xfs_fssetxattr.2*
235 %{_mandir}/man2/ioctl_xfs_getbmap.2*
236 %{_mandir}/man2/ioctl_xfs_getbmapa.2*
237 %{_mandir}/man2/ioctl_xfs_getbmapx.2*
238 %{_mandir}/man2/ioctl_xfs_getresblks.2*
239 %{_mandir}/man2/ioctl_xfs_goingdown.2*
240 %{_mandir}/man2/ioctl_xfs_inumbers.2*
241 %{_mandir}/man2/ioctl_xfs_scrub_metadata.2*
242 %{_mandir}/man2/ioctl_xfs_setresblks.2*
243 %{_mandir}/man3/*handle.3*
244 %{_mandir}/man3/xfsctl.3*
245
246 %files static
247 %defattr(644,root,root,755)
248 %{_libdir}/libhandle.a
This page took 0.099228 seconds and 3 git commands to generate.