diff options
| author | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-08-16 01:24:05 -0400 |
|---|---|---|
| committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2020-08-16 15:26:26 -0400 |
| commit | 720a4adc91c632e097d9e064ce8e95617cf76fb0 (patch) | |
| tree | aa8ae98bff4aa53f99997f96a2f560be95f62d75 /gnu/system/shadow.scm | |
| parent | 8b074a0abef78341d98ac4ca8e6f27bfcc7aa65b (diff) | |
system: Modify GDB skeleton to find debug files for any profile.
Instead of hard coding the debug directory to that of the user profile, use
Guile scripting in combination with a new search path specification on GDB to
specify the debug file directories.
* gnu/packages/gdb.scm (gdb-9.1): Add a search path specification for the
GDB_DEBUG_FILE_DIRECTORY environment variable.
* gnu/system/shadow.scm (default-skeletons)[gdbinit]: Derive the value of
DEBUG-FILE-DIRECTORY via the GDB_DEBUG_FILE_DIRECTORY environment variable.
* doc/guix.texi (Installing Debugging Files): Document it.
Diffstat (limited to 'gnu/system/shadow.scm')
| -rw-r--r-- | gnu/system/shadow.scm | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index a69339bc074..8c76bc2b113 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm | |||
| @@ -3,6 +3,7 @@ | |||
| 3 | ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> | 3 | ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> |
| 4 | ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> | 4 | ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> |
| 5 | ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> | 5 | ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> |
| 6 | ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> | ||
| 6 | ;;; | 7 | ;;; |
| 7 | ;;; This file is part of GNU Guix. | 8 | ;;; This file is part of GNU Guix. |
| 8 | ;;; | 9 | ;;; |
| @@ -162,7 +163,12 @@ XTerm*utf8: always | |||
| 162 | XTerm*metaSendsEscape: true\n")) | 163 | XTerm*metaSendsEscape: true\n")) |
| 163 | (gdbinit (plain-file "gdbinit" "\ | 164 | (gdbinit (plain-file "gdbinit" "\ |
| 164 | # Tell GDB where to look for separate debugging files. | 165 | # Tell GDB where to look for separate debugging files. |
| 165 | set debug-file-directory ~/.guix-profile/lib/debug | 166 | guile |
| 167 | (use-modules (gdb)) | ||
| 168 | (execute (string-append \"set debug-file-directory \" | ||
| 169 | (or (getenv \"GDB_DEBUG_FILE_DIRECTORY\") | ||
| 170 | \"~/.guix-profile/lib/debug\"))) | ||
| 171 | end | ||
| 166 | 172 | ||
| 167 | # Authorize extensions found in the store, such as the | 173 | # Authorize extensions found in the store, such as the |
| 168 | # pretty-printers of libstdc++. | 174 | # pretty-printers of libstdc++. |
