File e2fsprogs.spec of Package e2fsprogs

#
# spec file for package e2fsprogs (Version 1.41.1)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           e2fsprogs
%define no_command_hiding 1
BuildRequires:  libvolume_id-devel
License:        GPL v2 or later
Group:          System/Filesystems
Supplements:    filesystem(ext2) filesystem(ext3)
PreReq:         %install_info_prereq
AutoReqProv:    on
Version:        1.41.1
Release:        11.<RELEASE15>
Summary:        Utilities for the Second Extended File System
Url:            http://e2fsprogs.sourceforge.net
Source:         %{name}-%{version}.tar.bz2
Source2:        README.SUSE
Source3:        uuidd.rc
Source4:        sysconfig.uuidd
Source5:        README.SUSE.uuidd
#
# e2fsprogs patches
#
Patch1:         e2fsprogs-mdraid.patch
Patch2:         e2fsprogs-base_devt.patch
Patch3:         e2fsprogs-libvolume_id-support.patch
Patch5:         e2fsprogs-1.40.4-uuidd_pid_path.patch
Patch6:         e2fsprogs-1.41.1-link_fix.patch
Patch7:         e2fsprogs-1.41.1-splash_support.patch
Patch8:         e2fsprogs-1.41.1-e2fsck_fix_automatic_blocksize_detection.patch
Patch9:         e2fsprogs-1.41.1-function_signature_fix.patch
# libcom_err patches
# 66534 - [SL 10.0] et_list handling of krb5 and libcom_err.so.2 conflict
Patch31:        libcom_err-no-init_error_table.patch
Patch32:        libcom_err-disable_test.patch
Patch33:        libcom_err-mutex.patch
Patch34:        libcom_err-compile_et_permissions.patch
# Do not suppress make commands
Patch99:        e2fsprogs-no_cmd_hiding.patch
Patch100:       e2fsprogs-fdleak.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
Utilities needed to create and maintain ext2 and ext3 file systems
under Linux. Included in this package are: chattr, lsattr, mke2fs,
mklost+found, tune2fs, e2fsck, resize2fs, and badblocks.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package devel
License:        GPL v2 or later
Summary:        Dummy development package
Group:          Development/Libraries/C and C++
AutoReqProv:    on
Requires:       libext2fs-devel = %version libblkid-devel = %version libuuid-devel = %version

%description devel
Dummy development package for backwards compatibility.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libext2fs2
License:        GPL v2 or later
Summary:        Ext2fs libray
Group:          System/Filesystems
AutoReqProv:    on

%description -n libext2fs2
The basic Ext2fs library.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libext2fs-devel
License:        GPL v2 or later
Summary:        Development files for libext2fs
Group:          Development/Libraries/C and C++
AutoReqProv:    on
Requires:       libext2fs2 = %version libcom_err-devel

%description -n libext2fs-devel
Development files for libext2fs.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libcom_err2
License:        GPL v2 or later
Summary:        E2fsprogs error reporting library
Group:          System/Filesystems
Provides:       libcom_err = %{version}
Obsoletes:      libcom_err <= 1.40
AutoReqProv:    on

%description -n libcom_err2
com_err is an error message display library.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libcom_err-devel
License:        GPL v2 or later
Summary:        Development files for libcom_err
Group:          Development/Libraries/C and C++
AutoReqProv:    on
Requires:       libcom_err2 = %version

%description -n libcom_err-devel
Development files for the com_err error message display library.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libblkid1
License:        GPL v2 or later
Summary:        Filesystem detection library
Group:          System/Filesystems
AutoReqProv:    on

%description -n libblkid1
Library for filesystem detection.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libblkid-devel
License:        GPL v2 or later
Summary:        Development files for the filesystem detection library
Group:          Development/Libraries/C and C++
AutoReqProv:    on
Requires:       libblkid1 = %version libuuid-devel

%description -n libblkid-devel
Files needed to develop applications using the library for filesystem
detection.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n uuid-runtime
License:        GPL v2 or later
Summary:        Utilities for the Second Extended File System
Group:          System/Filesystems
AutoReqProv:    on
PreReq:         %fillup_prereq %insserv_prereq permissions pwdutils

