Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/filesystems/squashfs Welcome to Squashfs 4.4. This is...
details: https://anonhg.NetBSD.org/pkgsrc/rev/871dd46cf9d0
branches: trunk
changeset: 434626:871dd46cf9d0
user: scole <scole%pkgsrc.org@localhost>
date: Fri Jun 19 21:17:46 2020 +0000
description:
Welcome to Squashfs 4.4. This is the first release in over 5 years, and
there are substantial improvements: reproducible builds, new compressors,
CVE fixes, security hardening and new options for Mksquashfs/Unsquashfs.
Please see the INSTALL file for instructions on installing the tools,
and the USAGE file for documentation on how to use the tools.
Summary of changes
---------------------------------------
1. Mksquashfs now generates reproducible images by default. Mkfs time and
file timestamps can also be specified.
2. Support for the Zstandard (ZSTD) compression algorithm has been added.
3. Pseudo files now support symbolic links.
4. CVE-2015-4645 and CVE-2015-4646 have been fixed.
5. Unsquashfs has been further hardened against corrupted filestems.
6. Unsquashfs is now more strict about error handling.
7. Miscellaneous new options and major bug fixes for Mksquashfs.
8. Miscellaneous new options and major bug fixes for Unsquashfs.
9. Squashfs-tools 4.4 is compatible with all earlier 4.x filesystems
and releases.
For pkgsrc changes, now GitHub is now the main repository and using libtool
diffstat:
filesystems/squashfs/DESCR | 10 +-
filesystems/squashfs/Makefile | 38 ++++++------
filesystems/squashfs/PLIST | 32 ++++++-----
filesystems/squashfs/distinfo | 20 +++---
filesystems/squashfs/options.mk | 32 +++++++---
filesystems/squashfs/patches/patch-Makefile | 61 +++++++++++----------
filesystems/squashfs/patches/patch-action.c | 17 +----
filesystems/squashfs/patches/patch-fnm__extmatch.h | 15 -----
filesystems/squashfs/patches/patch-mksquashfs.c | 51 ++++++++++++++---
filesystems/squashfs/patches/patch-pseudo.c | 13 ----
filesystems/squashfs/patches/patch-unsquashfs.c | 31 ++++------
11 files changed, 163 insertions(+), 157 deletions(-)
diffs (truncated from 497 to 300 lines):
diff -r 7277d087db2d -r 871dd46cf9d0 filesystems/squashfs/DESCR
--- a/filesystems/squashfs/DESCR Fri Jun 19 21:15:31 2020 +0000
+++ b/filesystems/squashfs/DESCR Fri Jun 19 21:17:46 2020 +0000
@@ -1,8 +1,8 @@
-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 a highly compressed read-only filesystem for Linux. It
+uses either gzip/xz/lzo/lz4/zstd 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
diff -r 7277d087db2d -r 871dd46cf9d0 filesystems/squashfs/Makefile
--- a/filesystems/squashfs/Makefile Fri Jun 19 21:15:31 2020 +0000
+++ b/filesystems/squashfs/Makefile Fri Jun 19 21:17:46 2020 +0000
@@ -1,15 +1,16 @@
-# $NetBSD: Makefile,v 1.7 2020/03/20 11:57:37 nia Exp $
+# $NetBSD: Makefile,v 1.8 2020/06/19 21:17:46 scole Exp $
-VERSION= 4.3
-DISTNAME= squashfs${VERSION}
+VERSION= 4.4
+DISTNAME= squashfs-tools-${VERSION}
PKGNAME= squashfs-${VERSION}
-PKGREVISION= 2
CATEGORIES= filesystems
-MASTER_SITES= http://downloads.sourceforge.net/project/squashfs/squashfs/${DISTNAME}/
+MASTER_SITES= ${MASTER_SITE_GITHUB:=plougher/}
+GITHUB_PROJECT= squashfs-tools
+GITHUB_TAG= ${PKGVERSION_NOREV}
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE= http://squashfs.sourceforge.net/
+HOMEPAGE= https://github.com/plougher/squashfs-tools
COMMENT= Tools for squashfs archives
LICENSE= gnu-gpl-v2
@@ -19,33 +20,32 @@
USE_LANGUAGES= c
USE_TOOLS+= gmake
+USE_LIBTOOL= yes
INSTALLATION_DIRS= bin \
share/doc/squashfs \
- share/doc/squashfs/OLD-READMEs \
- share/examples/squashfs
+ share/doc/squashfs/RELEASE-READMEs
SQUASH_DIR= ${WRKDIR}/${DISTNAME}
WRKSRC= ${SQUASH_DIR}/squashfs-tools
SQUASH_PKG_DOC= ${DESTDIR}${PREFIX}/share/doc/squashfs
-MAKE_ENV+= EXTRA_LDFLAGS="${COMPILER_RPATH_FLAG}${PREFIX}/lib"
+# xxx no sigtimedwait or sigwaitinfo on mac os?
+BROKEN_ON_PLATFORM= Darwin-*-*
do-install:
- ${INSTALL_PROGRAM} ${WRKSRC}/mksquashfs ${DESTDIR}${PREFIX}/bin
- ${INSTALL_PROGRAM} ${WRKSRC}/unsquashfs ${DESTDIR}${PREFIX}/bin
+ ${LIBTOOL} --mode=install ${INSTALL_PROGRAM} \
+ ${WRKSRC}/mksquashfs ${DESTDIR}${PREFIX}/bin
+ ${LIBTOOL} --mode=install ${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/squashfs/
+ ${INSTALL_DATA} ${SQUASH_DIR}/README-4.4 ${SQUASH_PKG_DOC}
+ ${INSTALL_DATA} ${SQUASH_DIR}/USAGE ${SQUASH_PKG_DOC}
+ ${INSTALL_DATA} ${SQUASH_DIR}/RELEASE-READMEs/* \
+ ${SQUASH_PKG_DOC}/RELEASE-READMEs/
-.include "../../archivers/lzo/buildlink3.mk"
-.include "../../archivers/xz/buildlink3.mk"
-.include "../../devel/zlib/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
diff -r 7277d087db2d -r 871dd46cf9d0 filesystems/squashfs/PLIST
--- a/filesystems/squashfs/PLIST Fri Jun 19 21:15:31 2020 +0000
+++ b/filesystems/squashfs/PLIST Fri Jun 19 21:17:46 2020 +0000
@@ -1,22 +1,24 @@
-@comment $NetBSD: PLIST,v 1.3 2018/01/01 22:29:28 rillig Exp $
+@comment $NetBSD: PLIST,v 1.4 2020/06/19 21:17:46 scole Exp $
bin/mksquashfs
bin/unsquashfs
share/doc/squashfs/ACKNOWLEDGEMENTS
share/doc/squashfs/CHANGES
share/doc/squashfs/COPYING
-share/doc/squashfs/DONATIONS
share/doc/squashfs/INSTALL
-share/doc/squashfs/OLD-READMEs/README-2.0
-share/doc/squashfs/OLD-READMEs/README-2.1
-share/doc/squashfs/OLD-READMEs/README-3.0
-share/doc/squashfs/OLD-READMEs/README-3.1
-share/doc/squashfs/OLD-READMEs/README-3.2
-share/doc/squashfs/OLD-READMEs/README-3.3
-share/doc/squashfs/OLD-READMEs/README-4.0
-share/doc/squashfs/OLD-READMEs/README-4.1
-share/doc/squashfs/OLD-READMEs/README-4.2
-share/doc/squashfs/OLD-READMEs/README-AMD64
-share/doc/squashfs/PERFORMANCE.README
share/doc/squashfs/README
-share/doc/squashfs/README-4.3
-share/examples/squashfs/pseudo-file.example
+share/doc/squashfs/README-4.4
+share/doc/squashfs/RELEASE-READMEs/DONATIONS
+share/doc/squashfs/RELEASE-READMEs/PERFORMANCE.README
+share/doc/squashfs/RELEASE-READMEs/README-2.0
+share/doc/squashfs/RELEASE-READMEs/README-2.0-AMD64
+share/doc/squashfs/RELEASE-READMEs/README-2.1
+share/doc/squashfs/RELEASE-READMEs/README-3.0
+share/doc/squashfs/RELEASE-READMEs/README-3.1
+share/doc/squashfs/RELEASE-READMEs/README-3.2
+share/doc/squashfs/RELEASE-READMEs/README-3.3
+share/doc/squashfs/RELEASE-READMEs/README-4.0
+share/doc/squashfs/RELEASE-READMEs/README-4.1
+share/doc/squashfs/RELEASE-READMEs/README-4.2
+share/doc/squashfs/RELEASE-READMEs/README-4.3
+share/doc/squashfs/RELEASE-READMEs/pseudo-file.example
+share/doc/squashfs/USAGE
diff -r 7277d087db2d -r 871dd46cf9d0 filesystems/squashfs/distinfo
--- a/filesystems/squashfs/distinfo Fri Jun 19 21:15:31 2020 +0000
+++ b/filesystems/squashfs/distinfo Fri Jun 19 21:17:46 2020 +0000
@@ -1,12 +1,10 @@
-$NetBSD: distinfo,v 1.2 2017/02/09 18:16:07 scole Exp $
+$NetBSD: distinfo,v 1.3 2020/06/19 21:17:46 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) = e9701425da11a12157407f6212ad0e1cd7fed536
-SHA1 (patch-action.c) = d0fc02e79f93a125f20992362214b359460bdce2
-SHA1 (patch-fnm__extmatch.h) = 167c9b473c78f3e10d7536791d63e42c39794e4a
-SHA1 (patch-mksquashfs.c) = 8e91a84b4bfd0de4aef79d9165ff41f17e5b8c41
-SHA1 (patch-pseudo.c) = 6c4e94d8f559404f7b6e155c71267ce7fd6c1456
-SHA1 (patch-unsquashfs.c) = 1e02204097129fdd0309124d2a664c2e081db2f0
+SHA1 (squashfs-tools-4.4.tar.gz) = 883eb8bfae3aaef619e6d3b7ae51f5aa83097cfd
+RMD160 (squashfs-tools-4.4.tar.gz) = 1967b075376dbc05c9683509afd508af89e95d65
+SHA512 (squashfs-tools-4.4.tar.gz) = 133ce437fb8c929933d52cff710b61dd9181f6f8be58250b0d6a59a7bb79a2b350f68f456b06a0e17c469409a71272d586802d570248273ddcd5dad088c00308
+Size (squashfs-tools-4.4.tar.gz) = 241842 bytes
+SHA1 (patch-Makefile) = ee53cb3c16983cb3767df2ccdcf4636bd646fc3c
+SHA1 (patch-action.c) = 35200e6cafd0846fb05fac50862ba3ceb4777935
+SHA1 (patch-mksquashfs.c) = 723e9250e0ce821825de916671ac51251dce9432
+SHA1 (patch-unsquashfs.c) = 167ee4ec1aea744dac6e13d837f1ae19a0f2472a
diff -r 7277d087db2d -r 871dd46cf9d0 filesystems/squashfs/options.mk
--- a/filesystems/squashfs/options.mk Fri Jun 19 21:15:31 2020 +0000
+++ b/filesystems/squashfs/options.mk Fri Jun 19 21:17:46 2020 +0000
@@ -1,20 +1,18 @@
-# $NetBSD: options.mk,v 1.3 2019/11/03 19:26:22 rillig Exp $
+# $NetBSD: options.mk,v 1.4 2020/06/19 21:17:46 scole Exp $
+# xxx unsquashfs hung for me without any error message when extracting
+# an xattr archive and xattr was an included as a package option
PKG_OPTIONS_VAR= PKG_OPTIONS.squashfs
-PKG_SUPPORTED_OPTIONS= zlib lz4 lzo xz xattr
-PKG_SUGGESTED_OPTIONS= zlib lzo xz
+PKG_SUPPORTED_OPTIONS= zlib xz lzo lz4 zstd xattr reproducible
+PKG_SUGGESTED_OPTIONS= zlib xz lzo lz4 zstd xattr reproducible
.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)
+ empty(PKG_OPTIONS:Mxz) && \
+ empty(PKG_OPTIONS:Mzstd)
PKG_FAIL_REASON= "need at least one compression algorithm selected"
.endif
@@ -29,7 +27,7 @@
.if !empty(PKG_OPTIONS:Mlz4)
.include "../../archivers/lz4/buildlink3.mk"
BUILD_MAKE_FLAGS+= LZ4_SUPPORT=1
-SQUASH_COMPRESSORS+= lz4
+SQUASH_COMPRESSORS+= lz4
.else
BUILD_MAKE_FLAGS+= LZ4_SUPPORT=0
.endif
@@ -50,6 +48,14 @@
BUILD_MAKE_FLAGS+= XZ_SUPPORT=0
.endif
+.if !empty(PKG_OPTIONS:Mzstd)
+.include "../../archivers/zstd/buildlink3.mk"
+BUILD_MAKE_FLAGS+= ZSTD_SUPPORT=1
+SQUASH_COMPRESSORS+= zstd
+.else
+BUILD_MAKE_FLAGS+= ZSTD_SUPPORT=0
+.endif
+
.if !empty(PKG_OPTIONS:Mxattr)
BUILD_MAKE_FLAGS+= XATTR_SUPPORT=1
.else
@@ -66,3 +72,9 @@
BUILD_MAKE_FLAGS+= COMP_DEFAULT=${SQUASH_COMPRESSORS:Nxattr:[1]}
. endif
.endif
+
+.if !empty(PKG_OPTIONS:Mreproducible)
+BUILD_MAKE_FLAGS+= REPRODUCIBLE_DEFAULT=1
+.else
+BUILD_MAKE_FLAGS+= REPRODUCIBLE_DEFAULT=0
+.endif
diff -r 7277d087db2d -r 871dd46cf9d0 filesystems/squashfs/patches/patch-Makefile
--- a/filesystems/squashfs/patches/patch-Makefile Fri Jun 19 21:15:31 2020 +0000
+++ b/filesystems/squashfs/patches/patch-Makefile Fri Jun 19 21:17:46 2020 +0000
@@ -1,8 +1,9 @@
-$NetBSD: patch-Makefile,v 1.2 2017/02/09 18:16:08 scole Exp $
-Add fnm_extmatch.h dependency, use options framework
+$NetBSD: patch-Makefile,v 1.3 2020/06/19 21:17:46 scole Exp $
---- Makefile.orig 2014-05-11 11:56:00.000000000 -0700
-+++ Makefile 2017-02-06 12:08:05.000000000 -0800
+use options framework and libtool
+
+--- Makefile.orig 2019-08-29 01:58:04.000000000 +0000
++++ Makefile
@@ -15,7 +15,7 @@
# Obviously, you must select at least one of the available gzip, lzma, lzo
# compression types.
@@ -12,16 +13,16 @@
########### Building XZ support #############
#
-@@ -81,7 +81,7 @@
+@@ -85,7 +85,7 @@ GZIP_SUPPORT = 1
# in Mksquashfs. Obviously the compression algorithm must have been
# selected to be built
#
-COMP_DEFAULT = gzip
+#COMP_DEFAULT = gzip
+
###############################################
- # Extended attribute (XATTRs) build options #
-@@ -92,7 +92,7 @@
+@@ -97,7 +97,7 @@ COMP_DEFAULT = gzip
# If your C library or build/target environment doesn't support XATTRs then
# comment out the next line to build Mksquashfs and Unsquashfs without XATTR
# support
@@ -30,7 +31,7 @@
# Select whether you wish xattrs to be stored by Mksquashfs and extracted
# by Unsquashfs by default. If selected users can disable xattr support by
-@@ -100,7 +100,7 @@
+@@ -105,7 +105,7 @@ XATTR_SUPPORT = 1
#
# If unselected, Mksquashfs/Unsquashfs won't store and extract xattrs by
# default. Users can enable xattrs by using the -xattrs option.
@@ -39,31 +40,33 @@
###############################################
-@@ -229,7 +229,8 @@
+@@ -277,11 +277,15 @@ $(error "COMP_DEFAULT is set to ${COMP_D
+ built!")
+ endif
+
++%.lo : %.c
++ $(LIBTOOL) --mode=compile --tag=CC $(CC) -o $@ -c $(CFLAGS) $(CPPFLAGS) $<
++
+ .PHONY: all
+ all: mksquashfs unsquashfs
+
+-mksquashfs: $(MKSQUASHFS_OBJS)
+- $(CC) $(LDFLAGS) $(EXTRA_LDFLAGS) $(MKSQUASHFS_OBJS) $(LIBS) -o $@
++mksquashfs: $(MKSQUASHFS_OBJS:.o=.lo)
++ $(LIBTOOL) --tag=CC --mode=link $(CC) -o $@ $(MKSQUASHFS_OBJS:.o=.lo) \
++ $(LDFLAGS) $(EXTRA_LDFLAGS) $(LIBS)
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
+@@ -331,8 +335,9 @@ lz4_wrapper.o: lz4_wrapper.c squashfs_fs
- read_fs.o: read_fs.c squashfs_fs.h squashfs_swap.h compressor.h xattr.h \
- error.h mksquashfs.h
-@@ -247,7 +248,7 @@
+ xz_wrapper.o: xz_wrapper.c squashfs_fs.h xz_wrapper.h compressor.h
Home |
Main Index |
Thread Index |
Old Index