GNU bug report logs - #68573
[PATCH gnome-team] gnu: sdbus-c++: Fix generated sdbus-c++.pc.

Previous Next

Package: guix-patches;

Reported by: Vivien Kraus <vivien <at> planete-kraus.eu>

Date: Thu, 18 Jan 2024 21:19:02 UTC

Severity: normal

Tags: patch

Done: Liliana Marie Prikler <liliana.prikler <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 68573 in the body.
You can then email your comments to 68573 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, vivien <at> planete-kraus.eu, guix-patches <at> gnu.org:
bug#68573; Package guix-patches. (Thu, 18 Jan 2024 21:19:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Vivien Kraus <vivien <at> planete-kraus.eu>:
New bug report received and forwarded. Copy sent to liliana.prikler <at> gmail.com, maxim.cournoyer <at> gmail.com, rg <at> raghavgururajan.name, vivien <at> planete-kraus.eu, guix-patches <at> gnu.org. (Thu, 18 Jan 2024 21:19:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Vivien Kraus <vivien <at> planete-kraus.eu>
To: guix-patches <at> gnu.org
Subject: [PATCH gnome-team] gnu: sdbus-c++: Fix generated sdbus-c++.pc.
Date: Thu, 18 Jan 2024 22:14:09 +0100
* gnu/packages/glib.scm (sdbus-c++) [#:phases 'fix-libelogind-requirement]:
New phase.

Change-Id: Id29369178f164fc60e6882aa664556924cf4bfa7
---
 gnu/packages/glib.scm | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 7b8cc3286d..d84b848b62 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -1289,11 +1289,20 @@ (define-public sdbus-c++
                                 ;; Do not install tests.
                                 "-DTESTS_INSTALL_PATH=/tmp"
                                 "-DCMAKE_VERBOSE_MAKEFILE=ON")
-      #:phases #~(modify-phases %standard-phases
-                   (add-after 'unpack 'do-not-install-tests
-                     (lambda _
-                       (substitute* "tests/CMakeLists.txt"
-                         (("/etc/dbus-1/system.d") "/tmp")))))))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'do-not-install-tests
+            (lambda _
+              (substitute* "tests/CMakeLists.txt"
+                (("/etc/dbus-1/system.d") "/tmp"))))
+          (add-before 'install 'fix-libelogind-requirement
+            (lambda _
+              ;; sdbus-c++.pc requires 'elogind', but it should
+              ;; require 'libelogind'. Fixed after 1.4.0 with
+              ;; fb9e4ae37152648a67814458d3ff673b1d3ca089
+              (substitute* "pkgconfig/sdbus-c++.pc"
+                (("Requires: elogind")
+                 "Requires: libelogind")))))))
     (native-inputs (list googletest pkg-config))
     (inputs (list expat))
     (propagated-inputs (list elogind)) ;required by sdbus-c++.pc

base-commit: 17c2e26068c5c36eb8ee1ec39a8695ef66f75c55
-- 
2.41.0




Information forwarded to guix-patches <at> gnu.org:
bug#68573; Package guix-patches. (Sat, 20 Jan 2024 07:36:02 GMT) Full text and rfc822 format available.

Message #8 received at 68573 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Vivien Kraus <vivien <at> planete-kraus.eu>, 68573 <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: Re: [bug#68573] [PATCH gnome-team] gnu: sdbus-c++: Fix generated
 sdbus-c++.pc.
Date: Sat, 20 Jan 2024 08:35:02 +0100
Am Donnerstag, dem 18.01.2024 um 22:14 +0100 schrieb Vivien Kraus:
> * gnu/packages/glib.scm (sdbus-c++) [#:phases 'fix-libelogind-
> requirement]:
> New phase.
Rather use [#:phases]: Add ‘fix-libelogind-requirement’ (or rename the
phase to ‘fix-elogind-requirement’ and use that).

> 
> Change-Id: Id29369178f164fc60e6882aa664556924cf4bfa7
> ---
>  gnu/packages/glib.scm | 19 ++++++++++++++-----
>  1 file changed, 14 insertions(+), 5 deletions(-)
> 
> diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> index 7b8cc3286d..d84b848b62 100644
> --- a/gnu/packages/glib.scm
> +++ b/gnu/packages/glib.scm
> @@ -1289,11 +1289,20 @@ (define-public sdbus-c++
>                                  ;; Do not install tests.
>                                  "-DTESTS_INSTALL_PATH=/tmp"
>                                  "-DCMAKE_VERBOSE_MAKEFILE=ON")
> -      #:phases #~(modify-phases %standard-phases
> -                   (add-after 'unpack 'do-not-install-tests
> -                     (lambda _
> -                       (substitute* "tests/CMakeLists.txt"
> -                         (("/etc/dbus-1/system.d") "/tmp")))))))
> +      #:phases
> +      #~(modify-phases %standard-phases
> +          (add-after 'unpack 'do-not-install-tests
> +            (lambda _
> +              (substitute* "tests/CMakeLists.txt"
> +                (("/etc/dbus-1/system.d") "/tmp"))))
> +          (add-before 'install 'fix-libelogind-requirement
> +            (lambda _
> +              ;; sdbus-c++.pc requires 'elogind', but it should
> +              ;; require 'libelogind'. Fixed after 1.4.0 with
> +              ;; fb9e4ae37152648a67814458d3ff673b1d3ca089
> +              (substitute* "pkgconfig/sdbus-c++.pc"
> +                (("Requires: elogind")
> +                 "Requires: libelogind")))))))
Instead of patching the generated file, you could try patching the .in
file from which it is generated or the CMakeLists.

