summaryrefslogtreecommitdiff
path: root/gnu/packages/compression.scm
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2021-06-19 17:38:47 +0200
committerMarius Bakke <marius@gnu.org>2021-06-19 17:38:47 +0200
commit6f9a80b331ae41d142a49fbeb94b90ee587b6155 (patch)
tree2da042a6ccf5368c73d6e3d54c2ee02a62d284e4 /gnu/packages/compression.scm
parent6500c9a5b364616e38a7e03aa4516fc2d7cee876 (diff)
parentdece03e2b98fc1c2428c2448ce5792f813eb79bf (diff)
downloadguix-patches-6f9a80b331ae41d142a49fbeb94b90ee587b6155.tar
guix-patches-6f9a80b331ae41d142a49fbeb94b90ee587b6155.tar.gz
Merge branch 'master' into core-updates
Note: this merge actually changes the 'curl' and 'python-attrs' derivations, as part of solving caf4a7a2770ef4d05a6e18f40d602e51da749ddc and 12964df69a99de6190422c752fef65ef813f3b6b respectively. 4604d43c0e (gnu: gnutls@3.6.16: Fix cross-compilation.) was ignored because it cannot currently be tested. Conflicts: gnu/local.mk gnu/packages/aidc.scm gnu/packages/boost.scm gnu/packages/curl.scm gnu/packages/nettle.scm gnu/packages/networking.scm gnu/packages/python-xyz.scm gnu/packages/tls.scm
Diffstat (limited to 'gnu/packages/compression.scm')
-rw-r--r--gnu/packages/compression.scm99
1 files changed, 78 insertions, 21 deletions
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index cc91bcfaa4..719cd36235 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2015, 2016, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2017, 2018, 2020, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
@@ -78,6 +78,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages llvm)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
#:use-module (gnu packages perl)
@@ -857,22 +858,23 @@ time for compression ratio.")
(package
(name "squashfs-tools")
(version "4.4")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/squashfs/squashfs/"
- "squashfs" version "/"
- "squashfs" version ".tar.gz"))
- (sha256
- (base32
- "0zmhvczscqz0mzh4b9m8m42asq14db0a6lc8clp5ljq5ybrv70d9"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Fix build with -fno-common (default in GCC 10).
- ;; Remove for squashfs-tools > 4.4.
- (substitute* "squashfs-tools/mksquashfs.h"
- (("struct cache \\*bwriter_buffer" all)
- (string-append "extern " all)))))))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/plougher/squashfs-tools")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0697fv8n6739mcyn57jclzwwbbqwpvjdfkv1qh9s56lvyqnplwaw"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Fix build with -fno-common (default in GCC 10).
+ ;; Remove for squashfs-tools > 4.4.
+ (substitute* "squashfs-tools/mksquashfs.h"
+ (("struct cache \\*bwriter_buffer" all)
+ (string-append "extern " all)))))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
@@ -881,18 +883,25 @@ time for compression ratio.")
"XZ_SUPPORT=1"
"LZO_SUPPORT=1"
"LZ4_SUPPORT=1"
+ "ZSTD_SUPPORT=1"
(string-append "INSTALL_DIR=" %output "/bin"))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
- (chdir "squashfs-tools")
- #t)))))
+ (chdir "squashfs-tools")))
+ (add-after 'install 'install-documentation
+ ;; Install what very little usage documentation is provided.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (doc (string-append out "/share/doc/" ,name)))
+ (install-file "../USAGE" doc)))))))
(inputs
`(("lz4" ,lz4)
("lzo" ,lzo)
("xz" ,xz)
- ("zlib" ,zlib)))
+ ("zlib" ,zlib)
+ ("zstd:lib" ,zstd "lib")))
(home-page "https://github.com/plougher/squashfs-tools")
(synopsis "Tools to create and extract squashfs file systems")
(description
@@ -1172,6 +1181,54 @@ for most inputs, but the resulting compressed files are anywhere from 20% to
100% bigger.")
(license license:asl2.0)))
+;; We need this for irods.
+(define-public snappy-with-clang6
+ (package
+ (inherit snappy)
+ (name "snappy-with-clang")
+ ;; XXX 1.1.9 fails to build with clang with
+ ;; error: invalid output constraint '=@ccz' in asm
+ (version "1.1.8")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/google/snappy")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1j0kslq2dvxgkcxl1gakhvsa731yrcvcaipcp5k8k7ayicvkv9jv"))))
+ (arguments
+ `(#:configure-flags
+ '("-DBUILD_SHARED_LIBS=ON"
+ "-DCMAKE_CXX_COMPILER=clang++"
+ "-DCMAKE_CXX_FLAGS=-stdlib=libc++"
+ "-DCMAKE_EXE_LINKER_FLAGS=-lc++abi")
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'set-paths 'adjust-CPLUS_INCLUDE_PATH
+ (lambda* (#:key native-inputs inputs #:allow-other-keys)
+ (let ((gcc (assoc-ref (or native-inputs inputs) "gcc")))
+ (setenv "CPLUS_INCLUDE_PATH"
+ (string-join
+ (cons* (string-append (assoc-ref inputs "libcxx+libcxxabi")
+ "/include/c++/v1")
+ ;; Hide GCC's C++ headers so that they do not interfere with
+ ;; the Clang headers.
+ (delete (string-append gcc "/include/c++")
+ (string-split (getenv "CPLUS_INCLUDE_PATH")
+ #\:)))
+ ":"))
+ (format #true
+ "environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%"
+ (getenv "CPLUS_INCLUDE_PATH"))))))))
+ (properties `((hidden? . #true)))
+ (native-inputs
+ `(("clang" ,clang-toolchain-6)))
+ (inputs
+ `(("libcxx+libcxxabi" ,libcxx+libcxxabi-6)
+ ("libcxxabi" ,libcxxabi-6)))))
+
(define-public p7zip
(package
(name "p7zip")
@@ -2134,7 +2191,7 @@ download times, and other distribution and storage costs.")
(native-inputs
`(("doxygen" ,doxygen)))
(inputs
- `(("qtbase" ,qtbase)
+ `(("qtbase" ,qtbase-5)
("zlib" ,zlib)))
(home-page "https://stachenov.github.io/quazip/index.html")
(synopsis "Qt/C++ wrapper for Minizip")