Hi All,

Now that 6.9 has been released I'd like to commit my changes to replace
libfuse from base with the reference implementation in ports. I've
included libfuse and the changes to dependent ports in the same patch.
Please let me know if you would prefer this to be two or more patches
instead.

Once I have an OK for the kernel changes I'll commit this immediately
after so that the kernel and ports stay in sync.

Here's the diff.


diff refs/heads/master refs/heads/mystuff
blob - d8fc21bf8bfb3762e60aed7abd6b6d39d0555fa3
blob + fc5e50814af52e2a6bf2f17c9059281725e77047
--- archivers/fuse-zip/Makefile
+++ archivers/fuse-zip/Makefile
@@ -4,6 +4,8 @@ COMMENT =               navigate zip archives through FUSE
 
 DISTNAME =             fuse-zip-0.6.2
 
+REVISION =             0
+
 CATEGORIES =           archivers
 
 HOMEPAGE =             https://bitbucket.org/agalanin/fuse-zip
@@ -17,7 +19,8 @@ MASTER_SITES =                
https://bitbucket.org/agalanin/fuse-zi
 
 COMPILER =             base-clang ports-gcc base-gcc
 
-LIB_DEPENDS =          archivers/libzip>=0.11.2
+LIB_DEPENDS =          archivers/libzip>=0.11.2 \
+                       sysutils/libfuse
 
 MAKE_FLAGS =           CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \
                        LDFLAGS="${LDFLAGS}"
blob - 70235796ce94f70dd90dd2f89ab05517d85f175b
blob + 69ac3f5061d627dea46cafc0e2c33416912722cd
--- devel/fossil/Makefile
+++ devel/fossil/Makefile
@@ -2,6 +2,8 @@
 
 COMMENT =              simple distributed software configuration management
 
+REVISION =             0
+
 DISTNAME =             fossil-src-2.14
 PKGNAME =              fossil-2.14
 EPOCH =                        0
@@ -21,6 +23,8 @@ FLAVOR?=
 # uses pledge()
 WANTLIB =              c crypto fuse m ssl z
 
+LIB_DEPENDS =          sysutils/libfuse
+
 MODULES =              lang/tcl
 MODTCL_VERSION =       8.6
 
@@ -28,6 +32,8 @@ WRKDIST =             ${WRKDIR}/${PKGNAME}
 
 BUILD_DEPENDS =                ${MODTCL_BUILD_DEPENDS}
 
+CONFIGURE_ENV =                CPPFLAGS="-I${LOCALBASE}/include" \
+                       LDFLAGS="-L${LOCALBASE}/lib"
 CONFIGURE_STYLE =      simple
 CONFLICT_MARKER =      fossil-*-!static
 
blob - da64583f12190aa73f0a550aef8c1939e860195b
blob + a1401b31b2b96f53b414e37e572127837449edd6
--- security/encfs/Makefile
+++ security/encfs/Makefile
@@ -4,7 +4,7 @@ COMMENT =               fuse-based cryptographic filesystem
 
 V =                    1.9.5
 DISTNAME =             encfs-$V
-REVISION =             2
+REVISION =             3
 
 CATEGORIES =           security
 
@@ -26,7 +26,8 @@ MODPY_RUNDEP =                No
 
 BUILD_DEPENDS =                devel/gettext,-tools
 LIB_DEPENDS =          devel/gettext,-runtime \
-                       textproc/tinyxml2
+                       textproc/tinyxml2 \
+                       sysutils/libfuse
 
 CONFIGURE_ARGS =       -DUSE_INTERNAL_TINYXML=Off \
                        -DCMAKE_DISABLE_FIND_PACKAGE_Git=On
blob - 0cd936a59c98aab8747b003b292ee935fe303c6e
blob + 793825f0cca596d40da9437e0113d0e2b5879d76
--- security/libbde/Makefile
+++ security/libbde/Makefile
@@ -5,7 +5,7 @@ COMMENT =               access the BitLocker Drive Encryption 
encry
 VERSION =              20191221
 DISTNAME =             libbde-alpha-${VERSION}
 PKGNAME =              libbde-${VERSION}
-REVISION =             0
+REVISION =             1
 
 SHARED_LIBS +=  bde                       0.1 # 1.0
 
@@ -35,7 +35,8 @@ MODPY_VERSION =               ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =                devel/gettext,-tools
 
-LIB_DEPENDS +=         devel/libbfio
+LIB_DEPENDS +=         devel/libbfio \
+                       sysutils/libfuse
 
 TEST_DEPENDS += shells/bash
 
blob - 28d41bbbe3e1801a113b450ba86f5b71dd1f5cc2
blob + 000c0ecaba74b57402a1ffa6123d359fa153dfa8
--- security/libewf/Makefile
+++ security/libewf/Makefile
@@ -5,7 +5,7 @@ COMMENT =               access the Expert Witness Compression 
Forma
 VERSION =              20140808
 DISTNAME =             libewf-${VERSION}
 EPOCH =                        0
-REVISION =             0
+REVISION =             1
 
 SHARED_LIBS +=         ewf                       1.0 # 3.0
 
@@ -32,7 +32,8 @@ BUILD_DEPENDS =               devel/gettext,-tools
 LIB_DEPENDS +=         devel/libbfio \
                        archivers/bzip2 \
                        sysutils/libsmdev \
-                       sysutils/libsmraw
+                       sysutils/libsmraw \
+                       sysutils/libfuse
 
 CONFIGURE_STYLE =      simple
 CONFIGURE_ARGS +=      --prefix='${PREFIX}' \
blob - bc79cd6c6daafd98cb8c5bc3a58e3ea6aded9894
blob + a223a44be2718a2855ff36ad3ace486c617bf669
--- sysutils/curlftpfs/Makefile
+++ sysutils/curlftpfs/Makefile
@@ -4,7 +4,7 @@ COMMENT=        FUSE FTP driver
 
 DISTNAME=      curlftpfs-0.9.2
 CATEGORIES=    sysutils
-REVISION=      2
+REVISION=      3
 
 # GPLv2
 PERMIT_PACKAGE=        Yes
@@ -14,7 +14,9 @@ WANTLIB += ssl z
 
 MASTER_SITES=  ${MASTER_SITE_SOURCEFORGE:=curlftpfs/}
 
-LIB_DEPENDS=   devel/glib2 net/curl
+LIB_DEPENDS=   devel/glib2 \
+               net/curl \
+               sysutils/libfuse
 
 CONFIGURE_STYLE=gnu
 
