guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#47274] Linphone Packages


From: Maxim Cournoyer
Subject: [bug#47274] Linphone Packages
Date: Wed, 24 Mar 2021 00:12:19 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Hi again,

Raghav Gururajan <rg@raghavgururajan.name> writes:

> From 4b03df1e5abf22da27c65e1f22ffe4be65377d29 Mon Sep 17 00:00:00 2001
> From: Raghav Gururajan <rg@raghavgururajan.name>
> Date: Sat, 13 Mar 2021 12:04:37 -0500
> Subject: [PATCH 02/53] gnu: bcunit: Update to 3.0.2-13.
>
> * gnu/packages/linphone.scm (bcunit) [source]: Switch to git repository.

Nitpick: there should be no space between (bcunit) and [source].

> [version]: Update to 3.0.2-13.
> [native-inputs]: Add perl.
> ---
>  gnu/packages/linphone.scm | 30 ++++++++++++++++++------------
>  1 file changed, 18 insertions(+), 12 deletions(-)
>
> diff --git a/gnu/packages/linphone.scm b/gnu/packages/linphone.scm
> index afa542412f..6d243d2073 100644
> --- a/gnu/packages/linphone.scm
> +++ b/gnu/packages/linphone.scm
> @@ -35,6 +35,7 @@
>    #:use-module (gnu packages gtk)
>    #:use-module (gnu packages image)
>    #:use-module (gnu packages linux)
> +  #:use-module (gnu packages perl)
>    #:use-module (gnu packages pulseaudio)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages python-xyz)
> @@ -57,28 +58,33 @@
>    #:use-module (guix build-system gnu))
>
>  (define-public bcunit
> -  (package
> -    (name "bcunit")
> -    (version "3.0.2")
> -    (source
> -     (origin
> -       (method url-fetch)
> -       (uri
> -        (string-append "https://www.linphone.org/releases/sources/"; name
> -                       "/" name "-" version ".tar.gz"))
> -       (sha256
> -        (base32 "0ylchj8w98ic2fkqpxc6yk4s6s0h0ql2zsz5n49jd7126m4h8dqk"))))
> +  (let ((commit "74021cc7cb20a4e177748dd2948173e1f9c270ae")
> +        (revision "13"))

When not using an official release, a comment is in order to mention the
reason; in this case something like: "Use the latest commit as there
hasn't been a release in nearly 4 years." :-).

Also, why start the revision number at 13?  Perhaps the number of
commits since the last tagged release?  It's a detail, but since there
was no revision used before for this package, I'd expect it to start at
0.

> +    (package
> +      (name "bcunit")
> +      (version (git-version "3.0.2" revision commit))
> +      (source
> +       (origin
> +         (method git-fetch)
> +         (uri (git-reference
> +               (url "git://git.linphone.org/bcunit")
> +               (commit commit)))
> +         (file-name (git-file-name name version))
> +         (sha256
> +          (base32 "0npdwvanjkfg9vrqs5yi8vh6wliv50ycdli8pzavir84nb31nq1b"))))
>      (build-system cmake-build-system)
>      (arguments
>       '(#:tests? #f                      ; No test target
>         #:configure-flags
>         (list "-DENABLE_STATIC=NO")))    ; Not required
> +    (native-inputs
> +     `(("perl" ,perl)))

Seems Perl is not actually needed.

>      (synopsis "Belledonne Communications Unit Testing Framework")
>      (description "BCUnit is a fork of the defunct project CUnit, with several
>  fixes and patches applied.  It is an unit testing framework for writing,
                                     ^ a

>  administering, and running unit tests in C.")
>      (home-page "https://gitlab.linphone.org/BC/public/bcunit";)
> -    (license license:lgpl2.0+)))
> +    (license license:lgpl2.0+))))
>
>  (define-public bctoolbox
>    (package

I ended up squashing all the bcunit changes in one, as I found it a bit
too micro to manage.

I've edited the result slightly, mostly taking out #t, the examples
output (examples are doc after all):

--8<---------------cut here---------------start------------->8---
1 file changed, 18 insertions(+), 26 deletions(-)
gnu/packages/linphone.scm | 44 ++++++++++++++++++--------------------------

modified   gnu/packages/linphone.scm
@@ -60,7 +60,7 @@
 
 (define-public bcunit
   (let ((commit "74021cc7cb20a4e177748dd2948173e1f9c270ae")
-        (revision "13"))
+        (revision "0"))
     (package
       (name "bcunit")
       (version (git-version "3.0.2" revision commit))
@@ -74,16 +74,14 @@
          (sha256
           (base32 "0npdwvanjkfg9vrqs5yi8vh6wliv50ycdli8pzavir84nb31nq1b"))))
       (build-system cmake-build-system)
-      (outputs '("out" "doc" "example"))
+      (outputs '("out" "doc"))
       (arguments
-       `(#:configure-flags
-         (list
-          "-DENABLE_STATIC=NO"
-          "-DENABLE_CURSES=ON"
-          "-DENABLE_DOC=ON"
-          "-DENABLE_EXAMPLES=ON"
-          "-DENABLE_TEST=ON"
-          "-DENABLE_MEMTRACE=ON")
+       `(#:configure-flags (list "-DENABLE_STATIC=NO"
+                                 "-DENABLE_CURSES=ON"
+                                 "-DENABLE_DOC=ON"
+                                 "-DENABLE_EXAMPLES=ON"
+                                 "-DENABLE_TEST=ON"
+                                 "-DENABLE_MEMTRACE=ON")
          #:phases
          (modify-phases %standard-phases
            (add-after 'unpack 'patch-source
@@ -99,36 +97,30 @@
                  (("target_include_directories\\(bcunit_test PUBLIC Test\\)")
                   (string-append
                    "target_include_directories(bcunit_test PUBLIC Test)\n"
-                   "target_link_libraries(bcunit_test bcunit)")))
-               #t))
+                   "target_link_libraries(bcunit_test bcunit)")))))
            (replace 'check
              (lambda _
                (with-directory-excursion "BCUnit/Sources/Test"
-                 (invoke "./test_bcunit"))
-               #t))
-           (add-after 'install 'seperate-outputs
+                 (invoke "./test_bcunit"))))
+           (add-after 'install 'move-doc
              (lambda* (#:key outputs #:allow-other-keys)
-               (let* ((out (assoc-ref outputs "out"))
-                      (doc (assoc-ref outputs "doc"))
-                      (example (assoc-ref outputs "example")))
+               (let ((out (assoc-ref outputs "out"))
+                     (doc (assoc-ref outputs "doc")))
                  (for-each mkdir-p
                            `(,(string-append doc "/share/doc")
-                             ,(string-append example "/share/BCUnit")))
+                             ,(string-append doc "/share/BCUnit")))
                  (rename-file
                   (string-append out "/share/doc/BCUnit")
                   (string-append doc "/share/doc/BCUnit"))
                  (rename-file
                   (string-append out "/share/BCUnit/Examples")
-                  (string-append example "/share/BCUnit/Examples")))
-               #t)))))
-      (native-inputs
-       `(("perl" ,perl)))
+                  (string-append doc "/share/BCUnit/Examples"))))))))
       (inputs
        `(("ncurses" ,ncurses)))
       (synopsis "Belledonne Communications Unit Testing Framework")
-      (description "BCUnit is a fork of the defunct project CUnit, with several
-fixes and patches applied.  It is an unit testing framework for writing,
-administering, and running unit tests in C.")
+      (description "BCUnit is a fork of the defunct project CUnit, with
+several fixes and patches applied.  It is a unit testing framework for
+writing, administering, and running unit tests in C.")
       (home-page "https://gitlab.linphone.org/BC/public/bcunit";)
       (license license:lgpl2.0+))))
--8<---------------cut here---------------end--------------->8---

I've also "normalized" the commit message in a way that I think is more
typical.  Arguments such as phases, configure-flags, and such are
typically enclosed in a conditional marker (square brakets); e.g.:

--8<---------------cut here---------------start------------->8---
gnu: bcunit: Update to 3.0.2-0.74021cc and enable more features.

* gnu/packages/linphone.scm (bcunit)[source]: Switch to git repository.
[version]: Update to 3.0.2-0.74021cc.
[outputs]: Add a "doc" output.
[arguments]: Remove the tests? argument, enabling tests.
[configure-flags]: Enable curses, doc, examples, tests and memtrace.
[phases]{patch-source, move-doc}: New phases.
{check}: Override phase.
[inputs]: Add ncurses.
[description]: Fix typo.
--8<---------------cut here---------------end--------------->8---

That's all very subjective, but hoping you get a feel :-).

After having verified that bcunit's dependent packages could still be
built fine and testing the resulting linphoneqt, I've pushed the
squashed bcunit series as commit c2a9b05f02.

Thank you!

Maxim





reply via email to

[Prev in Thread] Current Thread [Next in Thread]