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