gnu: cabextract: Update to 1.9.

* gnu/packages/compression.scm (cabextract): Update to 1.9.
[arguments]: Add phase "unpack-libmspack".
[inputs]: Add libmspack-source.
master
Kei Kebreau 2018-11-20 13:52:00 -05:00
parent ea80fd1ff5
commit b3175c709d
No known key found for this signature in database
GPG Key ID: E6A5EE3C19467A0D
1 changed files with 20 additions and 4 deletions

View File

@ -1017,13 +1017,13 @@ smaller than those produced by @code{Xdelta}.")
(package
(name "cabextract")
(home-page "https://cabextract.org.uk/")
(version "1.7")
(version "1.9")
(source (origin
(method url-fetch)
(uri (string-append home-page name "-" version ".tar.gz"))
(sha256
(base32
"1g86wmb8lkjiv2jarfz979ngbgg7d3si8x5il4g801604v406wi9"))
"1hf4zhjxfdgq9x172r5zfdnafma9q0zf7372syn8hcn7hcypkg0v"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1031,11 +1031,27 @@ smaller than those produced by @code{Xdelta}.")
(delete-file-recursively "mspack")
#t))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--with-external-libmspack")))
(arguments
'(#:configure-flags '("--with-external-libmspack")
#:phases
(modify-phases %standard-phases
;; cabextract needs some of libmspack's header files.
;; These are located in the "mspack" directory of libmspack.
(add-before 'build 'unpack-libmspack
(lambda* (#:key inputs #:allow-other-keys)
(let ((dir-name "libmspack-src"))
(mkdir dir-name)
(invoke "tar" "-xvf" (assoc-ref inputs "libmspack-source")
"-C" dir-name "--strip-components" "1")
(rename-file (string-append dir-name "/mspack")
"mspack")
(delete-file-recursively dir-name)
#t))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("libmspack" ,libmspack)))
`(("libmspack" ,libmspack)
("libmspack-source" ,(package-source libmspack))))
(synopsis "Tool to unpack Cabinet archives")
(description "Extracts files out of Microsoft Cabinet (.cab) archives")
;; Some source files specify gpl2+, lgpl2+, however COPYING is gpl3.