summaryrefslogtreecommitdiff
path: root/filesystems/fuse-unionfs
diff options
context:
space:
mode:
authorjmmv <jmmv>2016-02-01 02:41:21 +0000
committerjmmv <jmmv>2016-02-01 02:41:21 +0000
commit8b2a52fb45f252cad6fd2cf7568bb8954dfbfcc4 (patch)
treefee925f7d4c4525df887582c4b813e155a2e071e /filesystems/fuse-unionfs
parentcab019b3788687bfa14e49714e84e411d83e9d62 (diff)
downloadpkgsrc-8b2a52fb45f252cad6fd2cf7568bb8954dfbfcc4.tar.gz
Update fuse-unionfs to 1.0:
1.0 - add unionfsctl utility to control unionfs-fuse over ioctl - better apple support - dropped stats - better test suite - probably lots of other things, it's been a while since last release ;-) 0.26 - use BUILD_PATH instead of snprintf, which will return -ENAMETOOLONG if the path is too long instead of simply using a wrong path - new options "-o relaxed_permissions" and "-o hide_meta_dir" - included the debian directory - Properly check on rmdir() if sub-branches are also empty - Always compile with debug code, but only enable debugging on request - New option -o debug_file - Lots of bugs fixed in BUILD_PATH() - Improved search of white-out files - Properly fix Debian Bug#509516. - More debug output. - Add syslog support without the risk of possible dead locks - Use fuse big-writes (and reads) if available 0.25 - Alternate way to specify branches - Minor fixes 0.24 - Support for liveCDs / live USB sticks (-o chroot) - Build-in support to change the maximum number of open files - Added recursive directory COW. - relative paths: Critical bug fix, had been completely broken in 0.23 0.23 - remove to_user() and to_root() calls for autorization and use fuse build-in default_permissions checks - bugfix: rename created wrong whiteout type 0.22 - Fix a bug reported by Jens Hoelldampf <jens@hoelldampf.net>, in 0.21 cow didn't work for pathes. 0.21 - Fix a segmentation fault when COW was enabled, but no rw-branch was specified. - Proper handling when ro-branches are on top of rw-branches. - Disabled syslog entries for now, since it might cause deadlocks. - Fixed a license issue with the elfhash, since the CPL is not compatible with the BSD license. - Fix a bug when stat() was called instead of lstat(). - Many internal code changes (renaming of "root" to "branch"). - Better directory structure. - Add this NEWS file. - Add a man page. 0.20 - Fix a critical bug introduced in 0.19 when we disabled threadding. 0.19 - Several copy-on-write fixes (readdir, unlink, rmdir, rename). - Whiteout files are now located in branch/.unionfs/ subdirectories. - Disable threadding, since our current permissions-model is not compatible with the NPTL implementation and the Posix-Thread model in general. - Add supplementary group support. 0.18 - First release with copy-on-write (COW) support. - Many many internal code changes.
Diffstat (limited to 'filesystems/fuse-unionfs')
-rw-r--r--filesystems/fuse-unionfs/DESCR2
-rw-r--r--filesystems/fuse-unionfs/Makefile27
-rw-r--r--filesystems/fuse-unionfs/PLIST6
-rw-r--r--filesystems/fuse-unionfs/distinfo15
-rw-r--r--filesystems/fuse-unionfs/patches/patch-aa21
-rw-r--r--filesystems/fuse-unionfs/patches/patch-ab12
-rw-r--r--filesystems/fuse-unionfs/patches/patch-ac13
-rw-r--r--filesystems/fuse-unionfs/patches/patch-cow_utils.h14
-rw-r--r--filesystems/fuse-unionfs/patches/patch-unionfs.c42
9 files changed, 84 insertions, 68 deletions
diff --git a/filesystems/fuse-unionfs/DESCR b/filesystems/fuse-unionfs/DESCR
index 5de603b490b..b95b33e1e30 100644
--- a/filesystems/fuse-unionfs/DESCR
+++ b/filesystems/fuse-unionfs/DESCR
@@ -5,4 +5,4 @@ having a number of directories merged under one mountpoint.
This utility is implemented at the user level - to mount a series
of roots, simply use:
- fuse-unionfs /dir1:/dir2:/dir3 /mnt
+ unionfs /dir1:/dir2:/dir3 /mnt
diff --git a/filesystems/fuse-unionfs/Makefile b/filesystems/fuse-unionfs/Makefile
index 34097520499..0656e5b9148 100644
--- a/filesystems/fuse-unionfs/Makefile
+++ b/filesystems/fuse-unionfs/Makefile
@@ -1,24 +1,29 @@
-# $NetBSD: Makefile,v 1.4 2012/10/03 16:08:32 asau Exp $
+# $NetBSD: Makefile,v 1.5 2016/02/01 02:41:21 jmmv Exp $
#
-DISTNAME= unionfs-fuse-0.17
-PKGNAME= fuse-unionfs-0.17
+DISTNAME= v1.0
+DIST_SUBDIR= ${PKGBASE}
+PKGNAME= fuse-unionfs-${DISTNAME:S/v//}
CATEGORIES= filesystems
-MASTER_SITES= http://podgorny.cz/unionfs-fuse/releases/
-EXTRACT_SUFX= .tar.bz2
+MASTER_SITES= ${MASTER_SITE_GITHUB:=rpodgorny/unionfs-fuse/archive/}
MAINTAINER= pkgsrc-users@NetBSD.org
-HOMEPAGE= http://podgorny.cz/unionfs-fuse/
+HOMEPAGE= https://github.com/rpodgorny/unionfs-fuse
COMMENT= FUSE-based union filesystem
-BUILD_TARGET= unionfs
-USE_TOOLS+= pkg-config
+BUILD_TARGET= build
+USE_TOOLS= gmake pkg-config
+WRKSRC= ${WRKDIR}/unionfs-fuse-${DISTNAME:S/v//}
-INSTALLATION_DIRS= bin
+INSTALLATION_DIRS= bin man/man8
do-install:
- ${INSTALL_PROGRAM} ${WRKSRC}/unionfs \
- ${DESTDIR}${PREFIX}/bin/fuse-unionfs
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/unionfs \
+ ${DESTDIR}${PREFIX}/bin/unionfs
+ ${INSTALL_PROGRAM} ${WRKSRC}/src/unionfsctl \
+ ${DESTDIR}${PREFIX}/bin/unionfsctl
+ ${INSTALL_MAN} ${WRKSRC}/man/unionfs.8 \
+ ${DESTDIR}${PREFIX}/man/man8
.include "../../mk/fuse.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/filesystems/fuse-unionfs/PLIST b/filesystems/fuse-unionfs/PLIST
index dbdf0bbee08..3e34fbe471c 100644
--- a/filesystems/fuse-unionfs/PLIST
+++ b/filesystems/fuse-unionfs/PLIST
@@ -1,2 +1,4 @@
-@comment $NetBSD: PLIST,v 1.1.1.1 2007/03/10 12:51:03 agc Exp $
-bin/fuse-unionfs
+@comment $NetBSD: PLIST,v 1.2 2016/02/01 02:41:21 jmmv Exp $
+bin/unionfs
+bin/unionfsctl
+man/man8/unionfs.8
diff --git a/filesystems/fuse-unionfs/distinfo b/filesystems/fuse-unionfs/distinfo
index 2e800247bf8..88ca5b885b6 100644
--- a/filesystems/fuse-unionfs/distinfo
+++ b/filesystems/fuse-unionfs/distinfo
@@ -1,9 +1,8 @@
-$NetBSD: distinfo,v 1.4 2015/11/03 00:15:01 agc Exp $
+$NetBSD: distinfo,v 1.5 2016/02/01 02:41:21 jmmv Exp $
-SHA1 (unionfs-fuse-0.17.tar.bz2) = 791877d7e127c28345f3884f30b9a65032e9ca80
-RMD160 (unionfs-fuse-0.17.tar.bz2) = 020662308ea3930ed26685bcb2cdcaf08f3082f3
-SHA512 (unionfs-fuse-0.17.tar.bz2) = d4a8fd782780ec5074b830a168e3f5a7231cb0fd7ea57e6f8f6986bb3636998e363b5f914fa371f6aa79e849a133c061136bd4cc0e199c249e60b368edf4b649
-Size (unionfs-fuse-0.17.tar.bz2) = 6447 bytes
-SHA1 (patch-aa) = 917a9997c5ceef0edf632b4738dd0e397c3d6705
-SHA1 (patch-ab) = fcb7ebe83f25488653ee42548c84d7709ce952d8
-SHA1 (patch-ac) = 0ce1100986d2a6e1941ebe6fb3ccca7fe54e7fee
+SHA1 (fuse-unionfs/v1.0.tar.gz) = f35e5a3f0e033291981766f50cd9895d23fae649
+RMD160 (fuse-unionfs/v1.0.tar.gz) = 9bfed432a36e1736ed197c3292c02d6d57469bf5
+SHA512 (fuse-unionfs/v1.0.tar.gz) = 805151acaeae8526fba430701a1690f6eb0ad8331a9e730095ee538dc2b148d02fe996a63e8a7f6471d1ef622cc5c03d82bd2b2faad1ebe3b614ec343c2f55de
+Size (fuse-unionfs/v1.0.tar.gz) = 48149 bytes
+SHA1 (patch-cow_utils.h) = 78322cee0b3c240df7e63b6ec405ad1a6cdefc2c
+SHA1 (patch-unionfs.c) = dd05ff561ff1def121619fa1cce4f9f3206c625f
diff --git a/filesystems/fuse-unionfs/patches/patch-aa b/filesystems/fuse-unionfs/patches/patch-aa
deleted file mode 100644
index eed19b412a5..00000000000
--- a/filesystems/fuse-unionfs/patches/patch-aa
+++ /dev/null
@@ -1,21 +0,0 @@
-$NetBSD: patch-aa,v 1.3 2010/02/02 10:45:17 jmmv Exp $
-
---- unionfs.c.orig 2007-02-09 16:17:37.000000000 +0000
-+++ unionfs.c
-@@ -10,6 +10,7 @@ This is offered under a BSD-style licens
- #endif
-
- #include <fuse.h>
-+#include <fuse_opt.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-@@ -192,7 +193,7 @@ static int unionfs_fsync(const char *pat
-
- int res;
- if (isdatasync) {
--#ifdef _POSIX_SYNCHRONIZED_IO
-+#if defined(_POSIX_SYNCHRONIZED_IO) && _POSIX_SYNCHRONIZED_IO != -1
- res = fdatasync(fi->fh);
- #else
- res = fsync(fi->fh);
diff --git a/filesystems/fuse-unionfs/patches/patch-ab b/filesystems/fuse-unionfs/patches/patch-ab
deleted file mode 100644
index 0d46b1cc34a..00000000000
--- a/filesystems/fuse-unionfs/patches/patch-ab
+++ /dev/null
@@ -1,12 +0,0 @@
-$NetBSD: patch-ab,v 1.1.1.1 2007/03/10 12:51:03 agc Exp $
-
---- opts.h 2007/03/10 00:36:42 1.1
-+++ opts.h 2007/03/10 00:36:59
-@@ -3,6 +3,7 @@
-
-
- #include <fuse.h>
-+#include <fuse_opt.h>
- #include "unionfs.h"
-
-
diff --git a/filesystems/fuse-unionfs/patches/patch-ac b/filesystems/fuse-unionfs/patches/patch-ac
deleted file mode 100644
index bab9faa55f8..00000000000
--- a/filesystems/fuse-unionfs/patches/patch-ac
+++ /dev/null
@@ -1,13 +0,0 @@
-$NetBSD: patch-ac,v 1.1 2010/02/02 10:45:18 jmmv Exp $
-
---- Makefile.orig 2007-02-09 16:17:37.000000000 +0000
-+++ Makefile
-@@ -1,6 +1,6 @@
--CFLAGS += -Wall
-+CFLAGS += -Wall $$(pkg-config --cflags fuse)
- CPPFLAGS += -D_FILE_OFFSET_BITS=64 -DFUSE_USE_VERSION=26
--LDFLAGS += -lfuse
-+LDFLAGS += -lfuse $$(pkg-config --libs fuse)
-
- UNIONFS_OBJ = unionfs.o stats.o opts.o debug.o cache.o
-
diff --git a/filesystems/fuse-unionfs/patches/patch-cow_utils.h b/filesystems/fuse-unionfs/patches/patch-cow_utils.h
new file mode 100644
index 00000000000..8b4aff42704
--- /dev/null
+++ b/filesystems/fuse-unionfs/patches/patch-cow_utils.h
@@ -0,0 +1,14 @@
+$NetBSD: patch-cow_utils.h,v 1.1 2016/02/01 02:41:21 jmmv Exp $
+
+--- src/cow_utils.h.orig 2015-01-14 10:08:20.000000000 +0000
++++ src/cow_utils.h
+@@ -8,7 +8,9 @@
+ #define COW_UTILS_H
+
+ #define VM_AND_BUFFER_CACHE_SYNCHRONIZED
++#if !defined(MAXBSIZE)
+ #define MAXBSIZE 4096
++#endif
+
+ struct cow {
+ mode_t umask;
diff --git a/filesystems/fuse-unionfs/patches/patch-unionfs.c b/filesystems/fuse-unionfs/patches/patch-unionfs.c
new file mode 100644
index 00000000000..52f56740acc
--- /dev/null
+++ b/filesystems/fuse-unionfs/patches/patch-unionfs.c
@@ -0,0 +1,42 @@
+$NetBSD: patch-unionfs.c,v 1.1 2016/02/01 02:41:21 jmmv Exp $
+
+--- src/unionfs.c.orig 2015-01-14 10:08:20.000000000 +0000
++++ src/unionfs.c
+@@ -23,8 +23,10 @@
+
+ #if __APPLE__
+ #include <fuse_common.h>
+-#else
++#elif defined linux
+ #include <fuse/fuse_common.h>
++#else
++#include <fuse.h>
+ #endif
+
+ #include <stdio.h>
+@@ -267,6 +269,7 @@ static int unionfs_link(const char *from
+ RETURN(0);
+ }
+
++#if defined(FUSE_IOCTL_COMPAT)
+ static int unionfs_ioctl(const char *path, int cmd, void *arg, struct fuse_file_info *fi, unsigned int flags, void *data) {
+ (void) path;
+ (void) arg; // avoid compiler warning
+@@ -303,6 +306,7 @@ static int unionfs_ioctl(const char *pat
+
+ return 0;
+ }
++#endif
+
+ /**
+ * unionfs mkdir() implementation
+@@ -806,7 +810,9 @@ static struct fuse_operations unionfs_op
+ .fsync = unionfs_fsync,
+ .getattr = unionfs_getattr,
+ .init = unionfs_init,
++#if defined(FUSE_IOCTL_COMPAT)
+ .ioctl = unionfs_ioctl,
++#endif
+ .link = unionfs_link,
+ .mkdir = unionfs_mkdir,
+ .mknod = unionfs_mknod,