mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
sys-fs/fuse: add 3.18.1
* Only filter LTO with Clang, see https://bugs.gentoo.org/853058#c6 for why, rather than unconditionally. * Tests got a bit better with some tweaks but even as root, they picked up the wrong `hello` binary on the system and I gave up at that point. * Added USDT support via USE=systemtap, but it has a copy of usdt.h, so no dependencies. Bug: https://bugs.gentoo.org/853058 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
@@ -17,6 +17,10 @@
|
||||
|
||||
#--- END OF EXAMPLES ---
|
||||
|
||||
# Sam James <sam@gentoo.org> (2025-12-23)
|
||||
# sys-process/numactl is available here
|
||||
sys-fs/fuse -io-uring
|
||||
|
||||
# Mike Gilbert <floppym@gentoo.org> (2025-12-15)
|
||||
# arch-specific platform values
|
||||
sys-boot/grub -grub_platforms_pc -grub_platforms_xen-32
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Sam James <sam@gentoo.org> (2025-12-23)
|
||||
# sys-process/numactl is available here
|
||||
sys-fs/fuse -io-uring
|
||||
|
||||
# Michał Górny <mgorny@gentoo.org> (2025-11-01)
|
||||
# app-crypt/sequoia-chameleon-gnupg is keyworded here.
|
||||
app-alternatives/gpg -sequoia
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Sam James <sam@gentoo.org> (2025-12-23)
|
||||
# sys-process/numactl is not available everywhere
|
||||
sys-fs/fuse io-uring
|
||||
|
||||
# Mike Gilbert <floppym@gentoo.org (2025-12-15)
|
||||
# arch-specific platform values
|
||||
sys-boot/grub grub_platforms_loongson grub_platforms_qemu-mips
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
DIST fuse-2.9.9.tar.gz 1813177 BLAKE2B 9e9141380bda46eb0bcce325c6fd293fe3844fe884a4952bb38d4b89dc48b728ffcc891038b3a7a861f05acfacce9dd7bb0e11d600609f3ad0ab278ccbe98847 SHA512 3d82fafd04f2924299bb09d2bb144935fa004a43fb9a6568e2e1cc5a60fded2efa1711029a0d7f12b3e6e4501f7217f2ee3545646d89da8dece083cb390f23e2
|
||||
DIST fuse-3.16.2.tar.gz 14165836 BLAKE2B 04f0037f924ef7b7cc90cb4c26afd1e942da69efebd93f3114774f2101550729379a0256ba190d7c99249fbce4ead5902133c01b29d8d75f41777d148540f521 SHA512 3e8889863cd67dada67271f095f694dc9e5aaf2561fd1e2285aee95b5a54e692bb195ab8fce57fc2bdf08d0ea17b6d56ca4967b4e4371d639d6133907b2370d3
|
||||
DIST fuse-3.17.4.tar.gz 7307414 BLAKE2B eb9dfd5c446a35f7ef0b6b58c52fe22d306782f5a8b56dc54b00829aa8a59700bd2b03755cc58221d154b88cbdb3da59913700b3d7efa67a586bfaa8fef00e9d SHA512 5451b374ceadb4cb5a8f0c396f1111932ec63984b80dfad7a76258c026b4e8e5ab4a563bb4a9e272d7fa62a5f452113885d4c3ea080a9f56b6aeb85d50c01010
|
||||
DIST fuse-3.18.1.tar.gz 8350400 BLAKE2B b0a38794b8eb932f7b23314afdaeacbdd302e9f9037794f5dceb87b22f19de8d125ec0112ee28751b94063324c872e03c26e3128c6cd817858245f7df5acd7ef SHA512 02a6ed591e3a634893ab9a621ccc3b745abda06c5da5a4f2a7cc5a1740ddf8199c841f987bcbc8958fc134c2d773055a06cf25aeb6ef55204a4598b99371cb0b
|
||||
DIST iconv.m4.bz2 3057 BLAKE2B 9d8f7637d87bfcea1b60f3ea11e162aecf391b3f4579a3b85afb01735f56bfbae363a7e781279f3b2bed0d1dd3336f7d0678d3b1d59004824d7d0ca848dceb6e SHA512 9899368b8acc06e216a7a548b83a894f780e152a02612cd52af02b5c3f2ff38e2c36e77bda300587f81c3d74c90addec8066885216fa0e74f3f3280a383d2b55
|
||||
|
||||
94
sys-fs/fuse/fuse-3.18.1.ebuild
Normal file
94
sys-fs/fuse/fuse-3.18.1.ebuild
Normal file
@@ -0,0 +1,94 @@
|
||||
# Copyright 1999-2025 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
PYTHON_COMPAT=( python3_{11..14} )
|
||||
inherit flag-o-matic meson-multilib toolchain-funcs 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.gz"
|
||||
|
||||
LICENSE="GPL-2 LGPL-2.1"
|
||||
SLOT="3/4"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
|
||||
IUSE="io-uring +suid systemtap test"
|
||||
RESTRICT="test"
|
||||
PROPERTIES="test_privileged"
|
||||
|
||||
DEPEND="
|
||||
io-uring? (
|
||||
sys-libs/liburing:=[${MULTILIB_USEDEP}]
|
||||
sys-process/numactl
|
||||
)
|
||||
"
|
||||
RDEPEND="
|
||||
${DEPEND}
|
||||
>=sys-fs/fuse-common-3.3.0-r1
|
||||
"
|
||||
BDEPEND="
|
||||
virtual/pkgconfig
|
||||
test? (
|
||||
${PYTHON_DEPS}
|
||||
$(python_gen_any_dep '
|
||||
dev-python/pytest[${PYTHON_USEDEP}]
|
||||
dev-python/looseversion[${PYTHON_USEDEP}]
|
||||
')
|
||||
)
|
||||
"
|
||||
|
||||
DOCS=( AUTHORS ChangeLog.rst README.md doc/README.NFS doc/kernel.txt )
|
||||
|
||||
python_check_deps() {
|
||||
python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
|
||||
python_has_version "dev-python/looseversion[${PYTHON_USEDEP}]"
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
use test && python-any-r1_pkg_setup
|
||||
}
|
||||
|
||||
multilib_src_configure() {
|
||||
# bug #853058
|
||||
tc-is-clang && filter-lto
|
||||
|
||||
local emesonargs=(
|
||||
$(meson_use test examples)
|
||||
$(meson_use test tests)
|
||||
$(meson_use systemtap enable-usdt)
|
||||
$(meson_use io-uring enable-io-uring)
|
||||
-Duseroot=false
|
||||
-Dinitscriptdir=
|
||||
-Dudevrulesdir="${EPREFIX}$(get_udevdir)/rules.d"
|
||||
)
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
# For tests to pass:
|
||||
# - sandbox must be disabled.
|
||||
# - Write access to /dev/cuse* and /dev/fuse is required.
|
||||
# - root must be a member of the portage group; CAP_DAC_OVERRIDE is dropped.
|
||||
# - TMPDIR must be short for unix socket paths.
|
||||
local -x TMPDIR=/tmp
|
||||
local -x SANDBOX_ON=0
|
||||
multilib-minimal_src_test
|
||||
}
|
||||
|
||||
multilib_src_test() {
|
||||
# Explicit test/ needed to pick up pytest.ini
|
||||
epytest test/
|
||||
}
|
||||
|
||||
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}
|
||||
}
|
||||
@@ -4,6 +4,9 @@
|
||||
<maintainer type="project">
|
||||
<email>base-system@gentoo.org</email>
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name="systemtap">Enable SystemTap/DTrace tracing</flag>
|
||||
</use>
|
||||
<upstream>
|
||||
<remote-id type="cpe">cpe:/a:fuse:fuse</remote-id>
|
||||
<remote-id type="github">libfuse/libfuse</remote-id>
|
||||
|
||||
Reference in New Issue
Block a user