summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-fs/fuse/Manifest1
-rw-r--r--sys-fs/fuse/fuse-3.10.4.ebuild69
2 files changed, 70 insertions, 0 deletions
diff --git a/sys-fs/fuse/Manifest b/sys-fs/fuse/Manifest
index 9794a201c96..c22aef3b2f0 100644
--- a/sys-fs/fuse/Manifest
+++ b/sys-fs/fuse/Manifest
@@ -1,3 +1,4 @@
DIST fuse-2.9.9.tar.gz 1813177 BLAKE2B 9e9141380bda46eb0bcce325c6fd293fe3844fe884a4952bb38d4b89dc48b728ffcc891038b3a7a861f05acfacce9dd7bb0e11d600609f3ad0ab278ccbe98847 SHA512 3d82fafd04f2924299bb09d2bb144935fa004a43fb9a6568e2e1cc5a60fded2efa1711029a0d7f12b3e6e4501f7217f2ee3545646d89da8dece083cb390f23e2
DIST fuse-3.10.3.tar.xz 2558792 BLAKE2B 5b730321677e5080148c2ca5db35ed14b6f1919c4233ddd54d3a0613199aa06f45124995c5a56d2e8d4551bf328ff26ae034fae42c39035148361cd2d99600f1 SHA512 7329dd26284a15309eafc2b8b3f29ed431a5ce9c927c5965a51c270718f4915c318b84e4cf4e7f7ee1913831ce943a2e1a378d0bd2a1215eba7b9bc65efb7942
+DIST fuse-3.10.4.tar.xz 2787472 BLAKE2B 174b51bf55544bbc08e04089a4d8685b371d3f584e337ed0d8d82c62e10c14b6ef14a964d6627e8a121036db1ab4c6c1ccd413c08f8685d3d91893874427e46f SHA512 1cb7600dc04f148b15ec3183d0348320dd946cf15d4077798e7e34fe7e8202837718c8b8bd1f190b7dddda2453ee2b0433d77e18f142ecb7affec1cae29520f6
DIST fuse-3.9.3.tar.xz 1805676 BLAKE2B 907806f8799ce70f07d65e08a058709901bafa0fbfa098d3e66f9913f08b1d5f3e35a099f84832f221b5aa8681f69d8291f2a20967acdc8f0b7b0b72c2ae414b SHA512 e4a4bfbc276b1d676211d93878b487c5946f54e8811e929fad4ff32de1f64e0c4e762d33c43e3a04afae538f41efe8d29221f45340ccd74f0055f644802f3e26
diff --git a/sys-fs/fuse/fuse-3.10.4.ebuild b/sys-fs/fuse/fuse-3.10.4.ebuild
new file mode 100644
index 00000000000..e3f0349a01b
--- /dev/null
+++ b/sys-fs/fuse/fuse-3.10.4.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+inherit 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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+suid test"
+RESTRICT="!test? ( test )"
+
+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() {
+ has_version -b "dev-python/pytest[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python_setup
+}
+
+multilib_src_configure() {
+ local emesonargs=(
+ $(meson_use test examples)
+ -Duseroot=false
+ -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
+ )
+ meson_src_configure
+}
+
+src_test() {
+ if [[ ${EUID} != 0 ]]; then
+ ewarn "Running as non-root user, skipping tests"
+ elif has sandbox ${FEATURES}; then
+ ewarn "Sandbox enabled, skipping tests"
+ else
+ multilib-minimal_src_test
+ fi
+}
+
+multilib_src_test() {
+ ${EPYTHON} -m pytest test || die
+}
+
+multilib_src_install_all() {
+ # installed via fuse-common
+ rm -r "${ED}"/{etc,$(get_udevdir)} || 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}
+}