Archived
1
0
Fork 0

gnu: pjproject: Update to 2.12.1.

* gnu/packages/telephony.scm (pjproject): Update to 2.12.1.
[source]: Delete patches field.
[arguments]: Use gexps.
* gnu/packages/patches/pjproject-install-libpjsua2.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): De-register it.
This commit is contained in:
Maxim Cournoyer 2022-09-17 22:34:55 -04:00
parent dab3800691
commit 503cfd5421
No known key found for this signature in database
GPG key ID: 1260E46482E63562
3 changed files with 93 additions and 112 deletions

View file

@ -1608,7 +1608,6 @@ dist_patch_DATA = \
%D%/packages/patches/password-store-tree-compat.patch \ %D%/packages/patches/password-store-tree-compat.patch \
%D%/packages/patches/pciutils-hurd-configure.patch \ %D%/packages/patches/pciutils-hurd-configure.patch \
%D%/packages/patches/pciutils-hurd-fix.patch \ %D%/packages/patches/pciutils-hurd-fix.patch \
%D%/packages/patches/pjproject-install-libpjsua2.patch \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \ %D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/pokerth-boost.patch \ %D%/packages/patches/pokerth-boost.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \ %D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \

View file

@ -1,19 +0,0 @@
# Retrieved from upstream:
# https://github.com/pjsip/pjproject/commit/742f7dc252ded778a8b677937791c02e2fbc0dde
diff --git a/Makefile b/Makefile
index 31a6d39d4..74e246a44 100644
--- a/Makefile
+++ b/Makefile
@@ -121,9 +121,10 @@ cmp_wav:
install:
mkdir -p $(DESTDIR)$(libdir)/
- cp -af $(APP_LIB_FILES) $(DESTDIR)$(libdir)/
if [ "$(PJ_EXCLUDE_PJSUA2)x" = "x" ] ; then \
- cp -af $(PJ_DIR)/pjsip/lib/libpjsua2-$(LIB_SUFFIX) $(DESTDIR)$(libdir)/; \
+ cp -af $(APP_LIBXX_FILES) $(DESTDIR)$(libdir)/; \
+ else \
+ cp -af $(APP_LIB_FILES) $(DESTDIR)$(libdir)/; \
fi
mkdir -p $(DESTDIR)$(includedir)/
for d in pjlib pjlib-util pjnath pjmedia pjsip; do \

View file

