diff options
author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-04-05 22:24:19 -0400 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-04-05 22:49:23 -0400 |
commit | fe6ccb855234111cfe2460bb2469bc7b766e534e (patch) | |
tree | 68540314c99e6d272c15ee947ecc31a7d87ef5e1 /gnu/packages/linphone.scm | |
parent | 6978df6abbb3fc6c755b36821f50d5e03e751ca1 (diff) | |
download | guix-fe6ccb855234111cfe2460bb2469bc7b766e534e.tar guix-fe6ccb855234111cfe2460bb2469bc7b766e534e.tar.gz |
gnu: mediastreamer2: Move the tester files and HTML doc to separate outputs.
The tester binary generated gets installed with about 20 MiB of data files,
and the HTML documentation weighs another 500 KiB or so. Move them to
separate outputs.
* gnu/packages/patches/mediastreamer-srtp2.patch: Rename to...
* gnu/packages/patches/mediastreamer2-srtp2.patch: ...this, to please 'guix
lint'.
* gnu/local.mk (dist_patch_DATA): Adapt.
* gnu/packages/linphone.scm (mediastreamer2)[patches]: Likewise.
[outputs]: Add the "doc" and "tester" outputs.
[phases]: Add a phase to move the HTML doc and tester binary and data to the
'doc' and 'tester' outputs, respectively.
[description]: Remove the unicode characters surrounding the word 'powerful'.
Diffstat (limited to 'gnu/packages/linphone.scm')
-rw-r--r-- | gnu/packages/linphone.scm | 42 |
1 files changed, 35 insertions, 7 deletions
diff --git a/gnu/packages/linphone.scm b/gnu/packages/linphone.scm index ab223700d5..50d75a4a95 100644 --- a/gnu/packages/linphone.scm +++ b/gnu/packages/linphone.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; ;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -324,8 +325,8 @@ API. It also comprises a simple HTTP/HTTPS client implementation.") "mediastreamer/mediastreamer-" version ".tar.gz")) (sha256 (base32 "0whpqr69wz0pnzvragkpfblxhd0rds8k06c3mw5a0ag216a1yd9k")) - (patches - (list (search-patch "mediastreamer-srtp2.patch"))))) + (patches (search-patches "mediastreamer2-srtp2.patch")))) + (outputs '("out" "doc" "tester")) (build-system cmake-build-system) (arguments `(#:tests? #f ; No test target @@ -335,7 +336,33 @@ API. It also comprises a simple HTTP/HTTPS client implementation.") "-DENABLE_STRICT=NO" ; Would otherwise treat warnings as err "-DENABLE_BV16=NO" ; Not available "-DCMAKE_C_FLAGS=-DMS2_GIT_VERSION=\\\"unknown\\\"" - "-DCMAKE_CXX_FLAGS=-DMS2_GIT_VERSION=\\\"unknown\\\""))) + "-DCMAKE_CXX_FLAGS=-DMS2_GIT_VERSION=\\\"unknown\\\"") + #:phases + (modify-phases %standard-phases + (add-after 'install 'separate-outputs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc")) + (tester (assoc-ref outputs "tester")) + (tester-name (string-append ,name "_tester"))) + ;; Copy the tester executable. + (mkdir-p (string-append tester "/bin")) + (rename-file (string-append out "/bin/" tester-name) + (string-append tester "/bin/" tester-name)) + ;; Copy the tester data files. + (copy-recursively (string-append out "/share/" tester-name) + (string-append tester "/share/" tester-name)) + (delete-file-recursively (string-append out "/share/" + tester-name)) + ;; Copy the HTML documentation. + (copy-recursively (string-append out "/share/doc/" + ,name "-" ,version "/html") + (string-append doc "/share/doc/" + ,name "-" ,version "/html")) + (delete-file-recursively (string-append out "/share/doc/" + ,name "-" ,version + "/html")) + #t)))))) (native-inputs `(("dot" ,graphviz) ("doxygen" ,doxygen) @@ -368,10 +395,11 @@ API. It also comprises a simple HTTP/HTTPS client implementation.") ("xv" ,libxv) ("zrtp", bzrtp))) (synopsis "Belledonne Communications Streaming Engine") - (description "Mediastreamer is a powerful and lightweight streaming -engine for telephony applications. This media processing and streaming toolkit -is responsible for receiving and sending all multimedia streams in Linphone, -including media capture, encoding and decoding, and rendering.") + (description "Mediastreamer2 is a powerful and lightweight +streaming engine for telephony applications. This media processing +and streaming toolkit is responsible for receiving and sending all +multimedia streams in Linphone, including media capture, encoding and +decoding, and rendering.") (home-page "https://gitlab.linphone.org/BC/public/mediastreamer2") (license license:gpl2+))) |