[PATCH] gnu: gdb: Ensure configure-flags are appended to original package

  • Done
  • quality assurance status badge
Details
2 participants
  • Janneke Nieuwenhuizen
  • Rutherther
Owner
unassigned
Submitted by
Rutherther
Severity
normal
R
R
Rutherther wrote on 11 Dec 20:35 +0100
(address . guix-patches@gnu.org)(name . Rutherther)(address . rutherther@ditigal.xyz)
da50345c588967a3e4332bd96b3c927657e3df4e.1733945442.git.rutherther@ditigal.xyz
Since recently there has been a change to gdb package that introduced
configure-flags, three gdb packages broke, since they assumed there are no
configure-flags in gdb. That means they produced the same gdb as gdb-14.

* gnu/packages/embedded.scm (make-gdb-arm-none-eabi)[arguments]: Append
configure-flags to original flags.
* gnu/packages/gdb.scm (gdb-multiarch)[arguments]: Append
configure-flags to original flags.
* gnu/packages/gdb.scm (avr-gdb)[arguments]: Append
configure-flags to original flags.

Change-Id: Ia8748b86dc72197bd4eef307d091b6af44fc5611
---
gnu/packages/embedded.scm | 14 ++++++++------
gnu/packages/gdb.scm | 32 ++++++++++++++++----------------
2 files changed, 24 insertions(+), 22 deletions(-)

Toggle diff (79 lines)
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 0dcfc6669f..930857d0aa 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -741,12 +741,14 @@ (define make-gdb-arm-none-eabi
(inherit gdb)
(name "gdb-arm-none-eabi")
(arguments
- `(#:configure-flags '("--target=arm-none-eabi"
- "--enable-multilib"
- "--enable-interwork"
- "--enable-languages=c,c++"
- "--disable-nls")
- ,@(package-arguments gdb))))))
+ (substitute-keyword-arguments (package-arguments gdb)
+ ((#:configure-flags flags '())
+ #~(cons* "--target=arm-none-eabi"
+ "--enable-multilib"
+ "--enable-interwork"
+ "--enable-languages=c,c++"
+ "--disable-nls"
+ #$flags)))))))
(define-public libjaylink
(package
diff --git a/gnu/packages/gdb.scm b/gnu/packages/gdb.scm
index af5ebde3f6..ef100306b4 100644
--- a/gnu/packages/gdb.scm
+++ b/gnu/packages/gdb.scm
@@ -184,14 +184,14 @@ (define-public gdb-multiarch
(package/inherit gdb-14
(name "gdb-multiarch")
(arguments
- (append
- (list #:configure-flags
- #~(list "--enable-targets=all"
- "--enable-multilib"
- "--enable-interwork"
- "--enable-languages=c,c++"
- "--disable-nls"))
- (package-arguments gdb-14)))
+ (substitute-keyword-arguments (package-arguments gdb-14)
+ ((#:configure-flags flags '())
+ #~(cons* "--enable-targets=all"
+ "--enable-multilib"
+ "--enable-interwork"
+ "--enable-languages=c,c++"
+ "--disable-nls"
+ #$flags))))
(synopsis "The GNU debugger (with all architectures enabled)")))
(define-public gdb-minimal
@@ -210,14 +210,14 @@ (define-public avr-gdb
(package/inherit gdb-14
(name "avr-gdb")
(arguments
- (append
- (list #:configure-flags
- #~(list "--target=avr"
- "--disable-nls"
- "--enable-languages=c,c++"
- "--with-system-readline"
- "--enable-source-highlight"))
- (package-arguments gdb-14)))
+ (substitute-keyword-arguments (package-arguments gdb-14)
+ ((#:configure-flags flags '())
+ #~(cons* "--target=avr"
+ "--disable-nls"
+ "--enable-languages=c,c++"
+ "--with-system-readline"
+ "--enable-source-highlight"
+ #$flags))))
(synopsis "The GNU Debugger for AVR")
(description
"GDB is the GNU debugger. With it, you can monitor what a program is

base-commit: 27750bd0cddddab9e900f289a5520314ef66487e
--
2.46.0
J
J
Janneke Nieuwenhuizen wrote on 11 Dec 21:02 +0100
(name . Rutherther via Guix-patches via)(address . guix-patches@gnu.org)
87msh22djq.fsf@gnu.org
Rutherther via Guix-patches via writes:

Hello,

Toggle quote (13 lines)
> Since recently there has been a change to gdb package that introduced
> configure-flags, three gdb packages broke, since they assumed there are no
> configure-flags in gdb. That means they produced the same gdb as gdb-14.
>
> * gnu/packages/embedded.scm (make-gdb-arm-none-eabi)[arguments]: Append
> configure-flags to original flags.
> * gnu/packages/gdb.scm (gdb-multiarch)[arguments]: Append
> configure-flags to original flags.
> * gnu/packages/gdb.scm (avr-gdb)[arguments]: Append
> configure-flags to original flags.
>
> Change-Id: Ia8748b86dc72197bd4eef307d091b6af44fc5611

Thank you! And sorry for breaking things :)

I've changed the commit message to

Toggle snippet (19 lines)
gnu: gdb: Fix build of target-specific variants.

This is a follow-up to commit
baf4a3330762d184f5b10846151a9e3afd7c3dbe
gnu: Add gdb-15.2, with support for the 64bit Hurd.

That commit changed the gdb package, introducing #:configure-flags, breaking
three gdb packages, since they assumed there are no #:configure-flags in gdb.
That means they produced the same gdb as gdb-14.

This patch fixes that by ensuring #:configure-flags are appended to original
package.

* gnu/packages/embedded.scm (make-gdb-arm-none-eabi)[arguments]:
Append #configure-flags to original flags.
(gdb-multiarch)[arguments]: Likewise.
(avr-gdb)[arguments]: Likewise.

and pushed to master as 98908e0777889aeec2796dbdc4f0809a1898dd3b.

Greetings,
Janneke

--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com| Avatar® https://AvatarAcademy.com
?
Your comment

Commenting via the web interface is currently disabled.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 74798
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