pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/filesystems/fuse-lzofs Initial import of fuse-lzofs-20...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/2f182418373d
branches:  trunk
changeset: 525671:2f182418373d
user:      xtraeme <xtraeme%pkgsrc.org@localhost>
date:      Tue Feb 20 23:00:08 2007 +0000

description:
Initial import of fuse-lzofs-20060306.

LZOlayer Filesystem is a filesystem which allows you to use transparently
compressed files, just as they would be normal files.

Both read and write operations are possible, along with other most common
system calls. It consumes little memory in my opinion, because files are
divided into blocks, which can be decompressed separetly. In other words,
if you (or an application) would like to read byte 4,500,000 in a file
sized 5,000,000 bytes, it only decompresses a block which constain wanted
data. Write operation is based on a packet gathering and after reaching its
limit it 'syncs' the data. It allows it's user to write/modify files pretty
fast, despite the fact it's block divided.

LZOlayer FileSystem was meant to support only LZO compression algorythm,
because it has extremely low compression/decompression time. However,
currently it supports LZO and ZLIB (but only one at the run-time!)
compression algorythms.

diffstat:

 filesystems/fuse-lzofs/DESCR            |  16 ++++++
 filesystems/fuse-lzofs/Makefile         |  24 +++++++++
 filesystems/fuse-lzofs/PLIST            |   2 +
 filesystems/fuse-lzofs/distinfo         |   7 ++
 filesystems/fuse-lzofs/patches/patch-aa |  22 ++++++++
 filesystems/fuse-lzofs/patches/patch-ab |  87 +++++++++++++++++++++++++++++++++
 6 files changed, 158 insertions(+), 0 deletions(-)

diffs (182 lines):