blob - 033f410e5d4499f3b6c4ff490d512fd842fcce08
blob + 2c187bb409546283df6b9b1cf6fc059076d4149a
--- sysutils/exfat-fuse/Makefile
+++ sysutils/exfat-fuse/Makefile
@@ -2,6 +2,8 @@
 
 COMMENT =              exFAT file system through FUSE
 
+REVISION =             0
+
 V =                    1.2.8
 GH_ACCOUNT =           relan
 GH_PROJECT =           exfat
@@ -17,6 +19,8 @@ PERMIT_PACKAGE =      Yes
 
 WANTLIB =              c fuse
 
+LIB_DEPENDS =          sysutils/libfuse
+
 CONFIGURE_STYLE =      autoreconf
 AUTOMAKE_VERSION =     1.15
 AUTOCONF_VERSION =     2.69
blob - bad2fe084e00eb86dc134b986568654bed49d5ba
blob + 0c614967aed9f3a2835cdc4fdb760acef0fbd86c
--- sysutils/libfsapfs/Makefile
+++ sysutils/libfsapfs/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access the Apple File S
 VERSION =      20191221
 DISTNAME =     libfsapfs-experimental-${VERSION}
 PKGNAME =      ${DISTNAME:S/-experimental//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  fsapfs                       0.0 # 1.0
 
@@ -36,6 +36,7 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 BUILD_DEPENDS =        devel/gettext,-tools
 
 LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse \
                sysutils/libfwnt
 
 TEST_DEPENDS +=        shells/bash
blob - ae58990282c1d25715b24e7d6837f5e2e801c90c
blob + 0620daee08411088374a9741396d10bbed224d1d
--- sysutils/libfsntfs/Makefile
+++ sysutils/libfsntfs/Makefile
@@ -2,6 +2,8 @@
 
 COMMENT =      library and tools to access NTFS
 
+REVISION =     0
+
 VERSION =      20200805
 DISTNAME =     libfsntfs-experimental-${VERSION}
 PKGNAME =      ${DISTNAME:S/-experimental//}
@@ -33,7 +35,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 BUILD_DEPENDS =        devel/gettext,-tools
 
 LIB_DEPENDS += devel/libbfio \
-               sysutils/libfwnt
+               sysutils/libfwnt \
+               sysutils/libfuse
 
 TEST_DEPENDS += shells/bash
 
blob - 324ea275f84403e3dd40c96718c3766582f9b058
blob + 1491939ec49f3355fa494b3b9a7fdb8bbbd5dd95
--- sysutils/libfvde/Makefile
+++ sysutils/libfvde/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access FileVault Drive 
 VERSION =      20191221
 DISTNAME =     libfvde-experimental-${VERSION}
 PKGNAME =      ${DISTNAME:S/-experimental//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  fvde                       0.1 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools
 
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS += shells/bash
 
blob - /dev/null
blob + 406ecf35dd1009aaa2512c74b458d1c5051dded7 (mode 644)
--- /dev/null
+++ sysutils/libfuse/Makefile
@@ -0,0 +1,37 @@
+# $OpenBSD: Makefile,v 1.9 2020/09/23 11:14:52 rpointel Exp $
+
+COMMENT =      library for communicating with the FUSE kernel
+
+VERSION =      2.9.9
+DISTNAME =     fuse-${VERSION}
+PKGNAME =      lib${DISTNAME}
+
+SHARED_LIBS =  fuse                      0.0 # 0.0
+
+CATEGORIES =   sysutils
+
+HOMEPAGE =     https://github.com/libfuse/libfuse
+
+MAINTAINER =   Helg Bredow <[email protected]>
+
+# GPLv2, LGPLv2
+PERMIT_PACKAGE =       Yes
+
+WANTLIB =              pthread iconv
+
+MASTER_SITES =         ${HOMEPAGE}/releases/download/fuse-${VERSION}/
+
+BUILD_DEPENDS =                devel/gettext,-tools
+LIB_DEPENDS =          converters/libiconv
+
+CONFIGURE_STYLE =      autoreconf
+CONFIGURE_ARGS =       --disable-example \
+                       --disable-mtab \
+                       --disable-util
+
+AUTOCONF_VERSION =     2.69
+AUTOMAKE_VERSION =     1.14
+
+SEPARATE_BUILD =       Yes
+
+.include <bsd.port.mk>
blob - /dev/null
blob + 6b9e1fecd32e8c9e9d4708e078b9038c84549859 (mode 644)
--- /dev/null
+++ sysutils/libfuse/distinfo
@@ -0,0 +1,2 @@
+SHA256 (fuse-2.9.9.tar.gz) = 0OadXWCMwi/0hDeRrQl/VU3TJUDdyb7XY4zG/qfBtLU=
+SIZE (fuse-2.9.9.tar.gz) = 1813177
blob - /dev/null
blob + 776a5783fd60309fed79bd5e522eee39a3d2bf22 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-configure_ac
@@ -0,0 +1,22 @@
+$OpenBSD$
+
+Index: configure.ac
+--- configure.ac.orig
++++ configure.ac
+@@ -15,6 +15,7 @@ AM_PROG_CC_C_O
+ case $target_os in
+      *linux*) arch=linux;;
+      *netbsd*)  arch=netbsd;;
++     *openbsd*) arch=openbsd;;
+      *bsd*)   arch=bsd;;
+      *)               arch=unknown;;
+ esac
+@@ -43,7 +44,7 @@ subdirs2="include"
+ if test "$enable_lib" != "no"; then
+       subdirs2="$subdirs2 lib";
+ fi
+-if test "$arch" = linux -a "$enable_util" != "no"; then
++if test "$enable_util" != "no"; then
+       subdirs2="$subdirs2 util";
+ fi
+ if test "$enable_example" != "no"; then
blob - /dev/null
blob + ef684f1ed61bf4516bf602d022ef955e8a9116d2 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-doc_Makefile_am
@@ -0,0 +1,12 @@
+$OpenBSD$
+
+Index: doc/Makefile.am
+--- doc/Makefile.am.orig
++++ doc/Makefile.am
+@@ -1,5 +1,5 @@
+ ## Process this file with automake to produce Makefile.in
+ 
+-dist_man_MANS = fusermount.1 mount.fuse.8 ulockmgr_server.1
++dist_man_MANS =
+ 
+ EXTRA_DIST = how-fuse-works kernel.txt Doxyfile html
blob - /dev/null
blob + 4138d34765092d1e2ed9d3277eb841bab358bcdf (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-include_Makefile_am
@@ -0,0 +1,17 @@
+$OpenBSD$
+
+Index: include/Makefile.am
+--- include/Makefile.am.orig
++++ include/Makefile.am
+@@ -9,9 +9,8 @@ fuseinclude_HEADERS = \
+       fuse_common_compat.h    \
+       fuse_lowlevel.h         \
+       fuse_lowlevel_compat.h  \
+-      fuse_opt.h              \
+-      cuse_lowlevel.h
++      fuse_opt.h
+ 
+-include_HEADERS = old/fuse.h ulockmgr.h
++include_HEADERS = old/fuse.h
+ 
+ noinst_HEADERS = fuse_kernel.h
blob - /dev/null
blob + b728544a5a452f0370f200e49f33ed6a9b24b1e8 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-include_fuse_compat_h
@@ -0,0 +1,20 @@
+$OpenBSD$
+
+Index: include/fuse_compat.h
+--- include/fuse_compat.h.orig
++++ include/fuse_compat.h
+@@ -65,7 +65,7 @@ struct fuse *fuse_setup_compat25(int argc, char *argv[
+ 
+ void fuse_teardown_compat22(struct fuse *fuse, int fd, char *mountpoint);
+ 
+-#if !defined(__FreeBSD__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__)
+ #include <sys/statfs.h>
+ 
+ struct fuse_operations_compat22 {
+@@ -198,4 +198,4 @@ struct fuse *fuse_new_compat1(int fd, int flags,
+ void fuse_main_compat1(int argc, char *argv[],
+                      const struct fuse_operations_compat1 *op);
+ 
+-#endif /* __FreeBSD__ || __NetBSD__ */
++#endif /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
blob - /dev/null
blob + a9fe9eb25f7f18807e0b5e99d0f5f1d9761a08a1 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-include_fuse_lowlevel_compat_h
@@ -0,0 +1,23 @@
+$OpenBSD$
+
+Index: include/fuse_lowlevel_compat.h
+--- include/fuse_lowlevel_compat.h.orig
++++ include/fuse_lowlevel_compat.h
+@@ -72,7 +72,7 @@ size_t fuse_dirent_size(size_t namelen);
+ char *fuse_add_dirent(char *buf, const char *name, const struct stat *stbuf,
+                     off_t off);
+ 
+-#if !defined(__FreeBSD__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__)
+ 
+ #include <sys/statfs.h>
+ 
+@@ -139,7 +139,7 @@ struct fuse_session *fuse_lowlevel_new_compat(const ch
+                               const struct fuse_lowlevel_ops_compat *op,
+                               size_t op_size, void *userdata);
+ 
+-#endif /* __FreeBSD__ || __NetBSD__ */
++#endif /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
+ 
+ struct fuse_chan_ops_compat24 {
+       int (*receive)(struct fuse_chan *ch, char *buf, size_t size);
blob - /dev/null
blob + 740696fc229ebe308c80a6f302e20412233a6445 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-lib_Makefile_am
@@ -0,0 +1,14 @@
+$OpenBSD$
+
+Index: lib/Makefile.am
+--- lib/Makefile.am.orig
++++ lib/Makefile.am
+@@ -4,7 +4,7 @@ AUTOMAKE_OPTIONS = subdir-objects
+ AM_CPPFLAGS = -I$(top_srcdir)/include -DFUSERMOUNT_DIR=\"$(bindir)\" \
+  -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DFUSE_USE_VERSION=26
+ 
+-lib_LTLIBRARIES = libfuse.la libulockmgr.la
++lib_LTLIBRARIES = libfuse.la
+ 
+ if BSD
+ mount_source = mount_bsd.c
blob - /dev/null
blob + 4597fea60979638125a580376521d1021730ce73 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-lib_fuse_c
@@ -0,0 +1,100 @@
+$OpenBSD$
+
+Index: lib/fuse.c
+--- lib/fuse.c.orig
++++ lib/fuse.c
+@@ -1522,7 +1522,7 @@ static inline void fuse_prepare_interrupt(struct fuse 
+               fuse_do_prepare_interrupt(req, d);
+ }
+ 
+-#if !defined(__FreeBSD__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__)
+ 
+ static int fuse_compat_open(struct fuse_fs *fs, const char *path,
+                           struct fuse_file_info *fi)
+@@ -1617,9 +1617,9 @@ static int fuse_compat_statfs(struct fuse_fs *fs, cons
+       return err;
+ }
+ 
+-#else /* __FreeBSD__ || __NetBSD__ */
++#else /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
+ 
+-static inline int fuse_compat_open(struct fuse_fs *fs, char *path,
++static inline int fuse_compat_open(struct fuse_fs *fs, const char *path,
+                                  struct fuse_file_info *fi)
+ {
+       return fs->op.open(path, fi);
+@@ -1643,7 +1643,7 @@ static inline int fuse_compat_statfs(struct fuse_fs *f
+       return fs->op.statfs(fs->compat == 25 ? "/" : path, buf);
+ }
+ 
+-#endif /* __FreeBSD__ || __NetBSD__ */
++#endif /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
+ 
+ int fuse_fs_getattr(struct fuse_fs *fs, const char *path, struct stat *buf)
+ {
+@@ -2207,7 +2207,7 @@ int fuse_fs_utimens(struct fuse_fs *fs, const char *pa
+       fuse_get_context()->private_data = fs->user_data;
+       if (fs->op.utimens) {
+               if (fs->debug)
+-                      fprintf(stderr, "utimens %s %li.%09lu %li.%09lu\n",
++                      fprintf(stderr, "utimens %s %lli.%09lu %lli.%09lu\n",
+                               path, tv[0].tv_sec, tv[0].tv_nsec,
+                               tv[1].tv_sec, tv[1].tv_nsec);
+ 
+@@ -2216,7 +2216,7 @@ int fuse_fs_utimens(struct fuse_fs *fs, const char *pa
+               struct utimbuf buf;
+ 
+               if (fs->debug)
+-                      fprintf(stderr, "utime %s %li %li\n", path,
++                      fprintf(stderr, "utime %s %lli %lli\n", path,
+                               tv[0].tv_sec, tv[1].tv_sec);
+ 
+               buf.actime = tv[0].tv_sec;
+@@ -4479,7 +4479,7 @@ static void fuse_lib_help(void)
+       fprintf(stderr,
+ "    -o hard_remove         immediate removal (don't hide files)\n"
+ "    -o use_ino             let filesystem set inode numbers\n"
+-"    -o readdir_ino         try to fill in d_ino in readdir\n"
++"    -o readdir_ino         try to fill in d_ino in readdir (always 
enabled)\n"
+ "    -o direct_io           use direct I/O\n"
+ "    -o kernel_cache        cache files in kernel\n"
+ "    -o [no]auto_cache      enable caching based on modification times 
(off)\n"
+@@ -4493,8 +4493,8 @@ static void fuse_lib_help(void)
+ "    -o noforget            never forget cached inodes\n"
+ "    -o remember=T          remember cached inodes for T seconds (0s)\n"
+ "    -o nopath              don't supply path if not necessary\n"
+-"    -o intr                allow requests to be interrupted\n"
+-"    -o intr_signal=NUM     signal to send on interrupt (%i)\n"
++"    -o intr                allow requests to be interrupted (ignored)\n"
++"    -o intr_signal=NUM     signal to send on interrupt (%i) (ignored)\n"
+ "    -o modules=M1[:M2...]  names of modules to push onto filesystem stack\n"
+ "\n", FUSE_DEFAULT_INTR_SIGNAL);
+ }
+@@ -4729,7 +4729,7 @@ struct fuse *fuse_new_common(struct fuse_chan *ch, str
+       if (!f->conf.ac_attr_timeout_set)
+               f->conf.ac_attr_timeout = f->conf.attr_timeout;
+ 
+-#if defined(__FreeBSD__) || defined(__NetBSD__)
++#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
+       /*
+        * In FreeBSD, we always use these settings as inode numbers
+        * are needed to make getcwd(3) work.
+@@ -4898,7 +4898,7 @@ void fuse_register_module(struct fuse_module *mod)
+       fuse_modules = mod;
+ }
+ 
+-#if !defined(__FreeBSD__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__)
+ 
+ static struct fuse *fuse_new_common_compat(int fd, const char *opts,
+                                          const struct fuse_operations *op,
+@@ -4955,7 +4955,7 @@ FUSE_SYMVER(".symver fuse_set_getcontext_func,__fuse_s
+ FUSE_SYMVER(".symver fuse_new_compat2,fuse_new@");
+ FUSE_SYMVER(".symver fuse_new_compat22,fuse_new@FUSE_2.2");
+ 
+-#endif /* __FreeBSD__ || __NetBSD__  */
++#endif /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
+ 
+ struct fuse *fuse_new_compat25(int fd, struct fuse_args *args,
+                              const struct fuse_operations_compat25 *op,
blob - /dev/null
blob + 875a9978715de54a94487d5a977d8c1b046c427c (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-lib_fuse_i_h
@@ -0,0 +1,13 @@
+$OpenBSD$
+
+Index: lib/fuse_i.h
+--- lib/fuse_i.h.orig
++++ lib/fuse_i.h
+@@ -8,6 +8,7 @@
+ 
+ #include "fuse.h"
+ #include "fuse_lowlevel.h"
++#include "pthread.h"
+ 
+ struct fuse_chan;
+ struct fuse_ll;
blob - /dev/null
blob + 48ff3922d0b73a46ce6690bb9829cf9b35fd6b2d (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-lib_fuse_lowlevel_c
@@ -0,0 +1,32 @@
+$OpenBSD$
+
+Index: lib/fuse_lowlevel.c
+--- lib/fuse_lowlevel.c.orig
++++ lib/fuse_lowlevel.c
+@@ -2842,7 +2842,7 @@ int fuse_req_getgroups(fuse_req_t req, int size, gid_t
+ }
+ #endif
+ 
+-#if !defined(__FreeBSD__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__)
+ 
+ static void fill_open_compat(struct fuse_open_out *arg,
+                            const struct fuse_file_info_compat *f)
+@@ -2944,7 +2944,7 @@ FUSE_SYMVER(".symver fuse_reply_statfs_compat,fuse_rep
+ FUSE_SYMVER(".symver fuse_reply_open_compat,fuse_reply_open@FUSE_2.4");
+ FUSE_SYMVER(".symver fuse_lowlevel_new_compat,fuse_lowlevel_new@FUSE_2.4");
+ 
+-#else /* __FreeBSD__ || __NetBSD__ */
++#else /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
+ 
+ int fuse_sync_compat_args(struct fuse_args *args)
+ {
+@@ -2952,7 +2952,7 @@ int fuse_sync_compat_args(struct fuse_args *args)
+       return 0;
+ }
+ 
+-#endif /* __FreeBSD__ || __NetBSD__ */
++#endif /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
+ 
+ struct fuse_session *fuse_lowlevel_new_compat25(struct fuse_args *args,
+                               const struct fuse_lowlevel_ops_compat25 *op,
blob - /dev/null
blob + 5c2d81d4f599c94828da580a032ef7e8a77283d1 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-lib_helper_c
@@ -0,0 +1,23 @@
+$OpenBSD$
+
+Index: lib/helper.c
+--- lib/helper.c.orig
++++ lib/helper.c
+@@ -398,7 +398,7 @@ int fuse_version(void)
+ 
+ #include "fuse_compat.h"
+ 
+-#if !defined(__FreeBSD__) && !defined(__NetBSD__)
++#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__)
+ 
+ struct fuse *fuse_setup_compat22(int argc, char *argv[],
+                                const struct fuse_operations_compat22 *op,
+@@ -456,7 +456,7 @@ FUSE_SYMVER(".symver fuse_teardown,__fuse_teardown@");
+ FUSE_SYMVER(".symver fuse_main_compat2,fuse_main@");
+ FUSE_SYMVER(".symver fuse_main_real_compat22,fuse_main_real@FUSE_2.2");
+ 
+-#endif /* __FreeBSD__ || __NetBSD__ */
++#endif /* __FreeBSD__ || __NetBSD__ || __OpenBSD__ */
+ 
+ 
+ struct fuse *fuse_setup_compat25(int argc, char *argv[],
blob - /dev/null
blob + af968d88b2b85778c5ffa858e93493749bf0d26f (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-lib_mount_c
@@ -0,0 +1,160 @@
+$OpenBSD$
+
+Index: lib/mount.c
+--- lib/mount.c.orig
++++ lib/mount.c
+@@ -28,7 +28,9 @@
+ 
+ #ifdef __NetBSD__
+ #include <perfuse.h>
++#endif
+ 
++#if defined(__NetBSD__) || defined(__OpenBSD__)
+ #define MS_RDONLY     MNT_RDONLY
+ #define MS_NOSUID     MNT_NOSUID
+ #define MS_NODEV      MNT_NODEV
+@@ -76,6 +78,7 @@ struct mount_opts {
+       char *mtab_opts;
+       char *fusermount_opts;
+       char *kernel_opts;
++      unsigned max_read;
+ };
+ 
+ #define FUSE_MOUNT_OPT(t, p) { t, offsetof(struct mount_opts, p), 1 }
+@@ -87,6 +90,7 @@ static const struct fuse_opt fuse_mount_opts[] = {
+       FUSE_MOUNT_OPT("blkdev",                blkdev),
+       FUSE_MOUNT_OPT("auto_unmount",          auto_unmount),
+       FUSE_MOUNT_OPT("fsname=%s",             fsname),
++      FUSE_MOUNT_OPT("max_read=%u",           max_read),
+       FUSE_MOUNT_OPT("subtype=%s",            subtype),
+       FUSE_OPT_KEY("allow_other",             KEY_KERN_OPT),
+       FUSE_OPT_KEY("allow_root",              KEY_ALLOW_ROOT),
+@@ -116,7 +120,9 @@ static const struct fuse_opt fuse_mount_opts[] = {
+       FUSE_OPT_KEY("noexec",                  KEY_KERN_FLAG),
+       FUSE_OPT_KEY("async",                   KEY_KERN_FLAG),
+       FUSE_OPT_KEY("sync",                    KEY_KERN_FLAG),
++#if !defined(__NetBSD__) && !defined(__OpenBSD__)
+       FUSE_OPT_KEY("dirsync",                 KEY_KERN_FLAG),
++#endif
+       FUSE_OPT_KEY("atime",                   KEY_KERN_FLAG),
+       FUSE_OPT_KEY("noatime",                 KEY_KERN_FLAG),
+       FUSE_OPT_KEY("-h",                      KEY_HELP),
+@@ -133,10 +139,9 @@ static void mount_help(void)
+ "    -o allow_root          allow access to root\n"
+ "    -o auto_unmount        auto unmount on process termination\n"
+ "    -o nonempty            allow mounts over non-empty file/dir\n"
+-"    -o default_permissions enable permission checking by kernel\n"
++"    -o default_permissions enable permission checking by kernel (always 
enabled)\n"
+ "    -o fsname=NAME         set filesystem name\n"
+-"    -o subtype=NAME        set filesystem type\n"
+-"    -o large_read          issue large read requests (2.4 only)\n"
++"    -o subtype=NAME        set filesystem name\n"
+ "    -o max_read=N          set maximum size of read requests\n"
+ "\n");
+ }
+@@ -177,7 +182,7 @@ static const struct mount_flags mount_flags[] = {
+       {"sync",    MS_SYNCHRONOUS, 1},
+       {"atime",   MS_NOATIME,     0},
+       {"noatime", MS_NOATIME,     1},
+-#ifndef __NetBSD__
++#if !defined(__NetBSD__) && !defined(__OpenBSD__)
+       {"dirsync", MS_DIRSYNC,     1},
+ #endif
+       {NULL,      0,              0}
+@@ -429,12 +434,13 @@ static int fuse_mount_sys(const char *mnt, struct moun
+                         const char *mnt_opts)
+ {
+       char tmp[128];
+-      const char *devname = "/dev/fuse";
++      const char *devname = "/dev/fuse0";
+       char *source = NULL;
+       char *type = NULL;
+       struct stat stbuf;
+       int fd;
+       int res;
++      struct fusefs_args fargs;
+ 
+       if (!mnt) {
+               fprintf(stderr, "fuse: missing mountpoint parameter\n");
+@@ -463,69 +469,31 @@ static int fuse_mount_sys(const char *mnt, struct moun
+ 
+       fd = open(devname, O_RDWR);
+       if (fd == -1) {
+-              if (errno == ENODEV || errno == ENOENT)
+-                      fprintf(stderr, "fuse: device not found, try 'modprobe 
fuse' first\n");
+-              else
+-                      fprintf(stderr, "fuse: failed to open %s: %s\n",
+-                              devname, strerror(errno));
++              fprintf(stderr, "fuse: failed to open %s: %s\n",
++                      devname, strerror(errno));
+               return -1;
+       }
+ 
+-      snprintf(tmp, sizeof(tmp),  "fd=%i,rootmode=%o,user_id=%u,group_id=%u",
+-               fd, stbuf.st_mode & S_IFMT, getuid(), getgid());
+-
+-      res = fuse_opt_add_opt(&mo->kernel_opts, tmp);
+-      if (res == -1)
+-              goto out_close;
+-
+       source = malloc((mo->fsname ? strlen(mo->fsname) : 0) +
+                       (mo->subtype ? strlen(mo->subtype) : 0) +
+                       strlen(devname) + 32);
+-
+-      type = malloc((mo->subtype ? strlen(mo->subtype) : 0) + 32);
+-      if (!type || !source) {
++      if (!source) {
+               fprintf(stderr, "fuse: failed to allocate memory\n");
+               goto out_close;
+       }
+-
+-      strcpy(type, mo->blkdev ? "fuseblk" : "fuse");
+-      if (mo->subtype) {
+-              strcat(type, ".");
+-              strcat(type, mo->subtype);
+-      }
+       strcpy(source,
+              mo->fsname ? mo->fsname : (mo->subtype ? mo->subtype : devname));
+ 
+-      res = mount(source, mnt, type, mo->flags, mo->kernel_opts);
+-      if (res == -1 && errno == ENODEV && mo->subtype) {
+-              /* Probably missing subtype support */
+-              strcpy(type, mo->blkdev ? "fuseblk" : "fuse");
+-              if (mo->fsname) {
+-                      if (!mo->blkdev)
+-                              sprintf(source, "%s#%s", mo->subtype,
+-                                      mo->fsname);
+-              } else {
+-                      strcpy(source, type);
+-              }
+-              res = mount(source, mnt, type, mo->flags, mo->kernel_opts);
+-      }
++      memset(&fargs, 0, sizeof(fargs));
++      fargs.fd = fd;
++      fargs.fspec = source;
++      fargs.allow_other = mo->allow_other;
++      fargs.max_read = mo->max_read;
++
++      res = mount(MOUNT_FUSEFS, mnt, mo->flags, &fargs);
+       if (res == -1) {
+-              /*
+-               * Maybe kernel doesn't support unprivileged mounts, in this
+-               * case try falling back to fusermount
+-               */
+-              if (errno == EPERM) {
+-                      res = -2;
+-              } else {
+-                      int errno_save = errno;
+-                      if (mo->blkdev && errno == ENODEV &&
+-                          !fuse_mnt_check_fuseblk())
+-                              fprintf(stderr,
+-                                      "fuse: 'fuseblk' support missing\n");
+-                      else
+-                              fprintf(stderr, "fuse: mount failed: %s\n",
+-                                      strerror(errno_save));
+-              }
++              fprintf(stderr, "fuse: mount failed: %s\n",
++                      strerror(errno));
+ 
+               goto out_close;
+       }
blob - /dev/null
blob + a8a38279010c3e206b5117752c285a816eb4c028 (mode 644)
--- /dev/null
+++ sysutils/libfuse/patches/patch-lib_mount_util_c
@@ -0,0 +1,44 @@
+$OpenBSD$
+
+Index: lib/mount_util.c
+--- lib/mount_util.c.orig
++++ lib/mount_util.c
+@@ -17,7 +17,7 @@
+ #include <fcntl.h>
+ #include <limits.h>
+ #include <paths.h>
+-#ifndef __NetBSD__
++#if !defined(__NetBSD__) && !defined(__OpenBSD__)
+ #include <mntent.h>
+ #endif
+ #include <sys/stat.h>
+@@ -28,6 +28,11 @@
+ #ifdef __NetBSD__
+ #define umount2(mnt, flags) unmount(mnt, (flags == 2) ? MNT_FORCE : 0)
+ #define mtab_needs_update(mnt) 0
++
++#elif defined(__OpenBSD__)
++#define umount2(mnt, flags) unmount(mnt, 0)
++#define mtab_needs_update(mnt) 0
++
+ #else
+ static int mtab_needs_update(const char *mnt)
+ {
+@@ -72,7 +77,7 @@ static int mtab_needs_update(const char *mnt)
+ 
+       return 1;
+ }
+-#endif /* __NetBSD__ */
++#endif /* __NetBSD__ || __OpenBSD__ */
+ 
+ static int add_mount(const char *progname, const char *fsname,
+                      const char *mnt, const char *type, const char *opts)
+@@ -185,7 +190,7 @@ int fuse_mnt_umount(const char *progname, const char *
+ 
+       if (!mtab_needs_update(abs_mnt)) {
+               res = umount2(rel_mnt, lazy ? 2 : 0);
+-              if (res == -1)
++              if (res == -1 && errno != EINVAL)
+                       fprintf(stderr, "%s: failed to unmount %s: %s\n",
+                               progname, abs_mnt, strerror(errno));
+               return res;
blob - /dev/null
blob + 171d65bded1ad5ce3ddd500f3ee527fb8a9bf801 (mode 644)
--- /dev/null
+++ sysutils/libfuse/pkg/DESCR
@@ -0,0 +1,17 @@
+FUSE (Filesystem in Userspace) is an interface for userspace programs
+to export a filesystem to the kernel. FUSE consists of two components:
+the OpenBSD kernel driver and the libfuse userspace library (maintained
+in ports). libfuse provides the reference implementation for
+communicating with the FUSE kernel.
+
+A FUSE file system is typically implemented as a standalone application
+that links with libfuse. libfuse provides functions to mount the
+file system, unmount it, read requests from the kernel, and send
+responses back. libfuse offers two APIs: a "high-level", synchronous
+API, and a "low-level" asynchronous API. In both cases, incoming
+requests from the kernel are passed to the main program using
+callbacks. When using the high-level API, the callbacks may work
+with file names and paths instead of inodes, and processing of a
+request finishes when the callback function returns. When using the
+low-level API, the callbacks must work with inodes and responses
+must be sent explicitly using a separate set of API functions.
blob - /dev/null
blob + 53ea9163832253401070f697eb160858f2b69c04 (mode 644)
--- /dev/null
+++ sysutils/libfuse/pkg/PLIST
@@ -0,0 +1,14 @@
+@comment $OpenBSD: PLIST,v$
+include/fuse/
+include/fuse.h
+include/fuse/fuse.h
+include/fuse/fuse_common.h
+include/fuse/fuse_common_compat.h
+include/fuse/fuse_compat.h
+include/fuse/fuse_lowlevel.h
+include/fuse/fuse_lowlevel_compat.h
+include/fuse/fuse_opt.h
+@static-lib lib/libfuse.a
+lib/libfuse.la
+@lib lib/libfuse.so.${LIBfuse_VERSION}
+lib/pkgconfig/fuse.pc
blob - e2355d63b41e6f62ff02297a27768e40a19446b6
blob + 3cf41a605f2d855f87e90421e2fb12d6de6eeac5
--- sysutils/libluksde/Makefile
+++ sysutils/libluksde/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access LUKS Disk Encryp
 VERSION =      20200205
 DISTNAME =     libluksde-experimental-${VERSION}
 PKGNAME =      ${DISTNAME:S/-experimental//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  luksde                     0.1 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 BUILD_DEPENDS +=devel/gettext,-tools
 
 LIB_DEPENDS += devel/gettext,-runtime \
-               devel/libbfio
+               devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - 4740644567d6f7fce2a1528ce898d179083c5c24
blob + 932cd632edba1908558f78a389b72e89ded01c08
--- sysutils/libolecf/Makefile
+++ sysutils/libolecf/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access the OLE 2 Compou
 VERSION =      20191221
 DISTNAME =     libolecf-alpha-${VERSION}
 PKGNAME =      ${DISTNAME:S/-alpha//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  olecf                       0.1 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools
 
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - 21e2e1a8a4e4f57b519dcae71c15c9ad47b9b9b5
blob + 9c3ad3e6c953fc58327707c7f8b656690350ed68
--- sysutils/libqcow/Makefile
+++ sysutils/libqcow/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access the QEMU Copy-On
 VERSION =      20191221
 DISTNAME =     libqcow-alpha-${VERSION}
 PKGNAME =      ${DISTNAME:S/-alpha//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  qcow                       0.0 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools
 
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - 19f306b464ac559abbf2dd6d709aef8f2d1ba8c4
blob + 8d9b107102cbcf426611ab7490ebf7baa956d069
--- sysutils/libregf/Makefile
+++ sysutils/libregf/Makefile
@@ -5,6 +5,7 @@ COMMENT =       library and tools to access the Windows NT R
 VERSION =      20200805
 DISTNAME =     libregf-alpha-${VERSION}
 PKGNAME =      ${DISTNAME:S/-alpha//}
+REVISION =     0
 
 SHARED_LIBS +=  regf                       0.0 # 1.0
 
@@ -35,6 +36,7 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 BUILD_DEPENDS =        devel/gettext,-tools
 
 LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse \
                sysutils/libfwnt
 
 TEST_DEPENDS +=        shells/bash
blob - 3de9ec54899509b4b3326313029a2cbcb3bacc2b
blob + c102eacf27e0f3ce28d53c48676ad4f23b07651e
--- sysutils/libsmraw/Makefile
+++ sysutils/libsmraw/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access the (split) RAW 
 VERSION =      20191221
 DISTNAME =     libsmraw-alpha-${VERSION}
 PKGNAME =      ${DISTNAME:S/-alpha//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  smraw                       0.1 # 1.0
 
@@ -32,7 +32,8 @@ MODULES +=    lang/python
 MODPY_VERSION =        ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - dc8aea386186491a514213a71025d8f89cf264e3
blob + 540bc51e73b2477d71e1e94eb6f3235ef4a44618
--- sysutils/libvhdi/Makefile
+++ sysutils/libvhdi/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access the VHD image fo
 VERSION =      20191221
 DISTNAME =     libvhdi-alpha-${VERSION}
 PKGNAME =      ${DISTNAME:S/-alpha//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  vhdi                       0.0 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools
 
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - ad98c4350199ffac46ba75d987a5d7895ab9244f
blob + 3426ae1e7af79cad5c4c345880da9b2fd0b45b24
--- sysutils/libvmdk/Makefile
+++ sysutils/libvmdk/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access the VMware Virtu
 VERSION =      20191221
 DISTNAME =     libvmdk-alpha-${VERSION}
 PKGNAME =      ${DISTNAME:S/-alpha//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  vmdk                       0.0 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools
 
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - 612a5e08547f15797d790327c038d4b04880b4b3
blob + 7f45b97a99f36d45c727e7bf5d8bccded427bb26
--- sysutils/libvshadow/Makefile
+++ sysutils/libvshadow/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library and tools to access the VSSformat
 VERSION =      20191221
 DISTNAME =     libvshadow-alpha-${VERSION}
 PKGNAME =      ${DISTNAME:S/-alpha//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  vshadow                       0.1 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS =        devel/gettext,-tools
 
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - 049ddad58470ced251945a6e49ea44c2eec60beb
blob + 550f9acb5c283e1d94ef7e74f78c6939dc6f8d02
--- sysutils/libvslvm/Makefile
+++ sysutils/libvslvm/Makefile
@@ -5,7 +5,7 @@ COMMENT =       library to access the LVM volume system form
 VERSION =      20200102
 DISTNAME =     libvslvm-experimental-${VERSION}
 PKGNAME =      ${DISTNAME:S/-experimental//}
-REVISION =     0
+REVISION =     1
 
 SHARED_LIBS +=  vslvm                       0.0 # 1.0
 
@@ -33,7 +33,8 @@ MODPY_VERSION =       ${MODPY_DEFAULT_VERSION_3}
 
 BUILD_DEPENDS= devel/gettext,-tools
 
-LIB_DEPENDS += devel/libbfio
+LIB_DEPENDS += devel/libbfio \
+               sysutils/libfuse
 
 TEST_DEPENDS +=        shells/bash
 
blob - a17eec39e2ae51a1b6c8673eb268d6862b1fc277
blob + b3573f48477d835688edabdab74939ef6b8a791b
--- sysutils/ntfs-3g/Makefile
+++ sysutils/ntfs-3g/Makefile
@@ -7,7 +7,7 @@ DISTNAME =      ntfs-3g_ntfsprogs-${V}
 PKGNAME =      ntfs_3g-${V}
 SHARED_LIBS += ntfs-3g         0.2     # .88
 CATEGORIES =   sysutils
-REVISION =     2
+REVISION =     3
 
 HOMEPAGE =     https://www.tuxera.com/community/open-source-ntfs-3g/
 
@@ -21,12 +21,11 @@ WANTLIB += c uuid fuse
 MASTER_SITES = https://tuxera.com/opensource/
 EXTRACT_SUFX = .tgz
 
-LIB_DEPENDS =          sysutils/e2fsprogs
+LIB_DEPENDS =          sysutils/e2fsprogs \
+                       sysutils/libfuse
 
 SEPARATE_BUILD =       Yes
 CONFIGURE_STYLE =      gnu
-CONFIGURE_ENV =                CPPFLAGS="-I${LOCALBASE}/include" \
-                       LDFLAGS="-L${LOCALBASE}/lib"
 CONFIGURE_ARGS =       --disable-ldconfig \
                        --disable-mtab \
                        --enable-extras \
blob - 6ad3277bab0a5679f4f4866dbd15ac101cc23df9
blob + 04a2fc977cde4291dbc21353249ed0d51e53a488
--- sysutils/simple-mtpfs/Makefile
+++ sysutils/simple-mtpfs/Makefile
@@ -7,7 +7,7 @@ GH_ACCOUNT=             phatina
 GH_PROJECT=            simple-mtpfs
 GH_TAGNAME=            simple-mtpfs-${V}
 DISTNAME=              ${GH_PROJECT}-0.3.0
-REVISION=              1
+REVISION=              2
 
 CATEGORIES=            sysutils
 
@@ -21,7 +21,8 @@ COMPILER =            base-clang ports-gcc
 
 CONFIGURE_STYLE=       autoreconf
 
-LIB_DEPENDS=           devel/libmtp
+LIB_DEPENDS=           devel/libmtp \
+                       sysutils/libfuse
 
 MAKE_FILE=             makefile
 
blob - b4251b7acf70b1328d1ad76ed561edaba87e024a (mode 644)
blob + /dev/null
--- sysutils/simple-mtpfs/patches/patch-src_simple-mtpfs-fuse_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-$OpenBSD: patch-src_simple-mtpfs-fuse_cpp,v 1.1.1.1 2015/07/02 21:31:44 
ajacoutot Exp $
---- src/simple-mtpfs-fuse.cpp.orig     Mon Jun 29 17:27:26 2015
-+++ src/simple-mtpfs-fuse.cpp  Mon Jun 29 17:27:31 2015
-@@ -19,7 +19,7 @@
- #include <iostream>
- extern "C" {
- #  include <errno.h>
--#  include <fuse/fuse_opt.h>
-+#  include <fuse_opt.h>
- #  include <unistd.h>
- #  include <stddef.h>
- }
blob - e87bb62a31b72909e4aca565d77f0311c8b9300e (mode 644)
blob + /dev/null
--- sysutils/simple-mtpfs/patches/patch-src_simple-mtpfs-fuse_h
+++ /dev/null
@@ -1,12 +0,0 @@
-$OpenBSD: patch-src_simple-mtpfs-fuse_h,v 1.1.1.1 2015/07/02 21:31:44 
ajacoutot Exp $
---- src/simple-mtpfs-fuse.h.orig       Mon Jun 29 17:26:18 2015
-+++ src/simple-mtpfs-fuse.h    Mon Jun 29 17:26:25 2015
-@@ -23,7 +23,7 @@
- #include <string>
- #include <cstdlib>
- extern "C" {
--#  include <fuse/fuse.h>
-+#  include <fuse.h>
- }
- #include "simple-mtpfs-mtp-device.h"
- #include "simple-mtpfs-tmp-files-pool.h"
blob - d2e0ca487803a25c65e4be95a1b7f71382b12dc0
blob + 182a1b211777bfbc7d2cca42955112e895c3cd89
--- sysutils/sshfs-fuse/Makefile
+++ sysutils/sshfs-fuse/Makefile
@@ -3,6 +3,7 @@
 COMMENT =      mount remote directories over ssh
 
 DISTNAME =     sshfs-2.10
+REVISION =     0
 PKGNAME =      ${DISTNAME:S/-/-fuse-/}
 
 CATEGORIES =   sysutils
@@ -16,7 +17,8 @@ WANTLIB =     c fuse glib-2.0 gthread-2.0 intl pthread
 
 MASTER_SITES = ${HOMEPAGE}/releases/download/${DISTNAME}/
 
-LIB_DEPENDS =  devel/glib2
+LIB_DEPENDS =  devel/glib2 \
+               sysutils/libfuse
 
 CONFIGURE_STYLE =      gnu
 
blob - c157cb289008537de97ec8521df75f950ce73557
blob + 2db29104900748c8891f96e8d79be26f0b22767d
--- sysutils/sshfs-fuse/patches/patch-sshfs_c
+++ sysutils/sshfs-fuse/patches/patch-sshfs_c
@@ -2,15 +2,7 @@ $OpenBSD: patch-sshfs_c,v 1.5 2019/08/18 19:29:33 bket
 Index: sshfs.c
 --- sshfs.c.orig
 +++ sshfs.c
-@@ -12,7 +12,6 @@
- #include <fuse.h>
- #include <fuse_opt.h>
- #if !defined(__CYGWIN__)
--#include <fuse_lowlevel.h>
- #endif
- #ifdef __APPLE__
- #  include <fuse_darwin.h>
-@@ -39,6 +38,7 @@
+@@ -39,6 +39,7 @@
  #include <sys/utsname.h>
  #include <sys/mman.h>
  #include <sys/poll.h>
@@ -18,7 +10,7 @@ Index: sshfs.c
  #include <netinet/in.h>
  #include <netinet/tcp.h>
  #include <glib.h>
-@@ -3302,7 +3302,7 @@ static void usage(const char *progname)
+@@ -3302,7 +3303,7 @@ static void usage(const char *progname)
  "    -h   --help            print help\n"
  "    -V   --version         print version\n"
  "\n"
blob - ae2ab70c4d4d4f3087bc27c465c3db26b20fa2b2
blob + c9b39ffea6a6492b4b263cda8bb00e93f265405e
--- sysutils/unionfs-fuse/Makefile
+++ sysutils/unionfs-fuse/Makefile
@@ -5,6 +5,7 @@ COMMENT =       unionfs filesystem implementation
 GH_ACCOUNT =   rpodgorny
 GH_PROJECT =   unionfs-fuse
 GH_TAGNAME =   v2.1
+REVISION =     0
 
 CATEGORIES =   sysutils
 
@@ -15,6 +16,10 @@ PERMIT_PACKAGE =     Yes
 
 WANTLIB =      c fuse pthread
 
+LIB_DEPENDS =  sysutils/libfuse
+
+USE_GMAKE =    Yes
+
 ALL_TARGET =   build
 
 do-install:
blob - 01f2d3ea659d4d17a4976f3e75fb85665819a1b2
blob + 5b6aa90c35fd960a01e94560858978417f7d2c11
--- sysutils/unionfs-fuse/patches/patch-src_Makefile
+++ sysutils/unionfs-fuse/patches/patch-src_Makefile
@@ -3,7 +3,7 @@ $OpenBSD: patch-src_Makefile,v 1.2 2020/05/14 19:36:05
 Index: src/Makefile
 --- src/Makefile.orig
 +++ src/Makefile
-@@ -2,15 +2,15 @@ CFLAGS += -Wall -fPIC
+@@ -2,10 +2,10 @@ CFLAGS += -Wall -fPIC
  CPPFLAGS += $(shell pkg-config --cflags fuse)
  CPPFLAGS += -DFUSE_USE_VERSION=29
  
@@ -16,9 +16,3 @@ Index: src/Makefile
  # CPPFLAGS += -DDISABLE_AT    # disable *at function support
  
  LDFLAGS +=
- 
--LIB = $(shell pkg-config --libs fuse) -lpthread
-+LIB = -lfuse -lpthread
- 
- HASHTABLE_OBJ = hashtable.o hashtable_itr.o
- LIBUNIONFS_OBJ = fuse_ops.o opts.o debug.o findbranch.o readdir.o \
blob - f297e84030089735d805d0ced3c596004b490e01
blob + 2c350139cdf84c1422140a7384707d99fa1bd330
--- sysutils/usmb/Makefile
+++ sysutils/usmb/Makefile
@@ -3,7 +3,7 @@
 COMMENT=       mount SMB shares from userland via FUSE
 
 DISTNAME=      usmb-20130204
-REVISION=      7
+REVISION=      8
 
 CATEGORIES=    sysutils
 
@@ -20,7 +20,8 @@ MASTER_SITES= https://spacehopper.org/mirrors/
 BUILD_DEPENDS= textproc/gsed
 LIB_DEPENDS=   devel/glib2 \
                net/samba \
-               textproc/libxml
+               textproc/libxml \
+               sysutils/libfuse
 
 SEPARATE_BUILD=        Yes
 USE_GMAKE=     Yes

Reply via email to