From c2a86746142fd51f53f3006dce5420d23ea36fef Mon Sep 17 00:00:00 2001 From: Raghav Gururajan Date: Tue, 16 Mar 2021 13:25:14 -0400 Subject: gnu: belle-sip: Enable tests. * gnu/packages/linphone.scm (belle-sip)[outputs]: New "tester" output. [tests?]: Remove argument, enabling tests. [phases]{check}: Override phase. {separate-outputs}: New phase. [inputs]: Remove antlr3, anttlr3c and java. Modified-by: Maxim Cournoyer Signed-off-by: Maxim Cournoyer --- gnu/packages/linphone.scm | 48 ++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 39 insertions(+), 9 deletions(-) (limited to 'gnu/packages') diff --git a/gnu/packages/linphone.scm b/gnu/packages/linphone.scm index 6f7634ecdb..ec35ad4545 100644 --- a/gnu/packages/linphone.scm +++ b/gnu/packages/linphone.scm @@ -485,15 +485,15 @@ including both ARM and x86.") (origin (method git-fetch) (uri (git-reference - (url "git://git.linphone.org/belle-sip") + (url "https://gitlab.linphone.org/BC/public/belle-sip.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 "1kknnlczq7dpqaj1dwxvy092dzrqjy11ndkv90rqwmdryigkjk6z")))) (build-system cmake-build-system) + (outputs '("out" "tester")) (arguments - `(#:tests? #f ; Requires network access - #:configure-flags + `(#:configure-flags (list "-DENABLE_STATIC=NO") ; Not required #:phases (modify-phases %standard-phases @@ -502,13 +502,43 @@ including both ARM and x86.") (substitute* "src/CMakeLists.txt" ;; ANTLR would use multithreaded DFA generation otherwise, ;; which would not be reproducible. - (("-Xmultithreaded ") "")) - #t))))) + (("-Xmultithreaded ") "")))) + (delete 'check) ;move after install + (add-after 'install 'separate-outputs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (tester (assoc-ref outputs "tester")) + (tester-name "belle_sip_tester")) + (for-each mkdir-p (list (string-append tester "/bin") + (string-append tester "/share"))) + (rename-file (string-append out "/bin") + (string-append tester "/bin")) + (rename-file (string-append out "/share/" tester-name) + (string-append tester "/share/" tester-name))))) + (add-after 'separate-outputs 'check + (lambda* (#:key outputs #:allow-other-keys) + (let ((tester (string-append (assoc-ref outputs "tester") + "/bin/belle_sip_tester"))) + (for-each (lambda (suite-name) + (invoke tester "--suite" suite-name)) + (list "Object inheritance" + "SIP URI" + "FAST SIP URI" + "FAST SIP URI 2" + "Generic uri" + "Headers" + "Core" + "SDP" + ;;"Resolver" + "Message" + "Authentication helper" + ;;"Register" + ;;"Dialog" + "Refresher" + ;;"HTTP stack" + "Object")))))))) (inputs - `(("antlr3" ,antlr3-3.3) - ("antlr3c" ,libantlr3c) - ("bctoolbox" ,bctoolbox) - ("java" ,icedtea) + `(("bctoolbox" ,bctoolbox) ("zlib" ,zlib))) (synopsis "Belledonne Communications SIP Library") (description "Belle-sip is a modern library implementing SIP transport, -- cgit v1.2.3