Tue Nov 30 12:34:24 2021 UTC ()
Update to bindfs-1.15.1 from 1.8.4
ChangeLog is too long to paste here:
https://bindfs.org/docs/ChangeLog.utf8.txt
Note: On NetBSD, bindfs always maps the root directory "/" regardless
of what source directory specified, unless the -f (foreground) option
is given. The issue existed in 1.8.4 and I thought updating the
package could fix it, but it didn't. The problem was actually in
librefuse, which is now fixed in HEAD:
http://mail-index.netbsd.org/source-changes/2021/11/30/msg134159.html
(pho)
diff -r1.5 -r1.6 pkgsrc/filesystems/fuse-bindfs/Makefile
diff -r1.4 -r1.5 pkgsrc/filesystems/fuse-bindfs/distinfo
diff -r1.1.1.1 -r0 pkgsrc/filesystems/fuse-bindfs/patches/patch-aa
diff -r0 -r1.1 pkgsrc/filesystems/fuse-bindfs/patches/patch-configure.ac
diff -r0 -r1.1 pkgsrc/filesystems/fuse-bindfs/patches/patch-src_bindfs.c
--- pkgsrc/filesystems/fuse-bindfs/Makefile 2017/12/24 09:49:30 1.5
+++ pkgsrc/filesystems/fuse-bindfs/Makefile 2021/11/30 12:34:24 1.6
| @@ -1,21 +1,21 @@ | | | @@ -1,21 +1,21 @@ |
1 | # $NetBSD: Makefile,v 1.5 2017/12/24 09:49:30 wiz Exp $ | | 1 | # $NetBSD: Makefile,v 1.6 2021/11/30 12:34:24 pho Exp $ |
2 | | | 2 | |
3 | DISTNAME= bindfs-1.8.4 | | 3 | DISTNAME= bindfs-1.15.1 |
4 | PKGNAME= fuse-${DISTNAME} | | 4 | PKGNAME= fuse-${DISTNAME} |
5 | PKGREVISION= 1 | | | |
6 | CATEGORIES= filesystems | | 5 | CATEGORIES= filesystems |
7 | MASTER_SITES= http://bindfs.googlecode.com/files/ | | 6 | MASTER_SITES= https://bindfs.org/downloads/ |
8 | | | 7 | |
9 | MAINTAINER= pkgsrc-users@NetBSD.org | | 8 | MAINTAINER= pkgsrc-users@NetBSD.org |
10 | HOMEPAGE= https://bindfs.org/ | | 9 | HOMEPAGE= https://bindfs.org/ |
11 | COMMENT= Remounts file system subtrees in arbitrary locations | | 10 | COMMENT= Remounts file system subtrees in arbitrary locations |
12 | LICENSE= gnu-gpl-v2 | | 11 | LICENSE= gnu-gpl-v2 |
13 | | | 12 | |
14 | GNU_CONFIGURE= yes | | 13 | GNU_CONFIGURE= yes |
15 | USE_LANGUAGES= c c++ | | 14 | USE_LANGUAGES= c c++ |
16 | USE_TOOLS+= autoconf gmake pkg-config | | 15 | USE_TOOLS+= automake autoreconf gmake pkg-config |
17 | | | 16 | |
18 | CPPFLAGS.NetBSD+= -D_NETBSD_SOURCE | | 17 | pre-configure: |
| | | 18 | cd ${WRKSRC} && autoreconf |
19 | | | 19 | |
20 | .include "../../mk/fuse.buildlink3.mk" | | 20 | .include "../../mk/fuse.buildlink3.mk" |
21 | .include "../../mk/bsd.pkg.mk" | | 21 | .include "../../mk/bsd.pkg.mk" |
--- pkgsrc/filesystems/fuse-bindfs/distinfo 2021/10/26 10:25:26 1.4
+++ pkgsrc/filesystems/fuse-bindfs/distinfo 2021/11/30 12:34:24 1.5
| @@ -1,6 +1,7 @@ | | | @@ -1,6 +1,7 @@ |
1 | $NetBSD: distinfo,v 1.4 2021/10/26 10:25:26 nia Exp $ | | 1 | $NetBSD: distinfo,v 1.5 2021/11/30 12:34:24 pho Exp $ |
2 | | | 2 | |
3 | BLAKE2s (bindfs-1.8.4.tar.gz) = 80e066965eed55720f97c3d483895d1fb4ea03f7443cee2905e87cd92c979703 | | 3 | BLAKE2s (bindfs-1.15.1.tar.gz) = 0aa3194987049c03e5cff3b816e14e8dab4d0b89de7e1b7fdeca54400b06e61a |
4 | SHA512 (bindfs-1.8.4.tar.gz) = ff65a4cfe5d05ac43ca19e8b54a9d17e0e7202b8c46082251dcf4805dc28a41865014dd9cde1367cd66ca1cc171f81e3f79eb643fb206cbaf0cbb4353985809c | | 4 | SHA512 (bindfs-1.15.1.tar.gz) = da9003f141b7aa2c23651b3b836b1d979bf1b19915f307c05e40ae6906aab738036cc8b5df6caeec158e4fa6b7bca71489ea7884ff1607c6fea72a603a048d59 |
5 | Size (bindfs-1.8.4.tar.gz) = 305725 bytes | | 5 | Size (bindfs-1.15.1.tar.gz) = 415676 bytes |
6 | SHA1 (patch-aa) = 72053cb69ae5002c4b6cae562e3331c566a6b392 | | 6 | SHA1 (patch-configure.ac) = 2b3c89e80f96e70ab1f921b81fc99fef8307d3b3 |
| | | 7 | SHA1 (patch-src_bindfs.c) = 7daba2605ae0086933209d8b5ef0c88dccb3f9a0 |
$NetBSD: patch-configure.ac,v 1.1 2021/11/30 12:34:24 pho Exp $
* Fix shell portability.
* Fix an incorrect logic to detect fuse >= 2.6.
--- configure.ac.orig 2021-11-30 11:00:36.957203334 +0000
+++ configure.ac
@@ -17,11 +17,11 @@ AC_ARG_WITH([fuse2],
AC_ARG_WITH([fuse3],
[AS_HELP_STRING([--with-fuse3], [link against libfuse 3.x (default: autodetect, preferring 3.x)])])
-if test x"$enable_debug_output" == "xyes" ; then
+if test x"$enable_debug_output" = "xyes" ; then
AC_DEFINE([BINDFS_DEBUG], [1], [Define to 1 to enable debugging messages])
fi
-if test x"$with_core_foundation" == "xyes" ; then
+if test x"$with_core_foundation" = "xyes" ; then
AC_MSG_NOTICE([Linking with Core Foundation])
LDFLAGS="${LDFLAGS} -framework CoreFoundation"
fi
@@ -69,7 +69,7 @@ AC_DEFUN([CHECK_FUSE2],
AC_DEFINE([HAVE_FUSE_29], [1], [Have FUSE >= 2.9.0])
AC_DEFINE([FUSE_USE_VERSION], [26], [FUSE API VERSION = 2.6])
],
- [PKG_CHECK_MODULES([fuse], [fuse >= 2.8.0],
+ [PKG_CHECK_MODULES([fuse], [fuse >= 2.6.0],
[
AC_DEFINE([FUSE_USE_VERSION], [26], [FUSE API VERSION = 2.6])
],
@@ -88,9 +88,9 @@ AC_DEFUN([CHECK_FUSE3],
)]
)
-AS_IF([test "x$with_fuse2" == "xyes"],
+AS_IF([test "x$with_fuse2" = "xyes"],
[CHECK_FUSE2([AC_MSG_ERROR([FUSE 2 not found])])],
- [AS_IF([test "x$with_fuse3" == "xyes"],
+ [AS_IF([test "x$with_fuse3" = "xyes"],
[CHECK_FUSE3([AC_MSG_ERROR([FUSE 3 not found])])],
[CHECK_FUSE3([CHECK_FUSE2([AC_MSG_ERROR([FUSE not found])])])]
)]
$NetBSD: patch-src_bindfs.c,v 1.1 2021/11/30 12:34:24 pho Exp $
Fix compatibility with FUSE 2.6: ioctl() is not supported.
--- src/bindfs.c.orig 2021-11-30 11:04:33.969893934 +0000
+++ src/bindfs.c
@@ -1721,8 +1721,8 @@ static struct fuse_operations bindfs_ope
#if defined(HAVE_FUSE_29) || defined(HAVE_FUSE_3)
.lock = bindfs_lock,
.flock = bindfs_flock,
-#endif
.ioctl = bindfs_ioctl,
+#endif
.statfs = bindfs_statfs,
.release = bindfs_release,
.fsync = bindfs_fsync,
@@ -2843,10 +2843,18 @@ int main(int argc, char *argv[])
}
#endif
+#if defined(HAVE_FUSE_29) || defined(HAVE_FUSE_3)
/* Remove the ioctl implementation unless the user has enabled it */
if (!settings.enable_ioctl) {
bindfs_oper.ioctl = NULL;
}
+#else
+ if (settings.enable_ioctl) {
+ fprintf(stderr, "To use --enable-ioctl, bindfs must be "
+ "compiled with FUSE 2.9.0 or newer.\n");
+ return 1;
+ }
+#endif
/* Remove/Ignore some special -o options */
args = filter_special_opts(&args);