Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.netbsd.org", Issuer "Postmaster NetBSD.org" (verified OK)) by mollari.NetBSD.org (Postfix) with ESMTPS id CA30D7A20D for ; Fri, 9 Sep 2016 15:40:19 +0000 (UTC) Received: by mail.netbsd.org (Postfix, from userid 605) id 7C29985EBA; Fri, 9 Sep 2016 15:40:19 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 06A2485EC6 for ; Fri, 9 Sep 2016 15:40:19 +0000 (UTC) X-Virus-Scanned: amavisd-new at netbsd.org Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id YMquqvWL2qgu for ; Fri, 9 Sep 2016 15:40:17 +0000 (UTC) Received: from cvs.NetBSD.org (ivanova.netbsd.org [199.233.217.197]) by mail.netbsd.org (Postfix) with ESMTP id E1AA884C86 for ; Fri, 9 Sep 2016 15:40:17 +0000 (UTC) Received: by cvs.NetBSD.org (Postfix, from userid 500) id DBA3DFBD1; Fri, 9 Sep 2016 15:40:17 +0000 (UTC) Content-Transfer-Encoding: 7bit Content-Type: multipart/mixed; boundary="_----------=_1473435617231170" MIME-Version: 1.0 Date: Fri, 9 Sep 2016 15:40:17 +0000 From: "Sean Cole" Subject: CVS commit: pkgsrc/filesystems To: pkgsrc-changes@NetBSD.org Reply-To: scole@netbsd.org X-Mailer: log_accum Message-Id: <20160909154017.DBA3DFBD1@cvs.NetBSD.org> Sender: pkgsrc-changes-owner@NetBSD.org List-Id: pkgsrc-changes.NetBSD.org Precedence: bulk This is a multi-part message in MIME format. --_----------=_1473435617231170 Content-Disposition: inline Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" Module Name: pkgsrc Committed By: scole Date: Fri Sep 9 15:40:17 UTC 2016 Modified Files: pkgsrc/filesystems: Makefile Added Files: pkgsrc/filesystems/squashfs: DESCR Makefile PLIST distinfo options.mk pkgsrc/filesystems/squashfs/patches: patch-Makefile patch-action.c patch-fnm__extmatch.h patch-mksquashfs.c patch-unsquashfs.c Log Message: PR pkg/51058 Add filesystem/squashfs 4.3 Squashfs is a highly compressed read-only filesystem for Linux. It uses either gzip/xz/lzo/lz4 compression to compress both files, inodes and directories. Inodes in the system are very small and all blocks are packed to minimise data overhead. Block sizes greater than 4K are supported up to a maximum of 1Mbytes (default block size 128K). Squashfs is intended for general read-only filesystem use, for archival use (i.e. in cases where a .tar.gz file may be used), and in constrained block device/memory systems (e.g. embedded systems) where low overhead is needed. This package contains tools to manipulate squashfs archive files. To generate a diff of this commit: cvs rdiff -u -r1.40 -r1.41 pkgsrc/filesystems/Makefile cvs rdiff -u -r0 -r1.1 pkgsrc/filesystems/squashfs/DESCR \ pkgsrc/filesystems/squashfs/Makefile pkgsrc/filesystems/squashfs/PLIST \ pkgsrc/filesystems/squashfs/distinfo \ pkgsrc/filesystems/squashfs/options.mk cvs rdiff -u -r0 -r1.1 pkgsrc/filesystems/squashfs/patches/patch-Makefile \ pkgsrc/filesystems/squashfs/patches/patch-action.c \ pkgsrc/filesystems/squashfs/patches/patch-fnm__extmatch.h \ pkgsrc/filesystems/squashfs/patches/patch-mksquashfs.c \ pkgsrc/filesystems/squashfs/patches/patch-unsquashfs.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. --_----------=_1473435617231170 Content-Disposition: inline Content-Length: 12778 Content-Transfer-Encoding: binary Content-Type: text/x-diff; charset=us-ascii Modified files: Index: pkgsrc/filesystems/Makefile diff -u pkgsrc/filesystems/Makefile:1.40 pkgsrc/filesystems/Makefile:1.41 --- pkgsrc/filesystems/Makefile:1.40 Tue Mar 1 11:30:43 2016 +++ pkgsrc/filesystems/Makefile Fri Sep 9 15:40:17 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.40 2016/03/01 11:30:43 jmmv Exp $ +# $NetBSD: Makefile,v 1.41 2016/09/09 15:40:17 scole Exp $ # COMMENT= File systems, and file system related packages @@ -43,6 +43,7 @@ SUBDIR+= p5-Path-Tiny SUBDIR+= perfuse SUBDIR+= py-filesystem SUBDIR+= py-fuse-bindings +SUBDIR+= squashfs SUBDIR+= tahoe-lafs SUBDIR+= u9fs Added files: Index: pkgsrc/filesystems/squashfs/DESCR diff -u /dev/null pkgsrc/filesystems/squashfs/DESCR:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/DESCR Fri Sep 9 15:40:17 2016 @@ -0,0 +1,12 @@ +Squashfs is a highly compressed read-only filesystem for Linux. +It uses either gzip/xz/lzo/lz4 compression to compress both files, inodes +and directories. Inodes in the system are very small and all blocks are +packed to minimise data overhead. Block sizes greater than 4K are supported +up to a maximum of 1Mbytes (default block size 128K). + +Squashfs is intended for general read-only filesystem use, for archival +use (i.e. in cases where a .tar.gz file may be used), and in constrained +block device/memory systems (e.g. embedded systems) where low overhead is +needed. + +This package contains tools to manipulate squashfs archive files. Index: pkgsrc/filesystems/squashfs/Makefile diff -u /dev/null pkgsrc/filesystems/squashfs/Makefile:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/Makefile Fri Sep 9 15:40:17 2016 @@ -0,0 +1,48 @@ +# $NetBSD: Makefile,v 1.1 2016/09/09 15:40:17 scole Exp $ + +DISTNAME= squashfs${VERSION} +PKGNAME= squashfs-${VERSION} +VERSION= 4.3 +CATEGORIES= filesystems +MASTER_SITES= http://downloads.sourceforge.net/project/squashfs/squashfs/${DISTNAME}/ + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= http://squashfs.sourceforge.net/ +COMMENT= Tools for squashfs archives +LICENSE= gnu-gpl-v2 + +.include "../../mk/bsd.prefs.mk" +.include "options.mk" + +USE_LANGUAGES= c + +USE_TOOLS+= gmake + +INSTALLATION_DIRS= bin \ + share/doc/${PKGNAME} \ + share/doc/${PKGNAME}/OLD-READMEs \ + share/examples/${PKGNAME} + +SQUASH_DIR= ${WRKDIR}/${DISTNAME} +WRKSRC= ${SQUASH_DIR}/squashfs-tools +SQUASH_PKG_DOC= ${DESTDIR}${PREFIX}/share/doc/${PKGNAME} + +do-build: + cd ${WRKSRC} && env EXTRA_LDFLAGS="${COMPILER_RPATH_FLAG}${PREFIX}/lib" \ + ${GMAKE} ${BUILD_MAKE_FLAGS} + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/mksquashfs ${DESTDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/unsquashfs ${DESTDIR}${PREFIX}/bin + ${INSTALL_DATA} ${SQUASH_DIR}/ACKNOWLEDGEMENTS ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/CHANGES ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/COPYING ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/DONATIONS ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/INSTALL ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/PERFORMANCE.README ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/README ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/README-4.3 ${SQUASH_PKG_DOC} + ${INSTALL_DATA} ${SQUASH_DIR}/OLD-READMEs/* ${SQUASH_PKG_DOC}/OLD-READMEs/ + ${INSTALL_DATA} ${SQUASH_DIR}/pseudo-file.example ${DESTDIR}${PREFIX}/share/examples/${PKGNAME}/ + +.include "../../mk/bsd.pkg.mk" Index: pkgsrc/filesystems/squashfs/PLIST diff -u /dev/null pkgsrc/filesystems/squashfs/PLIST:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/PLIST Fri Sep 9 15:40:17 2016 @@ -0,0 +1,22 @@ +@comment $NetBSD: PLIST,v 1.1 2016/09/09 15:40:17 scole Exp $ +bin/mksquashfs +bin/unsquashfs +share/doc/${PKGNAME}/ACKNOWLEDGEMENTS +share/doc/${PKGNAME}/CHANGES +share/doc/${PKGNAME}/COPYING +share/doc/${PKGNAME}/DONATIONS +share/doc/${PKGNAME}/INSTALL +share/doc/${PKGNAME}/PERFORMANCE.README +share/doc/${PKGNAME}/README +share/doc/${PKGNAME}/README-4.3 +share/doc/${PKGNAME}/OLD-READMEs/README-2.0 +share/doc/${PKGNAME}/OLD-READMEs/README-2.1 +share/doc/${PKGNAME}/OLD-READMEs/README-3.0 +share/doc/${PKGNAME}/OLD-READMEs/README-3.1 +share/doc/${PKGNAME}/OLD-READMEs/README-3.2 +share/doc/${PKGNAME}/OLD-READMEs/README-3.3 +share/doc/${PKGNAME}/OLD-READMEs/README-4.0 +share/doc/${PKGNAME}/OLD-READMEs/README-4.1 +share/doc/${PKGNAME}/OLD-READMEs/README-4.2 +share/doc/${PKGNAME}/OLD-READMEs/README-AMD64 +share/examples/${PKGNAME}/pseudo-file.example Index: pkgsrc/filesystems/squashfs/distinfo diff -u /dev/null pkgsrc/filesystems/squashfs/distinfo:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/distinfo Fri Sep 9 15:40:17 2016 @@ -0,0 +1,11 @@ +$NetBSD: distinfo,v 1.1 2016/09/09 15:40:17 scole Exp $ + +SHA1 (squashfs4.3.tar.gz) = a615979db9cee82e4a934a1455577f597d290b41 +RMD160 (squashfs4.3.tar.gz) = fc91627c0757205c4a0fbe2037913cec1cefb1fd +SHA512 (squashfs4.3.tar.gz) = 854ed7acc99920f24ecf11e0da807e5a2a162eeda55db971aba63a03f0da2c13b20ec0564a906c4b0e415bd8258b273a10208c7abc0704f2ceea773aa6148a79 +Size (squashfs4.3.tar.gz) = 182550 bytes +SHA1 (patch-Makefile) = ec62b7beb0a741f48a2392900e6655b7bfbdb438 +SHA1 (patch-action.c) = d0fc02e79f93a125f20992362214b359460bdce2 +SHA1 (patch-fnm__extmatch.h) = 167c9b473c78f3e10d7536791d63e42c39794e4a +SHA1 (patch-mksquashfs.c) = 8e91a84b4bfd0de4aef79d9165ff41f17e5b8c41 +SHA1 (patch-unsquashfs.c) = 1e02204097129fdd0309124d2a664c2e081db2f0 Index: pkgsrc/filesystems/squashfs/options.mk diff -u /dev/null pkgsrc/filesystems/squashfs/options.mk:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/options.mk Fri Sep 9 15:40:17 2016 @@ -0,0 +1,43 @@ +# $NetBSD: options.mk,v 1.1 2016/09/09 15:40:17 scole Exp $ + +PKG_OPTIONS_VAR= PKG_OPTIONS.squashfs +PKG_SUPPORTED_OPTIONS= zlib lz4 lzo xz xattr +PKG_SUGGESTED_OPTIONS= zlib lzo xz + +.include "../../mk/bsd.options.mk" + +# XXX any other OS support xattr? +.if ${OPSYS} == "Linux" +PKG_SUGGESTED_OPTIONS+= xattr +.endif + +.if empty(PKG_OPTIONS:Mzlib) && \ + empty(PKG_OPTIONS:Mlz4) && \ + empty(PKG_OPTIONS:Mlzo) && \ + empty(PKG_OPTIONS:Mxz) +PKG_FAIL_REASON= "need at least one compression algorithm selected" +.endif + +.if !empty(PKG_OPTIONS:Mzlib) +.include "../../devel/zlib/buildlink3.mk" +BUILD_MAKE_FLAGS+= GZIP_SUPPORT=1 +.endif + +.if !empty(PKG_OPTIONS:Mlz4) +.include "../../archivers/lz4/buildlink3.mk" +BUILD_MAKE_FLAGS+= LZ4_SUPPORT=1 +.endif + +.if !empty(PKG_OPTIONS:Mlzo) +.include "../../archivers/lzo/buildlink3.mk" +BUILD_MAKE_FLAGS+= LZO_SUPPORT=1 +.endif + +.if !empty(PKG_OPTIONS:Mxz) +.include "../../archivers/xz/buildlink3.mk" +BUILD_MAKE_FLAGS+= XZ_SUPPORT=1 +.endif + +.if !empty(PKG_OPTIONS:Mxattr) +BUILD_MAKE_FLAGS+= XATTR_SUPPORT=1 +.endif Index: pkgsrc/filesystems/squashfs/patches/patch-Makefile diff -u /dev/null pkgsrc/filesystems/squashfs/patches/patch-Makefile:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/patches/patch-Makefile Fri Sep 9 15:40:17 2016 @@ -0,0 +1,42 @@ +$NetBSD: patch-Makefile,v 1.1 2016/09/09 15:40:17 scole Exp $ +Add fnm_extmatch.h dependency + +--- Makefile.orig 2014-05-11 18:56:00.000000000 +0000 ++++ Makefile +@@ -15,7 +15,7 @@ + # Obviously, you must select at least one of the available gzip, lzma, lzo + # compression types. + # +-GZIP_SUPPORT = 1 ++#GZIP_SUPPORT = 1 + + ########### Building XZ support ############# + # +@@ -229,7 +229,8 @@ mksquashfs: $(MKSQUASHFS_OBJS) + + mksquashfs.o: Makefile mksquashfs.c squashfs_fs.h squashfs_swap.h mksquashfs.h \ + sort.h pseudo.h compressor.h xattr.h action.h error.h progressbar.h \ +- info.h caches-queues-lists.h read_fs.h restore.h process_fragments.h ++ info.h caches-queues-lists.h read_fs.h restore.h process_fragments.h \ ++ fnm_extmatch.h + + read_fs.o: read_fs.c squashfs_fs.h squashfs_swap.h compressor.h xattr.h \ + error.h mksquashfs.h +@@ -247,7 +248,7 @@ xattr.o: xattr.c squashfs_fs.h squashfs_ + + read_xattrs.o: read_xattrs.c squashfs_fs.h squashfs_swap.h xattr.h error.h + +-action.o: action.c squashfs_fs.h mksquashfs.h action.h error.h ++action.o: action.c squashfs_fs.h mksquashfs.h action.h error.h fnm_extmatch.h + + progressbar.o: progressbar.c error.h + +@@ -279,7 +280,7 @@ unsquashfs: $(UNSQUASHFS_OBJS) + $(CC) $(LDFLAGS) $(EXTRA_LDFLAGS) $(UNSQUASHFS_OBJS) $(LIBS) -o $@ + + unsquashfs.o: unsquashfs.h unsquashfs.c squashfs_fs.h squashfs_swap.h \ +- squashfs_compat.h xattr.h read_fs.h compressor.h ++ squashfs_compat.h xattr.h read_fs.h compressor.h fnm_extmatch.h + + unsquash-1.o: unsquashfs.h unsquash-1.c squashfs_fs.h squashfs_compat.h + Index: pkgsrc/filesystems/squashfs/patches/patch-action.c diff -u /dev/null pkgsrc/filesystems/squashfs/patches/patch-action.c:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/patches/patch-action.c Fri Sep 9 15:40:17 2016 @@ -0,0 +1,37 @@ +$NetBSD: patch-action.c,v 1.1 2016/09/09 15:40:17 scole Exp $ +Do not use alloca and strdupa which some platforms may not have + +--- action.c.orig 2014-05-10 04:54:13.000000000 +0000 ++++ action.c +@@ -43,6 +43,7 @@ + #include "mksquashfs.h" + #include "action.h" + #include "error.h" ++#include "fnm_extmatch.h" + + /* + * code to parse actions +@@ -1953,9 +1954,22 @@ static char *get_start(char *s, int n) + + static int subpathname_fn(struct atom *atom, struct action_data *action_data) + { +- return fnmatch(atom->argv[0], get_start(strdupa(action_data->subpath), ++ /* XXX some platforms might not have alloca, strdupa */ ++ int ret_val; ++ char *copy_str; ++ ++ if ((copy_str = strdup(action_data->subpath)) == NULL) { ++ fprintf(stderr, "Out of mem\n"); ++ exit(1); ++ } ++ ++ ret_val = fnmatch(atom->argv[0],get_start(copy_str, + count_components(atom->argv[0])), + FNM_PATHNAME|FNM_PERIOD|FNM_EXTMATCH) == 0; ++ ++ free(copy_str); ++ ++ return ret_val; + } + + TEST_VAR_FN(filesize, ACTION_REG, action_data->buf->st_size) Index: pkgsrc/filesystems/squashfs/patches/patch-fnm__extmatch.h diff -u /dev/null pkgsrc/filesystems/squashfs/patches/patch-fnm__extmatch.h:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/patches/patch-fnm__extmatch.h Fri Sep 9 15:40:17 2016 @@ -0,0 +1,15 @@ +$NetBSD: patch-fnm__extmatch.h,v 1.1 2016/09/09 15:40:17 scole Exp $ +Define FNM_EXTMATCH if not already defined + +--- fnm_extmatch.h.orig 2016-09-09 14:49:14.000000000 +0000 ++++ fnm_extmatch.h +@@ -0,0 +1,9 @@ ++/* ++ * this is defined in external/gpl[23]/gnulib various fnmatch_.h ++ * with _GNU_SOURCE or various _POSIX_C_SOURCE but not ++ * pksrgc/pkgtools/libnbcompat pkg/include/nbcompat/fnmatch.h or ++ * usr/include/fnmatch.h, what is best way to fix? ++ */ ++#ifndef FNM_EXTMATCH ++# define FNM_EXTMATCH (1 << 5) /* Use ksh-like extended matching. */ ++#endif Index: pkgsrc/filesystems/squashfs/patches/patch-mksquashfs.c diff -u /dev/null pkgsrc/filesystems/squashfs/patches/patch-mksquashfs.c:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/patches/patch-mksquashfs.c Fri Sep 9 15:40:17 2016 @@ -0,0 +1,13 @@ +$NetBSD: patch-mksquashfs.c,v 1.1 2016/09/09 15:40:17 scole Exp $ +Include fnm_extmatch.h + +--- mksquashfs.c.orig 2014-05-12 22:18:20.000000000 +0000 ++++ mksquashfs.c +@@ -76,6 +76,7 @@ + #include "read_fs.h" + #include "restore.h" + #include "process_fragments.h" ++#include "fnm_extmatch.h" + + int delete = FALSE; + int fd; Index: pkgsrc/filesystems/squashfs/patches/patch-unsquashfs.c diff -u /dev/null pkgsrc/filesystems/squashfs/patches/patch-unsquashfs.c:1.1 --- /dev/null Fri Sep 9 15:40:17 2016 +++ pkgsrc/filesystems/squashfs/patches/patch-unsquashfs.c Fri Sep 9 15:40:17 2016 @@ -0,0 +1,32 @@ +$NetBSD: patch-unsquashfs.c,v 1.1 2016/09/09 15:40:17 scole Exp $ +Some workarounds for not using autoconf and include fnm_extmatch.h + +--- unsquashfs.c.orig 2014-05-12 22:18:35.000000000 +0000 ++++ unsquashfs.c +@@ -31,13 +31,25 @@ + #include "unsquashfs_info.h" + #include "stdarg.h" + +-#include ++/* XXX need autoconf */ ++#if ( defined(__linux__) ) ++ #include ++#endif ++ ++/* XXX need autoconf HAVE_SYS_SYSCTL_H */ ++#if ( defined(__NetBSD__) || defined(__DragonFly__) || defined(__APPLE__) || \ ++ defined(__FreeBSD__) || defined(__OpenBSD__) ) ++ #include ++#endif ++ + #include + #include + #include + #include + #include + ++#include "fnm_extmatch.h" ++ + struct cache *fragment_cache, *data_cache; + struct queue *to_reader, *to_inflate, *to_writer, *from_writer; + pthread_t *thread, *inflator_thread; --_----------=_1473435617231170--