]> git.pld-linux.org Git - packages/xfsprogs.git/blame - xfsprogs.spec
add static_libs bcond
[packages/xfsprogs.git] / xfsprogs.spec
CommitLineData
bcc8f09e
JB
1#
2# Conditional build:
83f8c239 3%bcond_without debug_asserts
98f845f4 4%bcond_without scrub
4f04313e 5%bcond_without static_libs # static library
83f8c239 6#
80ded214 7Summary: Tools for the XFS filesystem
809af116 8Summary(pl.UTF-8): Narzędzia do systemu plików XFS
80ded214 9Name: xfsprogs
2b2b4b13 10Version: 6.7.0
b980bffa 11Release: 1
636af8bd 12License: LGPL v2.1 (libhandle), GPL v2 (the rest)
80ded214 13Group: Applications/System
d2d84c6a 14Source0: https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/%{name}-%{version}.tar.xz
2b2b4b13 15# Source0-md5: 0bde7bc8b3d8cbbd01064f756f67911f
a32e9a39 16Source1: xfs_lsprojid
bc92c0b0 17Patch0: %{name}-miscfix-v2.patch
50b504f9 18Patch1: %{name}-pl.po-update.patch
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
4f04313e 38BuildRequires: rpmbuild(macros) >= 1.527
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
50b504f9 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 133 OPTIMIZER="%{rpmcflags}" \
d2d84c6a 134 --enable-editline \
8745a86f 135 --enable-gettext \
d2d84c6a
JB
136 --enable-libicu \
137 --disable-lto \
330879b1 138 %{?with_scrub:--enable-scrub=yes} \
4f04313e 139 %{__enable_disable static_libs static} \
330879b1 140 --with-udev-rule-dir=/lib/udev/rules.d
00d1530a 141
2849b9f4 142%{__make} \
03dcab3f 143 V=1
80ded214
AM
144
145%install
146rm -rf $RPM_BUILD_ROOT
8745a86f 147install -d $RPM_BUILD_ROOT/etc/cron.d
df004a70 148
9656c3b9
ER
149DIST_ROOT=$RPM_BUILD_ROOT
150DIST_INSTALL=$(pwd)/install.manifest
151DIST_INSTALL_DEV=$(pwd)/install-dev.manifest
59aa30e8 152export DIST_ROOT DIST_INSTALL DIST_INSTALL_DEV
ff9c0a4e
JB
153
154%{__make} install \
155 DIST_MANIFEST="$DIST_INSTALL"
156%{__make} install-dev \
157 DIST_MANIFEST="$DIST_INSTALL_DEV"
80ded214 158
8745a86f 159install -p %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/xfs_lsprojid
cb190f67 160
8745a86f
JB
161# adjust symlink to point to actual library, not libhandle.so symlink, which we remove afterwards
162ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libhandle.so.*.*.*) \
163 $RPM_BUILD_ROOT%{_libdir}/libhandle.so
164# adjust library path used at link time
165%{__sed} -i -e "s|libdir='/%{_lib}'|libdir='%{_libdir}'|" \
166 $RPM_BUILD_ROOT%{_libdir}/libhandle.la
167# already in /usr
168%{__rm} $RPM_BUILD_ROOT/%{_lib}/libhandle.{so,la,a}
51a52578 169
8745a86f 170# install cron file
98f845f4 171%if %{with scrub}
8db21f86 172%{__mv} $RPM_BUILD_ROOT{%{_datadir}/%{name}/xfs_scrub_all.cron,/etc/cron.d/xfs_scrub_all}
98f845f4 173%else
8db21f86 174%{__rm} $RPM_BUILD_ROOT/%{_datadir}/%{name}/xfs_scrub_all.cron
98f845f4 175%endif
b756248b 176
8745a86f 177# (config file paths are specified in libfrog/projects.c)
6e781c10
PG
178echo "#10:/mnt/ftp/roman" >> $RPM_BUILD_ROOT/etc/projects
179echo "#ftproman:10" >> $RPM_BUILD_ROOT/etc/projid
180
03dcab3f 181%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
5e040522 182
8745a86f 183%find_lang %{name}
28e86fdc 184
80ded214
AM
185%clean
186rm -rf $RPM_BUILD_ROOT
187
3eb6b74a 188%post -p /sbin/ldconfig
c7083593
JR
189%postun -p /sbin/ldconfig
190
3eb6b74a
JB
191%post scrub
192%systemd_reload
193
01483858 194%files -f %{name}.lang
80ded214 195%defattr(644,root,root,755)
636af8bd 196%doc README doc/{CHANGES,CREDITS}
6e781c10
PG
197%config(noreplace) %verify(not md5 mtime size) /etc/projects
198%config(noreplace) %verify(not md5 mtime size) /etc/projid
8745a86f
JB
199%attr(755,root,root) /sbin/fsck.xfs
200%attr(755,root,root) /sbin/mkfs.xfs
8745a86f
JB
201%attr(755,root,root) /sbin/xfs_repair
202%attr(755,root,root) %{_sbindir}/xfs_*
98f845f4 203%if %{with scrub}
1467f630 204%exclude %{_sbindir}/xfs_scrub*
98f845f4 205%endif
8745a86f
JB
206%attr(755,root,root) /%{_lib}/libhandle.so.*.*
207%attr(755,root,root) %ghost /%{_lib}/libhandle.so.1
f1712211 208%{_datadir}/%{name}
8db21f86 209%dir %{_libexecdir}/%{name}
98f845f4 210%if %{with scrub}
8db21f86 211%attr(755,root,root) %{_libexecdir}/%{name}/xfs_scrub_fail
98f845f4 212%endif
275db5b4
AM
213%{_mandir}/man5/projects.5*
214%{_mandir}/man5/projid.5*
0c1d4bf9
JB
215%{_mandir}/man5/xfs.5*
216%{_mandir}/man8/fsck.xfs.8*
217%{_mandir}/man8/mkfs.xfs.8*
218%{_mandir}/man8/xfs_*.8*
98f845f4 219%if %{with scrub}
3eb6b74a 220%exclude %{_mandir}/man8/xfs_scrub*.8*
98f845f4 221%endif
3eb6b74a 222
98f845f4 223%if %{with scrub}
3eb6b74a
JB
224%files scrub
225%defattr(644,root,root,755)
1467f630
AM
226%attr(755,root,root) %{_sbindir}/xfs_scrub
227%attr(755,root,root) %{_sbindir}/xfs_scrub_all
330879b1 228/lib/udev/rules.d/64-xfs.rules
3eb6b74a
JB
229%{systemdunitdir}/xfs_scrub@.service
230%{systemdunitdir}/xfs_scrub_all.service
231%{systemdunitdir}/xfs_scrub_all.timer
232%{systemdunitdir}/xfs_scrub_fail@.service
233%config(noreplace) %verify(not md5 mtime size) /etc/cron.d/xfs_scrub_all
234%{_mandir}/man8/xfs_scrub.8*
235%{_mandir}/man8/xfs_scrub_all.8*
98f845f4 236%endif
80ded214
AM
237
238%files devel
239%defattr(644,root,root,755)
8745a86f
JB
240%attr(755,root,root) %{_libdir}/libhandle.so
241%{_libdir}/libhandle.la
353bc53d 242%{_includedir}/xfs
e7ecd7c8
AM
243%{_mandir}/man2/ioctl_xfs_ag_geometry.2*
244%{_mandir}/man2/ioctl_xfs_bulkstat.2*
851787e1
AM
245%{_mandir}/man2/ioctl_xfs_fsbulkstat.2*
246%{_mandir}/man2/ioctl_xfs_fscounts.2*
7caeff7f 247%{_mandir}/man2/ioctl_xfs_fsgeometry.2*
851787e1 248%{_mandir}/man2/ioctl_xfs_fsgetxattr.2*
7caeff7f 249%{_mandir}/man2/ioctl_xfs_fsgetxattra.2*
851787e1 250%{_mandir}/man2/ioctl_xfs_fsinumbers.2*
7caeff7f
JB
251%{_mandir}/man2/ioctl_xfs_fssetxattr.2*
252%{_mandir}/man2/ioctl_xfs_getbmap.2*
253%{_mandir}/man2/ioctl_xfs_getbmapa.2*
851787e1
AM
254%{_mandir}/man2/ioctl_xfs_getbmapx.2*
255%{_mandir}/man2/ioctl_xfs_getresblks.2*
256%{_mandir}/man2/ioctl_xfs_goingdown.2*
e7ecd7c8 257%{_mandir}/man2/ioctl_xfs_inumbers.2*
28e86fdc 258%{_mandir}/man2/ioctl_xfs_scrub_metadata.2*
7caeff7f 259%{_mandir}/man2/ioctl_xfs_setresblks.2*
0c1d4bf9
JB
260%{_mandir}/man3/*handle.3*
261%{_mandir}/man3/xfsctl.3*
1c0f6863 262
4f04313e 263%if %{with static_libs}
1c0f6863 264%files static
265%defattr(644,root,root,755)
8745a86f 266%{_libdir}/libhandle.a
4f04313e 267%endif
This page took 0.704618 seconds and 4 git commands to generate.