Subject: [bug#61442] [PATCH v2] gnu: Add ddd

From: Andy Tai <[email-masked]>
Date: Sat, 18 Feb 2023 17:08:36 -0800

* gnu/packages/debug.scm (ddd): New variable
---
 gnu/packages/debug.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 22b3cd862d..d70a653667 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -11,6 +11,7 @@
 ;;; Copyright © 2021 Foo Chuan Wei <[email-masked]>
 ;;; Copyright © 2022 Michael Rohleder <[email-masked]>
 ;;; Copyright © 2022 Matthew James Kraai <[email-masked]>
+;;; Copyright © 2023 Andy Tai <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -53,6 +54,7 @@ (define-module (gnu packages debug)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages lesstif)  ; motif
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages llvm)
@@ -70,6 +72,7 @@ (define-module (gnu packages debug)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages virtualization)
   #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages xorg)
   #:use-module (ice-9 match)
   #:use-module (srfi srfi-1))
 
@@ -860,6 +863,36 @@ (define-public seer-gdb
     ;; Note: Some icons in src/resources are creative commons 3.0 and/or 4.0.
     (license license:gpl3+)))
 
+(define-public ddd
+  (package
+    (name "ddd")
+    (version "3.3.12")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnu/ddd/ddd-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0p5nx387857w3v2jbgvps2p6mlm0chajcdw5sfrddcglsxkwvmis"))))
+    (build-system gnu-build-system)
+    (inputs
+     (list motif ncurses gdb))
+    (native-inputs
+     (list pkg-config))
+    (arguments
+     (list #:tests? #f ;Those tests are manual
+           ;; Avoid "friend declaration specifies default arguments
+           ;; and isn’t a definition" errors.
+           #:configure-flags #~(list "CXXFLAGS=-fpermissive")))
+    (synopsis "Graphical front-end for GDB and other debuggers")
+    (description "GNU DDD, the Data Display Debugger, is a graphical front-end for
+command-line debuggers.  Many back-end debuggers are supported, notably the
+GNU debugger, GDB.  In addition to usual debugging features such as viewing
+the source files, DDD has additional graphical, interactive features to aid
+in debugging.")
+    (home-page "https://www.gnu.org/software/ddd/")
+    (license license:gpl3+)))
+
+
 (define-public delve
   (package
     (name "delve")

base-commit: 037c1b254a84d656b87b6bbb9c339bc04cfdb0a8
-- 
2.39.1