%description -n uuid-runtime
Utilities needed to create and maintain ext2 and ext3 file systems
under Linux. Included in this package are: chattr, lsattr, mke2fs,
mklost+found, tune2fs, e2fsck, resize2fs, and badblocks.



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libuuid1
License:        GPL v2 or later
Summary:        Library to generate UUIDs
Group:          System/Filesystems
AutoReqProv:    on

%description -n libuuid1
A library to generate universally unique IDs (UUIDs).



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%package -n libuuid-devel
License:        GPL v2 or later
Summary:        Development files for libuuid1
Group:          Development/Libraries/C and C++
AutoReqProv:    on
Requires:       libuuid1 = %version

%description -n libuuid-devel
Files to develop applications using the library to generate universally
unique IDs (UUIDs).



Authors:
--------
    Remy Card <card@masi.ibp.fr>
    Theodore Ts'o <tytso@mit.edu>

%prep
%setup -q
# e2fsprogs patches
%patch1
%patch2 -p1
%patch3 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
# libcom_err patches
%patch31 -p1 
%patch32 -p1
%patch33 -p1
%patch34 -p1
%if %{no_command_hiding}
%patch99 -p1
%endif
%patch100 -p1
cp %{SOURCE2} %{SOURCE5} .

%build
%{?suse_update_config:%{suse_update_config -f}}
#autoreconf --force --install
autoconf
./configure --prefix=%{_prefix} \
	--with-root-prefix='' 	\
	--mandir=%{_mandir} \
	--infodir=%{_infodir} \
	--libdir=%{_libdir} \
	--enable-elf-shlibs \
	--disable-evms \
        CFLAGS="$RPM_OPT_FLAGS"
make

%install
make install install-libs DESTDIR=$RPM_BUILD_ROOT ELF_INSTALL_DIR=/%{_lib}
%{find_lang} %{name}
rm $RPM_BUILD_ROOT%{_libdir}/e2initrd_helper
mkdir -p $RPM_BUILD_ROOT/var/lib/libuuid/
mkdir -p $RPM_BUILD_ROOT/var/run/uuidd/
# init script for uuidd
mkdir -p $RPM_BUILD_ROOT/etc/init.d/
install -m 744 %{SOURCE3} $RPM_BUILD_ROOT/etc/init.d/uuidd
ln -sf ../../etc/init.d/uuidd $RPM_BUILD_ROOT/usr/sbin/rcuuidd
# fillup template
mkdir -p ${RPM_BUILD_ROOT}/var/adm/fillup-templates
install -m 644 %{SOURCE4} ${RPM_BUILD_ROOT}/var/adm/fillup-templates/
# currently don't install links for ext4 tools and only the ext4dev ones
# as long as ext4 is not marked stable and the kernel module renamed
# from ext4dev to ext4
rm -f $RPM_BUILD_ROOT/sbin/mkfs.ext4
rm -f $RPM_BUILD_ROOT/sbin/fsck.ext4
rm -f $RPM_BUILD_ROOT/usr/share/man/man8/mkfs.ext4.8
rm -f $RPM_BUILD_ROOT/usr/share/man/man8/fsck.ext4.8

%check
make check
make gcc-wall

%clean
rm -rf $RPM_BUILD_ROOT

%post
/sbin/ldconfig
%install_info --info-dir=%{_infodir} %{_infodir}/libext2fs.info.gz

%postun
/sbin/ldconfig
%install_info_delete --info-dir=%{_infodir} %{_infodir}/libext2fs.info.gz

%post -n libext2fs2
/sbin/ldconfig

%postun -n libext2fs2
/sbin/ldconfig

%post -n libcom_err2
/sbin/ldconfig

%postun -n libcom_err2
/sbin/ldconfig

%post -n libblkid1
/sbin/ldconfig

%postun -n libblkid1
/sbin/ldconfig

%pre -n uuid-runtime
/usr/sbin/groupadd -r uuidd 2>/dev/null || :
/usr/sbin/useradd -r -g uuidd -c "User for uuidd" \
		-d /var/run/uuidd uuidd 2>/dev/null || :

%preun -n uuid-runtime
%{stop_on_removal uuidd}

%post -n uuid-runtime
%{fillup_only -n uuidd}
%run_permissions

%postun -n uuid-runtime
%{restart_on_update uuidd}
%{insserv_cleanup}

