# Need to be specific for flatpak builds, otherwise it'll create rules # in other directory than /app/etc which will make builds fail. # On Fedora, this should be the same definition. %if 0%{?flatpak} %global _udevrulesdir %{_prefix}/lib/udev/rules.d %endif Name: fuse3 Version: 3.14.1 Release: 1%{?dist} Summary: File System in Userspace (FUSE) v3 utilities License: GPL+ URL: http://fuse.sf.net Source0: https://github.com/libfuse/libfuse/archive/fuse-%{version}.tar.gz Source1: fuse.conf Patch0: fuse3-gcc11.patch BuildRequires: which %if ! 0%{?el6} Conflicts: filesystem < 3 %endif BuildRequires: libselinux-devel BuildRequires: meson, ninja-build, gcc, gcc-c++ %if ! 0%{?el6} && ! 0%{?el7} BuildRequires: systemd-udev %endif %if 0%{?el6} BuildRequires: udev, kernel-devel %else Requires: %{_sysconfdir}/fuse.conf %endif # fuse-common 3.4.2-3 had the fuse & fuse3 man pages in it Conflicts: fuse-common < 3.4.2-4 %description With FUSE it is possible to implement a fully functional filesystem in a userspace program. This package contains the FUSE v3 userspace tools to mount a FUSE filesystem. %package libs Summary: File System in Userspace (FUSE) v3 libraries License: LGPLv2+ %if ! 0%{?el6} Conflicts: filesystem < 3 %endif %description libs Devel With FUSE it is possible to implement a fully functional filesystem in a userspace program. This package contains the FUSE v3 libraries. %package devel Summary: File System in Userspace (FUSE) v3 devel files Requires: %{name}-libs = %{version}-%{release} Requires: pkgconfig License: LGPLv2+ %if ! 0%{?el6} Conflicts: filesystem < 3 %endif %description devel With FUSE it is possible to implement a fully functional filesystem in a userspace program. This package contains development files (headers, pgk-config) to develop FUSE v3 based applications/filesystems. %if ! 0%{?el6} && ! 0%{?el7} %package -n fuse-common Summary: Common files for File System in Userspace (FUSE) v2 and v3 License: GPL+ %description -n fuse-common Common files for FUSE v2 and FUSE v3. %endif %prep %setup -n libfuse-fuse-%{version} %patch -P0 -p1 %build export LC_ALL=en_US.UTF-8 %if ! 0%{?_vpath_srcdir:1} %global _vpath_srcdir . %endif %if ! 0%{?_vpath_builddir:1} %global _vpath_builddir build %endif %if 0%{?el6} %if ! 0%{?__global_ldflags:1} %global __global_ldflags "" %endif %meson -D udevrulesdir=%{_udevrulesdir} %else %if 0%{?flatpak} %meson -D udevrulesdir=%{_udevrulesdir} %else %meson %endif %endif (cd %{_vpath_builddir} %if 0%{?el6} meson configure -D c_args=-I"`ls -d /usr/src/kernels/*/include|head -1`" %endif %if 0%{?el6} || 0%{?el7} meson configure -D examples=false %endif # don't have root for installation meson configure -D useroot=false ninja-build reconfigure ) %meson_build %install export MESON_INSTALL_DESTDIR_PREFIX=%{buildroot}%{_prefix} %meson_install find %{buildroot} . find %{buildroot} -type f -name "*.la" -exec rm -f {} ';' # change from 4755 to 0755 to allow stripping -- fixed later in files chmod 0755 %{buildroot}/%{_bindir}/fusermount3 # Get rid of static libs rm -f %{buildroot}/%{_libdir}/*.a # No need to create init-script rm -f %{buildroot}%{_sysconfdir}/init.d/fuse3 # This path is hardcoded: # https://github.com/libfuse/libfuse/blob/master/util/install_helper.sh#L43 # so flatpaks will fail unless we delete it below. rm -f %{buildroot}/etc/init.d/fuse3 %if 0%{?el6} || 0%{?el7} # This is in the fuse package on el7 and there's no default on el6 rm -f %{buildroot}%{_sysconfdir}/fuse.conf %else # Install config-file install -p -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir} %endif # Delete pointless udev rules (brc#748204) rm -f %{buildroot}%{_udevrulesdir}/99-fuse3.rules %if 0%{?el6} || 0%{?el7} %post -p /sbin/ldconfig libs %postun -p /sbin/ldconfig libs %else %ldconfig_scriptlets libs %endif %{!?_licensedir:%global license %%doc} %files %license LICENSE GPL2.txt %doc AUTHORS ChangeLog.rst README.md %{_sbindir}/mount.fuse3 %attr(4755,root,root) %{_bindir}/fusermount3 %{_mandir}/man1/* %{_mandir}/man8/* %if 0%{?el6} %{_udevrulesdir}/* %endif %files libs %license LGPL2.txt %{_libdir}/libfuse3.so.* %files devel %{_libdir}/libfuse3.so %{_libdir}/pkgconfig/fuse3.pc %{_includedir}/fuse3/ %if ! 0%{?el6} && ! 0%{?el7} %files -n fuse-common %config(noreplace) %{_sysconfdir}/fuse.conf %endif %changelog * Mon Apr 3 2023 Tom Callaway - 3.14.1-1 - update to 3.14.1 * Wed Apr 19 2023 Richard W.M. Jones - 3.14.0-1 - Update to 3.14.0 * Tue Apr 11 2023 Adam Williamson - 3.13.1-2 - Backport fix for setxattr problem from upstream (#2183034) * Wed Feb 8 2023 Tom Callaway - 3.13.1-1 - update to 3.13.1 * Fri Jan 20 2023 Tom Callaway - 3.13.0-1 - update to 3.13.0 * Thu Jan 19 2023 Fedora Release Engineering - 3.12.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Fri Sep 9 2022 Tom Callaway - 3.12.0-1 - update to 3.12.0 * Thu Jul 21 2022 Fedora Release Engineering - 3.10.5-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Mon Feb 21 2022 Tom Callaway - 3.10.5-4 - force udevrulesdir option for flatpak builds * Wed Feb 16 2022 Tom Callaway - 3.10.5-3 - fix flatpak issues * Thu Jan 20 2022 Fedora Release Engineering - 3.10.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Thu Sep 16 2021 Tom Callaway - 3.10.5-1 - update to 3.10.5 * Wed Jul 21 2021 Fedora Release Engineering - 3.10.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue Jun 15 2021 Tom Callaway - 3.10.4-1 - update to 3.10.4 * Thu May 6 2021 Tom Callaway - 3.10.3-1 - update to 3.10.3 * Fri Feb 5 2021 Tom Callaway - 3.10.2-1 - update to 3.10.2 * Tue Jan 26 2021 Fedora Release Engineering - 3.10.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Dec 7 2020 Tom Callaway - 3.10.1-1 - update to 3.10.1 * Wed Oct 14 2020 Jeff Law - 3.10.0-2 - Add missing #include for gcc-11 * Mon Oct 12 2020 Tom Callaway - 3.10.0-1 - update to 3.10.0 - enable lto * Mon Aug 10 2020 Tom Callaway - 3.9.4-1 - update to 3.9.4 * Mon Jul 27 2020 Fedora Release Engineering - 3.9.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Wed Jul 1 2020 Jeff Law - 3.9.2-2 - Disable LTO * Thu Jun 18 2020 Tom Callaway - 3.9.2-1 - update to 3.9.2 * Thu Mar 19 2020 Tom Callaway - 3.9.1-1 - update to 3.9.1 * Tue Jan 28 2020 Fedora Release Engineering - 3.9.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Mon Dec 16 2019 Tom Callaway - 3.9.0-1 - update to 3.9.0 * Mon Nov 4 2019 Tom Callaway - 3.8.0-1 - update to 3.8.0 * Fri Sep 27 2019 Tom Callaway - 3.7.0-1 - update to 3.7.0 * Sun Sep 1 2019 Peter Lemenkov - 3.6.2-1 - Update to 3.6.2 * Thu Jul 25 2019 Fedora Release Engineering - 3.6.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Wed Jul 03 2019 Dave Dykstra - 3.6.1-3 - Update to the final version of pr #421 * Wed Jul 03 2019 Dave Dykstra - 3.6.1-2 - Update to newer version of pr #421 - Disable building examples on el7 * Thu Jun 13 2019 Tom Callaway - 3.6.1-1 - Update to 3.6.1 * Fri May 24 2019 Dave Dykstra - 3.5.0-1 - Upgrade to upstream 3.5.0 * Sat May 04 2019 Dave Dykstra - 3.4.2-7 - Fix building on el6 * Wed May 01 2019 Dave Dykstra - 3.4.2-6 - Need Conflicts: fuse-common < 3.4.2-4, because <= 3.4.2-3 isn't quite enough. * Wed May 01 2019 Dave Dykstra - 3.4.2-5 - Update the Conflicts: fuse-common <= version to 3.4.2-3 * Wed May 01 2019 Dave Dykstra - 3.4.2-4 - Bump release number in order to larger than a rebuild of fuse package done before separation pull request was merged. * Mon Apr 08 2019 Dave Dykstra - 3.4.2-3 - Separate out from fuse package