X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=xfsprogs.spec;h=215a83e774cb9ea54471d7b0d342852354c54ea0;hb=e3be1a5;hp=523a7e8313d1cae67792e22c904194c38c2a5001;hpb=cda36928cfd2606ac33c184e06a33091c7909616;p=packages%2Fxfsprogs.git diff --git a/xfsprogs.spec b/xfsprogs.spec index 523a7e8..e6d16a8 100644 --- a/xfsprogs.spec +++ b/xfsprogs.spec @@ -1,33 +1,49 @@ # # Conditional build: -# _with_static - link statically with -luuid +%bcond_without debug_asserts # Summary: Tools for the XFS filesystem -Summary(pl): Narzêdzia do systemu plików XFS +Summary(pl.UTF-8): Narzędzia do systemu plików XFS Name: xfsprogs -Version: 2.5.6 +Version: 5.11.0 Release: 1 -License: GPL +License: LGPL v2.1 (libhandle), GPL v2 (the rest) Group: Applications/System -Source0: ftp://linux-xfs.sgi.com/projects/xfs/download/Release-1.3/cmd_tars/%{name}-%{version}.src.tar.gz -# Source0-md5: 4b21a904e5511bd97d87484ba403b120 +Source0: https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/%{name}-%{version}.tar.xz +# Source0-md5: 803bcddd983803b339acfb76064dfd84 +Source1: xfs_lsprojid Patch0: %{name}-miscfix-v2.patch -Patch1: %{name}-install-sh.patch -Patch2: %{name}-sharedlibs.patch -URL: http://oss.sgi.com/projects/xfs/ -BuildRequires: autoconf +Patch1: %{name}-pl.po-update.patch +# Patch1-md5: 1b41527cf19426d6059615c7d82b71e8 +URL: https://xfs.wiki.kernel.org/ +# for +BuildRequires: attr-devel +BuildRequires: autoconf >= 2.50 BuildRequires: automake BuildRequires: bash +BuildRequires: device-mapper-devel +BuildRequires: gettext-tools +BuildRequires: glibc-static +BuildRequires: inih-devel +BuildRequires: libblkid-devel +# without .la file so that -static-libtool-libs won't take libedit.a +BuildRequires: libedit-devel >= 3.1-1.20191231.1 +BuildRequires: libicu-devel BuildRequires: libtool -BuildRequires: e2fsprogs-devel -%{?_with_static:BuildRequires: e2fsprogs-static} +BuildRequires: libuuid-devel +BuildRequires: libuuid-static +BuildRequires: rpm >= 4.4.9-56 +BuildRequires: rpmbuild(macros) >= 1.402 +BuildRequires: sed >= 4.0 +BuildRequires: tar >= 1:1.22 +BuildRequires: xz +Obsoletes: xfsprogs-initrd BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -Obsoletes: libxfs1 -%define _sbindir /sbin -%define _bindir /usr/sbin -%define _libdir /lib -%define _libexecdir /usr/lib +%if "%{pld_release}" == "ac" +# libtool in ac doesn't do the reordering of args properly +%define filterout_ld -Wl,--as-needed +%endif %description A set of commands to use the XFS filesystem, including mkfs.xfs. @@ -42,119 +58,187 @@ scalability. This implementation is on-disk compatible with the IRIX version of XFS. -%description -l pl -Zbiór komend do u¿ytku z systemem plików XFS, w³±czaj±c w to mkfs.xfs. +%description -l pl.UTF-8 +Zbiór komend do użytku z systemem plików XFS, włączając w to mkfs.xfs. -XFS jest wysoko wydajnym systemem plików z kronik±, który oryginalnie -by³ u¿ywany na platformie SGI IRIX. Jest to w pe³ni wielow±tkowy, -obs³uguj±cy wielkie pliki oraz wielkie systemy, o rozszerzonych -atrybutach, zmiennych wielko¶ciach bloków, mocno wykorzystuj±cy -B-drzewa by uzyskaæ wysok± wydajno¶æ oraz skalowalno¶æ. +XFS jest wysoko wydajnym systemem plików z kroniką, który oryginalnie +był używany na platformie SGI IRIX. Jest to w pełni wielowątkowy, +obsługujący wielkie pliki oraz wielkie systemy, o rozszerzonych +atrybutach, zmiennych wielkościach bloków, mocno wykorzystujący +B-drzewa by uzyskać wysoką wydajność oraz skalowalność. + +%package scrub +Summary: xfs_scrub - XFS online check and repair feature (EXPERIMENTAL!) +Summary(pl.UTF-8): xfs_scrub - sprawdzanie i naprawianie zamontowanego systemu plików XFS (EKSPERYMENTALNE!) +Group: Applications/System +Requires: %{name} = %{version}-%{release} +Requires: systemd-units >= 38 + +%description scrub +xfs_scrub is an XFS online check and repair feature. + +WARNING: EXPERIMENTAL, use at your own risk! + +%description scrub -l pl.UTF-8 +xfs_scrub służy do sprawdzania i naprawiania zamontowanego systmeu +plików XFS w locie. + +UWAGA: EXPERIMENTALNE, użycie na własne ryzyko! %package devel Summary: Header files and libraries to develop XFS software -Summary(pl): Pliki nag³ówkowe i biblioteki +Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki Group: Development/Libraries -Requires: %{name} = %{version} -Obsoletes: libxfs1-devel +Requires: %{name} = %{version}-%{release} +Requires: libuuid-devel %description devel Header files and libraries to develop software which operates on XFS filesystems. -%description devel -l pl -Pliki nag³ówkowe i biblioteki potrzebne do rozwoju oprogramowania -operuj±cego na systemie plików XFS. +%description devel -l pl.UTF-8 +Pliki nagłówkowe i biblioteki potrzebne do rozwoju oprogramowania +operującego na systemie plików XFS. %package static Summary: Static XFS software libraries -Summary(pl): Biblioteki statyczne do XFS +Summary(pl.UTF-8): Biblioteki statyczne do XFS Group: Development/Libraries -Requires: %{name}-devel = %{version} +Requires: %{name}-devel = %{version}-%{release} %description static Static XFS software libraries. -%description static -l pl +%description static -l pl.UTF-8 Biblioteki statyczne do XFS. %prep -%setup -q +%setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 + +%{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' scrub/xfs_scrub_all.in tools/xfsbuflock.py %build -DEBUG="%{?debug:-DDEBUG}%{!?debug:-DNDEBUG}" -OPTIMIZER="%{rpmcflags}" -export DEBUG OPTIMIZER -rm -f aclocal.m4 %{__aclocal} -I m4 %{__autoconf} %configure \ - %{!?_with_static:--enable-shared-uuid=yes} \ - %{?_with_static:--disable-shared --disable-shared-uuid} - -%{__make} \ - %{?_with_static:LTLINK='$(LIBTOOL) --mode=link %{__cc} -all-static' LDFLAGS=-static} + DEBUG="%{?with_debug_asserts:-DDEBUG}%{!?with_debug_asserts:-DNDEBUG}" \ + OPTIMIZER="%{rpmcflags}" \ + --enable-blkid \ + --enable-editline \ + --enable-gettext \ + --enable-libicu \ + --disable-lto \ + --enable-scrub=yes + +%{__make} -j1 \ + V=1 %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT/etc/cron.d -DIST_ROOT="$RPM_BUILD_ROOT" -DIST_INSTALL=`pwd`/install.manifest -DIST_INSTALL_DEV=`pwd`/install-dev.manifest +DIST_ROOT=$RPM_BUILD_ROOT +DIST_INSTALL=$(pwd)/install.manifest +DIST_INSTALL_DEV=$(pwd)/install-dev.manifest export DIST_ROOT DIST_INSTALL DIST_INSTALL_DEV -%{?_with_static:sed -i -e 's/\.lai/.la/' include/buildmacros} %{__make} install \ DIST_MANIFEST="$DIST_INSTALL" %{__make} install-dev \ DIST_MANIFEST="$DIST_INSTALL_DEV" -for man in attr_list_by_handle.3 attr_multi_by_handle.3 \ - fd_to_handle.3 free_handle.3 fssetdm_by_handle.3 \ - handle_to_fshandle.3 open_by_handle.3 path_to_fshandle.3 \ - readlink_by_handle.3; do - rm -f $RPM_BUILD_ROOT%{_mandir}/man3/$man - echo ".so path_to_handle.3" \ - > $RPM_BUILD_ROOT%{_mandir}/man3/$man -done - -rm -f $RPM_BUILD_ROOT%{_mandir}/man8/xfs_info.8 -echo ".so xfs_growfs.8" > $RPM_BUILD_ROOT%{_mandir}/man8/xfs_info.8 - -ln -sf %{_libdir}/$(cd $RPM_BUILD_ROOT%{_libdir}; echo libhandle.so.*.*.*) \ - $RPM_BUILD_ROOT%{_libexecdir}/libhandle.so -ln -sf %{_libdir}/$(cd $RPM_BUILD_ROOT%{_libdir}; echo libdisk.so.*.*.*) \ - $RPM_BUILD_ROOT%{_libexecdir}/libdisk.so -ln -sf %{_libdir}/$(cd $RPM_BUILD_ROOT%{_libdir}; echo libxfs.so.*.*.*) \ - $RPM_BUILD_ROOT%{_libexecdir}/libxfs.so -ln -sf %{_libdir}/$(cd $RPM_BUILD_ROOT%{_libdir}; echo libxlog.so.*.*.*) \ - $RPM_BUILD_ROOT%{_libexecdir}/libxlog.so +install -p %{SOURCE1} $RPM_BUILD_ROOT%{_sbindir}/xfs_lsprojid + +# adjust symlink to point to actual library, not libhandle.so symlink, which we remove afterwards +ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libhandle.so.*.*.*) \ + $RPM_BUILD_ROOT%{_libdir}/libhandle.so +# adjust library path used at link time +%{__sed} -i -e "s|libdir='/%{_lib}'|libdir='%{_libdir}'|" \ + $RPM_BUILD_ROOT%{_libdir}/libhandle.la +# already in /usr +%{__rm} $RPM_BUILD_ROOT/%{_lib}/libhandle.{so,la,a} + +# install cron file +%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{name}/xfs_scrub_all.cron,/etc/cron.d/xfs_scrub_all} + +# (config file paths are specified in libfrog/projects.c) +echo "#10:/mnt/ftp/roman" >> $RPM_BUILD_ROOT/etc/projects +echo "#ftproman:10" >> $RPM_BUILD_ROOT/etc/projid + +%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name} + +%find_lang %{name} %clean rm -rf $RPM_BUILD_ROOT -%post -p /sbin/ldconfig +%post -p /sbin/ldconfig %postun -p /sbin/ldconfig -%files +%post scrub +%systemd_reload + +%files -f %{name}.lang +%defattr(644,root,root,755) +%doc README doc/{CHANGES,CREDITS} +%config(noreplace) %verify(not md5 mtime size) /etc/projects +%config(noreplace) %verify(not md5 mtime size) /etc/projid +%attr(755,root,root) /sbin/fsck.xfs +%attr(755,root,root) /sbin/mkfs.xfs +%attr(755,root,root) /sbin/xfs_repair +%attr(755,root,root) %{_sbindir}/xfs_* +%exclude %{_sbindir}/xfs_scrub* +%attr(755,root,root) /%{_lib}/libhandle.so.*.* +%attr(755,root,root) %ghost /%{_lib}/libhandle.so.1 +%dir %{_libdir}/%{name} +%attr(755,root,root) %{_libdir}/%{name}/xfs_scrub_fail +%{_mandir}/man5/projects.5* +%{_mandir}/man5/projid.5* +%{_mandir}/man5/xfs.5* +%{_mandir}/man8/fsck.xfs.8* +%{_mandir}/man8/mkfs.xfs.8* +%{_mandir}/man8/xfs_*.8* +%exclude %{_mandir}/man8/xfs_scrub*.8* + +%files scrub %defattr(644,root,root,755) -%doc doc/{CHANGES,CREDITS,README.*} -%attr(755,root,root) %{_sbindir}/* -%attr(755,root,root) %{_bindir}/* -%{!?_with_static:%attr(755,root,root) /lib/lib*.so.*.*} -%{_mandir}/man[185]/* +%attr(755,root,root) %{_sbindir}/xfs_scrub +%attr(755,root,root) %{_sbindir}/xfs_scrub_all +%{systemdunitdir}/xfs_scrub@.service +%{systemdunitdir}/xfs_scrub_all.service +%{systemdunitdir}/xfs_scrub_all.timer +%{systemdunitdir}/xfs_scrub_fail@.service +%config(noreplace) %verify(not md5 mtime size) /etc/cron.d/xfs_scrub_all +%{_mandir}/man8/xfs_scrub.8* +%{_mandir}/man8/xfs_scrub_all.8* %files devel %defattr(644,root,root,755) -%{_mandir}/man3/* -%{_includedir}/disk +%attr(755,root,root) %{_libdir}/libhandle.so +%{_libdir}/libhandle.la %{_includedir}/xfs -%{!?_with_static:%{_libexecdir}/*.la} -%attr(755,root,root) %{_libexecdir}/*.so +%{_mandir}/man2/ioctl_xfs_ag_geometry.2* +%{_mandir}/man2/ioctl_xfs_bulkstat.2* +%{_mandir}/man2/ioctl_xfs_fsbulkstat.2* +%{_mandir}/man2/ioctl_xfs_fscounts.2* +%{_mandir}/man2/ioctl_xfs_fsgeometry.2* +%{_mandir}/man2/ioctl_xfs_fsgetxattr.2* +%{_mandir}/man2/ioctl_xfs_fsgetxattra.2* +%{_mandir}/man2/ioctl_xfs_fsinumbers.2* +%{_mandir}/man2/ioctl_xfs_fssetxattr.2* +%{_mandir}/man2/ioctl_xfs_getbmap.2* +%{_mandir}/man2/ioctl_xfs_getbmapa.2* +%{_mandir}/man2/ioctl_xfs_getbmapx.2* +%{_mandir}/man2/ioctl_xfs_getresblks.2* +%{_mandir}/man2/ioctl_xfs_goingdown.2* +%{_mandir}/man2/ioctl_xfs_inumbers.2* +%{_mandir}/man2/ioctl_xfs_scrub_metadata.2* +%{_mandir}/man2/ioctl_xfs_setresblks.2* +%{_mandir}/man3/*handle.3* +%{_mandir}/man3/xfsctl.3* %files static %defattr(644,root,root,755) -%{_libexecdir}/*.a +%{_libdir}/libhandle.a