gnu: libnice: Update to 0.1.18-0.47a9633 and disable test-bind test.

This resolves a build failure following the GStreamer update to 1.18.5.

* gnu/packages/networking.scm (libnice): Update to 0.1.18-0.47a9633.
[phases]{disable-failing-tests}: Comment out rather than delete
test-set-port-range; disable the bind test, which is flaky.
This commit is contained in:
Maxim Cournoyer 2021-10-09 23:40:59 -04:00
parent 81bda13ad2
commit a91c3d336c
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -268,66 +268,78 @@ (define-public libcamera
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public libnice (define-public libnice
(package ;; The latest release is old and randomly fails tests with GStreamer 1.18.5,
(name "libnice") ;; such as: "test-bind: ../libnice-0.1.18/stun/tests/test-bind.c:234:
(version "0.1.18") ;; bad_responses: Assertion `len >= 20' failed"
(source (let ((revision "0")
(origin (commit "47a96334448838c43d7e72f4ef51b317befbfae1"))
(method url-fetch) (package
(uri (name "libnice")
(string-append "https://libnice.freedesktop.org/releases/" (version (git-version "0.1.18" revision commit))
name "-" version ".tar.gz")) (source
(sha256 (origin
(base32 "1x3kj9b3dy9m2h6j96wgywfamas1j8k2ca43k5v82kmml9dx5asy")))) (method git-fetch)
(build-system meson-build-system) (uri (git-reference
(outputs '("out" "doc")) (url "https://gitlab.freedesktop.org/libnice/libnice")
(arguments (commit commit)))
`(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas (file-name (git-file-name name version))
#:configure-flags (sha256
(list (base32
"-Dgtk_doc=enabled") "19ypjazslmsb9vqs2wyyzvi72h5jbn16dbng7pxh485djdrmgcg4"))))
#:phases (build-system meson-build-system)
(modify-phases %standard-phases (outputs '("out" "doc"))
(add-after 'unpack 'disable-failing-test (arguments
(lambda _ `(#:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
(substitute* "tests/meson.build" #:configure-flags
;; test-set-port-range.c:66:main: assertion failed: (list
;; (nice_agent_gather_candidates (agent, stream1)) "-Dgtk_doc=enabled")
(("'test-set-port-range'") "#")) #:phases
#t)) (modify-phases %standard-phases
(add-after 'install 'move-docs (add-after 'unpack 'disable-failing-test
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let* ((out (assoc-ref outputs "out")) (substitute* "tests/meson.build"
(doc (assoc-ref outputs "doc"))) ;; test-set-port-range.c:66:main: assertion failed:
(mkdir-p (string-append doc "/share")) ;; (nice_agent_gather_candidates (agent, stream1))
(rename-file (("'test-set-port-range'" all)
(string-append out "/share/gtk-doc") (string-append "# " all)))
(string-append doc "/share/gtk-doc")) (substitute* "stun/tests/meson.build"
#t)))))) ;; test-bind.c:234: bad_responses: Assertion `len >= 20'
(native-inputs ;; failed (see:
`(("glib:bin" ,glib "bin") ;; https://gitlab.freedesktop.org/libnice/libnice/-/issues/150).
("gobject-introspection" ,gobject-introspection) (("'bind', ")
("graphviz" ,graphviz) ""))))
("gtk-doc" ,gtk-doc/stable) (add-after 'install 'move-docs
("pkg-config" ,pkg-config))) (lambda* (#:key outputs #:allow-other-keys)
(inputs (let* ((out (assoc-ref outputs "out"))
`(("gstreamer" ,gstreamer) (doc (assoc-ref outputs "doc")))
("gst-plugins-base" ,gst-plugins-base) (mkdir-p (string-append doc "/share"))
("libnsl" ,libnsl))) (rename-file
(propagated-inputs (string-append out "/share/gtk-doc")
`(("glib" ,glib) (string-append doc "/share/gtk-doc"))))))))
("glib-networking" ,glib-networking) (native-inputs
("gnutls" ,gnutls))) `(("glib:bin" ,glib "bin")
(synopsis "GLib ICE implementation") ("gobject-introspection" ,gobject-introspection)
(description "LibNice is a library that implements the Interactive ("graphviz" ,graphviz)
("gtk-doc" ,gtk-doc/stable)
("pkg-config" ,pkg-config)))
(inputs
`(("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base)
("libnsl" ,libnsl)))
(propagated-inputs
`(("glib" ,glib)
("glib-networking" ,glib-networking)
("gnutls" ,gnutls)))
(synopsis "GLib ICE implementation")
(description "LibNice is a library that implements the Interactive
Connectivity Establishment (ICE) standard (RFC 5245 & RFC 8445). It provides a Connectivity Establishment (ICE) standard (RFC 5245 & RFC 8445). It provides a
GLib-based library, libnice, as well as GStreamer elements to use it.") GLib-based library, libnice, as well as GStreamer elements to use it.")
(home-page "https://libnice.freedesktop.org/") (home-page "https://libnice.freedesktop.org/")
(license (license
;; This project is dual-licensed. ;; This project is dual-licensed.
(list (list
license:lgpl2.1+ license:lgpl2.1+
license:mpl1.1)))) license:mpl1.1)))))
(define-public rtmpdump (define-public rtmpdump
;; There are no tags in the repository, and the project is unlikely to ;; There are no tags in the repository, and the project is unlikely to