diff -r 6707e0da5517 -r 2f182418373d filesystems/fuse-lzofs/DESCR
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/filesystems/fuse-lzofs/DESCR      Tue Feb 20 23:00:08 2007 +0000
@@ -0,0 +1,16 @@
+LZOlayer Filesystem is a filesystem which allows you to use transparently
+compressed files, just as they would be normal files.
+
+Both read and write operations are possible, along with other most common
+system calls. It consumes little memory in my opinion, because files are
+divided into blocks, which can be decompressed separetly. In other words,
+if you (or an application) would like to read byte 4,500,000 in a file
+sized 5,000,000 bytes, it only decompresses a block which constain wanted
+data. Write operation is based on a packet gathering and after reaching its
+limit it 'syncs' the data. It allows it's user to write/modify files pretty
+fast, despite the fact it's block divided.
+
+LZOlayer FileSystem was meant to support only LZO compression algorythm,
+because it has extremely low compression/decompression time. However,
+currently it supports LZO and ZLIB (but only one at the run-time!)
+compression algorythms.
diff -r 6707e0da5517 -r 2f182418373d filesystems/fuse-lzofs/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/filesystems/fuse-lzofs/Makefile   Tue Feb 20 23:00:08 2007 +0000
@@ -0,0 +1,24 @@
+# $NetBSD: Makefile,v 1.1.1.1 2007/02/20 23:00:08 xtraeme Exp $
+#
+
+DISTNAME=      LZOlayer_fs-20060306
+PKGNAME=       fuse-${DISTNAME:S/LZOlayer_fs/lzofs/}
+CATEGORIES=    sysutils
+MASTER_SITES=  http://north.one.pl/~kazik/pub/LZOlayer/
+
+MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=      http://north.one.pl/~kazik/pub/LZOlayer/
+COMMENT=       Filesystem which allows you to use transparently compressed files
+
+USE_TOOLS+=    gmake
+NO_CONFIGURE=  yes
+BUILD_TARGET=  default
+
+INSTALLATION_DIRS=     bin
+
+do-install:
+       ${INSTALL_PROGRAM} ${WRKSRC}/lzo_fs ${PREFIX}/bin/lzo_fs
+
+.include "../../archivers/lzo/buildlink3.mk"
+.include "../../mk/fuse.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff -r 6707e0da5517 -r 2f182418373d filesystems/fuse-lzofs/PLIST
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/filesystems/fuse-lzofs/PLIST      Tue Feb 20 23:00:08 2007 +0000
@@ -0,0 +1,2 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2007/02/20 23:00:08 xtraeme Exp $
+bin/lzo_fs
diff -r 6707e0da5517 -r 2f182418373d filesystems/fuse-lzofs/distinfo
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/filesystems/fuse-lzofs/distinfo   Tue Feb 20 23:00:08 2007 +0000
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1.1.1 2007/02/20 23:00:08 xtraeme Exp $
+
+SHA1 (LZOlayer_fs-20060306.tar.gz) = f069142a32d9b2325784329500689cc0dd726285
+RMD160 (LZOlayer_fs-20060306.tar.gz) = a9f839950368706b3c90cc5195168f6616947e40
+Size (LZOlayer_fs-20060306.tar.gz) = 17669 bytes
+SHA1 (patch-aa) = 70df68443cb7b4d9eec5effea0dbb0e3fc666551
+SHA1 (patch-ab) = 1c14076c136e410d5590e009d8f83bcf2173a5c9
diff -r 6707e0da5517 -r 2f182418373d filesystems/fuse-lzofs/patches/patch-aa
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/filesystems/fuse-lzofs/patches/patch-aa   Tue Feb 20 23:00:08 2007 +0000
@@ -0,0 +1,22 @@
+$NetBSD: patch-aa,v 1.1.1.1 2007/02/20 23:00:08 xtraeme Exp $
+
+--- Makefile.orig      2006-03-06 14:42:15.000000000 +0100
++++ Makefile   2007-02-18 16:48:11.000000000 +0100
+@@ -1,5 +1,6 @@
+-CFLAGS= -Wall -g -D_FILE_OFFSET_BITS=64 -I/usr/include/lzo/ -O2 -s -fomit-frame-pointer
+-LIBS= -lfuse -lz -llzo2
++CFLAGS+= -Wall -D_FILE_OFFSET_BITS=64 -I${PREFIX}/include -fomit-frame-pointer
++LIBS+=        -lfuse -lz -llzo2
++LDFLAGS+= -L${PREFIX}/lib -Wl,-R${PREFIX}/lib
+ 
+ default: lzo_fs
+ 
+@@ -8,7 +9,7 @@
+ 
+ 
+ lzo_fs:        LZOlayer_fs.c
+-      gcc -o $@ $^ -g  $(CFLAGS) $(LIBS)
++      gcc -o $@ $^ -g  $(CFLAGS) $(LDFLAGS) $(LIBS)
+ 
+ 
+ clean:
diff -r 6707e0da5517 -r 2f182418373d filesystems/fuse-lzofs/patches/patch-ab
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/filesystems/fuse-lzofs/patches/patch-ab   Tue Feb 20 23:00:08 2007 +0000
@@ -0,0 +1,87 @@
+$NetBSD: patch-ab,v 1.1.1.1 2007/02/20 23:00:08 xtraeme Exp $
+
+--- LZOlayer_fs.c.orig 2007-02-18 16:38:19.000000000 +0100
++++ LZOlayer_fs.c      2007-02-18 16:43:03.000000000 +0100
+@@ -21,6 +21,15 @@
+ #define __USE_UNIX98
+ #include <unistd.h>
+ #include <zlib.h>
++#ifndef __NetBSD__
++#define ordwr         O_RDWR|O_LARGEFILE
++#define ordonly       O_RDONLY|O_LARGEFILE
++#define owronly       O_WRONLY|O_LARGEFILE
++#else
++#define ordwr         O_RDWR
++#define ordonly       O_RDONLY
++#define owronly       O_WRONLY
++#endif
+ 
+ #include "minilzo.h"
+ #define HEAP_ALLOC(var, size) \
+@@ -124,7 +133,7 @@
+   
+   if (S_ISREG(stbuf->st_mode))
+   {
+-    int fd = open(xPath, O_RDONLY|O_LARGEFILE);
++    int fd = open(xPath, ordonly);
+     read(fd, &stbuf->st_size, sizeof(off_t));
+     close(fd);
+   }
+@@ -166,7 +175,7 @@
+ {
+   char *xPath = LZOlayer_makePath(path);
+   
+-  int fd = open(xPath, O_RDONLY|O_LARGEFILE);
++  int fd = open(xPath, ordonly);
+   off_t outLen = 0;
+   read(fd, &outLen, sizeof(off_t));
+   close(fd);
+@@ -193,7 +202,7 @@
+   char *xPath            = filePtr->path;
+   
+   int done = 0;
+-  int fd = open(xPath, O_RDONLY|O_LARGEFILE);
++  int fd = open(xPath, ordonly);
+   
+   while(1)
+   {
+@@ -249,7 +258,7 @@
+   off_t block_start   = (float)filePtr->packets[min_offset].offset / (float)block_size;
+   
+   char *xPath = filePtr->path;
+-  int fd      = open(xPath, O_RDWR|O_LARGEFILE);
++  int fd      = open(xPath, ordwr);
+   LZOlayer_block_seek(fd, block_start);
+   
+   off_t alloc_size = (filePtr->size-(block_start*block_size)
+@@ -315,10 +324,10 @@
+   {
+     LZOlayer_packet_sync(path, fi);
+     
+-    int fd = open(filePtr->path, O_WRONLY|O_LARGEFILE);
++    int fd = open(filePtr->path, owronly);
+     if(fd == -1)
+     {
+-      open(filePtr->path, O_CREAT|O_WRONLY|O_LARGEFILE);
++      open(filePtr->path, O_CREAT|owronly);
+       chown(filePtr->path, fuse_get_context()->uid, fuse_get_context()->gid);
+     }
+ // old open/create for write
+@@ -365,7 +374,7 @@
+   }
+   else
+   {
+-    int fd = open(xPath, O_WRONLY|O_LARGEFILE);
++    int fd = open(xPath, owronly);
+     off_t null = 0;
+     write(fd, &null, sizeof(off_t));
+     write(fd, &null, sizeof(off_t));
+@@ -383,7 +392,7 @@
+ {
+   char *xPath = LZOlayer_makePath(path);
+   
+-  int fd = open(xPath, O_RDWR|O_LARGEFILE);
++  int fd = open(xPath, ordwr);
+   off_t file_size = 0;
+   read(fd, &file_size, sizeof(off_t));
+   



Home | Main Index | Thread Index | Old Index