Whamcloud - gitweb
Make ext2fs_check_desc() more stringent to force use of backup superbocks
[tools/e2fsprogs.git] / e2fsprogs.spec.in
index c6b7d20..41bf680 100644 (file)
@@ -1,11 +1,13 @@
 %define        _root_sbindir   /sbin
 %define        _root_libdir    /%{_lib}
 %define        _root_sbindir   /sbin
 %define        _root_libdir    /%{_lib}
+%define        _root_localedir /usr/share/locale
+%define        _root_etcdir    /etc
 
 Summary: Utilities for managing the second extended (ext2) filesystem.
 Name: e2fsprogs
 
 Summary: Utilities for managing the second extended (ext2) filesystem.
 Name: e2fsprogs
-Version: @E2FSPROGS_VERSION@
+Version: @E2FSPROGS_PKGVER@
 Release: 0
 Release: 0
-Copyright: GPL
+License: GPLv2
 Group: System Environment/Base
 Source:  ftp://download.sourceforge.net/pub/sourceforge/e2fsprogs/e2fsprogs-%{version}.tar.gz
 Url: http://e2fsprogs.sourceforge.net/
 Group: System Environment/Base
 Source:  ftp://download.sourceforge.net/pub/sourceforge/e2fsprogs/e2fsprogs-%{version}.tar.gz
 Url: http://e2fsprogs.sourceforge.net/
@@ -14,15 +16,15 @@ BuildRoot: %{_tmppath}/%{name}-root
 
 %description
 The e2fsprogs package contains a number of utilities for creating,
 
 %description
 The e2fsprogs package contains a number of utilities for creating,
