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