@ -17,7 +17,7 @@
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org> ;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org> ;;; Copyright © 2021 LibreMiami <packaging-guix@libremiami.org>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
@ -723,7 +723,7 @@ your calls and messages.")
(define-public pjproject (define-public pjproject
(package (package
(name "pjproject") (name "pjproject")
(version "2.11.1") (version "2.12.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -733,7 +733,7 @@ your calls and messages.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"04s4bgr2d22ym2ajjk6q507hyqss1p59yp8avyyyf5f8032nbaws")) "0xrj4sznbaip22y9hclff6y81l285bzkkj1smzifskpk3kiwp00w"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -742,99 +742,100 @@ your calls and messages.")
(substitute* "aconfigure.ac" (substitute* "aconfigure.ac"
(("third_party/build/os-auto.mak") "")) (("third_party/build/os-auto.mak") ""))
(substitute* "Makefile" (substitute* "Makefile"
(("third_party/build") "")))) (("third_party/build") ""))))))
(patches (search-patches "pjproject-install-libpjsua2.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "debug" "static")) (outputs '("out" "debug" "static"))
(arguments (arguments
`(#:test-target "selftest" (list
#:configure-flags #:test-target "selftest"
(list "--enable-shared" #:configure-flags
"--with-external-speex" #~(list "--enable-shared"
"--with-external-gsm" "--with-external-speex"
"--with-external-srtp" "--with-external-gsm"
"--with-external-pa" "--with-external-srtp"
;; The following flag is Linux specific. "--with-external-pa"
,@(if (string-contains (or (%current-system) ;; The following flag is Linux specific.
(%current-target-system)) "linux") #$@(if (string-contains (or (%current-system)
'("--enable-epoll") (%current-target-system)) "linux")
'()) #~("--enable-epoll")
"--with-gnutls" ;disable OpenSSL checks #~())
"--disable-libyuv" ;TODO: add missing package "--with-gnutls" ;disable OpenSSL checks
"--disable-silk" ;TODO: add missing package "--disable-libyuv" ;TODO: add missing package
"--disable-libwebrtc" ;TODO: add missing package "--disable-silk" ;TODO: add missing package
"--disable-ilbc-codec" ;cannot be unbundled "--disable-libwebrtc" ;TODO: add missing package
"--disable-g7221-codec" ;TODO: add missing package "--disable-ilbc-codec" ;cannot be unbundled
"--enable-libsamplerate" "--disable-g7221-codec" ;TODO: add missing package
;; -DNDEBUG is set to prevent pjproject from raising "--enable-libsamplerate"
;; assertions that aren't critical, crashing ;; -DNDEBUG is set to prevent pjproject from raising
;; applications as the result. ;; assertions that aren't critical, crashing
"CFLAGS=-DNDEBUG" ;; applications as the result.
;; Specify a runpath reference to itself, which is missing and "CFLAGS=-DNDEBUG"
;; causes the validate-runpath phase to fail. ;; Specify a runpath reference to itself, which is missing and
(string-append "LDFLAGS=-Wl,-rpath=" (assoc-ref %outputs "out") ;; causes the validate-runpath phase to fail.
"/lib")) (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib"))
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-before 'build 'build-dep (add-before 'build 'build-dep
(lambda _ (invoke "make" "dep"))) (lambda _ (invoke "make" "dep")))
;; The check phases is moved after the install phase so to ;; The check phases is moved after the install phase so to
;; use the installed shared libraries for the tests. ;; use the installed shared libraries for the tests.
(delete 'check) (delete 'check)
(add-after 'install 'move-static-libraries (add-after 'install 'move-static-libraries
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")) (let ((s (string-append #$output:static "/lib")))
(s (string-append (assoc-ref outputs "static") "/lib"))) (mkdir-p s)
(mkdir-p s) (with-directory-excursion #$output
(with-directory-excursion out (for-each (lambda (f)
(for-each (lambda (f) (rename-file f (string-append s "/" (basename f))))
(rename-file f (string-append s "/" (basename f)))) (find-files "." "\\.a$"))))))
(find-files "." "\\.a$")))))) (add-after 'install 'check
(add-after 'install 'check (assoc-ref %standard-phases 'check))
(assoc-ref %standard-phases 'check)) (add-before 'patch-source-shebangs 'autoconf
(add-before 'patch-source-shebangs 'autoconf (lambda _
(lambda _ (invoke "autoconf" "-v" "-f" "-i" "-o"
(invoke "autoconf" "-v" "-f" "-i" "-o" "aconfigure" "aconfigure.ac")))
"aconfigure" "aconfigure.ac"))) (add-before 'autoconf 'disable-some-tests
(add-before 'autoconf 'disable-some-tests (lambda _
(lambda _ (substitute* "pjlib/src/pjlib-test/test.h"
(substitute* "pjlib/src/pjlib-test/test.h" ;; Disable network tests which are slow and/or require an
;; Disable network tests which are slow and/or require an ;; actual network.
;; actual network. (("#define GROUP_NETWORK.*")
(("#define GROUP_NETWORK.*") "#define GROUP_NETWORK 0\n"))
"#define GROUP_NETWORK 0\n")) (substitute* "self-test.mak"
(substitute* "self-test.mak" ;; Fails with: pjlib-util-test-x86_64-unknown-linux-gnu:
;; Fails with: pjlib-util-test-x86_64-unknown-linux-gnu: ;; ../src/pjlib-util-test/resolver_test.c:1501: action2_1:
;; ../src/pjlib-util-test/resolver_test.c:1501: action2_1: ;; Assertio n `pj_strcmp2(&pkt->q[0].name, "_sip._udp."
;; Assertio n `pj_strcmp2(&pkt->q[0].name, "_sip._udp." ;; "domain2.com")==0' failed.
;; "domain2.com")==0' failed. ((" pjlib_util_test ") ""))
((" pjlib_util_test ") "")) (substitute* "pjsip/src/test/test.h"
(substitute* "pjsip/src/test/test.h" ;; Fails with: Error: unable to acquire TCP transport:
;; Fails with: Error: unable to acquire TCP transport: ;; [pj_status_t=120101] Network is unreachable.
;; [pj_status_t=120101] Network is unreachable. (("#define INCLUDE_TCP_TEST.*")
(("#define INCLUDE_TCP_TEST.*") "#define INCLUDE_TCP_TEST 0\n")
"#define INCLUDE_TCP_TEST 0\n") ;; The TSX tests takes a very long time to run; skip them.
;; The TSX tests takes a very long time to run; skip them. (("#define INCLUDE_TSX_GROUP.*")
(("#define INCLUDE_TSX_GROUP.*") "#define INCLUDE_TSX_GROUP 0\n"))
"#define INCLUDE_TSX_GROUP 0\n")) (substitute* "pjsip/src/test/dns_test.c"
(substitute* "pjsip/src/test/dns_test.c" ;; The round_robin_test fails non-deterministically (depending
;; The round_robin_test fails non-deterministically (depending ;; on load); skip it (see:
;; on load); skip it (see: ;; https://github.com/pjsip/pjproject/issues/2500).
;; https://github.com/pjsip/pjproject/issues/2500). (("round_robin_test(pool)") 0))
(("round_robin_test(pool)") 0)) (substitute* "pjmedia/src/test/test.h"
(substitute* "pjmedia/src/test/test.h" ;; The following tests require a sound card.
;; The following tests require a sound card. (("#define HAS_MIPS_TEST.*")
(("#define HAS_MIPS_TEST.*") "#define HAS_MIPS_TEST 0\n")
"#define HAS_MIPS_TEST 0\n") (("#define HAS_JBUF_TEST.*")
(("#define HAS_JBUF_TEST.*") "#define HAS_JBUF_TEST 0\n"))
"#define HAS_JBUF_TEST 0\n")) (substitute* "Makefile"
(substitute* "Makefile" ;; Disable the pjnath and pjsua tests, which require an actual
;; Disable the pjnath and pjsua tests, which require an actual ;; network and an actual sound card, respectively.
;; network and an actual sound card, respectively. (("pjnath-test pjmedia-test pjsip-test pjsua-test")
(("pjnath-test pjmedia-test pjsip-test pjsua-test") "pjmedia-test pjsip-test")))))))
"pjmedia-test pjsip-test")))))))
(native-inputs (native-inputs
(list autoconf automake libtool pkg-config)) (list autoconf
automake
libtool
pkg-config))
(inputs (inputs
(list bcg729 (list bcg729
gnutls gnutls