Cheers

Information forwarded to guix-patches <at> gnu.org:
bug#68573; Package guix-patches. (Sat, 20 Jan 2024 09:48:02 GMT) Full text and rfc822 format available.

Message #11 received at 68573 <at> debbugs.gnu.org (full text, mbox):

From: Vivien Kraus <vivien <at> planete-kraus.eu>
To: liliana.prikler <at> gmail.com,68573 <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: [PATCH gnome-team v2] gnu: sdbus-c++: Fix generated sdbus-c++.pc.
Date: Thu, 18 Jan 2024 22:14:09 +0100
* gnu/packages/glib.scm (sdbus-c++) [#:phases]: Add 'fix-elogind-requirement.

Change-Id: Id29369178f164fc60e6882aa664556924cf4bfa7
---
Hello!

Le samedi 20 janvier 2024 à 08:35 +0100, Liliana Marie Prikler a écrit :
> +              ;; sdbus-c++.pc requires 'elogind', but it should
> +              ;; require 'libelogind'. Fixed after 1.4.0 with
> +              ;; fb9e4ae37152648a67814458d3ff673b1d3ca089
> +              (substitute* "pkgconfig/sdbus-c++.pc"
> +                (("Requires: elogind")
> +                 "Requires: libelogind")))))))
> Instead of patching the generated file, you could try patching the .in file
> from which it is generated or the CMakeLists.

As far as I understand, the CMakeLists do not have a variable that contain
"libelogind", and we can’t change the LIBSYSTEMD variable content because it
is used in other places (notably to find headers, where “libelogind” would not
work).

So we have to ignore the CMakeLists entirely and bypass the .in substitution.

 gnu/packages/glib.scm | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 7b8cc3286d..eee5251d03 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -1289,11 +1289,20 @@ (define-public sdbus-c++
                                 ;; Do not install tests.
                                 "-DTESTS_INSTALL_PATH=/tmp"
                                 "-DCMAKE_VERBOSE_MAKEFILE=ON")
-      #:phases #~(modify-phases %standard-phases
-                   (add-after 'unpack 'do-not-install-tests
-                     (lambda _
-                       (substitute* "tests/CMakeLists.txt"
-                         (("/etc/dbus-1/system.d") "/tmp")))))))
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'do-not-install-tests
+            (lambda _
+              (substitute* "tests/CMakeLists.txt"
+                (("/etc/dbus-1/system.d") "/tmp"))))
+          (add-after 'unpack 'fix-elogind-requirement
+            (lambda _
+              ;; sdbus-c++.pc requires 'elogind', but it should
+              ;; require 'libelogind'. Fixed after 1.4.0 with
+              ;; fb9e4ae37152648a67814458d3ff673b1d3ca089
+              (substitute* "pkgconfig/sdbus-c++.pc.in"
+                (("@LIBSYSTEMD@")
+                 "libelogind")))))))
     (native-inputs (list googletest pkg-config))
     (inputs (list expat))
     (propagated-inputs (list elogind)) ;required by sdbus-c++.pc

base-commit: 49897f2dde7f469c83c496fad2699d3a05f72701
-- 
2.41.0




Information forwarded to guix-patches <at> gnu.org:
bug#68573; Package guix-patches. (Sat, 20 Jan 2024 18:31:02 GMT) Full text and rfc822 format available.

Message #14 received at 68573 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: Vivien Kraus <vivien <at> planete-kraus.eu>
Cc: rg <at> raghavgururajan.name, liliana.prikler <at> gmail.com, 68573 <at> debbugs.gnu.org
Subject: Re: [PATCH gnome-team v2] gnu: sdbus-c++: Fix generated sdbus-c++.pc.
Date: Sat, 20 Jan 2024 13:30:47 -0500
Hi,

Vivien Kraus <vivien <at> planete-kraus.eu> writes:

> * gnu/packages/glib.scm (sdbus-c++) [#:phases]: Add 'fix-elogind-requirement.
>
> Change-Id: Id29369178f164fc60e6882aa664556924cf4bfa7

Thanks for the explanation, it makes sense.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer <at> gmail>

-- 
Thanks,
Maxim




Reply sent to Liliana Marie Prikler <liliana.prikler <at> gmail.com>:
You have taken responsibility. (Thu, 25 Jan 2024 15:34:01 GMT) Full text and rfc822 format available.

Notification sent to Vivien Kraus <vivien <at> planete-kraus.eu>:
bug acknowledged by developer. (Thu, 25 Jan 2024 15:34:02 GMT) Full text and rfc822 format available.

Message #19 received at 68573-done <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Vivien Kraus <vivien <at> planete-kraus.eu>, 68573-done <at> debbugs.gnu.org
Cc: rg <at> raghavgururajan.name, maxim.cournoyer <at> gmail.com
Subject: Re: [PATCH gnome-team v2] gnu: sdbus-c++: Fix generated sdbus-c++.pc.
Date: Thu, 25 Jan 2024 16:33:32 +0100
Am Donnerstag, dem 18.01.2024 um 22:14 +0100 schrieb Vivien Kraus:
> * gnu/packages/glib.scm (sdbus-c++) [#:phases]: Add 'fix-elogind-
> requirement.
> 
> Change-Id: Id29369178f164fc60e6882aa664556924cf4bfa7
Pushed.  Thanks




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 23 Feb 2024 12:24:14 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 196 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.