# # spec file for package xfsprogs (Version 2.8.11_1) # # Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine # package are under the same license as the package itself. # # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: xfsprogs BuildRequires: e2fsprogs-devel Version: 2.8.11_1 Release: 4 %define ver 2.8.11-1 Conflicts: xfsdump < 2.0.0 Autoreqprov: on Group: System/Filesystems License: GNU General Public License (GPL) - all versions URL: http://oss.sgi.com/projects/xfs/ Summary: Utilities for managing the XFS file system Source0: %{name}_%{ver}.tar.bz2 Source1: fsck.xfs Patch0: %{name}-%{ver}-docdir.diff Patch1: %{name}-%{ver}-uninitialized.diff Patch2: %{name}-%{ver}-no_la_in_root.diff Patch6: %{name}-%{ver}-ppc64.diff Patch7: %{name}-%{ver}-man.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build %description A set of commands to use the XFS file system, including mkfs.xfs. XFS is a high performance journaling file system which originated on the SGI IRIX platform. It is completely multithreaded. It can support large files and large file systems, extended attributes, and variable block sizes.It is extent based and makes extensive use of Btrees (directories, extents, and free space) to aid both performance and scalability. Refer to the documentation at http://oss.sgi.com/projects/xfs/ for complete details. This implementation is on-disk compatible with the IRIX version of XFS. Authors: -------- SGI %package devel Requires: xfsprogs >= 2.0.0 Conflicts: xfsprogs < 2.0.0 Autoreqprov: on Group: Development/Libraries/C and C++ License: GNU General Public License (GPL) - all versions URL: http://oss.sgi.com/projects/xfs/ Summary: XFS Filesystem-specific Static Libraries and Headers %description devel xfsprogs-devel contains the libraries and header files needed to develop XFS file system-specific programs. You should install xfsprogs-devel if you want to develop XFS file system-specific programs. If you install xfsprogs-devel, you will also want to install xfsprogs. Authors: -------- SGI %prep %setup -q -n %{name}-2.8.11 %patch0 %patch1 %patch2 %patch6 %patch7 %build %{suse_update_config -f} export OPTIMIZER="-fPIC" export DEBUG=-DNDEBUG export LIBUUID=/usr/%{_lib}/libuuid.a export CFLAGS="$RPM_OPT_FLAGS" aclocal --force autoconf --force ./configure \ --prefix=%{_prefix} \ --exec-prefix=/ \ --sbindir=/sbin \ --bindir=%{_sbindir} \ --libdir=/%{_lib} \ --libexecdir=/usr/%{_lib} \ --includedir=%{_includedir} \ --mandir=%{_mandir} \ --datadir=%{_datadir} make %{?jobs:-j %jobs} %install 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 /usr/bin/make install DIST_MANIFEST="$DIST_INSTALL" /usr/bin/make install-dev DIST_MANIFEST="$DIST_INSTALL_DEV" rm -rf $RPM_BUILD_ROOT/sbin/fsck.xfs install -m755 %{S:1} $RPM_BUILD_ROOT/sbin files() { sort | uniq | awk ' $1 == "d" { printf ("%%%%dir %%%%attr(%s,root,root) %s\n", $2, $5); } $1 == "f" { if (match ($6, "/usr/share/man") || match ($6, "/usr/share/doc/packages/xfsprogs")) printf ("%%%%doc "); if (match ($6, "/usr/share/man")) printf ("%%%%attr(%s,root,root) %s*\n", $2, $6); else if (match ($6, "/libhandle.so")) printf ("%%%%attr(0755,root,root) %s\n", $6); else printf ("%%%%attr(%s,root,root) %s\n", $2, $6); } $1 == "l" { if (match ($3, "/usr/share/man") || match ($3, "/usr/share/doc/packages/xfsprogs")) printf ("%%%%doc "); if (match ($3, "/usr/share/man")) printf ("%attr(0777,root,root) %s*\n", $3); else printf ("%attr(0777,root,root) %s\n", $3); }' } set +x files < "$DIST_INSTALL" | egrep -v -e "^%%dir.*/sbin$" -e "^%%dir.*/man[58]$" -e "^%%dir.*/lib(64)?$" -e "^%%dir.*/usr/share/locale" > files.rpm files < "$DIST_INSTALL_DEV" | egrep -v -e "^%%dir.*/lib(64)?$" -e "^%%dir.*/man3$" > filesdevel.rpm set -x %clean rm -rf $RPM_BUILD_ROOT %post %run_ldconfig %postun %run_ldconfig %files -f files.rpm %defattr(-,root,root,755) %files devel -f filesdevel.rpm %defattr(-,root,root,755) %changelog -n xfsprogs * Wed Oct 25 2006 - mjancar@suse.cz - fix xfq_quota man page (#214590) * Fri Oct 20 2006 - mjancar@suse.cz - update to 2.8.11 * xfs_repair prefetch optimisations. * Make many tools use direct I/O on Linux if the underlying device supports it. Mainly for speeding up xfs_repair as libxfs does its own internal metadata buffering now. * Fix warnings from mkfs.xfs on ramdisk devices. * Fix issues with symbolic link handling in Makefiles. * Fix v2 directory rebuilds in phase6 of xfs_repair. * Fix buffer sizing issue for large pagesize systems, affecting mkfs auto-device-type-detection heuristics. * Fix rpm issue with install targets as uid/gid zero (we now using symbolic names rather than the numeric versions). * Fix issues with makedepend on libtool libraries. * Fix build of xfs_logprint for different uuid_t definitions; thanks to Craig Rodrigues. * Fixed xfs_repair handling of duplicate names in a directory. * Update translation Makefile to work better with the Ubuntu translation system. Thanks to feedback from Martin Pitt. * Fix annoying "ignores datarootdir" warning from configure. * Fix issues with makedepend build infrastructure. * Add prefetch code for improved xfs_repair run times. * Fri Jul 28 2006 - ro@suse.de - fix file list (remove pl locale directory) * Thu Jul 27 2006 - mjancar@suse.cz - update to 2.8.4 * Fix a situation where xfs_growfs can fail to match a block device to a filesystem correctly; thanks to Bastian Kleineidam. * Minor corrections to the xfs_growfs man page. * Fix a possible segv in xfs_growfs; thanks to Bastian Kleineidam. * More updates to repair/libxfs for improving performance * Incorporate librt into the build process for lio_listio * Minor xfs_logprint tweaks and fixes. * Small updates to xfs_io manual page. * Several fixes from earler 2.8 releases with respect to inode/buffer cache refcounting. * Initial pass at user space caching, ultimately provides a starting point for a faster, parallel version of repair. * Fix several inode/buffer reference counting issues. * Fix compiler warnings, and builds on certain glibc versions having issues with the device major() macro. * Added code to xfs_db and xfs_admin to allow conversion from version 1 to version 2 logs. * Fixed a case where xfs_repair was reporting a valid used block as a duplicate during phase 4. * Fixed a case where xfs_repair could incorrectly flag extent b+tree nodes as corrupt. * Parent pointer updates in xfs_io checker command. * Fix libxfs access(2) check on /proc/mounts, which was causing issues when xfs_check/xfs_repair run on readonly root filesystem mounts. * Fix freespace accounting in xfs_quota(8) df command. * Fix a typo on the xfs_quota(8) man page. * Fix the way external log/realtime devices were handled in userspace with older kernels (subtely different in procfs) * Fix a corruption problem in xfs_copy(8) when attempting to zero the (old) log, a section was sometimes missed (depends on log and I/O buffer (mis)alignment). * Convert fsck into a shell script and make it provide a hint to run repair/check (in non-auto fsck modes). Thanks to Marian Jancar for this. * Added initial Polish translation. Thanks to Jakub Bogusz for this. - drop obsolete patches * xfs-cmds-25183a-fix-xfs-headers-for-dmf * xfs-cmds-25194a-fix-parents-interface * xfs-copy-bug.diff * Wed Jun 14 2006 - dmueller@suse.de - build parallel * Tue Apr 18 2006 - ro@suse.de - fix build on ppc64: don't redefine __s64 and __u64 * Tue Mar 07 2006 - agruen@suse.de - xfs-copy-bug.diff: Fix a bug in the xfs_copy log re-write code avoiding duplicate UUIDs. Also fix the logic for sizing the direct write buffer, which fails for large maxdio sizes (155749). * Fri Feb 17 2006 - mjancar@suse.cz - include bugfixes from SGI (#151782) * Thu Feb 09 2006 - mjancar@suse.cz - make fsck.xfs verbose (#146670) * Wed Jan 25 2006 - mls@suse.de - converted neededforbuild to BuildRequires * Thu Jan 19 2006 - mjancar@suse.cz - fix some files not owned by root:root * Tue Jan 17 2006 - mjancar@suse.cz - the tarball labeled 2.7.11 was wrong version, use a corrected one received from SGI * Mon Jan 16 2006 - mjancar@suse.cz - update to 2.7.11 * Wed Jan 11 2006 - mjancar@suse.cz - update to 2.7.3 * Wed Sep 07 2005 - lmichnovic@suse.cz - changed atributes of file /lib/libhandle.so.1.0.3 to 0755 (#114848) * Sun Aug 21 2005 - ro@suse.de - no .a/.la files in / * Tue Aug 02 2005 - mjancar@suse.cz - Update to 2.6.36 with the following changes since .28: o Fix mkfs stripe unit alignment checks for external logs o Fix running xfs_db on non-XFS devices (was segfaulting) o Fix a 32 bit wrap in xfs_repair searching for secondary superblocks. o Add back fd_to_handle() to libhandle. o Add handle call mappings to xfsctl() for IRIX. o Switch to the fsxattr xfsctl for getting/setting project identifiers on inodes, remove the shortolived specialised ioctls for doing this. o Make the "blocktrash" xfs_db command available in expert- mode only. o Another libhandle fix on 64bit, Big Endian systems. o Minor endian cleanups in some tools. o Fix a couple of xfs_quota double-reporting issues when issuing commands via the oc (command line) 0option. o Fix previous MD driver-specific change to correctly handle (i.e. not "stripe align") linear arrays. o Add MD RAID level 4, 6, and 10 support. o Make mkfs.xfs automatically adjiust the geometry to use a sector size that matches the block size when MD RAID level 4/5/6 are in use. o Couple of minor man page fixups, including patch botch on initial revision of xfs_quota(8). o Add xfs_quota(8) command which knows how to do all things quota related, and can also do the XFS specific extensions like project quota, realtime device quota, etc. o Created a library of common code (libxcmd.a) shared by xfs_growfs, xfs_io and xfs_quota. o Fix use of regular files for realtime subvolumes (debugging only, really). o Fix bug in xfs_io command line option handling when commands where specified for multiple files at once. o Allow xfs_io to specify O_NONBLOCK for regular file IO. o Fix MD driver-specific code to not attempt stripe alignment for volumes that are not stripes (e.g. concat/mirror). o Fix mkfs.xfs -dfile. o Fix libhandle on 64bit, Big Endian systems. * Tue Apr 05 2005 - mmj@suse.de - Add gettext-devel to #nfb since it needs msgfmt - Update to 2.6.28 with the following changes since .25: o Fix compiler warning in repair/dir.c size checks. o Fix more compilation problem with version 4 of gcc o Make xfs_db and xfs_repair cope with filesystems that have project quota enabled. o Fix default mkfs allocation group size calculations for filesystem sizes in the range 32 - 64 terabytes. o Add noalign mkfs suboptions for -d/-r to disable the sunit/swidth auto-alignment (based on logical volume geometry, extracted from the driver). o Fix compilation problem with version 4 of gcc o Added a streamlined for programs wanting to make use of the XFS-specific kernel interfaces (to address complaints that was "heavy"). o Add imap as an expert command in xfs_io, making it more easily accessible to those who need it. o Extended statistics reporting for xfs_io command. o Fixed readline support for current distributions. o Add an --enable-termcap=[yes/no] configure option, and changed --enable-readline=[yes/no] to not force linking with libtermcap. Builds on some platforms may need to use both options, but most distributions do not require --enable-termcap when linking against libreadline. o Minor man page updates. * Mon Feb 07 2005 - mjancar@suse.cz - update to 2.6.25 * Fri Aug 06 2004 - mjancar@suse.cz - update to 2.6.13 * Thu Feb 26 2004 - mjancar@suse.cz - update to 2.6.3 * Sat Jan 10 2004 - adrian@suse.de - build as user * Fri Oct 03 2003 - schwab@suse.de - Fix broken ioctl definitions. * Thu Aug 21 2003 - ja@suse.cz - Update to version 2.5.6. - Fix a mkfs problem where it could exit inappropriately when a large data volume stripe unit was either specified on the command line or via querying the underlying volume manager. * Fri Aug 08 2003 - ja@suse.cz - Updated to 2.5.5 (XFS 1.3 release). - Introducing xfs_copy. - Fix shell quoting problem in xfs_bmap script. - Fix xvm stripe detection in libdisk - pass correctly sized structures to xvm ioctls. - Fix missing initialisation of stripe unit/width alignment information during libxfs_mount. - Fix botched repair typecast for multi-terabyte filesystems. - Fix libdisk device driver (volume managers) detection code used by mkfs, so that drivers with multiple majors are not incorrectly processed. * Fri Jun 20 2003 - ja@suse.cz - Upgrade to version 2.5.0. - Allow xfs_repair to run on read-only filesystems. - Fix a bug in mkfs - creating version 2 logs, an incorrect stripe unit value was being passed to libxfs_clear_log. - Fix error in xfs_io pwrite code with large request sizes. - Fix rounding-down-input problems in several xfs_io commands. - Changed mkfs.xfs default log size scaling algorithm slightly, to create larger logs at smaller filesystem sizes by default (thanks to Andi Kleen for the patch). - Enable support for sector sizes larger than 512 bytes. * Mon Jun 16 2003 - ja@suse.cz - File list fixed for xfsprogs-devel. * Mon Apr 28 2003 - jderfina@suse.cz - upgrade to version 2.4.7 - Fix a bug in detection of "clean" and "error" states with MD devices. - Added the xfs_io(8) command, an xfs_db(8) alike command for testing and debugging the XFS file IO path. - Corrected size check for realtime summary inode (not the same as the realtime bitmap inode) in xfs_repair. - Enable unwritten extents by default in mkfs.xfs. Should be used with kernel code newer than Mar 3 2003. * Wed Feb 12 2003 - jderfina@suse.cz - update to version 2.3.9 - Additional xfs_repair check in v2 directory handling for blks with no data entries (merged from IRIX), includes several handy comments sprinkled throughout this v2 dir code. - Fix an endian bug in the same area of code (v2 dirs, phase 6, longform_dir2_rebuild_setup) - xfs_repair has additional checks for bad sector values now. - Fixed obscure issue in mkfs where only the first AG would get its AGFL freelist "fixed" - not clear this caused any issues in practice. - Fixed an issue in xfs_repair where data past the end of the valid superblock fields was sometimes not cleared, when it really should have been (due to a libxfs problem). - Fix an endian bug in xfs_db freesp command when descending into multi-level agf cnt/bno btrees. * Tue Jan 21 2003 - agruen@suse.de - Remove (Prereq: /sbin/ldconfig) tag, and use %%run_ldconfig in %%post and %%postun instead. * Fri Dec 13 2002 - jderfina@suse.cz - upgrade to version 2.3.6. * Wed Oct 09 2002 - jderfina@suse.cz - update to version 2.3.3 * Tue Aug 20 2002 - mge@suse.de - update to 2.2.1 (mostly by gd@suse.de) * Thu May 09 2002 - tcrhak@suse.cz - fixed for 64 bit platforms * Fri Apr 19 2002 - kukuk@suse.de - Look at first in lib64 for libuuid.a before using lib * Tue Feb 26 2002 - ro@suse.de - update to 2.0.0 - split off attr and acl subpacks * Tue Aug 21 2001 - adostal@suse.cz - split xfsprogs to package xfsprogs-1.2.8, package xfsdump-1.0.9 and package dmapi-0.1.1 - create patches destdir and dirs for xfsprogs version 1.2.8 * Wed Aug 15 2001 - adostal@suse.cz - update acl to 1.0.7 ver. - update xfsprogs to 1.2.8 ver. - update dmapi to 0.1.1 ver. - using $RPM_BUILD_ROOT - create makefile and dirs patches - split sources to acl, attr, dmapi, xfsdump, xfsprogs * Mon Jul 23 2001 - schwab@suse.de - Build with -fPIC, for inclusion in shared library. - Use aclocal. * Wed Jun 20 2001 - ro@suse.de - make it build (libtoolize, fix filelist) * Fri Jun 15 2001 - choeger@suse.de - did a cvs up today * Mon May 21 2001 - choeger@suse.de - first version