]> git.pld-linux.org Git - packages/zfs-fuse.git/commitdiff
- updated to 0.7.2.2; python3,tirpc patches from Fedora, opt,format,common,xattr...
authorJakub Bogusz <qboosh@pld-linux.org>
Fri, 29 Dec 2023 18:54:07 +0000 (19:54 +0100)
committerJakub Bogusz <qboosh@pld-linux.org>
Fri, 29 Dec 2023 18:54:07 +0000 (19:54 +0100)
zfs-fuse-common.patch [new file with mode: 0644]
zfs-fuse-format.patch [new file with mode: 0644]
zfs-fuse-libzfs_build.patch [deleted file]
zfs-fuse-opt.patch [new file with mode: 0644]
zfs-fuse-python3.patch [new file with mode: 0644]
zfs-fuse-tirpc.patch [new file with mode: 0644]
zfs-fuse-xattr.patch [new file with mode: 0644]
zfs-fuse-ztest_path.patch
zfs-fuse.spec

diff --git a/zfs-fuse-common.patch b/zfs-fuse-common.patch
new file mode 100644 (file)
index 0000000..544db36
--- /dev/null
@@ -0,0 +1,115 @@
+--- zfs-fuse-0.7.2.2/src/lib/libsolcompat/include/sys/utsname.h.orig   2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/lib/libsolcompat/include/sys/utsname.h        2023-12-29 09:24:24.788479802 +0100
+@@ -29,7 +29,7 @@
+ #include_next <sys/utsname.h>
+-struct utsname utsname;
++extern struct utsname utsname;
+ #endif
+--- zfs-fuse-0.7.2.2/src/lib/libzfs/libzfs_zfsfuse.c.orig      2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/lib/libzfs/libzfs_zfsfuse.c   2023-12-29 15:50:50.216206888 +0100
+@@ -37,8 +37,6 @@
+ #include "libzfs_impl.h"
+-int aok=0;
+-
+ int zfsfuse_open(const char *pathname, int flags)
+ {
+       struct sockaddr_un name;
+--- zfs-fuse-0.7.2.2/src/cmd/zpool/zpool_util.h.orig   2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/cmd/zpool/zpool_util.h        2023-12-29 15:55:50.017916056 +0100
+@@ -63,7 +63,7 @@ void pool_list_free(zpool_list_t *);
+ int pool_list_count(zpool_list_t *);
+ void pool_list_remove(zpool_list_t *, zpool_handle_t *);
+-libzfs_handle_t *g_zfs;
++extern libzfs_handle_t *g_zfs;
+ #ifdef        __cplusplus
+ }
+--- zfs-fuse-0.7.2.2/src/cmd/zfs/zfs_util.h.orig       2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/cmd/zfs/zfs_util.h    2023-12-29 15:56:07.287822497 +0100
+@@ -34,7 +34,7 @@ extern "C" {
+ void * safe_malloc(size_t size);
+ void nomem(void);
+-libzfs_handle_t *g_zfs;
++extern libzfs_handle_t *g_zfs;
+ #ifdef        __cplusplus
+ }
+--- zfs-fuse-0.7.2.2/src/cmd/zpool/zpool_main.c.orig   2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/cmd/zpool/zpool_main.c        2023-12-29 15:58:29.293719852 +0100
+@@ -53,6 +53,8 @@
+ #include "statcommon.h"
+ #include "format.h"
++libzfs_handle_t *g_zfs;
++
+ static int zpool_do_create(int, char **);
+ static int zpool_do_destroy(int, char **);
+--- zfs-fuse-0.7.2.2/src/lib/libsolkerncompat/main.c.orig      2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/lib/libsolkerncompat/main.c   2023-12-29 17:29:41.574073964 +0100
+@@ -43,6 +43,7 @@ uint64_t physmem;
+ unsigned long _pagesize;
+ unsigned int _pageshift;
+ kmem_cache_t *vnode_cache;
++struct utsname utsname;
+ extern void system_taskq_init();
+ void libsolkerncompat_init()
+--- zfs-fuse-0.7.2.2/src/zfs-fuse/zfs_vnops.c.orig     2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/zfs-fuse/zfs_vnops.c  2023-12-29 17:52:41.103267080 +0100
+@@ -5130,7 +5130,6 @@ zfs_isdir()
+ /*
+  * Directory vnode operations template
+  */
+-vnodeops_t *zfs_dvnodeops;
+ const fs_operation_def_t zfs_dvnodeops_template[] = {
+       VOPNAME_OPEN,           { .vop_open = zfs_open },
+       VOPNAME_CLOSE,          { .vop_close = zfs_close },
+@@ -5163,7 +5162,6 @@ const fs_operation_def_t zfs_dvnodeops_t
+ /*
+  * Regular file vnode operations template
+  */
+-vnodeops_t *zfs_fvnodeops;
+ const fs_operation_def_t zfs_fvnodeops_template[] = {
+       VOPNAME_OPEN,           { .vop_open = zfs_open },
+       VOPNAME_CLOSE,          { .vop_close = zfs_close },
+@@ -5198,7 +5196,6 @@ const fs_operation_def_t zfs_fvnodeops_t
+ /*
+  * Symbolic link vnode operations template
+  */
+-vnodeops_t *zfs_symvnodeops;
+ const fs_operation_def_t zfs_symvnodeops_template[] = {
+       VOPNAME_GETATTR,        { .vop_getattr = zfs_getattr },
+       VOPNAME_SETATTR,        { .vop_setattr = zfs_setattr },
+@@ -5216,7 +5213,6 @@ const fs_operation_def_t zfs_symvnodeops
+ /*
+  * special share hidden files vnode operations template
+  */
+-vnodeops_t *zfs_sharevnodeops;
+ const fs_operation_def_t zfs_sharevnodeops_template[] = {
+       VOPNAME_GETATTR,        { .vop_getattr = zfs_getattr },
+       VOPNAME_ACCESS,         { .vop_access = zfs_access },
+@@ -5240,7 +5236,6 @@ const fs_operation_def_t zfs_sharevnodeo
+  *    zfs_link()      - no links into/out of attribute space
+  *    zfs_rename()    - no moves into/out of attribute space
+  */
+-vnodeops_t *zfs_xdvnodeops;
+ const fs_operation_def_t zfs_xdvnodeops_template[] = {
+       VOPNAME_OPEN,           { .vop_open = zfs_open },
+       VOPNAME_CLOSE,          { .vop_close = zfs_close },
+@@ -5271,7 +5266,6 @@ const fs_operation_def_t zfs_xdvnodeops_
+ /*
+  * Error vnode operations template
+  */
+-vnodeops_t *zfs_evnodeops;
+ const fs_operation_def_t zfs_evnodeops_template[] = {
+       VOPNAME_INACTIVE,       { .vop_inactive = zfs_inactive },
+       VOPNAME_PATHCONF,       { .vop_pathconf = zfs_pathconf },
diff --git a/zfs-fuse-format.patch b/zfs-fuse-format.patch
new file mode 100644 (file)
index 0000000..b3d336e
--- /dev/null
@@ -0,0 +1,52 @@
+--- zfs-fuse-0.7.2.2/src/lib/libnvpair/libnvpair.c.orig        2015-11-24 17:32:31.000000000 +0100
++++ zfs-fuse-0.7.2.2/src/lib/libnvpair/libnvpair.c     2023-12-29 08:05:16.384204117 +0100
+@@ -123,7 +123,7 @@ struct nvlist_prtctl {
+                       (void) DFLTPRTOP(pctl, type)(pctl, \
+                           DFLTPRTOPARG(pctl, type), nvl, name, val); \
+               } \
+-              (void) fprintf(pctl->nvprt_fp, pctl->nvprt_eomfmt); \
++              (void) fputs(pctl->nvprt_eomfmt, pctl->nvprt_fp); \
+       }
+ #define       ARENDER(pctl, type, nvl, name, arrp, count) \
+@@ -137,7 +137,7 @@ struct nvlist_prtctl {
+                       (void) DFLTPRTOP(pctl, type)(pctl, \
+                           DFLTPRTOPARG(pctl, type), nvl, name, arrp, count); \
+               } \
+-              (void) fprintf(pctl->nvprt_fp, pctl->nvprt_eomfmt); \
++              (void) fputs(pctl->nvprt_eomfmt, pctl->nvprt_fp); \
+       }
+ static void nvlist_print_with_indent(nvlist_t *, nvlist_prtctl_t);
+@@ -210,7 +210,7 @@ NVLIST_PRTFUNC(int32, int32_t, int32_t,
+ NVLIST_PRTFUNC(uint32, uint32_t, uint32_t, "0x%x")
+ NVLIST_PRTFUNC(int64, int64_t, longlong_t, "%lld")
+ NVLIST_PRTFUNC(uint64, uint64_t, u_longlong_t, "0x%llx")
+-NVLIST_PRTFUNC(double, double, double, "0x%llf")
++NVLIST_PRTFUNC(double, double, double, "0x%lf")
+ NVLIST_PRTFUNC(string, char *, char *, "%s")
+ NVLIST_PRTFUNC(hrtime, hrtime_t, hrtime_t, "0x%llx")
+@@ -235,7 +235,7 @@ nvaprint_##type_and_variant(nvlist_prtct
+                               (void) fprintf(fp, "[%d]: ", i); \
+               } \
+               if (i != 0) \
+-                      (void) fprintf(fp, pctl->nvprt_btwnarrfmt); \
++                      (void) fputs(pctl->nvprt_btwnarrfmt, fp); \
+               (void) fprintf(fp, vfmt, (ptype)valuep[i]); \
+       } \
+       return (1); \
+@@ -394,11 +394,11 @@ nvlist_prtctl_dofmt(nvlist_prtctl_t pctl
+               break;
+       case NVLIST_FMT_MEMBER_POSTAMBLE:
+-              (void) fprintf(fp, pctl->nvprt_eomfmt);
++              (void) fputs(pctl->nvprt_eomfmt, fp);
+               break;
+       case NVLIST_FMT_BTWN_ARRAY:
+-              (void) fprintf(fp, pctl->nvprt_btwnarrfmt); \
++              (void) fputs(pctl->nvprt_btwnarrfmt, fp);
+               break;
+       default:
diff --git a/zfs-fuse-libzfs_build.patch b/zfs-fuse-libzfs_build.patch
deleted file mode 100644 (file)
index 163d3ce..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
---- zfs-fuse-0.5.0/src/lib/libzfs/libzfs_pool.c        2008-09-13 01:37:59.000000000 +0000
-+++ zfs-fuse-0.5.0/src/lib/libzfs/libzfs_pool.c        2010-06-06 00:55:48.000000000 +0000
-@@ -39,6 +39,7 @@
- #include <zone.h>
- #include <sys/efi_partition.h>
- #include <sys/vtoc.h>
-+#include <sys/stat.h>
- #include <sys/zfs_ioctl.h>
- #include <sys/zio.h>
- #include <strings.h>
diff --git a/zfs-fuse-opt.patch b/zfs-fuse-opt.patch
new file mode 100644 (file)
index 0000000..fad5a39
--- /dev/null
@@ -0,0 +1,36 @@
+--- zfs-fuse-0.7.2.2/src/SConstruct.orig       2023-12-26 22:12:27.436368937 +0100
++++ zfs-fuse-0.7.2.2/src/SConstruct    2023-12-28 20:29:27.337044786 +0100
+@@ -30,9 +30,9 @@ f.close()
+ env.CacheDir('/tmp/.zfs-fuse.scons')
+ env['CC'] = os.environ.setdefault("CC","gcc")
+-env['CCFLAGS'] = os.environ.setdefault("CFLAGS","")
++env['CCFLAGS'] = Split(os.environ.setdefault("CFLAGS",""))
+ env['LINKFLAGS'] = Split('-pipe -Wall')
+-env.Append(CCFLAGS = Split('-pipe -Wall -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -Wcast-align -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" -O2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector -fstrict-volatile-bitfields --param=ssp-buffer-size=4 '))
++env.Append(CCFLAGS = Split('-pipe -Wall -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -Wcast-align -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" -Wp,-D_FORTIFY_SOURCE=2 -fstrict-volatile-bitfields'))
+ if osname == "Linux":
+   env.Append(CPPFLAGS = " -DLINUX_AIO")
+@@ -41,8 +41,7 @@ debug = int(ARGUMENTS.get('debug', '0'))
+ optim = ARGUMENTS.get('optim', '-O2')
+ if not debug:
+-      env.Append(LINKFLAGS = ['-s'])
+-      env.Append(CCFLAGS = ['-s', optim, '-DNDEBUG'])
++      env.Append(CCFLAGS = [optim, '-DNDEBUG'])
+ else:
+       env.Append(LINKFLAGS = ['-ggdb'])
+       env.Append(CCFLAGS = ['-ggdb'])
+@@ -91,11 +90,6 @@ if myarch == 'sparc64':
+ env['ARCH'] = ARGUMENTS.get('target', myarch)
+-if env['ARCH'] == 'i386' and myarch == 'amd64':
+-      env.Append(CCFLAGS = '-m32')
+-      env.Append(ASFLAGS = '-m32')
+-      env.Append(LINKFLAGS = '-m32')
+-
+ Export('env')
+ SConscript('lib/libavl/SConscript')
diff --git a/zfs-fuse-python3.patch b/zfs-fuse-python3.patch
new file mode 100644 (file)
index 0000000..da4ed2b
--- /dev/null
@@ -0,0 +1,30 @@
+diff -up zfs-fuse-0.7.2.2/src/SConstruct.py3 zfs-fuse-0.7.2.2/src/SConstruct
+--- zfs-fuse-0.7.2.2/src/SConstruct.py3        2018-01-17 11:02:43.616124442 +0100
++++ zfs-fuse-0.7.2.2/src/SConstruct    2018-01-17 11:04:22.826712411 +0100
+@@ -57,7 +57,7 @@ else:
+ if not (('-DDEBUG' in env['CCFLAGS']) or 
+               ('-DNDEBUG' in env['CCFLAGS'])):
+       print
+-      print "Misconfigured debug level: Neither DEBUG or NDEBUG appears to have been defined: %s" % env['CCFLAGS']
++      print("Misconfigured debug level: Neither DEBUG or NDEBUG appears to have been defined: %s" % env['CCFLAGS'])
+       sys.exit(1)
+ env['CPPPATH'] = []
+@@ -82,7 +82,7 @@ myarch = getarch(arch)
+ if not myarch:
+       print
+-      print 'Sorry, only the x86, amd64 and sparc64 hardware architectures are supported'
++      print('Sorry, only the x86, amd64 and sparc64 hardware architectures are supported')
+       sys.exit(1)
+ if myarch == 'sparc64':
+@@ -131,7 +131,7 @@ env.Install(man_dir, '../doc/zstreamdump
+ env.Install(man_dir, '../doc/zfs-fuse.8')
+ if "tags" in sys.argv:
+-    print "updating tags..."
++    print("updating tags...")
+     os.system("ctags --extra=+f `find -name '*.c'` `find -name '*.h'`")
+ env.Alias('install', [install_dir, man_dir, cfg_dir])
diff --git a/zfs-fuse-tirpc.patch b/zfs-fuse-tirpc.patch
new file mode 100644 (file)
index 0000000..541e201
--- /dev/null
@@ -0,0 +1,78 @@
+--- zfs-fuse-0.7.2.2/src/SConstruct.orig       2023-12-28 20:58:46.824179492 +0100
++++ zfs-fuse-0.7.2.2/src/SConstruct    2023-12-28 21:27:57.391362523 +0100
+@@ -31,11 +31,11 @@ f.close()
+ env.CacheDir('/tmp/.zfs-fuse.scons')
+ env['CC'] = os.environ.setdefault("CC","gcc")
+ env['CCFLAGS'] = Split(os.environ.setdefault("CFLAGS",""))
+-env['LINKFLAGS'] = Split('-pipe -Wall')
++env['LINKFLAGS'] = Split('-pipe -Wall -ltirpc')
+ env.Append(CCFLAGS = Split('-pipe -Wall -std=c99 -Wno-switch -Wno-unused -Wno-missing-braces -Wno-parentheses -Wno-uninitialized -Wcast-align -fno-strict-aliasing -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_REENTRANT -DTEXT_DOMAIN=\\"zfs-fuse\\" -Wp,-D_FORTIFY_SOURCE=2 -fstrict-volatile-bitfields'))
+ if osname == "Linux":
+-  env.Append(CPPFLAGS = " -DLINUX_AIO")
++  env.Append(CPPFLAGS = " -DLINUX_AIO -I/usr/include/tirpc")
+ debug = int(ARGUMENTS.get('debug', '0'))
+ optim = ARGUMENTS.get('optim', '-O2')
+--- zfs-fuse-0.7.2.2/src/cmd/zfs/zfs_main.c    2015-11-24 10:32:31.000000000 -0600
++++ zfs-fuse-0.7.2.2.good/src/cmd/zfs/zfs_main.c       2019-02-21 13:38:11.861699917 -0600
+@@ -47,6 +47,7 @@
+ #include <sys/fs/zfs.h>
+ #include <sys/types.h>
+ #include <time.h>
++#include <sys/sysmacros.h>
+ #include <libzfs.h>
+ #include <libuutil.h>
+--- zfs-fuse-0.7.2.2/src/lib/libnvpair/nvpair.c        2015-11-24 10:32:31.000000000 -0600
++++ zfs-fuse-0.7.2.2.good/src/lib/libnvpair/nvpair.c   2019-02-21 13:25:47.483941076 -0600
+@@ -31,7 +31,7 @@
+ #include <sys/nvpair.h>
+ #include <sys/nvpair_impl.h>
+ #include <rpc/types.h>
+-#include <rpc/xdr.h>
++#include "../libsolcompat/include/rpc/xdr.h"
+ #if defined(_KERNEL) && !defined(_BOOT)
+ #include <sys/varargs.h>
+--- zfs-fuse-0.7.2.2/src/lib/libsolcompat/getmntany.c  2015-11-24 10:32:31.000000000 -0600
++++ zfs-fuse-0.7.2.2.good/src/lib/libsolcompat/getmntany.c     2019-02-21 13:34:53.530041172 -0600
+@@ -36,6 +36,7 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <unistd.h>
++#include <sys/sysmacros.h>
+ #define BUFSIZE (MNT_LINE_MAX + 2)
+--- zfs-fuse-0.7.2.2/src/lib/libsolkerncompat/vfs.c    2015-11-24 10:32:31.000000000 -0600
++++ zfs-fuse-0.7.2.2.good/src/lib/libsolkerncompat/vfs.c       2019-02-21 13:39:41.902544986 -0600
+@@ -38,6 +38,7 @@
+ #include <errno.h>
+ #include <pthread.h>
+ #include <unistd.h>
++#include <stddef.h>
+ struct vfs st_rootvfs = {};
+--- zfs-fuse-0.7.2.2/src/lib/libsolkerncompat/vnode.c  2015-11-24 10:32:31.000000000 -0600
++++ zfs-fuse-0.7.2.2.good/src/lib/libsolkerncompat/vnode.c     2019-02-21 13:44:47.662018866 -0600
+@@ -52,6 +52,8 @@
+ #include <sys/pathname.h>
+ #include <fs/fs_subr.h>
++#include <sys/sysmacros.h>
++
+ #include <stdio.h>
+ #include <fcntl.h>
+ #include <string.h>
+--- zfs-fuse-0.7.2.2/src/zfs-fuse/zfs_operations.c     2015-11-24 10:32:31.000000000 -0600
++++ zfs-fuse-0.7.2.2.good/src/zfs-fuse/zfs_operations.c        2019-02-21 13:49:44.500513196 -0600
+@@ -35,6 +35,7 @@
+ #include <sys/zfs_znode.h>
+ #include <sys/mode.h>
+ #include <attr/xattr.h>
++#include <attr/attributes.h>
+ #include <sys/fcntl.h>
+ #include <sys/sa.h>
diff --git a/zfs-fuse-xattr.patch b/zfs-fuse-xattr.patch
new file mode 100644 (file)
index 0000000..7274a3e
--- /dev/null
@@ -0,0 +1,11 @@
+--- zfs-fuse-0.7.2.2/src/zfs-fuse/zfs_operations.c.orig        2023-12-29 15:58:42.733647041 +0100
++++ zfs-fuse-0.7.2.2/src/zfs-fuse/zfs_operations.c     2023-12-29 16:25:28.658280334 +0100
+@@ -34,7 +34,7 @@
+ #include <sys/zfs_vfsops.h>
+ #include <sys/zfs_znode.h>
+ #include <sys/mode.h>
+-#include <attr/xattr.h>
++#include <sys/xattr.h>
+ #include <attr/attributes.h>
+ #include <sys/fcntl.h>
+ #include <sys/sa.h>
index c2548b882a40bac75ae19da9314e307ebec2d7ba..53405eb4528cd95a1ff5e7cf264378f19c5d9a61 100644 (file)
@@ -7,17 +7,14 @@
 -nice -n 20 ./ztest -V $* && echo Test successful
 +nice -n 20 /usr/bin/ztest -V $* && echo Test successful
  echo "End date: `date`"
---- zfs-fuse-0.5.0/src/cmd/ztest/ztest.c       2008-09-13 03:37:59.000000000 +0200
-+++ zfs-fuse-0.5.0.new/src/cmd/ztest/ztest.c   2008-09-16 15:03:03.109323191 +0200
-@@ -2847,10 +2847,9 @@
-       char zbuf[1024];
-       FILE *fp;
+--- zfs-fuse-0.7.2.2/src/cmd/ztest/ztest.c.orig        2023-12-26 11:32:02.694533631 +0100
++++ zfs-fuse-0.7.2.2/src/cmd/ztest/ztest.c     2023-12-26 19:50:19.919233129 +0100
+@@ -4737,7 +4737,7 @@ ztest_run_zdb(char *pool)
+       FILE *fp;       
  
--      /* zfs-fuse: ztest is never installed, so zdb should be in ../zdb/ */
-       /* LINTED */
-       (void) sprintf(zdb,
--          "../zdb/zdb -bc%s%s -U /tmp/zpool.cache -O %s %s",
-+          "/usr/bin/zdb -bc%s%s -U /tmp/zpool.cache -O %s %s",
-           zopt_verbose >= 3 ? "s" : "",
-           zopt_verbose >= 4 ? "v" : "",
-           ztest_random(2) == 0 ? "pre" : "post", pool);
+       (void) sprintf(zdb,
+-          "../zdb/zdb -bc%s%s -U %s  %s",
++          "/usr/bin/zdb -bc%s%s -U %s  %s",
+           zopt_verbose >= 3 ? "s" : "",
+           zopt_verbose >= 4 ? "v" : "",
+           spa_config_path,
index 5a50e721ba36ab98cb9d40ed75ce0bd2c1e19038..fd7e4958f26617c11a149bf8b4aa0935705371b1 100644 (file)
@@ -1,18 +1,29 @@
+# TODO: systemd units, scrub script
 Summary:       ZFS Filesystem for FUSE/Linux
 Summary(pl.UTF-8):     System plików ZFS dla Linuksa z FUSE
 Name:          zfs-fuse
-Version:       0.5.0
-Release:       2
-License:       CCDL 1.0
-Group:         Applications/Emulators
-Source0:       http://download.berlios.de/zfs-fuse/%{name}-%{version}.tar.bz2
-# Source0-md5: 46d6bd429d6d9ddd57e078f5f22fa1cd
+Version:       0.7.2.2
+Release:       1
+License:       CCDL v1.0
+Group:         Applications/File
+#Source0Download: https://github.com/gordan-bobic/zfs-fuse/releases
+Source0:       https://github.com/gordan-bobic/zfs-fuse/archive/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 8590a93698ada698586cf3215f3be7e6
 Source1:       %{name}.init
 Patch0:                %{name}-ztest_path.patch
-Patch1:                %{name}-libzfs_build.patch
-URL:           http://www.wizy.org/wiki/ZFS_on_FUSE
+Patch1:                %{name}-opt.patch
+Patch2:                %{name}-python3.patch
+Patch3:                %{name}-tirpc.patch
+Patch4:                %{name}-format.patch
+Patch5:                %{name}-common.patch
+Patch6:                %{name}-xattr.patch
+URL:           https://github.com/gordan-bobic/zfs-fuse
+# also (but no tags)
+#URL:          https://github.com/zfs-fuse/zfs-fuse
+BuildRequires: glibc-devel >= 6:2.3.4
 BuildRequires: libaio-devel
-BuildRequires: libfuse-devel
+BuildRequires: libfuse-devel >= 2.6.0
+BuildRequires: libtirpc-devel
 BuildRequires: rpmbuild(macros) >= 1.337
 BuildRequires: scons
 BuildRequires: zlib-devel
@@ -73,25 +84,39 @@ korporacyjnych. Oto lista możliwości:
 %setup -q
 %patch0 -p1
 %patch1 -p1
-sed -i -e 's#-Werror##g' src/SConstruct
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
 
 %build
 cd src
+CC="%{__cc}" \
+CFLAGS="%{rpmcflags} -DNDEBUG" \
 %scons \
-       %{!?debug:dist=1} \
-       CCFLAGS="%{rpmcflags}" \
-       CC="%{__cc}"
+       %{!?debug:dist=1}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
 cd src
+CC="%{__cc}" \
+CFLAGS="%{rpmcflags} -DNDEBUG" \
 %scons install \
-       install_dir=$RPM_BUILD_ROOT%{_bindir}
+       cfg_dir=$RPM_BUILD_ROOT%{_sysconfdir}/zfs-fuse \
+       install_dir=$RPM_BUILD_ROOT%{_bindir} \
+       man_dir=$RPM_BUILD_ROOT%{_mandir}/man8
+cd ..
 
 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/zfs-fuse
 
+install -d $RPM_BUILD_ROOT%{systemdunitdir}
+cp -p zfs-fuse*.service $RPM_BUILD_ROOT%{systemdunitdir}
+
+# TODO: zfs-fuse.modules-load zfs-fuse.scrub zfs-fuse.sysconfig zfsrc
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -107,6 +132,22 @@ fi
 
 %files
 %defattr(644,root,root,755)
-%doc BUGS CHANGES HACKING INSTALL LICENSE README STATUS TESTING TODO
-%attr(754,root,root) /etc/rc.d/init.d/%{name}
-%attr(755,root,root) %{_bindir}/*
+%doc BUGS CHANGES LICENSE README README.NFS STATUS TESTING TODO
+%attr(755,root,root) %{_bindir}/mount.zfs
+%attr(755,root,root) %{_bindir}/zdb
+%attr(755,root,root) %{_bindir}/zfs
+%attr(755,root,root) %{_bindir}/zfs-fuse
+%attr(755,root,root) %{_bindir}/zpool
+%attr(755,root,root) %{_bindir}/zstreamdump
+%attr(755,root,root) %{_bindir}/ztest
+#%{systemdunitdir}/zfs-fuse.service
+#%{systemdunitdir}/zfs-fuse-oom.service
+#%{systemdunitdir}/zfs-fuse-pid.service
+%attr(754,root,root) /etc/rc.d/init.d/zfs-fuse
+%dir %{_sysconfdir}/zfs-fuse
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zfs-fuse/zfs_pool_alert
+%{_mandir}/man8/zdb.8*
+%{_mandir}/man8/zfs-fuse.8*
+%{_mandir}/man8/zfs.8*
+%{_mandir}/man8/zpool.8*
+%{_mandir}/man8/zstreamdump.8*
This page took 0.136621 seconds and 4 git commands to generate.