diff options
Diffstat (limited to 'sys-fs/fuse/fuse-3.13.1.ebuild')
-rw-r--r-- | sys-fs/fuse/fuse-3.13.1.ebuild | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/sys-fs/fuse/fuse-3.13.1.ebuild b/sys-fs/fuse/fuse-3.13.1.ebuild new file mode 100644 index 000000000000..a6c210da4b63 --- /dev/null +++ b/sys-fs/fuse/fuse-3.13.1.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..10} ) +inherit flag-o-matic meson-multilib udev python-any-r1 + +DESCRIPTION="An interface for filesystems implemented in userspace" +HOMEPAGE="https://github.com/libfuse/libfuse" +SRC_URI="https://github.com/libfuse/libfuse/releases/download/${P}/${P}.tar.xz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="+suid test" +RESTRICT="!test? ( test ) test? ( userpriv )" + +BDEPEND="virtual/pkgconfig + test? ( + ${PYTHON_DEPS} + $(python_gen_any_dep 'dev-python/pytest[${PYTHON_USEDEP}]') + )" +RDEPEND=">=sys-fs/fuse-common-3.3.0-r1" + +DOCS=( AUTHORS ChangeLog.rst README.md doc/README.NFS doc/kernel.txt ) + +python_check_deps() { + python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" +} + +pkg_setup() { + use test && python-any-r1_pkg_setup +} + +multilib_src_configure() { + # bug #853058 + filter-lto + + local emesonargs=( + $(meson_use test examples) + $(meson_use test tests) + -Duseroot=false + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + ) + meson_src_configure +} + +src_test() { + if has sandbox ${FEATURES}; then + ewarn "Sandbox enabled, skipping tests" + else + multilib-minimal_src_test + fi +} + +multilib_src_test() { + epytest +} + +multilib_src_install_all() { + # Installed via fuse-common + rm -r "${ED}"{/etc,$(get_udevdir)} || die + rm -rf "${ED}"/etc || die + + # useroot=false prevents the build system from doing this. + use suid && fperms u+s /usr/bin/fusermount3 + + # manually install man pages to respect compression + rm -r "${ED}"/usr/share/man || die + doman doc/{fusermount3.1,mount.fuse3.8} +} |