extra/fuse2 to 2.9.9-5

This commit is contained in:
Kevin Mihelich 2024-07-12 23:23:10 +00:00
parent 7ca200ea33
commit c6ac1e9f7b
4 changed files with 160 additions and 15 deletions

26
extra/fuse2/.SRCINFO Normal file
View file

@ -0,0 +1,26 @@
pkgbase = fuse2
pkgdesc = Interface for userspace programs to export a filesystem to the Linux kernel
pkgver = 2.9.9
pkgrel = 5
url = https://github.com/libfuse/libfuse
arch = x86_64
license = GPL2
makedepends = pkg-config
depends = glibc
depends = fuse-common
provides = fuse=2.9.9
conflicts = fuse
replaces = fuse
options = !emptydirs
source = https://github.com/libfuse/libfuse/releases/download/fuse-2.9.9/fuse-2.9.9.tar.gz
source = https://github.com/libfuse/libfuse/releases/download/fuse-2.9.9/fuse-2.9.9.tar.gz.asc
source = conditionally-define-closefrom.patch
validpgpkeys = ED31791B2C5C1613AF388B8AD113FCAC3C4E599F
sha1sums = 943ba651b14bc4a3c6fd959ed4b8c04f4a59032d
sha1sums = SKIP
sha1sums = 90750cd0839c1ee427314241f9ea5f054c3335d8
sha512sums = 3d82fafd04f2924299bb09d2bb144935fa004a43fb9a6568e2e1cc5a60fded2efa1711029a0d7f12b3e6e4501f7217f2ee3545646d89da8dece083cb390f23e2
sha512sums = SKIP
sha512sums = 0836d1693bea203b562a86c992107ee48766f41bb05a31e9af41009d2270ac84d7881aa5bc2a11ed478cd03985876aca5080341ddea701a12a630a36e1b1a80b
pkgname = fuse2

View file

