From: Valient G. <vg...@po...> - 2004-06-19 10:37:54
|
%define kernelversion %(uname -r) %define fusemoduledir /lib/modules/%{kernelversion}/kernel/fs/fuse #%define kernelrel %(uname -r | sed -e s/-/_/g) %define kernelrel %(uname -r | sed -e s/-/_/g | sed -e s/_default//) Name: fuse Version: @VERSION@ Release: @RELEASE@ Summary: Filesystem in Userspace Source: %{name}-%{version}-%{release}.tar.gz Copyright: GPL Group: Utilities/System URL: http://sourceforge.net/projects/avf Buildroot: %{_tmppath}/%{name}-root Prefix: /usr Packager: Valient Gough <vg...@po...> # some parts of this specfile are taken from Ian Pilcher's specfile # don't restrict to RedHat kernels but also allow compilation with # vanilla kernels, too. #Requires: kernel = %{kernelrel}, redhat-release >= 7 #BuildRequires: kernel-source = %{kernelrel} %description FUSE (Filesystem in Userspace) is a simple interface for userspace programs to export a virtual filesystem to the linux kernel. FUSE also aims to provide a secure method for non privileged users to create and mount their own filesystem implementations. %clean case "$RPM_BUILD_ROOT" in *-root) rm -rf $RPM_BUILD_ROOT ;; esac rm -f $RPM_BUILD_DIR/file.list.%{name} rm -f $RPM_BUILD_DIR/file.list.%{name}.libs rm -f $RPM_BUILD_DIR/file.list.%{name}.files rm -f $RPM_BUILD_DIR/file.list.%{name}.files.tmp rm -f $RPM_BUILD_DIR/file.list.%{name}.dirs %prep %setup %build # invoke configure with the --with-kernel option in case we attempt to # compile for a different kernel and hope the path is right :-) if [ "%{kernelversion}" != $(uname -r) ]; then for dir in /lib/modules/%{kernelversion}/build \ /usr/src/linux-%{kernelversion} \ /usr/local/src/linux-%{kernelversion} ; do if [ -d "$dir" ]; then WITH_KERNEL="--with-kernel=$dir" break fi done fi ./configure \ --prefix=%{prefix} \ $WITH_KERNEL make #make check %install case "$RPM_BUILD_ROOT" in *-root) rm -rf $RPM_BUILD_ROOT ;; esac make install \ prefix=$RPM_BUILD_ROOT%{prefix} \ fusemoduledir=$RPM_BUILD_ROOT%{fusemoduledir} # if we want to install examples, we should set target to something other then # noinst_* ! #install -d $RPM_BUILD_ROOT%{prefix}/lib/fuse/example #install -s -m 755 example/{fusexmp,hello,null} $RPM_BUILD_ROOT%{prefix}/lib/fuse/example/ # remove binaries form example folder so we can include it # as a form of documentation into the package #make -C example clean #rm -rf example/.deps/ cd $RPM_BUILD_ROOT find . -type d -fprint $RPM_BUILD_DIR/file.list.%{name}.dirs find . -type f -fprint $RPM_BUILD_DIR/file.list.%{name}.files.tmp sed '/\/man\//s/$/.gz/g' $RPM_BUILD_DIR/file.list.%{name}.files.tmp > $RPM_BUILD_DIR/file.list.%{name}.files find . -type l -fprint $RPM_BUILD_DIR/file.list.%{name}.libs sed '1,2d;s,^\.,\%attr(-\,root\,root) \%dir ,' $RPM_BUILD_DIR/file.list.%{name}.dirs > $RPM_BUILD_DIR/file.list.%{name} sed 's,^\.,\%attr(-\,root\,root) ,' $RPM_BUILD_DIR/file.list.%{name}.files >> $RPM_BUILD_DIR/file.list.%{name} sed 's,^\.,\%attr(-\,root\,root) ,' $RPM_BUILD_DIR/file.list.%{name}.libs >> $RPM_BUILD_DIR/file.list.%{name} %post /sbin/depmod -aq %preun /sbin/modprobe -r fuse %postun /sbin/depmod -aq %files -f ../file.list.%{name} %defattr(-,root,root) #%doc example/ #%doc patch/ # ## you want to install fusermount SUID root? ## Then uncomment the "%attr()"-line in favour of the line after it. ##%attr(4550,root,wheel) %{prefix}/bin/fusermount #%{prefix}/bin/fusermount %changelog * Sat Jun 19 2004 Valient Gough <vg...@po...> - bit of cleanup for semi-automatic distribution generation * Sun May 25 2003 Achim Settelmeier <fus...@si...> - don't add --with-kernel in case we compile for the standard kernel * Tue Mar 04 2003 Achim Settelmeier <fus...@si...> - "Merged" the specfile by Ian Pilcher (Ian Pilcher <pil...@at...>) and this specfile into one. Both are provided by fuse-1.0.tar.gz. * Mon Mar 03 2003 Achim Settelmeier <fus...@si...> - Updated specfile for RedHat 8.0 systems |