3 %bcond_without dist_kernel # without distribution kernel
4 %bcond_without kernel # don't build kernel modules
5 %bcond_without smp # without smp packages
6 %bcond_without userspace # don't build userspace tools
7 %bcond_with verbose # verbose build (V=1)
8 %bcond_with grsec_kernel # build for kernel-grsecurity
10 %if %{with kernel} && %{with dist_kernel} && %{with grsec_kernel}
11 %define alt_kernel grsecurity
19 Summary: Filesystem in Userspace
20 Summary(pl): System plików w przestrzeni u¿ytkownika
26 Group: Applications/System
27 Source0: http://dl.sourceforge.net/fuse/fuse-%{version}.tar.gz
28 # Source0-md5: 13e1873086a1d7a95f470bbc7428c528
30 Patch0: kernel-misc-fuse-Makefile.am.patch
31 URL: http://fuse.sourceforge.net/
32 BuildRequires: autoconf
33 BuildRequires: automake
35 %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.9}
36 BuildRequires: rpmbuild(macros) >= 1.330
38 BuildRequires: libtool
39 BuildRequires: sed >= 4.0
40 Requires(postun): /sbin/ldconfig
41 Requires(postun): /usr/sbin/groupdel
42 Requires(pre): /usr/bin/getgid
43 Requires(pre): /usr/sbin/groupadd
44 Buildroot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47 %undefine with_dist_kernel
51 FUSE (Filesystem in Userspace) is a simple interface for userspace
52 programs to export a virtual filesystem to the Linux kernel. FUSE also
53 aims to provide a secure method for non privileged users to create and
54 mount their own filesystem implementations.
56 This package contains a shared library.
59 FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni
60 u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa.
61 FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i
62 montowania w³asnych implementacji systemów plików przez zwyk³ych
63 (nieuprzywilejowanych) u¿ytkowników.
65 Ten pakiet zawiera bibliotekê wspó³dzielon±.
68 Summary: Filesytem in Userspace - Development header files
69 Summary(pl): System plików w przestrzeni u¿ytkownika - pliki nag³ówkowe
70 Group: Development/Libraries
71 Requires: %{name} = %{epoch}:%{version}-%{_rel}
74 Libfuse library header files.
76 %description devel -l pl
77 Pliki nag³ówkowe biblioteki libfuse.
80 Summary: Filesytem in Userspace - static library
81 Summary(pl): System plików w przestrzeni u¿ytkownika - biblioteka statyczna
82 Group: Development/Libraries
83 Requires: libfuse-devel = %{epoch}:%{version}-%{_rel}
86 Static libfuse libraries.
88 %description static -l pl
89 Statyczna biblioteka libfuse.
91 %package -n kernel%{_alt_kernel}-misc-fuse
92 Summary: Filesystem in Userspace
93 Summary(pl): System plików w przestrzeni u¿ytkownika
94 Release: %{_rel}@%{_kernel_ver_str}
97 Requires(post,postun): /sbin/depmod
98 %if %{with dist_kernel}
99 %requires_releq_kernel_up
100 Requires(postun): %releq_kernel_up
102 %if "%{_alt_kernel}" != "%{nil}"
103 Provides: kernel-misc-fuse
106 %description -n kernel%{_alt_kernel}-misc-fuse
107 FUSE (Filesystem in Userspace) is a simple interface for userspace
108 programs to export a virtual filesystem to the Linux kernel. FUSE also
109 aims to provide a secure method for non privileged users to create and
110 mount their own filesystem implementations.
112 %description -n kernel%{_alt_kernel}-misc-fuse -l pl
113 FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni
114 u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa.
115 FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i
116 montowania w³asnych implementacji systemów plików przez zwyk³ych
117 (nieuprzywilejowanych) u¿ytkowników.
119 %package -n kernel%{_alt_kernel}-smp-misc-fuse
120 Summary: Filesystem in Userspace
121 Summary(pl): System plików w przestrzeni u¿ytkownika
122 Release: %{_rel}@%{_kernel_ver_str}
125 Requires(post,postun): /sbin/depmod
126 %if %{with dist_kernel}
127 %requires_releq_kernel_smp
128 Requires(postun): %releq_kernel_smp
130 Provides: kernel-misc-fuse
132 %description -n kernel%{_alt_kernel}-smp-misc-fuse
133 FUSE (Filesystem in Userspace) is a simple interface for userspace
134 programs to export a virtual filesystem to the Linux kernel. FUSE also
135 aims to provide a secure method for non privileged users to create and
136 mount their own filesystem implementations.
138 %description -n kernel%{_alt_kernel}-smp-misc-fuse -l pl
139 FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni
140 u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa.
141 FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i
142 montowania w³asnych implementacji systemów plików przez zwyk³ych
143 (nieuprzywilejowanych) u¿ytkowników.
146 %setup -q -n fuse-%{version}
149 sed -i '/FUSERMOUNT_PROG/s,fusermount,%{_bindir}/fusermount,' lib/mount.c
158 --%{?with_kernel:en}%{!?with_kernel:dis}able-kernel-module \
161 %{?with_kernel:--with-kernel=%{_kernelsrcdir}}
163 %if %{with userspace}
164 cp kernel/fuse_kernel.h include/
165 for DIR in include lib util; do
171 %build_kernel_modules -m fuse -C kernel
175 rm -rf $RPM_BUILD_ROOT
176 install -d $RPM_BUILD_ROOT{%{_pkgconfigdir},%{_sysconfdir}}
178 %if %{with userspace}
179 for DIR in include lib util; do
180 %{__make} -C $DIR install \
181 DESTDIR=$RPM_BUILD_ROOT
184 install fuse.pc $RPM_BUILD_ROOT%{_pkgconfigdir}
185 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
189 %install_kernel_modules -m kernel/fuse -d kernel/fs
193 rm -rf $RPM_BUILD_ROOT
198 %post -p /sbin/ldconfig
201 if [ "$1" = "0" ] ; then
205 %post -n kernel%{_alt_kernel}-misc-fuse
206 %depmod %{_kernel_ver}
208 %postun -n kernel%{_alt_kernel}-misc-fuse
209 %depmod %{_kernel_ver}
211 %post -n kernel%{_alt_kernel}-smp-misc-fuse
212 %depmod %{_kernel_ver}smp
214 %postun -n kernel%{_alt_kernel}-smp-misc-fuse
215 %depmod %{_kernel_ver}smp
217 %if %{with userspace}
219 %defattr(644,root,root,755)
220 %doc README NEWS ChangeLog AUTHORS doc/*
221 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fuse.conf
222 %attr(4754,root,fuse) %{_bindir}/fusermount
223 %attr(755,root,root) %{_bindir}/ulockmgr_server
224 %attr(755,root,root) /sbin/mount.fuse
225 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
228 %defattr(644,root,root,755)
229 %attr(755,root,root) %{_libdir}/lib*.so
232 %{_includedir}/ulockmgr.h
233 %{_pkgconfigdir}/fuse.pc
236 %defattr(644,root,root,755)
241 %files -n kernel%{_alt_kernel}-misc-fuse
242 %defattr(644,root,root,755)
243 /lib/modules/%{_kernel_ver}/kernel/fs/fuse.ko*
245 %if %{with smp} && %{with dist_kernel}
246 %files -n kernel%{_alt_kernel}-smp-misc-fuse
247 %defattr(644,root,root,755)
248 /lib/modules/%{_kernel_ver}smp/kernel/fs/fuse.ko*