[PATCH] gnu: dbus-cxx: Update to 2.4.0.

  • Done
  • quality assurance status badge
Details
3 participants
  • iyzsong
  • Liliana Marie Prikler
  • Maxim Cournoyer
Owner
unassigned
Submitted by
iyzsong
Severity
normal
I
I
iyzsong wrote on 31 Aug 2023 12:51
(address . guix-patches@gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
5686dc3309451165e7875231057a98030399a085.1693479069.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/glib.scm (dbus-cxx): Update to 2.4.0.
[source]: Switch to git-fetch.
[arguments]: Use g-exps. Adjust configure-flags.
Skip 'test-machine-uuid-method' test.
[inputs]: Remove python and glibmm. Move libsigc++ to...
[propagated-inputs]: ...here. Add glib.
[native-inputs]: Remove m4.
[license]: Change to lgpl3+ and bsd-3.
---
gnu/packages/glib.scm | 36 ++++++++++++++++++++----------------
1 file changed, 20 insertions(+), 16 deletions(-)

Toggle diff (63 lines)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index f523706449..043d506a9e 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -1255,26 +1255,30 @@ (define-public dbus-c++
(define-public dbus-cxx
(package
(name "dbus-cxx")
- (version "0.12.0")
+ (version "2.4.0")
(source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/dbus-cxx/dbus-cxx/"
- version "/dbus-cxx-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dbus-cxx/dbus-cxx")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1acsgpkd9v7b9jdc79ijmh9dbdfrzgkwkaff518i3zpk7y6g5mzw"))))
+ "0c9q2bjs4m66zq0qysyip8fnkvvjpj46rkjcvw15nhmfhzbq16ag"))))
(build-system cmake-build-system)
(arguments
- `(#:configure-flags '("-DENABLE_TESTS=ON"
- "-DENABLE_TOOLS=ON"
- "-DENABLE_GLIBMM=ON")))
- (inputs (list dbus
- libsigc++
- glibmm
- python
- popt
- expat))
- (native-inputs (list pkg-config m4))
+ (list #:configure-flags #~(list "-DBUILD_TESTING=ON"
+ "-DENABLE_TOOLS=ON"
+ "-DENABLE_GLIB_SUPPORT=ON")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; XXX: Missing /etc/machine-id in the build environment.
+ (invoke "ctest" "-E" "test-machine-uuid-method"))))))
+ (propagated-inputs (list glib libsigc++))
+ (inputs (list dbus expat popt))
+ (native-inputs (list pkg-config))
(synopsis "C++ wrapper for dbus")
(description "Dbus-cxx is a C++ wrapper for dbus.\n
It exposes the C API to allow direct manipulation and
@@ -1288,7 +1292,7 @@ (define-public dbus-cxx
Some codes examples can be find at:
@url{https://dbus-cxx.github.io/examples.html}")
(home-page "https://dbus-cxx.github.io/")
- (license license:gpl3)))
+ (license (list license:lgpl3+ license:bsd-3))))
(define-public sdbus-c++
;; Use the latest commit, which includes unreleased fixes to the pkg-config

base-commit: 299d0463d54c97b237deb2fe9e464108544344c0
--
2.41.0
L
L
Liliana Marie Prikler wrote on 31 Aug 2023 18:58
f449c32625d8068456f6e75d14128fb5d892f1d9.camel@gmail.com
Am Donnerstag, dem 31.08.2023 um 18:51 +0800 schrieb iyzsong@envs.net:
Toggle quote (24 lines)
> From: ??? <iyzsong@member.fsf.org>
>
> * gnu/packages/glib.scm (dbus-cxx): Update to 2.4.0.
> [source]: Switch to git-fetch.
> [arguments]: Use g-exps.  Adjust configure-flags.
> Skip 'test-machine-uuid-method' test.
> [inputs]: Remove python and glibmm.  Move libsigc++ to...
> [propagated-inputs]: ...here.  Add glib.
> [native-inputs]: Remove m4.
> [license]: Change to lgpl3+ and bsd-3.
> ---
>  gnu/packages/glib.scm | 36 ++++++++++++++++++++----------------
>  1 file changed, 20 insertions(+), 16 deletions(-)
>
> diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> index f523706449..043d506a9e 100644
> --- a/gnu/packages/glib.scm
> +++ b/gnu/packages/glib.scm
> @@ -1255,26 +1255,30 @@ (define-public dbus-c++
>  (define-public dbus-cxx
>    (package
>      (name "dbus-cxx")
> -    (version "0.12.0")
> +    (version "2.4.0")
Version appears to be correct. As for whether the package works or
not, I'll defer to CI.
Toggle quote (52 lines)
>      (source (origin
> -              (method url-fetch)
> -              (uri (string-append "mirror://sourceforge/dbus-
> cxx/dbus-cxx/"
> -                                  version "/dbus-cxx-" version
> ".tar.gz"))
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/dbus-cxx/dbus-cxx")
> +                    (commit version)))
> +              (file-name (git-file-name name version))
>                (sha256
>                 (base32
> -               
> "1acsgpkd9v7b9jdc79ijmh9dbdfrzgkwkaff518i3zpk7y6g5mzw"))))
> +               
> "0c9q2bjs4m66zq0qysyip8fnkvvjpj46rkjcvw15nhmfhzbq16ag"))))
>      (build-system cmake-build-system)
>      (arguments
> -     `(#:configure-flags '("-DENABLE_TESTS=ON"
> -                           "-DENABLE_TOOLS=ON"
> -                           "-DENABLE_GLIBMM=ON")))
> -    (inputs (list dbus
> -                  libsigc++
> -                  glibmm
> -                  python
> -                  popt
> -                  expat))
> -    (native-inputs (list pkg-config m4))
> +     (list #:configure-flags #~(list "-DBUILD_TESTING=ON"
> +                                     "-DENABLE_TOOLS=ON"
> +                                     "-DENABLE_GLIB_SUPPORT=ON")
> +           #:phases
> +           #~(modify-phases %standard-phases
> +               (replace 'check
> +                 (lambda _
> +                   ;; XXX: Missing /etc/machine-id in the build
> environment.
> +                   (invoke "ctest" "-E" "test-machine-uuid-
> method"))))))
> +    (propagated-inputs (list glib libsigc++))
> +    (inputs (list dbus expat popt))
> +    (native-inputs (list pkg-config))
>      (synopsis "C++ wrapper for dbus")
>      (description "Dbus-cxx is a C++ wrapper for dbus.\n
>  It exposes the C API to allow direct manipulation and
> @@ -1288,7 +1292,7 @@ (define-public dbus-cxx
>  Some codes examples can be find at:
>  @url{https://dbus-cxx.github.io/examples.html}")
>      (home-page "https://dbus-cxx.github.io/")
> -    (license license:gpl3)))
> +    (license (list license:lgpl3+ license:bsd-3))))
I think we should also mention tools/libcppgenerate or otherwise
unbundle it; judging by the name, it appears to be a native input, but
I might be wrong about that.

Cheers
M
M
Maxim Cournoyer wrote on 1 Sep 2023 05:48
(address . iyzsong@envs.net)
87o7im5zb5.fsf@gmail.com
Hi ???!

iyzsong@envs.net writes:

Toggle quote (25 lines)
> From: ??? <iyzsong@member.fsf.org>
>
> * gnu/packages/glib.scm (dbus-cxx): Update to 2.4.0.
> [source]: Switch to git-fetch.
> [arguments]: Use g-exps. Adjust configure-flags.
> Skip 'test-machine-uuid-method' test.
> [inputs]: Remove python and glibmm. Move libsigc++ to...
> [propagated-inputs]: ...here. Add glib.
> [native-inputs]: Remove m4.
> [license]: Change to lgpl3+ and bsd-3.
> ---
> gnu/packages/glib.scm | 36 ++++++++++++++++++++----------------
> 1 file changed, 20 insertions(+), 16 deletions(-)
>
> diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> index f523706449..043d506a9e 100644
> --- a/gnu/packages/glib.scm
> +++ b/gnu/packages/glib.scm
> @@ -1255,26 +1255,30 @@ (define-public dbus-c++
> (define-public dbus-cxx
> (package
> (name "dbus-cxx")
> - (version "0.12.0")
> + (version "2.4.0")

Wooh, big update!

Toggle quote (36 lines)
> (source (origin
> - (method url-fetch)
> - (uri (string-append "mirror://sourceforge/dbus-cxx/dbus-cxx/"
> - version "/dbus-cxx-" version ".tar.gz"))
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/dbus-cxx/dbus-cxx")
> + (commit version)))
> + (file-name (git-file-name name version))
> (sha256
> (base32
> - "1acsgpkd9v7b9jdc79ijmh9dbdfrzgkwkaff518i3zpk7y6g5mzw"))))
> + "0c9q2bjs4m66zq0qysyip8fnkvvjpj46rkjcvw15nhmfhzbq16ag"))))
> (build-system cmake-build-system)
> (arguments
> - `(#:configure-flags '("-DENABLE_TESTS=ON"
> - "-DENABLE_TOOLS=ON"
> - "-DENABLE_GLIBMM=ON")))
> - (inputs (list dbus
> - libsigc++
> - glibmm
> - python
> - popt
> - expat))
> - (native-inputs (list pkg-config m4))
> + (list #:configure-flags #~(list "-DBUILD_TESTING=ON"
> + "-DENABLE_TOOLS=ON"
> + "-DENABLE_GLIB_SUPPORT=ON")
> + #:phases
> + #~(modify-phases %standard-phases
> + (replace 'check
> + (lambda _
> + ;; XXX: Missing /etc/machine-id in the build environment.
> + (invoke "ctest" "-E" "test-machine-uuid-method"))))))
> + (propagated-inputs (list glib libsigc++))

Propagation being frowned upon, a comment should explain why it's needed
here (referenced in headers or Requires of .pc files is the classic
reason).

Toggle quote (12 lines)
> + (inputs (list dbus expat popt))
> + (native-inputs (list pkg-config))
> (synopsis "C++ wrapper for dbus")
> (description "Dbus-cxx is a C++ wrapper for dbus.\n
> It exposes the C API to allow direct manipulation and
> @@ -1288,7 +1292,7 @@ (define-public dbus-cxx
> Some codes examples can be find at:
> @url{https://dbus-cxx.github.io/examples.html}")
> (home-page "https://dbus-cxx.github.io/")
> - (license license:gpl3)))
> + (license (list license:lgpl3+ license:bsd-3))))

Perhaps add an inline comment: ;dual licensed

Otherwise LGTM, assuming CI is happy.

--
Thanks,
Maxim
I
I
iyzsong wrote on 1 Sep 2023 14:44
[PATCH v2 1/2] gnu: Add libcppgenerate.
(address . 65654@debbugs.gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
290e386fa27c8a2c8c098fe0007277149165a68f.1693572252.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/cpp.scm (libcppgenerate): New variable.
---
gnu/packages/cpp.scm | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)

Toggle diff (39 lines)
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 2f8cc2ce25..794a7ef98a 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -1731,6 +1731,30 @@ (define-public libconfini
almost every type of file containing key/value pairs.")
(license license:gpl3+)))
+(define-public libcppgenerate
+ ;; dbus-cxx requires an unreleased fix.
+ (let ((commit "930c5503f76c877b72b9ff8546353d6f422bd010")
+ (revision "0"))
+ (package
+ (name "libcppgenerate")
+ (version (git-version "0.2" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rm5248/libcppgenerate")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0csdg9b406i85aqgivjmvqjdnqbyiyjh3s0xsfsxppv7wlh7j85r"))))
+ (build-system cmake-build-system)
+ (arguments (list #:configure-flags #~'("-DENABLE_TESTS=ON")))
+ (home-page "https://github.com/rm5248/libcppgenerate")
+ (synopsis "Generating C++ code")
+ (description "@code{libcppgenerate} is a library for generating C++ code
+from C++.")
+ (license license:asl2.0))))
+
(define-public libcutl
(package
(name "libcutl")

base-commit: 4e531e55dcdc99c83bcfe3eec67c3fd95c7b6ca7
--
2.41.0
I
I
iyzsong wrote on 1 Sep 2023 14:44
[PATCH v2 2/2] gnu: dbus-cxx: Update to 2.4.0.
(address . 65654@debbugs.gnu.org)(name . ???)(address . iyzsong@member.fsf.org)
e5c09d7b54d46e8b7b174ae26fcf0fa11b6425da.1693572252.git.iyzsong@member.fsf.org
From: ??? <iyzsong@member.fsf.org>

* gnu/packages/glib.scm (dbus-cxx): Update to 2.4.0.
[source]: Switch to git-fetch.
[arguments]: Use g-exps. Adjust configure-flags.
Skip 'test-machine-uuid-method' test.
[inputs]: Add libcppgenerate. Remove python and glibmm. Move libsigc++ to...
[propagated-inputs]: ...here. Add glib.
[native-inputs]: Remove m4.
[license]: Change to lgpl3+ and bsd-3.
---
gnu/packages/glib.scm | 42 ++++++++++++++++++++++++++----------------
1 file changed, 26 insertions(+), 16 deletions(-)

Toggle diff (74 lines)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index f523706449..4857c1237e 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -44,6 +44,7 @@ (define-module (gnu packages glib)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages cpp)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
@@ -1255,26 +1256,35 @@ (define-public dbus-c++
(define-public dbus-cxx
(package
(name "dbus-cxx")
- (version "0.12.0")
+ (version "2.4.0")
(source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/dbus-cxx/dbus-cxx/"
- version "/dbus-cxx-" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dbus-cxx/dbus-cxx")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
(base32
- "1acsgpkd9v7b9jdc79ijmh9dbdfrzgkwkaff518i3zpk7y6g5mzw"))))
+ "0c9q2bjs4m66zq0qysyip8fnkvvjpj46rkjcvw15nhmfhzbq16ag"))
+ (modules '((guix build utils)))
+ (snippet '(delete-file-recursively "tools/libcppgenerate"))))
(build-system cmake-build-system)
(arguments
- `(#:configure-flags '("-DENABLE_TESTS=ON"
- "-DENABLE_TOOLS=ON"
- "-DENABLE_GLIBMM=ON")))
- (inputs (list dbus
- libsigc++
- glibmm
- python
- popt
- expat))
- (native-inputs (list pkg-config m4))
+ (list #:configure-flags #~(list "-DBUILD_TESTING=ON"
+ "-DENABLE_TOOLS=ON"
+ "-DENABLE_GLIB_SUPPORT=ON"
+ "-DTOOLS_BUNDLED_CPPGENERATE=OFF")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; XXX: Missing /etc/machine-id in the build environment.
+ (invoke "ctest" "-E" "test-machine-uuid-method"))))))
+ (propagated-inputs
+ ;; Referenced in header and .pc files.
+ (list glib libsigc++))
+ (inputs (list dbus expat libcppgenerate popt))
+ (native-inputs (list pkg-config))
(synopsis "C++ wrapper for dbus")
(description "Dbus-cxx is a C++ wrapper for dbus.\n
It exposes the C API to allow direct manipulation and
@@ -1288,7 +1298,7 @@ (define-public dbus-cxx
Some codes examples can be find at:
@url{https://dbus-cxx.github.io/examples.html}")
(home-page "https://dbus-cxx.github.io/")
- (license license:gpl3)))
+ (license (list license:lgpl3+ license:bsd-3)))) ;dual licensed
(define-public sdbus-c++
;; Use the latest commit, which includes unreleased fixes to the pkg-config
--
2.41.0
M
M
Maxim Cournoyer wrote on 1 Sep 2023 16:45
(address . iyzsong@envs.net)
87bkem2br2.fsf@gmail.com
Hello,

iyzsong@envs.net writes:

Toggle quote (11 lines)
> From: ??? <iyzsong@member.fsf.org>
>
> * gnu/packages/glib.scm (dbus-cxx): Update to 2.4.0.
> [source]: Switch to git-fetch.
> [arguments]: Use g-exps. Adjust configure-flags.
> Skip 'test-machine-uuid-method' test.
> [inputs]: Add libcppgenerate. Remove python and glibmm. Move libsigc++ to...
> [propagated-inputs]: ...here. Add glib.
> [native-inputs]: Remove m4.
> [license]: Change to lgpl3+ and bsd-3.

Applied, with small nitpick changes (complete sentences in comments)
:-).

