X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=libfuse.spec;h=f779945ed732d67c8299c88992dbf12053cdbf2c;hb=7f2ac30;hp=2c78d7109418db7362ed69f7c23bbc382cd12952;hpb=1ad71c20480431e2bb0530d74757011852c59127;p=packages%2Flibfuse.git diff --git a/libfuse.spec b/libfuse.spec index 2c78d71..f779945 100644 --- a/libfuse.spec +++ b/libfuse.spec @@ -1,56 +1,20 @@ -# -# Condtional build: -%bcond_without dist_kernel # without distribution kernel -%bcond_without kernel # don't build kernel modules -%bcond_without smp # without smp packages -%bcond_without userspace # don't build userspace tools -%bcond_with verbose # verbose build (V=1) -%bcond_with grsec_kernel # build for kernel-grsecurity -# -%if %{with kernel} && %{with dist_kernel} && %{with grsec_kernel} -%define alt_kernel grsecurity -%endif -# -%ifarch sparc -%undefine with_smp -%endif -# -%define _rel 1 Summary: Filesystem in Userspace -Summary(pl): System plików w przestrzeni u¿ytkownika +Summary(pl.UTF-8): System plików w przestrzeni użytkownika Name: libfuse -Version: 2.6.2 -Release: %{_rel} -Epoch: 0 -License: GPL v2 +Version: 2.9.9 +Release: 1 +License: LGPL v2 (library), GPL v2 (tools) Group: Applications/System -Source0: http://dl.sourceforge.net/fuse/fuse-%{version}.tar.gz -# Source0-md5: fa3837fa6bc920303b02fb3820606964 -Source1: fuse.conf +#Source0Download: https://github.com/libfuse/libfuse/releases +Source0: https://github.com/libfuse/libfuse/releases/download/fuse-%{version}/fuse-%{version}.tar.gz +# Source0-md5: 8000410aadc9231fd48495f7642f3312 Patch0: kernel-misc-fuse-Makefile.am.patch -Patch1: %{name}-link.patch -URL: http://fuse.sourceforge.net/ -BuildRequires: autoconf +URL: https://github.com/libfuse/libfuse +BuildRequires: autoconf >= 2.60 BuildRequires: automake BuildRequires: libtool -BuildRequires: cpp BuildRequires: sed >= 4.0 -%if %{with kernel} -%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.9} -BuildRequires: rpmbuild(macros) >= 1.330 -%endif -%if %{with userspace} -BuildRequires: libselinux-devel -%endif -Requires(postun): /sbin/ldconfig -Requires(postun): /usr/sbin/groupdel -Requires(pre): /usr/bin/getgid -Requires(pre): /usr/sbin/groupadd -Buildroot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) - -%if !%{with kernel} -%undefine with_dist_kernel -%endif +BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description FUSE (Filesystem in Userspace) is a simple interface for userspace @@ -60,197 +24,158 @@ mount their own filesystem implementations. This package contains a shared library. -%description -l pl -FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni -u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa. -FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i -montowania w³asnych implementacji systemów plików przez zwyk³ych -(nieuprzywilejowanych) u¿ytkowników. +%description -l pl.UTF-8 +FUSE stanowi prosty interfejs dla programów działających w przestrzeni +użytkownika eksportujący wirtualny system plików do jądra Linuksa. +FUSE ma również na celu udostępnienie bezpiecznej metody tworzenia i +montowania własnych implementacji systemów plików przez zwykłych +(nieuprzywilejowanych) użytkowników. -Ten pakiet zawiera bibliotekê wspó³dzielon±. +Ten pakiet zawiera bibliotekę współdzieloną. %package devel -Summary: Filesytem in Userspace - Development header files -Summary(pl): System plików w przestrzeni u¿ytkownika - pliki nag³ówkowe +Summary: Filesystem in Userspace - development header files +Summary(pl.UTF-8): System plików w przestrzeni użytkownika - pliki nagłówkowe +License: LGPL v2 Group: Development/Libraries -Requires: %{name} = %{epoch}:%{version}-%{_rel} +Requires: %{name} = %{version}-%{release} %description devel -Libfuse library header files. +FUSE libraries header files. -%description devel -l pl -Pliki nag³ówkowe biblioteki libfuse. +%description devel -l pl.UTF-8 +Pliki nagłówkowe bibliotek FUSE. %package static -Summary: Filesytem in Userspace - static library -Summary(pl): System plików w przestrzeni u¿ytkownika - biblioteka statyczna +Summary: Filesystem in Userspace - static libraries +Summary(pl.UTF-8): System plików w przestrzeni użytkownika - biblioteki statyczne +License: LGPL v2 Group: Development/Libraries -Requires: libfuse-devel = %{epoch}:%{version}-%{_rel} +Requires: %{name}-devel = %{version}-%{release} %description static -Static libfuse libraries. +Static FUSE libraries. -%description static -l pl -Statyczna biblioteka libfuse. +%description static -l pl.UTF-8 +Statyczne biblioteki FUSE. -%package -n kernel%{_alt_kernel}-misc-fuse -Summary: Filesystem in Userspace -Summary(pl): System plików w przestrzeni u¿ytkownika -Release: %{_rel}@%{_kernel_ver_str} -License: GPL v2 -Group: Base/Kernel -Requires(post,postun): /sbin/depmod -%if %{with dist_kernel} -%requires_releq_kernel_up -Requires(postun): %releq_kernel_up -%endif -%if "%{_alt_kernel}" != "%{nil}" -Provides: kernel-misc-fuse -%endif - -%description -n kernel%{_alt_kernel}-misc-fuse -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. +%package apidocs +Summary: API documentation for FUSE library +Summary(pl.UTF-8): Dokumentacja API bibliotek FUSE +Group: Documentation -%description -n kernel%{_alt_kernel}-misc-fuse -l pl -FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni -u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa. -FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i -montowania w³asnych implementacji systemów plików przez zwyk³ych -(nieuprzywilejowanych) u¿ytkowników. +%description apidocs +API documentation for FUSE library. -%package -n kernel%{_alt_kernel}-smp-misc-fuse -Summary: Filesystem in Userspace -Summary(pl): System plików w przestrzeni u¿ytkownika -Release: %{_rel}@%{_kernel_ver_str} +%description apidocs -l pl.UTF-8 +Dokumentacja API bibliotek FUSE. + +%package tools +Summary: Tools to mount FUSE based filesystems +Summary(pl.UTF-8): Narzędzia do montowania systemów plików opartych na FUSE License: GPL v2 -Group: Base/Kernel -Requires(post,postun): /sbin/depmod -%if %{with dist_kernel} -%requires_releq_kernel_smp -Requires(postun): %releq_kernel_smp -%endif -Provides: kernel-misc-fuse - -%description -n kernel%{_alt_kernel}-smp-misc-fuse -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. +Group: Applications/System +Requires(pre): /usr/bin/getgid +Requires(pre): /usr/sbin/groupadd +Requires: %{name} = %{version}-%{release} +Requires: libfuse-common >= %{version} +Requires: mount >= 2.18 +Provides: group(fuse) +Obsoletes: fusermount + +%description tools +Tools to mount FUSE based filesystems. -%description -n kernel%{_alt_kernel}-smp-misc-fuse -l pl -FUSE stanowi prosty interfejs dla programów dzia³aj±cych w przestrzeni -u¿ytkownika eksportuj±cy wirtualny system plików do j±dra Linuksa. -FUSE ma równie¿ na celu udostêpnienie bezpiecznej metody tworzenia i -montowania w³asnych implementacji systemów plików przez zwyk³ych -(nieuprzywilejowanych) u¿ytkowników. +%description tools -l pl.UTF-8 +Narzędzia do montowania systemów plików opartych na FUSE. %prep %setup -q -n fuse-%{version} %patch0 -p1 -%patch1 -p1 sed -i '/FUSERMOUNT_PROG/s,fusermount,%{_bindir}/fusermount,' lib/mount.c +# gold is missing base versioning +install -d ld-dir +[ ! -x /usr/bin/ld.bfd ] || ln -sf /usr/bin/ld.bfd ld-dir/ld + %build +PATH=$(pwd)/ld-dir:$PATH %{__libtoolize} %{__aclocal} -%{__autoheader} %{__autoconf} +%{__autoheader} %{__automake} %configure \ - --%{?with_kernel:en}%{!?with_kernel:dis}able-kernel-module \ + INIT_D_PATH=/etc/rc.d/init.d \ + --disable-silent-rules \ --enable-lib \ - --enable-util \ - %{?with_kernel:--with-kernel=%{_kernelsrcdir}} + --enable-util -%if %{with userspace} -cp kernel/fuse_kernel.h include/ -for DIR in include lib util; do -%{__make} -C $DIR -done -%endif - -%if %{with kernel} -%build_kernel_modules -m fuse -C kernel -%endif +%{__make} %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{%{_pkgconfigdir},%{_sysconfdir}} +install -d $RPM_BUILD_ROOT{/%{_lib},%{_pkgconfigdir},%{_sysconfdir}} -%if %{with userspace} -for DIR in include lib util; do -%{__make} -C $DIR install \ +%{__make} install \ DESTDIR=$RPM_BUILD_ROOT -done + +%{__mv} $RPM_BUILD_ROOT%{_libdir}/libfuse.so.* $RPM_BUILD_ROOT/%{_lib} +%{__rm} $RPM_BUILD_ROOT%{_libdir}/libfuse.so +ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libfuse.so.*.*) \ + $RPM_BUILD_ROOT%{_libdir}/libfuse.so install fuse.pc $RPM_BUILD_ROOT%{_pkgconfigdir} -install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir} -%endif -%if %{with kernel} -%install_kernel_modules -m kernel/fuse -d kernel/fs -%endif +# part of default udev rules nowdays +%{__rm} $RPM_BUILD_ROOT/etc/udev/rules.d/99-fuse.rules + +# not needed +%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/fuse %clean rm -rf $RPM_BUILD_ROOT -%pre -%groupadd -g 84 fuse - %post -p /sbin/ldconfig -%postun -/sbin/ldconfig -if [ "$1" = "0" ] ; then - %groupremove fuse -fi - -%post -n kernel%{_alt_kernel}-misc-fuse -%depmod %{_kernel_ver} - -%postun -n kernel%{_alt_kernel}-misc-fuse -%depmod %{_kernel_ver} +%postun -p /sbin/ldconfig -%post -n kernel%{_alt_kernel}-smp-misc-fuse -%depmod %{_kernel_ver}smp - -%postun -n kernel%{_alt_kernel}-smp-misc-fuse -%depmod %{_kernel_ver}smp +%pre tools +%groupadd -g 84 fuse -%if %{with userspace} %files %defattr(644,root,root,755) -%doc README NEWS ChangeLog AUTHORS doc/* -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fuse.conf -%attr(4754,root,fuse) %{_bindir}/fusermount -%attr(755,root,root) %{_bindir}/ulockmgr_server -%attr(755,root,root) /sbin/mount.fuse -%attr(755,root,root) %{_libdir}/lib*.so.*.*.* +%doc README.md NEWS ChangeLog AUTHORS doc/{how-fuse-works,kernel.txt} +%attr(755,root,root) /%{_lib}/libfuse.so.*.*.* +%attr(755,root,root) %ghost /%{_lib}/libfuse.so.2 +%attr(755,root,root) %{_libdir}/libulockmgr.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libulockmgr.so.1 %files devel %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/lib*.so -%{_libdir}/lib*.la -%{_includedir}/fuse* +%attr(755,root,root) %{_libdir}/libfuse.so +%attr(755,root,root) %{_libdir}/libulockmgr.so +%{_libdir}/libfuse.la +%{_libdir}/libulockmgr.la +%{_includedir}/fuse +%{_includedir}/fuse.h %{_includedir}/ulockmgr.h %{_pkgconfigdir}/fuse.pc %files static %defattr(644,root,root,755) -%{_libdir}/lib*.a -%endif +%{_libdir}/libfuse.a +%{_libdir}/libulockmgr.a -%if %{with kernel} -%files -n kernel%{_alt_kernel}-misc-fuse +%files apidocs %defattr(644,root,root,755) -/lib/modules/%{_kernel_ver}/kernel/fs/fuse.ko* +%doc doc/html/* -%if %{with smp} && %{with dist_kernel} -%files -n kernel%{_alt_kernel}-smp-misc-fuse +%files tools %defattr(644,root,root,755) -/lib/modules/%{_kernel_ver}smp/kernel/fs/fuse.ko* -%endif -%endif +%attr(4755,root,root) %{_bindir}/fusermount +%attr(755,root,root) %{_bindir}/ulockmgr_server +%attr(755,root,root) /sbin/mount.fuse +%{_mandir}/man1/fusermount.1* +%{_mandir}/man1/ulockmgr_server.1* +%{_mandir}/man8/mount.fuse.8*