blob: 8055fb06d3e9d96db8bda8dfe4aabda542248532 [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001SUMMARY = "Implementation of a fully functional filesystem in a userspace program"
2DESCRIPTION = "FUSE (Filesystem in Userspace) is a simple interface for userspace \
3 programs to export a virtual filesystem to the Linux kernel. FUSE \
4 also aims to provide a secure method for non privileged users to \
5 create and mount their own filesystem implementations. \
6 "
7HOMEPAGE = "https://github.com/libfuse/libfuse"
8SECTION = "libs"
Andrew Geissler9aee5002022-03-30 16:27:02 +00009LICENSE = "GPL-2.0-only & LGPL-2.0-only"
Andrew Geissler82c905d2020-04-13 13:39:40 -050010LIC_FILES_CHKSUM = "file://GPL2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
11 file://LGPL2.txt;md5=4fbd65380cdd255951079008b364516c \
12 file://LICENSE;md5=a55c12a2d7d742ecb41ca9ae0a6ddc66"
13
14SRC_URI = "https://github.com/libfuse/libfuse/releases/download/fuse-${PV}/fuse-${PV}.tar.xz \
15"
Andrew Geisslerd5838332022-05-27 11:33:10 -050016SRC_URI[sha256sum] = "8982c4c521daf3974dda8a5d55d575c988da13a571970f00aea149eb54fdf14c"
Andrew Geissler82c905d2020-04-13 13:39:40 -050017
18S = "${WORKDIR}/fuse-${PV}"
19
20UPSTREAM_CHECK_URI = "https://github.com/libfuse/libfuse/releases"
21UPSTREAM_CHECK_REGEX = "fuse\-(?P<pver>3(\.\d+)+).tar.xz"
22
Andrew Geisslereef63862021-01-29 15:58:13 -060023CVE_PRODUCT = "fuse_project:fuse"
24
Andrew Geisslerd221e032020-07-10 16:13:21 -050025inherit meson pkgconfig ptest
26
27SRC_URI += " \
28 file://run-ptest \
29"
30
Patrick Williams213cb262021-08-07 19:21:33 -050031RDEPENDS:${PN}-ptest += " \
Andrew Geisslerd221e032020-07-10 16:13:21 -050032 ${PYTHON_PN}-pytest \
33 bash \
34"
35
36do_install_ptest() {
37 install -d ${D}${PTEST_PATH}/test
Patrick Williams92b42cb2022-09-03 06:53:57 -050038 install -d ${D}${PTEST_PATH}/example
39 install -d ${D}${PTEST_PATH}/util
Andrew Geisslerd221e032020-07-10 16:13:21 -050040 cp -rf ${S}/test/* ${D}${PTEST_PATH}/test/
Patrick Williams92b42cb2022-09-03 06:53:57 -050041
42 example_excutables=`find ${B}/example -type f -executable`
43 util_excutables=`find ${B}/util -type f -executable`
44 test_excutables=`find ${B}/test -type f -executable`
45
46 for e in $example_excutables
47 do
48 cp -rf $e ${D}${PTEST_PATH}/example/
49 done
50
51 for e in $util_excutables
52 do
53 cp -rf $e ${D}${PTEST_PATH}/util/
54 done
55
56 for e in $test_excutables
57 do
58 cp -rf $e ${D}${PTEST_PATH}/test
59 done
Andrew Geisslerd221e032020-07-10 16:13:21 -050060}
Andrew Geissler82c905d2020-04-13 13:39:40 -050061
62DEPENDS = "udev"
63
64PACKAGES =+ "fuse3-utils"
65
Patrick Williams213cb262021-08-07 19:21:33 -050066RPROVIDES:${PN}-dbg += "fuse3-utils-dbg"
Andrew Geissler82c905d2020-04-13 13:39:40 -050067
Patrick Williams213cb262021-08-07 19:21:33 -050068RRECOMMENDS:${PN}:class-target = "kernel-module-fuse fuse3-utils"
Andrew Geissler82c905d2020-04-13 13:39:40 -050069
Patrick Williams213cb262021-08-07 19:21:33 -050070FILES:${PN} += "${libdir}/libfuse3.so.*"
71FILES:${PN}-dev += "${libdir}/libfuse3*.la"
Andrew Geissler82c905d2020-04-13 13:39:40 -050072
Andrew Geissler82c905d2020-04-13 13:39:40 -050073# Forbid auto-renaming to libfuse3-utils
Patrick Williams213cb262021-08-07 19:21:33 -050074FILES:fuse3-utils = "${bindir} ${base_sbindir}"
75DEBIAN_NOAUTONAME:fuse3-utils = "1"
76DEBIAN_NOAUTONAME:${PN}-dbg = "1"
Andrew Geissler82c905d2020-04-13 13:39:40 -050077
Patrick Williams213cb262021-08-07 19:21:33 -050078do_install:append() {
Andrew Geissler82c905d2020-04-13 13:39:40 -050079 rm -rf ${D}${base_prefix}/dev
80}