]> git.pld-linux.org Git - packages/libfuse.git/blob - libfuse.spec
- formatting, unified sf URL
[packages/libfuse.git] / libfuse.spec
1 #
2 # Condtional build:
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 #
9 Name:           kernel-misc-fuse
10 Summary:        Filesystem in Userspace
11 Summary(pl):    System plików w przestrzeni u¿ytkownika
12 Version:        1.4
13 %define         _rel    0.4
14 Release:        %{_rel}@%{_kernel_ver_str}
15 Epoch:          0
16 License:        GPL v2
17 Group:          Base/Kernel
18 Source0:        http://dl.sourceforge.net/fuse/fuse-%{version}.tar.gz
19 # Source0-md5:  abdcb47a202d84d844ffbb58dcc7ac8b
20 # Source0-size: 126361
21 Patch0:         %{name}-configure.in.patch
22 Patch1:         %{name}-perm.patch
23 URL:            http://fuse.sourceforge.net/
24 BuildRequires:  autoconf
25 BuildRequires:  automake
26 %if %{with kernel}
27 %{?with_dist_kernel:BuildRequires:      kernel-module-build >= 2.6.7}
28 %endif
29 %{?with_dist_kernel:%requires_releq_kernel_up}
30 Requires(post,postun):  /sbin/depmod
31 %{?with_dist_kernel:Requires(postun):   kernel}
32 Buildroot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33
34 %description
35 FUSE (Filesystem in Userspace) is a simple interface for userspace
36 programs to export a virtual filesystem to the Linux kernel. FUSE also
37 aims to provide a secure method for non privileged users to create and
38 mount their own filesystem implementations.
39
40 %description -l pl
41 FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni
42 u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa.
43 FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i
44 montowania w³asnych implementacji systemów plików przez zwyk³ych
45 (nieuprzywilejowanych) u¿ytkowników.
46
47 %package -n kernel-smp-misc-fuse
48 Summary:        Filesystem in Userspace
49 Summary(pl):    System plików w przestrzeni u¿ytkownika
50 Release:        %{_rel}@%{_kernel_ver_str}
51 License:        GPL v2
52 Group:          Base/Kernel
53 Provides:       kernel-misc-fuse
54 %{?with_dist_kernel:%requires_releq_kernel_smp}
55 Requires(post,postun):  /sbin/depmod
56 %{?with_dist_kernel:Requires(postun):   kernel-smp}
57
58 %description -n kernel-smp-misc-fuse
59 FUSE (Filesystem in Userspace) is a simple interface for userspace
60 programs to export a virtual filesystem to the Linux kernel. FUSE also
61 aims to provide a secure method for non privileged users to create and
62 mount their own filesystem implementations.
63
64 %description -n kernel-smp-misc-fuse -l pl
65 FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni
66 u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa.
67 FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i
68 montowania w³asnych implementacji systemów plików przez zwyk³ych
69 (nieuprzywilejowanych) u¿ytkowników.
70
71 %package -n libfuse
72 Summary:        Shared library for Filesytem in Userspace
73 Summary(pl):    Biblioteki dzielone Systemu plików w przestrzeni u¿ytkownika
74 Group:          Applications/System
75 Release:        %{_rel}
76
77 %description -n libfuse
78 Shared library for Filesytem in Userspace
79
80 %description -n libfuse -l pl
81 Biblioteki dzielone Systemu plików w przestrzeni u¿ytkownika
82
83 %package -n libfuse-devel
84 Summary:        Filesytem in Userspace - Development header fiels and libraries
85 Summary(pl):    Systemu plików w przestrzeni u¿ytkownika - Biblioteki dzielone
86 Group:          Development/Libraries
87 Release:        %{_rel}
88 Requires:       libfuse = %{epoch}:%{version}-%{_rel}
89
90 %description -n libfuse-devel
91 Libfuse library header files.
92
93 %description -n libfuse-devel -l pl
94 Libfuse biblioteki nag³ówkowe dla programistów.
95
96 %package -n libfuse-static
97 Summary:        Filesytem in Userspace - static libraries
98 Summary(pl):    Systemu plików w przestrzeni u¿ytkownika - Biblioteki statyczne
99 Group:          Development/Libraries
100 Release:        %{_rel}
101 Requires:       libfuse-devel = %{epoch}:%{version}-%{_rel}
102
103 %description -n libfuse-static
104 Static libfuse libraries.
105
106 %description -n libfuse-static -l pl
107 Statyczne biblioteki libfuse
108
109 %package -n fusermount
110 Summary:        Filesytem in Userspace utilities
111 Summary(pl):    Narzêdzia obs³uguj±ce systemu plików w przestrzeni u¿ytkownika
112 Group:          Applications/System
113 Release:        %{_rel}
114
115 %description -n fusermount
116 Filesytem in Userspace utilities. It provide a secure method for non
117 privileged users to create and mount their own filesystem
118 implementations.
119
120 %description -n fusermount -l pl
121 Narzêdzia obs³uguj±ce systemu plików w przestrzeni u¿ytkownika.
122 Dostarcza bezpieczn± metodê tworzenia i montowania w³asnych systemów
123 plików dla nie uprzywilejowanych userów.
124
125 %prep
126 %setup -q -n fuse-%{version}
127 %patch0 -p1
128 %patch1 -p1
129
130 %build
131 %{__aclocal}
132 %{__autoconf}
133 %{__automake}
134 %configure \
135     --enable-lib \
136     --enable-util \
137     --with-kernel=%{_kernelsrcdir}
138
139 %if %{with kernel}
140 cd kernel
141 for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
142     if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
143         exit 1
144     fi
145     rm -rf include
146     install -d include/{linux,config}
147     ln -sf %{_kernelsrcdir}/config-$cfg .config
148     ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
149     ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
150     touch include/config/MARKER
151     %{__make} -C %{_kernelsrcdir} clean \
152         RCS_FIND_IGNORE="-name '*.ko' -o" \
153         M=$PWD O=$PWD \
154         %{?with_verbose:V=1}
155     %{__make} -C %{_kernelsrcdir} modules \
156         EXTRA_CFLAGS='-I../include -DFUSE_VERSION=\"1.4\"' \
157         RCS_FIND_IGNORE="-name '*.ko' -o" \
158         CC="%{__cc}" CPP="%{__cpp}" \
159         M=$PWD O=$PWD \
160         %{?with_verbose:V=1}
161
162     mv fuse.ko fuse-$cfg.ko
163 done
164 cd -
165 %endif
166
167 %if %{with userspace}
168 cd lib
169 for f in fuse.c fuse_mt.c helper.c mount.c; do
170 libtool --mode=compile --tag=CC %{__cc} -c -I. -I../include -DHAVE_CONFIG_H $f
171 done
172 libtool --mode=link %{__cc} -o libfuse.la fuse.lo fuse_mt.lo helper.lo mount.lo -rpath %{_libdir}
173 cd -
174
175 %{__make} -C util
176 %endif
177
178 %install
179 rm -rf $RPM_BUILD_ROOT
180
181 install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir},%{_libdir}}
182
183 %if %{with userspace}
184 cd util
185 install fusermount $RPM_BUILD_ROOT%{_bindir}/
186 cd -
187 install include/fuse.h $RPM_BUILD_ROOT%{_includedir}
188 cd lib
189 libtool --mode=install install libfuse.la $RPM_BUILD_ROOT%{_libdir}/libfuse.la
190 cd -
191 %endif
192
193 %if %{with kernel}
194 cd kernel
195 install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/kernel/fs
196 install fuse-%{?with_dist_kernel:up}%{!?with_dist_kernel:nondist}.ko \
197         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/fs/fuse.ko
198 %if %{with smp} && %{with dist_kernel}
199 install fuse-smp.ko \
200         $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}smp/kernel/fs/fuse.ko
201 %endif
202 %endif
203
204 %clean
205 rm -rf $RPM_BUILD_ROOT
206
207 %post
208 %depmod %{_kernel_ver}
209
210 %postun
211 %depmod %{_kernel_ver}
212
213 %post -n kernel-smp-misc-fuse
214 %depmod %{_kernel_ver}smp
215
216 %postun -n kernel-smp-misc-fuse
217 %depmod %{_kernel_ver}smp
218
219 %if %{with kernel}
220 %files
221 %defattr(644,root,root,755)
222 %doc README NEWS ChangeLog AUTHORS
223 %doc patch/
224 /lib/modules/%{_kernel_ver}/kernel/fs/fuse.ko*
225
226 %if %{with smp} && %{with dist_kernel}
227 %files -n kernel-smp-misc-fuse
228 %defattr(644,root,root,755)
229 %doc README NEWS ChangeLog AUTHORS
230 %doc patch/
231 /lib/modules/%{_kernel_ver}smp/kernel/fs/fuse.ko*
232 %endif
233 %endif
234
235 %if %{with userspace}
236 %files -n fusermount
237 %defattr(644,root,root,755)
238 # suid needed? NO!
239 %attr(755,root,root) %{_bindir}/fusermount
240 # do it ! failed
241 # %%attr(755,root,root) %{_sbindir}/mount.fuse
242
243 %files -n libfuse
244 %defattr(644,root,root,755)
245 %attr(755,root,root) %{_libdir}/libfuse.so.*.*.*
246
247 %files -n libfuse-devel
248 %defattr(644,root,root,755)
249 %{_includedir}/fuse.h
250 %{_libdir}/libfuse.la
251 %attr(755,root,root) %{_libdir}/libfuse.so
252
253 %files -n libfuse-static
254 %defattr(644,root,root,755)
255 %{_libdir}/libfuse.a
256 %endif
This page took 0.068508 seconds and 4 git commands to generate.