%post -n libuuid1
/sbin/ldconfig

%postun -n libuuid1 
/sbin/ldconfig
%verifyscript -n uuid-runtime
%verify_permissions -e /usr/sbin/uuidd

%files -f %{name}.lang
%defattr(-, root, root)
%doc RELEASE-NOTES README doc/libblkid.txt
%config /etc/mke2fs.conf
/sbin/badblocks
/sbin/debugfs
/sbin/dumpe2fs
/sbin/e2undo
/sbin/e2fsck
/sbin/e2label
/sbin/fsck
/sbin/fsck.ext2
/sbin/fsck.ext3
#/sbin/fsck.ext4
/sbin/fsck.ext4dev
/sbin/mke2fs
/sbin/mkfs.ext2
/sbin/mkfs.ext3
#/sbin/mkfs.ext4
/sbin/mkfs.ext4dev
/sbin/resize2fs
/sbin/tune2fs
/sbin/e2image
/sbin/logsave
/sbin/blkid
/sbin/findfs
/usr/bin/chattr
/usr/bin/lsattr
/usr/sbin/mklost+found
/usr/sbin/filefrag
%{_infodir}/libext2fs.info.gz
%{_mandir}/man1/chattr.1.gz
%{_mandir}/man1/lsattr.1.gz
%{_mandir}/man5/e2fsck.conf.5.gz
%{_mandir}/man5/mke2fs.conf.5.gz
%{_mandir}/man8/*.8.gz
%exclude %{_mandir}/man8/uuidd.8.gz

%files devel
%defattr(-,root,root)
%doc README.SUSE

%files -n libblkid1
%defattr(-, root, root)
/%{_lib}/libblkid.so.*

%files -n libblkid-devel
%defattr(-, root, root)
%{_libdir}/libblkid.a
%{_libdir}/libblkid.so
/usr/include/blkid
%_libdir/pkgconfig/blkid.pc
%{_mandir}/man3/libblkid.3.gz

%files -n uuid-runtime
%defattr(-, root, root)
%doc README.SUSE.uuidd
/usr/bin/uuidgen
%verify(not mode) %attr(0755,root,root) /usr/sbin/uuidd
%attr(-,uuidd,uuidd) %dir /var/lib/libuuid
%attr(-,uuidd,uuidd) %dir /var/run/uuidd
/etc/init.d/uuidd
/usr/sbin/rcuuidd
/var/adm/fillup-templates/sysconfig.uuidd
%{_mandir}/man1/uuidgen.1.gz
%{_mandir}/man8/uuidd.8.gz

%files -n libuuid1
%defattr(-, root, root)
/%{_lib}/libuuid.so.*

%files -n libuuid-devel
%defattr(-, root, root)
%{_libdir}/libuuid.a
%{_libdir}/libuuid.so
/usr/include/uuid
%_libdir/pkgconfig/uuid.pc
%{_mandir}/man3/uuid*

%files -n libext2fs2
%defattr(-, root, root)
/%{_lib}/libext2fs.so.*
/%{_lib}/libe2p.so.*

%files -n libext2fs-devel
%defattr(-, root, root)
%{_libdir}/libext2fs.so
%{_libdir}/libext2fs.a
%{_libdir}/libe2p.a
%{_libdir}/libe2p.so
/usr/include/ext2fs
/usr/include/e2p
%_libdir/pkgconfig/e2p.pc
%_libdir/pkgconfig/ext2fs.pc

%files -n libcom_err2
%defattr(-, root, root)
/%{_lib}/libcom_err.so.*
/%{_lib}/libss.so.*
%_datadir/et
%_datadir/ss

%files -n libcom_err-devel
%defattr(-, root, root)
%_bindir/compile_et
%_bindir/mk_cmds
%{_libdir}/libcom_err.so
%{_libdir}/libcom_err.a
%{_libdir}/libss.a
%{_libdir}/libss.so
%_libdir/pkgconfig/com_err.pc
%_libdir/pkgconfig/ss.pc
%_includedir/et
%_includedir/ss
%{_mandir}/man1/compile_et.1.gz
%{_mandir}/man1/mk_cmds.1.gz
%{_mandir}/man3/com_err.3.gz

%changelog
openSUSE Build Service is sponsored by