%define glfs glfs6
Name: fuse
Version: 2.7.0
Release: 9%{?dist}.%{glfs}
Summary: File System in Userspace (FUSE) utilities
Group: System Environment/Base
License: GPL
URL: http://fuse.sf.net
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Source1: fuse-udev.nodes
Source2: fuse-makedev.d-fuse
Source3: fuse-README.fedora
Patch0: fuse-udev_rules.patch
Patch1: fuse-2.7.0-openfix.patch
Patch2: fuse-2.7.0-%{glfs}.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# We use dkms-fuse on RHEL4 and RHEL5, so replace this
#Requires: kernel >= 2.6.14
Requires: dkms-fuse >= %{version}
Requires: which
Requires(pre): %{_sbindir}/groupadd
Requires(post): /sbin/MAKEDEV
Requires(postun): %{_sbindir}/groupdel
BuildRequires: libselinux-devel
%description
With FUSE it is possible to implement a fully functional filesystem in a
userspace program. This package contains the FUSE userspace tools to
mount a FUSE filesystem.
Note: For security reasons only members of the group "fuse" are allowed to
(u)mount fuse filesystems. You can find more details on this issue in
%{_docdir}/%{name}-%{version}/README.fedora
%package libs
Summary: File System in Userspace (FUSE) libraries
Group: System Environment/Libraries
License: LGPL
%description libs
Devel With FUSE it is possible to implement a fully functional filesystem in a
userspace program. This package contains the FUSE libraries.
%package devel
Summary: File System in Userspace (FUSE) devel files
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
Requires: pkgconfig
License: LGPL
%description devel
With FUSE it is possible to implement a fully functional filesystem in a
userspace program. This package contains development files (headers,
pgk-config) to develop FUSE based applications/filesystems.
%prep
%setup -q
#disable device creation during build/install
sed -i 's|mknod|echo Disabled: mknod |g' util/Makefile.in
%patch0 -b .patch0
%patch1 -p1 -b .patch1
%patch2 -p1 -b .glfs
cp %{SOURCE3} README.fedora
# Include glfs version for it to show up when kernel module loads
sed -i 's|2.7.0|2.7.0-%{glfs}|g' configure*
%build
# Can't pass --disable-static here, or else the utils don't build
%configure \
--disable-kernel-module \
--libdir=/%{_lib} \
--bindir=/bin \
--exec-prefix=/
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name "*.la" -exec rm -f {} ';'
# FIXME change from 60 to 99
install -D -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT/%{_sysconfdir}/udev/makedev.d/99-fuse.nodes
install -D -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT/%{_sysconfdir}/makedev.d/z-fuse
# change from 4755 to 0755 to allow stripping -- fixed later in files
chmod 0755 $RPM_BUILD_ROOT/bin/fusermount
# Put pc file in correct place
mkdir -p $RPM_BUILD_ROOT%{_libdir}
mv $RPM_BUILD_ROOT/%{_lib}/pkgconfig $RPM_BUILD_ROOT%{_libdir}
# Get rid of static libs
rm -f $RPM_BUILD_ROOT/%{_lib}/*.a
# Compatibility symlinks
mkdir -p $RPM_BUILD_ROOT%{_bindir}
cd $RPM_BUILD_ROOT%{_bindir}
ln -s /bin/fusermount fusermount
ln -s /bin/ulockmgr_server ulockmgr_server
%clean
rm -rf $RPM_BUILD_ROOT
%pre
if [ $1 -eq 1 ]; then
%{_sbindir}/groupadd -r fuse &>/dev/null || :
fi
%post
/sbin/MAKEDEV fuse
%postun
if [ $1 = 0 ]; then
%{_sbindir}/groupdel fuse || :
fi
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING FAQ Filesystems NEWS README README.NFS README.fedora
/sbin/mount.fuse
%attr(4754,root,fuse) /bin/fusermount
/bin/ulockmgr_server
%{_sysconfdir}/init.d/fuse
%{_sysconfdir}/makedev.d/z-fuse
# Compat symlinks
%{_bindir}/fusermount
%{_bindir}/ulockmgr_server
%config %{_sysconfdir}/udev/rules.d/99-fuse.rules
%config %{_sysconfdir}/udev/makedev.d/99-fuse.nodes
%files libs
%defattr(-,root,root,-)
%doc COPYING.LIB
/%{_lib}/libfuse.so.*
/%{_lib}/libulockmgr.so.*
%files devel
%defattr(-,root,root,-)
/%{_lib}/libfuse.so
/%{_lib}/libulockmgr.so
%{_libdir}/pkgconfig/*.pc
%{_includedir}/fuse.h
%{_includedir}/ulockmgr.h
%{_includedir}/fuse
%changelog
* Thu Nov 22 2007 Matthias Saou 2.7.0-9.glfs6
- Include glfs6 string in the fuse version to show this is a patched version.
* Tue Nov 13 2007 Matthias Saou 2.7.0-8.glfs6
- Include glusterfs patch 6.
* Mon Oct 1 2007 Peter Lemenkov 2.7.0-8
- Added Require: which (BZ#312511)
* Fri Sep 21 2007 Tom "spot" Callaway 2.7.0-7
- revert udev rules change
* Thu Sep 20 2007 Tom "spot" Callaway 2.7.0-6
- change udev rules so that /dev/fuse is chmod 666 (bz 298651)
* Wed Aug 29 2007 Tom "spot" Callaway 2.7.0-5
- fix open issue (bz 265321)
* Wed Aug 29 2007 Fedora Release Engineering - 2.7.0-4
- Rebuild for selinux ppc32 issue.
* Sun Jul 22 2007 Tom "spot" Callaway 2.7.0-3
- put pkgconfig file in correct place
- enable compat symlinks for files in /bin
* Sat Jul 21 2007 Tom "spot" Callaway 2.7.0-2
- redefine exec_prefix to /
- redefine bindir to /bin
- redefine libdir to %%{_lib}
- don't pass --disable-static to configure
- manually rm generated static libs
* Wed Jul 18 2007 Peter Lemenkov 2.7.0-1
- Version 2.7.0
- Redefined exec_prefix due to demands from NTFS-3G
* Wed Jun 6 2007 Peter Lemenkov 2.6.5-2
- Add BR libselinux-devel (bug #235145)
- Config files properly marked as config (bug #211122)
* Sat May 12 2007 Peter Lemenkov 2.6.5-1
- Version 2.6.5
* Thu Feb 22 2007 Peter Lemenkov 2.6.3-2
- Fixed bug #229642
* Wed Feb 7 2007 Peter Lemenkov 2.6.3-1
* Ver. 2.6.3
* Tue Dec 26 2006 Peter Lemenkov 2.6.1-1
- Ver. 2.6.1
* Sat Nov 25 2006 Peter Lemenkov 2.6.0-2
- fixed nasty typo (see bug #217075)
* Fri Nov 3 2006 Peter Lemenkov 2.6.0-1
- Ver. 2.6.0
* Sun Oct 29 2006 Peter Lemenkov 2.5.3-5
- Fixed udev-rule again
* Sat Oct 7 2006 Peter Lemenkov 2.5.3-4
- Fixed udev-rule
* Tue Sep 12 2006 Peter Lemenkov 2.5.3-3%{?dist}
- Rebuild for FC6
* Wed May 03 2006 Peter Lemenkov 2.5.3-1%{?dist}
- Update to 2.5.3
* Thu Mar 30 2006 Peter Lemenkov 2.5.2-4%{?dist}
- rebuild
* Mon Feb 13 2006 Peter Lemenkov - 2.5.2-3
- Proper udev rule
* Mon Feb 13 2006 Peter Lemenkov - 2.5.2-2
- Added missing requires
* Tue Feb 07 2006 Peter Lemenkov - 2.5.2-1
- Update to 2.5.2
- Dropped fuse-mount.fuse.patch
* Wed Nov 23 2005 Thorsten Leemhuis - 2.4.2-1
- Use dist
* Wed Nov 23 2005 Thorsten Leemhuis - 2.4.2-1
- Update to 2.4.2 (solves CVE-2005-3531)
- Update README.fedora
* Sat Nov 12 2005 Thorsten Leemhuis - 2.4.1-3
- Add README.fedora
- Add hint to README.fedora and that you have to be member of the group "fuse"
in the description
- Use groupadd instead of fedora-groupadd
* Fri Nov 04 2005 Thorsten Leemhuis - 2.4.1-2
- Rename packages a bit
- use makedev.d/40-fuse.nodes
- fix /sbin/mount.fuse
- Use a fuse group to restict access to fuse-filesystems
* Fri Oct 28 2005 Thorsten Leemhuis - 2.4.1-1
- Initial RPM release.