-checking, modifying and correcting any inconsistencies in second
-extended (ext2) filesystems.  E2fsprogs contains e2fsck (used to repair
-filesystem inconsistencies after an unclean shutdown), mke2fs (used to
-initialize a partition to contain an empty ext2 filesystem), debugfs
-(used to examine the internal structure of a filesystem, to manually
-repair a corrupted filesystem or to create test cases for e2fsck), tune2fs
-(used to modify filesystem parameters), resize2fs to grow and shrink
-unmounted ext2 filesystems, and most of the other core ext2fs filesystem
-utilities.
+checking, modifying, and correcting any inconsistencies in second
+extended (ext2) filesystems.  E2fsprogs contains e2fsck (used to
+repair filesystem inconsistencies after an unclean shutdown), mke2fs
+(used to initialize a partition to contain an empty ext2 filesystem),
+debugfs (used to examine the internal structure of a filesystem, to
+manually repair a corrupted filesystem or to create test cases for
+e2fsck), tune2fs (used to modify filesystem parameters), resize2fs to
+grow and shrink unmounted ext2 filesystems, and most of the other core
+ext2fs filesystem utilities.
 
 You should install the e2fsprogs package if you are using any ext2
 filesystems (if you're not sure, you probably should install this
 
 You should install the e2fsprogs package if you are using any ext2
 filesystems (if you're not sure, you probably should install this
@@ -42,30 +44,39 @@ develop second extended (ext2) filesystem-specific programs.
 
 You should install e2fsprogs-devel if you want to develop ext2
 filesystem-specific programs.  If you install e2fsprogs-devel, you'll
 
 You should install e2fsprogs-devel if you want to develop ext2
 filesystem-specific programs.  If you install e2fsprogs-devel, you'll
-also need to install e2fsprogs.
+also want to install e2fsprogs.
+
+%package -n uuidd
+Summary: helper daemon to guarantee uniqueness of time-based UUIDs
+Group: System Environment/Daemons
+License: GPLv2
+Requires: e2fsprogs = %{version}
+Requires(pre): shadow-utils
+
+%description -n uuidd
+The uuidd package contains a userspace daemon (uuidd) which guarantees
+uniqueness of time-based UUID generation even at very high rates on
+SMP systems.
 
 %prep
 %setup
 
 
 %prep
 %setup
 
-chmod 755 configure
-autoconf
-
 %build
 %build
-%configure --enable-elf-shlibs
-make libs progs docs
+%configure --enable-elf-shlibs --enable-nls
+make
+make check
 
 %install
 rm -rf $RPM_BUILD_ROOT
 export PATH=/sbin:$PATH
 make install install-libs DESTDIR="$RPM_BUILD_ROOT" \
        root_sbindir=%{_root_sbindir} root_libdir=%{_root_libdir}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 export PATH=/sbin:$PATH
 make install install-libs DESTDIR="$RPM_BUILD_ROOT" \
        root_sbindir=%{_root_sbindir} root_libdir=%{_root_libdir}
+/sbin/ldconfig -n ${RPM_BUILD_ROOT}%{_libdir}
+
+# Add a dir that uuidd needs that the Makefiles don't create
+install -d $RPM_BUILD_ROOT/var/lib/libuuid
 
 
-cd ${RPM_BUILD_ROOT}%{_libdir}
-ln -sf %{_root_libdir}/libcom_err.so.2 libcom_err.so
-ln -sf %{_root_libdir}/libe2p.so.2 libe2p.so
-ln -sf %{_root_libdir}/libext2fs.so.2 libext2fs.so
-ln -sf %{_root_libdir}/libss.so.2 libss.so
-ln -sf %{_root_libdir}/libuuid.so.1 libuuid.so
+%find_lang %{name}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -76,45 +87,62 @@ rm -rf $RPM_BUILD_ROOT
 
 %post devel
 if [ -x /sbin/install-info -a -f %{_infodir}/libext2fs.info.gz ]; then
 
 %post devel
 if [ -x /sbin/install-info -a -f %{_infodir}/libext2fs.info.gz ]; then
-   /sbin/install-info %{_infodir}/libext2fs.info.gz %{_infodir}/dir
+    /sbin/install-info %{_infodir}/libext2fs.info.gz %{_infodir}/dir
 fi
 fi
+exit 0
 
 %postun devel
 if [ $1 = 0 -a -x /sbin/install-info -a -f %{_infodir}/libext2fs.info.gz ]; then
    /sbin/install-info --delete %{_infodir}/libext2fs.info.gz %{_infodir}/dir
 fi
 
 %postun devel
 if [ $1 = 0 -a -x /sbin/install-info -a -f %{_infodir}/libext2fs.info.gz ]; then
    /sbin/install-info --delete %{_infodir}/libext2fs.info.gz %{_infodir}/dir
 fi
+exit 0
+
+%pre -n uuidd
+getent group uuidd >/dev/null || groupadd -r uuidd
+getent passwd uuidd >/dev/null || \
+useradd -r -g uuidd -d /var/lib/libuuid -s /sbin/nologin \
+    -c "UUID generator helper daemon" uuidd
+exit 0
 
 
-%files
+%files -f %{name}.lang
 %defattr(-,root,root)
 %doc README RELEASE-NOTES
 
 %defattr(-,root,root)
 %doc README RELEASE-NOTES
 
-%{_root_sbindir}/blkid
 %{_root_sbindir}/badblocks
 %{_root_sbindir}/badblocks
+%{_root_sbindir}/blkid
 %{_root_sbindir}/debugfs
 %{_root_sbindir}/dumpe2fs
 %{_root_sbindir}/e2fsck
 %{_root_sbindir}/e2image
 %{_root_sbindir}/e2label
 %{_root_sbindir}/debugfs
 %{_root_sbindir}/dumpe2fs
 %{_root_sbindir}/e2fsck
 %{_root_sbindir}/e2image
 %{_root_sbindir}/e2label
+%{_root_sbindir}/e2undo
 %{_root_sbindir}/findfs
 %{_root_sbindir}/fsck
 %{_root_sbindir}/fsck.ext2
 %{_root_sbindir}/fsck.ext3
 %{_root_sbindir}/findfs
 %{_root_sbindir}/fsck
 %{_root_sbindir}/fsck.ext2
 %{_root_sbindir}/fsck.ext3
+%{_root_sbindir}/fsck.ext4
+%{_root_sbindir}/fsck.ext4dev
 %{_root_sbindir}/logsave
 %{_root_sbindir}/mke2fs
 %{_root_sbindir}/logsave
 %{_root_sbindir}/mke2fs
+%{_root_etcdir}/mke2fs.conf
 %{_root_sbindir}/mkfs.ext2
 %{_root_sbindir}/mkfs.ext3
 %{_root_sbindir}/mkfs.ext2
 %{_root_sbindir}/mkfs.ext3
+%{_root_sbindir}/mkfs.ext4
+%{_root_sbindir}/mkfs.ext4dev
 %{_root_sbindir}/resize2fs
 %{_root_sbindir}/tune2fs
 %{_root_sbindir}/resize2fs
 %{_root_sbindir}/tune2fs
-%{_sbindir}/mklost+found
 %{_sbindir}/filefrag
 %{_sbindir}/filefrag
+%{_sbindir}/mklost+found
 
 
+%{_root_libdir}/libblkid.so.*
 %{_root_libdir}/libcom_err.so.*
 %{_root_libdir}/libe2p.so.*
 %{_root_libdir}/libext2fs.so.*
 %{_root_libdir}/libss.so.*
 %{_root_libdir}/libcom_err.so.*
 %{_root_libdir}/libe2p.so.*
 %{_root_libdir}/libext2fs.so.*
 %{_root_libdir}/libss.so.*
-%{_root_libdir}/libblkid.so.*
 %{_root_libdir}/libuuid.so.*
 
 %{_root_libdir}/libuuid.so.*
 
+%{_libdir}/e2initrd_helper
+
 %{_bindir}/chattr
 %{_bindir}/lsattr
 %{_bindir}/uuidgen
 %{_bindir}/chattr
 %{_bindir}/lsattr
 %{_bindir}/uuidgen
@@ -122,6 +150,9 @@ fi
 %{_mandir}/man1/lsattr.1*
 %{_mandir}/man1/uuidgen.1*
 
 %{_mandir}/man1/lsattr.1*
 %{_mandir}/man1/uuidgen.1*
 
+%{_mandir}/man5/e2fsck.conf.5*
+%{_mandir}/man5/mke2fs.conf.5*
+
 %{_mandir}/man8/badblocks.8*
 %{_mandir}/man8/blkid.8*
 %{_mandir}/man8/debugfs.8*
 %{_mandir}/man8/badblocks.8*
 %{_mandir}/man8/blkid.8*
 %{_mandir}/man8/debugfs.8*
@@ -130,13 +161,18 @@ fi
 %{_mandir}/man8/findfs.8*
 %{_mandir}/man8/fsck.ext2.8*
 %{_mandir}/man8/fsck.ext3.8*
 %{_mandir}/man8/findfs.8*
 %{_mandir}/man8/fsck.ext2.8*
 %{_mandir}/man8/fsck.ext3.8*
+%{_mandir}/man8/fsck.ext4.8*
+%{_mandir}/man8/fsck.ext4dev.8*
 %{_mandir}/man8/e2image.8*
 %{_mandir}/man8/e2label.8*
 %{_mandir}/man8/e2image.8*
 %{_mandir}/man8/e2label.8*
+%{_mandir}/man8/e2undo.8*
 %{_mandir}/man8/fsck.8*
 %{_mandir}/man8/logsave.8*
 %{_mandir}/man8/mke2fs.8*
 %{_mandir}/man8/mkfs.ext2.8*
 %{_mandir}/man8/mkfs.ext3.8*
 %{_mandir}/man8/fsck.8*
 %{_mandir}/man8/logsave.8*
 %{_mandir}/man8/mke2fs.8*
 %{_mandir}/man8/mkfs.ext2.8*
 %{_mandir}/man8/mkfs.ext3.8*
+%{_mandir}/man8/mkfs.ext4.8*
+%{_mandir}/man8/mkfs.ext4dev.8*
 %{_mandir}/man8/mklost+found.8*
 %{_mandir}/man8/resize2fs.8*
 %{_mandir}/man8/tune2fs.8*
 %{_mandir}/man8/mklost+found.8*
 %{_mandir}/man8/resize2fs.8*
 %{_mandir}/man8/tune2fs.8*
@@ -148,6 +184,8 @@ fi
 %{_bindir}/compile_et
 %{_bindir}/mk_cmds
 
 %{_bindir}/compile_et
 %{_bindir}/mk_cmds
 
+%{_libdir}/libblkid.a
+%{_libdir}/libblkid.so
 %{_libdir}/libcom_err.a
 %{_libdir}/libcom_err.so
 %{_libdir}/libe2p.a
 %{_libdir}/libcom_err.a
 %{_libdir}/libcom_err.so
 %{_libdir}/libe2p.a
@@ -156,20 +194,45 @@ fi
 %{_libdir}/libext2fs.so
 %{_libdir}/libss.a
 %{_libdir}/libss.so
 %{_libdir}/libext2fs.so
 %{_libdir}/libss.a
 %{_libdir}/libss.so
-%{_libdir}/libblkid.a
-%{_libdir}/libblkid.so
 %{_libdir}/libuuid.a
 %{_libdir}/libuuid.so
 
 %{_libdir}/libuuid.a
 %{_libdir}/libuuid.so
 
+%{_libdir}/pkgconfig/blkid.pc
+%{_libdir}/pkgconfig/com_err.pc
+%{_libdir}/pkgconfig/e2p.pc
+%{_libdir}/pkgconfig/ext2fs.pc
+%{_libdir}/pkgconfig/ss.pc
+%{_libdir}/pkgconfig/uuid.pc
+
 %{_datadir}/et
 %{_datadir}/ss
 %{_includedir}/blkid
 %{_datadir}/et
 %{_datadir}/ss
 %{_includedir}/blkid
+%{_includedir}/e2p
 %{_includedir}/et
 %{_includedir}/ext2fs
 %{_includedir}/ss
 %{_includedir}/uuid
 %{_mandir}/man1/compile_et.1*
 %{_includedir}/et
 %{_includedir}/ext2fs
 %{_includedir}/ss
 %{_includedir}/uuid
 %{_mandir}/man1/compile_et.1*
+%{_mandir}/man1/mk_cmds.1*
 %{_mandir}/man3/com_err.3*
 %{_mandir}/man3/com_err.3*
-%{_mandir}/man3/libuuid.3*
-%{_mandir}/man3/uuid*.3*
 %{_mandir}/man3/libblkid.3*
 %{_mandir}/man3/libblkid.3*
+%{_mandir}/man3/uuid.3*
+%{_mandir}/man3/uuid_clear.3*
+%{_mandir}/man3/uuid_compare.3*
+%{_mandir}/man3/uuid_copy.3*
+%{_mandir}/man3/uuid_generate.3*
+%{_mandir}/man3/uuid_generate_random.3*
+%{_mandir}/man3/uuid_generate_time.3*
+%{_mandir}/man3/uuid_is_null.3*
+%{_mandir}/man3/uuid_parse.3*
+%{_mandir}/man3/uuid_time.3*
+%{_mandir}/man3/uuid_unparse.3*
+
+%files -n uuidd
+%defattr(-,root,root)
+# if you want to run via init
+# /etc/init.d/uuidd
+%{_mandir}/man8/uuidd.8*
+%attr(6755, uuidd, uuidd) %{_sbindir}/uuidd
+%dir %attr(2775, uuidd, uuidd) /var/lib/libuuid
+