@ -1,34 +1,41 @@
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor: Tom Gundersen <teg@jklm.no>
# Contributor: Mark Rosenstand <mark@archlinux.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org> # ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - upstream patch for AArch64 # - upstream patch for AArch64
# Contributor: Ronald van Haren <ronald.archlinux.org>
# Contributor: Tom Gundersen <teg@jklm.no>
# Contributor: Mark Rosenstand <mark@archlinux.org>
pkgname=fuse2 pkgname=fuse2
pkgver=2.9.9 pkgver=2.9.9
pkgrel=4 pkgrel=5
pkgdesc="A library that makes it possible to implement a filesystem in a userspace program." pkgdesc='Interface for userspace programs to export a filesystem to the Linux kernel'
arch=('i686' 'x86_64')
url='https://github.com/libfuse/libfuse' url='https://github.com/libfuse/libfuse'
arch=('x86_64')
license=('GPL2') license=('GPL2')
depends=('glibc' 'fuse-common')
makedepends=('pkg-config')
provides=(fuse=$pkgver) # TODO: remove it once all packages start to use 'fuse2' name provides=(fuse=$pkgver) # TODO: remove it once all packages start to use 'fuse2' name
replaces=('fuse') replaces=('fuse')
conflicts=('fuse') conflicts=('fuse')
depends=('glibc' 'fuse-common') options=('!emptydirs')
makedepends=('pkg-config')
options=(!emptydirs)
source=(https://github.com/libfuse/libfuse/releases/download/fuse-$pkgver/fuse-$pkgver.tar.gz{,.asc} source=(https://github.com/libfuse/libfuse/releases/download/fuse-$pkgver/fuse-$pkgver.tar.gz{,.asc}
conditionally-define-closefrom.patch
https://github.com/libfuse/libfuse/commit/914871b20a901e3e1e981c92bc42b1c93b7ab81b.patch) https://github.com/libfuse/libfuse/commit/914871b20a901e3e1e981c92bc42b1c93b7ab81b.patch)
sha1sums=('943ba651b14bc4a3c6fd959ed4b8c04f4a59032d' sha1sums=('943ba651b14bc4a3c6fd959ed4b8c04f4a59032d'
'SKIP' 'SKIP'
'dd0c03bb92ec0dd105557e6c1649a5a71cc69a94') '90750cd0839c1ee427314241f9ea5f054c3335d8'
'0eac15084300e71129eaf3f39b8b7b25a6c18cab')
sha512sums=('3d82fafd04f2924299bb09d2bb144935fa004a43fb9a6568e2e1cc5a60fded2efa1711029a0d7f12b3e6e4501f7217f2ee3545646d89da8dece083cb390f23e2'
'SKIP'
'0836d1693bea203b562a86c992107ee48766f41bb05a31e9af41009d2270ac84d7881aa5bc2a11ed478cd03985876aca5080341ddea701a12a630a36e1b1a80b'
'6615563894b3c402468db975c227a531a225848a3ce3e802d25081480d356b53b64ce7ccf60083b7d7e069cb553f4add71f113f119d3a7d02888fee96fc74a73')
validpgpkeys=(ED31791B2C5C1613AF388B8AD113FCAC3C4E599F) # Nikolaus Rath <Nikolaus@rath.org> validpgpkeys=(ED31791B2C5C1613AF388B8AD113FCAC3C4E599F) # Nikolaus Rath <Nikolaus@rath.org>
prepare() { prepare() {
cd fuse-$pkgver cd fuse-$pkgver
patch -p1 -i ../914871b20a901e3e1e981c92bc42b1c93b7ab81b.patch patch -p1 -i ../914871b20a901e3e1e981c92bc42b1c93b7ab81b.patch
patch -Np1 -i ${srcdir}/conditionally-define-closefrom.patch
autoreconf -i
} }
build() { build() {
@ -41,12 +48,12 @@ build() {
package() { package() {
cd fuse-$pkgver cd fuse-$pkgver
make DESTDIR=${pkgdir} install make DESTDIR="${pkgdir}" install
# Remove init script in wrong path # Remove init script in wrong path
# Don't add our own for now, as fusectl fs oopses on 2.6.18 # Don't add our own for now, as fusectl fs oopses on 2.6.18
rm -r ${pkgdir}/etc/init.d rm -r "${pkgdir}"/etc/init.d
# static device nodes are handled by udev # static device nodes are handled by udev
rm -r ${pkgdir}/dev rm -r "${pkgdir}"/dev
} }

View file

@ -0,0 +1,60 @@
From 5a43d0f724c56f8836f3f92411e0de1b5f82db32 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sat, 24 Jul 2021 22:02:45 +0100
Subject: [PATCH] util/ulockmgr_server.c: conditionally define closefrom (fix
glibc-2.34+)
closefrom(3) has joined us in glibc-land from *BSD and Solaris. Since
it's available in glibc 2.34+, we want to detect it and only define our
fallback if the libc doesn't provide it.
Bug: https://bugs.gentoo.org/803923
Signed-off-by: Sam James <sam@gentoo.org>
---
configure.ac | 1 +
util/ulockmgr_server.c | 6 ++++++
2 files changed, 7 insertions(+)
diff --git a/configure.ac b/configure.ac
index 9946a0efa..a2d481aa9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -55,6 +55,7 @@ fi
AC_CHECK_FUNCS([fork setxattr fdatasync splice vmsplice utimensat])
AC_CHECK_FUNCS([posix_fallocate])
+AC_CHECK_FUNCS([closefrom])
AC_CHECK_MEMBERS([struct stat.st_atim])
AC_CHECK_MEMBERS([struct stat.st_atimespec])
diff --git a/util/ulockmgr_server.c b/util/ulockmgr_server.c
index 273c7d923..a04dac5c6 100644
--- a/util/ulockmgr_server.c
+++ b/util/ulockmgr_server.c
@@ -22,6 +22,10 @@
#include <sys/socket.h>
#include <sys/wait.h>
+#ifdef HAVE_CONFIG_H
+ #include "config.h"
+#endif
+
struct message {
unsigned intr : 1;
unsigned nofd : 1;
@@ -124,6 +128,7 @@ static int receive_message(int sock, void *buf, size_t buflen, int *fdp,
return res;
}
+#if !defined(HAVE_CLOSEFROM)
static int closefrom(int minfd)
{
DIR *dir = opendir("/proc/self/fd");
@@ -141,6 +146,7 @@ static int closefrom(int minfd)
}
return 0;
}
+#endif
static void send_reply(int cfd, struct message *msg)
{

View file

@ -0,0 +1,52 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
=P5gn
-----END PGP PUBLIC KEY BLOCK-----