X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=xfsprogs.spec;h=9ad3c80780b3eeeef82fef2b16fbe377539bb8fb;hb=727e5a6d658d1378c25cfcb2b50cab84f5db2255;hp=71e84184fcee87322ebb09ddf9cf6b5f1bb635d5;hpb=275db5b4606c2e3989f8f203eb1ce72859627744;p=packages%2Fxfsprogs.git diff --git a/xfsprogs.spec b/xfsprogs.spec index 71e8418..9ad3c80 100644 --- a/xfsprogs.spec +++ b/xfsprogs.spec @@ -2,25 +2,28 @@ # Conditional build: %bcond_without initrd # don't build initrd version %bcond_without dietlibc # link initrd version with static glibc instead of dietlibc +%bcond_without tcmalloc # don't use tcmalloc # Summary: Tools for the XFS filesystem Summary(pl.UTF-8): Narzędzia do systemu plików XFS Name: xfsprogs -Version: 3.0.1 -Release: 1 +Version: 3.1.7 +Release: 2 License: LGPL v2.1 (libhandle), GPL v2 (the rest) Group: Applications/System Source0: ftp://linux-xfs.sgi.com/projects/xfs/cmd_tars/%{name}-%{version}.tar.gz -# Source0-md5: d7f879a21692d4f7abc16a20479b0829 +# Source0-md5: 049cf9873794ea49d0bb3f12d45748a4 +Source1: xfs_lsprojid Patch0: %{name}-miscfix-v2.patch -Patch1: %{name}-install-sh.patch Patch2: %{name}-sharedlibs.patch Patch3: %{name}-pl.po-update.patch Patch4: %{name}-dynamic_exe.patch -Patch5: %{name}-LDFLAGS.patch -Patch6: %{name}-diet.patch -Patch7: %{name}-static-librt.patch -URL: http://oss.sgi.com/projects/xfs/ +Patch5: %{name}-diet.patch +Patch6: %{name}-repair-mem.patch +Patch7: %{name}-repair-nofutexhang.patch +Patch8: %{name}-repair-tcmalloc.patch +Patch9: %{name}-noquotasync.patch +URL: http://www.xfs.org/ BuildRequires: autoconf BuildRequires: automake BuildRequires: bash @@ -34,15 +37,32 @@ BuildRequires: libuuid-static %endif %endif BuildRequires: gettext-devel +BuildRequires: libblkid-devel +%{?with_tcmalloc:BuildRequires: libtcmalloc-devel} BuildRequires: libtool BuildRequires: libuuid-devel +BuildRequires: readline-devel +BuildRequires: rpm >= 4.4.9-56 BuildRequires: rpmbuild(macros) >= 1.402 +%{?with_tcmalloc:Requires: libtcmalloc >= 1.8.3-3} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%if "%{pld_release}" == "ac" +# libtool in ac doesn't do the reordering of args properly +%define filterout_ld -Wl,--as-needed +%endif + +# libxlog uses symbols from binary that links to libxlog +# libxcmd uses ("program") symbol from binary that links to libxcmd +%define skip_post_check_so libxlog.so.0.0.0 libxcmd.so.0.0.0 + %define _sbindir /sbin %define _bindir /usr/sbin %define _libdir /%{_lib} %define _libexecdir /usr/%{_lib} +# for some reason known only to rpm there must be "\\|" not "\|" here +%define dietarch %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/') +%define dietlibdir %{_prefix}/lib/dietlibc/lib-%{dietarch} %description A set of commands to use the XFS filesystem, including mkfs.xfs. @@ -109,16 +129,14 @@ Zbiór komend do użytku z systemem plików XFS, włączając w to mkfs.xfs %prep %setup -q %patch0 -p1 -%patch1 -p1 %patch2 -p1 -# currently obsolete until needed again -# %patch3 -p1 +%patch3 -p1 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch7 -p1 - -rm -f include/{builddefs,platform_defs}.h +%{?with_tcmalloc:%patch8 -p1} +%patch9 -p1 %build %{__aclocal} -I m4 @@ -137,14 +155,19 @@ sed -i -e 's|\(^LLDLIBS.*=.*\)|\1 -lcompat|' db/Makefile mkfs/Makefile %{__autoconf} %configure \ %{?with_dietlibc:CC="diet %{__cc} -static"} \ + --sbindir=%{_bindir} \ --disable-gettext \ --disable-readline \ DEBUG="%{?debug:-DDEBUG}%{!?debug:-DNDEBUG}" \ OPTIMIZER="%{rpmcflags} -Wno-deprecated-declarations -Os -D_BSD_SOURCE -D__USE_XOPEN_EXTENDED" -%{__make} -j1 include libxfs libxlog libxcmd libhandle libdisk +%{__make} -j1 include libxfs libxlog libxcmd libhandle libdisk \ + LIBUUID="%{dietlibdir}/libuuid.a" \ + V=1 %{__make} -j1 db growfs logprint mkfs mdrestore repair \ - LDFLAGS="%{rpmldflags} -all-static" + LDFLAGS="%{rpmldflags} -all-static" \ + LIBUUID="%{dietlibdir}/libuuid.a" \ + V=1 mkdir -p initrd mv -f db/xfs_db initrd/xfs_db @@ -167,15 +190,19 @@ sed -i -e 's|\(^LLDLIBS.*=.*\) -lcompat|\1|' db/Makefile mkfs/Makefile %{__autoconf} %configure \ + --sbindir=%{_bindir}\ --enable-gettext \ --enable-readline \ + --enable-blkid \ DEBUG="%{?debug:-DDEBUG}%{!?debug:-DNDEBUG}" \ OPTIMIZER="%{rpmcflags}" -%{__make} -j1 +%{__make} -j1 \ + V=1 %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT{%{_libexecdir},/etc} DIST_ROOT=$RPM_BUILD_ROOT DIST_INSTALL=$(pwd)/install.manifest @@ -187,10 +214,10 @@ export DIST_ROOT DIST_INSTALL DIST_INSTALL_DEV %{__make} install-dev \ DIST_MANIFEST="$DIST_INSTALL_DEV" +install %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/xfs_lsprojid + ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libhandle.so.*.*.*) \ $RPM_BUILD_ROOT%{_libexecdir}/libhandle.so -ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libdisk.so.*.*.*) \ - $RPM_BUILD_ROOT%{_libexecdir}/libdisk.so ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxcmd.so.*.*.*) \ $RPM_BUILD_ROOT%{_libexecdir}/libxcmd.so ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxfs.so.*.*.*) \ @@ -198,26 +225,28 @@ ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxfs.so.*.*.*) \ ln -sf %{_libdir}/$(basename $RPM_BUILD_ROOT%{_libdir}/libxlog.so.*.*.*) \ $RPM_BUILD_ROOT%{_libexecdir}/libxlog.so +mv $RPM_BUILD_ROOT%{_libdir}/lib*.la $RPM_BUILD_ROOT%{_libexecdir} +mv $RPM_BUILD_ROOT%{_libdir}/lib*.a $RPM_BUILD_ROOT%{_libexecdir} + %{__sed} -i -e "s|libdir='%{_libdir}'|libdir='%{_libexecdir}'|" \ - $RPM_BUILD_ROOT%{_libexecdir}/lib{disk,handle,xcmd,xfs,xlog}.la + $RPM_BUILD_ROOT%{_libexecdir}/lib{handle,xcmd,xfs,xlog}.la %{__sed} -i -e "s| %{_libdir}/libxfs.la | %{_libexecdir}/libxfs.la |" \ $RPM_BUILD_ROOT%{_libexecdir}/libxlog.la %if %{with initrd} install -d $RPM_BUILD_ROOT%{_libexecdir}/initrd -install initrd/* $RPM_BUILD_ROOT%{_libexecdir}/initrd/ +install initrd/* $RPM_BUILD_ROOT%{_libexecdir}/initrd %endif +echo "#10:/mnt/ftp/roman" >> $RPM_BUILD_ROOT/etc/projects +echo "#ftproman:10" >> $RPM_BUILD_ROOT/etc/projid + %find_lang %{name} -rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name} +%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name} # already in /usr -rm -f $RPM_BUILD_ROOT%{_libdir}/libdisk.{a,la,so} -rm -f $RPM_BUILD_ROOT%{_libdir}/libhandle.{a,la,so} -rm -f $RPM_BUILD_ROOT%{_libdir}/libxcmd.{a,la,so} -rm -f $RPM_BUILD_ROOT%{_libdir}/libxfs.{a,la,so} -rm -f $RPM_BUILD_ROOT%{_libdir}/libxlog.{a,la,so} +%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib{handle,xcmd,xfs,xlog}.so %clean rm -rf $RPM_BUILD_ROOT @@ -228,16 +257,16 @@ rm -rf $RPM_BUILD_ROOT %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) %{_sbindir}/fsck.xfs %attr(755,root,root) %{_sbindir}/mkfs.xfs %attr(755,root,root) %{_sbindir}/xfs_repair %attr(755,root,root) %{_bindir}/xfs_* -%attr(755,root,root) %{_libdir}/libdisk.so.*.* %attr(755,root,root) %{_libdir}/libhandle.so.*.* %attr(755,root,root) %{_libdir}/libxcmd.so.*.* %attr(755,root,root) %{_libdir}/libxfs.so.*.* %attr(755,root,root) %{_libdir}/libxlog.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libdisk.so.0 %attr(755,root,root) %ghost %{_libdir}/libhandle.so.1 %attr(755,root,root) %ghost %{_libdir}/libxcmd.so.0 %attr(755,root,root) %ghost %{_libdir}/libxfs.so.0 @@ -251,12 +280,10 @@ rm -rf $RPM_BUILD_ROOT %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libexecdir}/libdisk.so %attr(755,root,root) %{_libexecdir}/libhandle.so %attr(755,root,root) %{_libexecdir}/libxcmd.so %attr(755,root,root) %{_libexecdir}/libxfs.so %attr(755,root,root) %{_libexecdir}/libxlog.so -%{_libexecdir}/libdisk.la %{_libexecdir}/libhandle.la %{_libexecdir}/libxcmd.la %{_libexecdir}/libxfs.la @@ -267,7 +294,6 @@ rm -rf $RPM_BUILD_ROOT %files static %defattr(644,root,root,755) -%{_libexecdir}/libdisk.a %{_libexecdir}/libhandle.a %{_libexecdir}/libxcmd.a %{_libexecdir}/libxfs.a