gnu: liblinphone: Move documentation and tester to separate outputs.

* gnu/packages/linphone.scm (liblinphone)[outputs]: Add a "doc" and "tester"
outputs.
[phases]: Add a separate-outputs phase.  Move the
glib-or-gtk-compile-schemas and glib-or-gtk-wrap phases after it.
This commit is contained in:
Maxim Cournoyer 2020-04-27 00:50:48 -04:00
parent 1ae4325734
commit 9c63165d9e
No known key found for this signature in database
GPG Key ID: 1260E46482E63562

View File

@ -416,6 +416,7 @@ decoding, and rendering.")
"/linphone-" version ".tar.gz"))
(sha256
(base32 "0phhkx55xdyg28d4wn8l8q4yvsmdgzmjiw584d4s190sq1azm91x"))))
(outputs '("out" "doc" "tester"))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; No test target
@ -436,16 +437,37 @@ decoding, and rendering.")
(guix build utils))
#:phases
(modify-phases %standard-phases
(add-after 'install 'glib-or-gtk-compile-schemas
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
(add-after 'install 'glib-or-gtk-wrap
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
(add-after 'unpack 'patch
(lambda _
(substitute* "gtk/main.c"
(("#include \"liblinphone_gitversion.h\"")
""))
#t)))))
#t))
(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.
(mkdir-p (string-append tester "/share/"))
(rename-file (string-append out "/share/" tester-name)
(string-append tester "/share/" tester-name))
;; Copy the HTML and XML documentation.
(copy-recursively
(string-append out "/share/doc/linphone-" ,version)
(string-append doc "/share/doc/" ,name "-" ,version))
(delete-file-recursively
(string-append out "/share/doc/linphone-" ,version))
#t)))
(add-after 'separate-outputs 'glib-or-gtk-compile-schemas
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
(add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
(native-inputs
`(("gettext" ,gettext-minimal)
("udev" ,eudev) ;for libudev.h