diff options
-rw-r--r-- | sys-fs/fuse/Manifest | 1 | ||||
-rw-r--r-- | sys-fs/fuse/fuse-3.10.0.ebuild | 79 |
2 files changed, 80 insertions, 0 deletions
diff --git a/sys-fs/fuse/Manifest b/sys-fs/fuse/Manifest index ea7077412b6e..729884e1a3af 100644 --- a/sys-fs/fuse/Manifest +++ b/sys-fs/fuse/Manifest @@ -1,4 +1,5 @@ DIST fuse-2.9.9.tar.gz 1813177 BLAKE2B 9e9141380bda46eb0bcce325c6fd293fe3844fe884a4952bb38d4b89dc48b728ffcc891038b3a7a861f05acfacce9dd7bb0e11d600609f3ad0ab278ccbe98847 SHA512 3d82fafd04f2924299bb09d2bb144935fa004a43fb9a6568e2e1cc5a60fded2efa1711029a0d7f12b3e6e4501f7217f2ee3545646d89da8dece083cb390f23e2 +DIST fuse-3.10.0.tar.xz 1899596 BLAKE2B 39f7c7caf3d7cd2807381ee968a6fd704b29e1171a811d918fe70b9fdf6891d553d97a70ac7b217e01c4776e3d8576c60bef0bd3f7b520685d7d0e4ee3b78bf9 SHA512 a59d430f46ad59d51848ab9a07a02940f167fd5552232067dbcc442717a444a2ab30b1743282a7839ae79c0a74949742cd54d09472449c90b5fcc89adc7eff35 DIST fuse-3.9.1.tar.xz 1595308 BLAKE2B 3b1d5c8ac99e96183581d034889d8d6cab8feeee26cafd765dc4ab2cbeb655b3b162836c960ceacf08cd458bec2daaf0474877c9611ef6a6543795e4971ddc12 SHA512 295bb62274264789c977a1fee78c6c122a2f227ae85d750b8519cafbdcf6551499b77cf021d83cc8261831e29761c166d84a4e50bdebb4191c76bcad1d15d329 DIST fuse-3.9.2.tar.xz 1674292 BLAKE2B 42d796802d3ce2e072120153b695d1e64d160695714c58ffba7859281bfa2c1ff3d9f95b92a38c1a5443abe5a8468f0d9d285845b97a444ae1b64bf750e234ae SHA512 47795d2e0431c93ff36609247016a5ddfa631e4dcdc56cb579030bdb78497e3fa2db28b0cbadd0848024be39381c54f8441de28b0af51f8b800519e76c7af9ed DIST fuse-3.9.3.tar.xz 1805676 BLAKE2B 907806f8799ce70f07d65e08a058709901bafa0fbfa098d3e66f9913f08b1d5f3e35a099f84832f221b5aa8681f69d8291f2a20967acdc8f0b7b0b72c2ae414b SHA512 e4a4bfbc276b1d676211d93878b487c5946f54e8811e929fad4ff32de1f64e0c4e762d33c43e3a04afae538f41efe8d29221f45340ccd74f0055f644802f3e26 diff --git a/sys-fs/fuse/fuse-3.10.0.ebuild b/sys-fs/fuse/fuse-3.10.0.ebuild new file mode 100644 index 000000000000..a1bb3217aed0 --- /dev/null +++ b/sys-fs/fuse/fuse-3.10.0.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{6,7,8} ) + +inherit meson multilib-minimal flag-o-matic 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 ~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=( + -Dexamples=$(usex test true false) + -Duseroot=false + -Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d" + ) + meson_src_configure +} + +multilib_src_compile() { + eninja +} + +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() { + DESTDIR="${D}" eninja install +} + +multilib_src_install_all() { + einstalldocs + + # 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} +} |