janneke pushed a commit to branch master
in repository guix.

commit 98908e0777889aeec2796dbdc4f0809a1898dd3b
Author: Rutherther via Guix-patches via <guix-patc...@gnu.org>
AuthorDate: Wed Dec 11 20:35:45 2024 +0100

    gnu: gdb: Fix build of target-specific versions.
    
    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.
    
    This patche 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.
    * gnu/packages/gdb.scm (gdb-multiarch)[arguments]: Likewise.
    * gnu/packages/gdb.scm (avr-gdb)[arguments]: Likewise.
    
    Signed-off-by: Janneke Nieuwenhuizen <jann...@gnu.org>
    
    Change-Id: Ia8748b86dc72197bd4eef307d091b6af44fc5611
---
 gnu/packages/embedded.scm | 14 ++++++++------
 gnu/packages/gdb.scm      | 32 ++++++++++++++++----------------
 2 files changed, 24 insertions(+), 22 deletions(-)

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 @@ languages are C and C++.")
       (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 @@ written in C, C++, Ada, Objective-C, Pascal and more.")
   (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 @@ written in C, C++, Ada, Objective-C, Pascal and more.")
   (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

Reply via email to