--
Thanks,
Maxim
Closed
M
M
Maxim Cournoyer wrote on 1 Sep 2023 16:52
Re: bug#65654: [PATCH] gnu: dbus-cxx: Update to 2.4.0.
(address . iyzsong@envs.net)
871qfi2bes.fsf_-_@gmail.com
Hi,

iyzsong@envs.net writes:

Toggle quote (34 lines)
> From: ??? <iyzsong@member.fsf.org>
>
> * gnu/packages/cpp.scm (libcppgenerate): New variable.
> ---
> gnu/packages/cpp.scm | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
> index 2f8cc2ce25..794a7ef98a 100644
> --- a/gnu/packages/cpp.scm
> +++ b/gnu/packages/cpp.scm
> @@ -1731,6 +1731,30 @@ (define-public libconfini
> almost every type of file containing key/value pairs.")
> (license license:gpl3+)))
>
> +(define-public libcppgenerate
> + ;; dbus-cxx requires an unreleased fix.
> + (let ((commit "930c5503f76c877b72b9ff8546353d6f422bd010")
> + (revision "0"))
> + (package
> + (name "libcppgenerate")
> + (version (git-version "0.2" revision commit))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/rm5248/libcppgenerate")
> + (commit commit)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> + "0csdg9b406i85aqgivjmvqjdnqbyiyjh3s0xsfsxppv7wlh7j85r"))))
> + (build-system cmake-build-system)
> + (arguments (list #:configure-flags #~'("-DENABLE_TESTS=ON")))

nitpick: #~(list ...) is more readable

Toggle quote (3 lines)
> + (synopsis "Generating C++ code")

I'd use "C++ code generator library for C++".

I'll install this change along the dbus-cxx update.

--
Thanks,
Maxim
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 65654@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 65654
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch