Commit Message
* gnu/packages/debug.scm (ddd): New variable
---
gnu/packages/debug.scm | 41 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 41 insertions(+)
Comments
Hello,
Andy Tai <atai@atai.org> writes:
> * gnu/packages/debug.scm (ddd): New variable
Thank you. Some comments follow.
> + (build-system gnu-build-system)
> + (inputs (list motif ncurses gdb))
> + (native-inputs (list pkg-config xorg-server-for-tests))
Nitpick: Could you move these 2 lines after arguments?
> + (arguments
> + (list #:tests? #f ;Those are manual
If I understand correctly, you're running tests in the `pre-check'
phase. Then this is not the correct way to proceed.
First you need to remove this keyword, and use (replace 'check ...)
instead of (add-before 'check 'pre-check ...)
> + ;; avoid "friend declaration specifies default arguments and isn’t a definition" errors.
Nitpick: ;; Avoid ...
and proper filling.
> + #:configure-flags #~(list "CXXFLAGS=-fpermissive")
> + #:phases #~(modify-phases %standard-phases
> + (add-before 'check 'pre-check
> + (lambda* (#:key native-inputs inputs
> + #:allow-other-keys)
Here you need to add "tests?" key, then wrap the function body within
(when tests? ...)
> + (setenv "HOME" "/tmp")
> + (let ((xvfb (search-input-file (or native-inputs
> + inputs)
> + "bin/Xvfb"))
> + (display ":1"))
> + (setenv "DISPLAY" display)
> + (system (string-append xvfb " " display " &"))))))))
Should this be (invoke xvfb ":1 &") ?
> + (synopsis "graphical front end for the command-line debugger GDB")
graphical -> Graphical.
> + (description
> + "GNU Data Display Debugger (GNU DDD) is a graphical user interface ]
Spurious "]" character.
Could you send an updated patch?
Regards,
@@ -11,6 +11,7 @@
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2022 Matthew James Kraai <kraai@ftbfs.org>
+;;; Copyright © 2023 Andy Tai <atai@atai.org>
;;;
;;; 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,44 @@ (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 xorg-server-for-tests))
+ (arguments
+ (list #:tests? #f ;Those are manual
+ ;; avoid "friend declaration specifies default arguments and isn’t a definition" errors.
+ #:configure-flags #~(list "CXXFLAGS=-fpermissive")
+ #:phases #~(modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda* (#:key native-inputs inputs
+ #:allow-other-keys)
+ (setenv "HOME" "/tmp")
+ (let ((xvfb (search-input-file (or native-inputs
+ inputs)
+ "bin/Xvfb"))
+ (display ":1"))
+ (setenv "DISPLAY" display)
+ (system (string-append xvfb " " display " &"))))))))
+ (synopsis "graphical front end for the command-line debugger GDB")
+ (description
+ "GNU Data Display Debugger (GNU DDD) is a graphical user interface ]
+(using the Motif toolkit) for command-line debuggers such as GDB,
+DBX, JDB, HP Wildebeest Debugger, XDB, the Perl debugger, the Bash
+debugger, the Python debugger, and the GNU Make debugger.")
+ (home-page "https://www.gnu.org/software/ddd/")
+ (license license:gpl3+)))
+
+
(define-public delve
(package
(name "delve")