diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2013-02-28 15:43:06 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2013-02-28 15:43:06 +0100 |
commit | c0f6910758a816d7be066a1cbccb487c6139f300 (patch) | |
tree | bad5e2045d98c19df8fa19ab6fca8aeb951b7b3f /pkgs/tools/filesystems/fuse-zip | |
parent | 4cf8fa5f8a6bfd1e8f1100f334d54c25c5029490 (diff) | |
download | nixlib-c0f6910758a816d7be066a1cbccb487c6139f300.tar nixlib-c0f6910758a816d7be066a1cbccb487c6139f300.tar.gz nixlib-c0f6910758a816d7be066a1cbccb487c6139f300.tar.bz2 nixlib-c0f6910758a816d7be066a1cbccb487c6139f300.tar.lz nixlib-c0f6910758a816d7be066a1cbccb487c6139f300.tar.xz nixlib-c0f6910758a816d7be066a1cbccb487c6139f300.tar.zst nixlib-c0f6910758a816d7be066a1cbccb487c6139f300.zip |
fuse_zip: fix with new libzip
Diffstat (limited to 'pkgs/tools/filesystems/fuse-zip')
-rw-r--r-- | pkgs/tools/filesystems/fuse-zip/default.nix | 6 | ||||
-rw-r--r-- | pkgs/tools/filesystems/fuse-zip/libzip.patch | 24 |
2 files changed, 28 insertions, 2 deletions
diff --git a/pkgs/tools/filesystems/fuse-zip/default.nix b/pkgs/tools/filesystems/fuse-zip/default.nix index 346b11015f46..a5ac74fe47a5 100644 --- a/pkgs/tools/filesystems/fuse-zip/default.nix +++ b/pkgs/tools/filesystems/fuse-zip/default.nix @@ -2,16 +2,18 @@ stdenv.mkDerivation rec { name = "fuse-zip-0.2.13"; - + src = fetchurl { url = "http://fuse-zip.googlecode.com/files/${name}.tar.gz"; sha1 = "9cfa00e38a59d4e06fd47bfaca75ad5e299ecc6b"; }; + patches = [ ./libzip.patch ]; # problems with new libzip; from Gentoo + buildInputs = [ pkgconfig fuse libzip zlib ]; makeFlags = "INSTALLPREFIX=$(out)"; - + meta = { homepage = http://code.google.com/p/fuse-zip/; description = "A FUSE-based filesystem that allows read and write access to ZIP files"; diff --git a/pkgs/tools/filesystems/fuse-zip/libzip.patch b/pkgs/tools/filesystems/fuse-zip/libzip.patch new file mode 100644 index 000000000000..f2348e5f1bab --- /dev/null +++ b/pkgs/tools/filesystems/fuse-zip/libzip.patch @@ -0,0 +1,24 @@ +diff -ru fuse-zip-0.2.13/lib/bigBuffer.cpp fuse-zip-0.2.13.new//lib/bigBuffer.cpp +--- fuse-zip-0.2.13/lib/bigBuffer.cpp 2010-12-06 12:34:32.000000000 -0500 ++++ fuse-zip-0.2.13.new//lib/bigBuffer.cpp 2011-09-28 21:40:01.294946957 -0400 +@@ -236,7 +236,7 @@ + len = offset; + } + +-ssize_t BigBuffer::zipUserFunctionCallback(void *state, void *data, size_t len, enum zip_source_cmd cmd) { ++zip_int64_t BigBuffer::zipUserFunctionCallback(void *state, void *data, zip_uint64_t len, enum zip_source_cmd cmd) { + CallBackStruct *b = (CallBackStruct*)state; + switch (cmd) { + case ZIP_SOURCE_OPEN: { +diff -ru fuse-zip-0.2.13/lib/bigBuffer.h fuse-zip-0.2.13.new//lib/bigBuffer.h +--- fuse-zip-0.2.13/lib/bigBuffer.h 2010-12-06 12:34:32.000000000 -0500 ++++ fuse-zip-0.2.13.new//lib/bigBuffer.h 2011-09-28 21:40:23.203719133 -0400 +@@ -52,7 +52,7 @@ + * never called because read() always successfull. + * See zip_source_function(3) for details. + */ +- static ssize_t zipUserFunctionCallback(void *state, void *data, size_t len, enum zip_source_cmd cmd); ++ static zip_int64_t zipUserFunctionCallback(void *state, void *data, zip_uint64_t len, enum zip_source_cmd cmd); + + /** + * Return number of chunks needed to keep 'offset' bytes. |