[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/realgud-lldb 93cfd7d 26/56: Merge branch 'master' of gi
From: |
Rocky Bernstein |
Subject: |
[elpa] externals/realgud-lldb 93cfd7d 26/56: Merge branch 'master' of github.com:realgud/realgud-lldb |
Date: |
Thu, 23 May 2019 02:11:40 -0400 (EDT) |
branch: externals/realgud-lldb
commit 93cfd7d2e55b5d98cdd093df4d368668d9ec8e72
Merge: 0f00728 caed6ef
Author: rocky <address@hidden>
Commit: rocky <address@hidden>
Merge branch 'master' of github.com:realgud/realgud-lldb
---
INSTALL.md | 2 +-
configure.ac | 1 +
lldb/core.el | 35 +++++++++++++++++++++++++++++++++++
lldb/init.el | 4 +++-
lldb/lldb.el | 11 ++++++-----
realgud-lldb.el | 4 ++--
test/regexp-helper.el | 2 +-
7 files changed, 49 insertions(+), 10 deletions(-)
diff --git a/INSTALL.md b/INSTALL.md
index 4d46fae..6b07102 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -1,4 +1,4 @@
-* Have `realgud` installed.
+* Have `realgud` and `test-simple` installed.
* From inside emacs, evaluate:
```lisp
(compile (format "EMACSLOADPATH=:%s:%s ./autogen.sh" (file-name-directory
(locate-library "test-simple.elc")) (file-name-directory (locate-library
"realgud.elc"))))
diff --git a/configure.ac b/configure.ac
index f70128f..deb1ed7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -48,6 +48,7 @@ AC_SUBST([lispdir_realgud])
AM_CONDITIONAL(INSTALL_EMACS_LISP, test "x$lispdir_realgud" != "x")
AC_CONFIG_FILES([Makefile \
+ common.mk \
lldb/Makefile \
test/Makefile \
])
diff --git a/lldb/core.el b/lldb/core.el
index 5e9e3bb..20341b0 100644
--- a/lldb/core.el
+++ b/lldb/core.el
@@ -41,6 +41,41 @@
'realgud:lldb-minibuffer-history
opt-debugger))
+(defvar realgud:lldb-file-remap (make-hash-table :test 'equal)
+ "How to remap lldb files in when we otherwise can't find in
+ the filesystem. The hash key is the file string we saw, and the
+ value is associated filesystem string presumably in the
+ filesystem")
+
+(defun realgud:lldb-find-file(filename)
+ "A find-file specific for lldb. We use `global' to map a
+name to a filename. Failing that
+we will prompt for a mapping and save that in `realgud:lldb-file-remap' when
+that works."
+ (let ((resolved-filename filename)
+ (global-output)
+ (remapped-filename (gethash filename realgud:lldb-file-remap)))
+ (cond
+ ((and remapped-filename (stringp remapped-filename)
+ (file-exists-p remapped-filename)) remapped-filename)
+ ((file-exists-p filename) filename)
+ ((and (setq resolved-filename (shell-command-to-string (format "global -P
%s" filename)))
+ (stringp resolved-filename)
+ (file-exists-p (setq resolved-filename (realgud:strip
resolved-filename))))
+ (puthash filename resolved-filename realgud:lldb-file-remap))
+ ('t
+ (setq resolved-filename
+ (buffer-file-name
+ (compilation-find-file (point-marker) filename nil "")))
+ (puthash filename resolved-filename realgud:lldb-file-remap)))
+ ))
+
+(defun realgud:lldb-loc-fn-callback(text filename lineno source-str
+ ignore-file-re cmd-mark)
+ (realgud:file-loc-from-line filename lineno
+ cmd-mark source-str nil
+ ignore-file-re 'realgud:lldb-find-file))
+
(defun realgud:lldb-parse-cmd-args (orig-args)
"Parse command line ARGS for the annotate level and name of script to debug.
diff --git a/lldb/init.el b/lldb/init.el
index 42a9e6e..a8c4961 100644
--- a/lldb/init.el
+++ b/lldb/init.el
@@ -38,7 +38,9 @@ realgud-loc-pat struct")
;; Some versions of lldb insert "frame" and some don't.
(defconst realgud:lldb-frame-num-regexp
(format "[ ]*\\(?:frame \\)?#%s[:]? "
- realgud:regexp-captured-num realgud:regexp-captured-num))
+ realgud:regexp-captured-num))
+
+(setf (gethash "loc-callback-fn" realgud:lldb-pat-hash)
'realgud:lldb-loc-fn-callback)
;; realgud-loc-pat that describes a lldb location generally shown
;; before a command prompt.
diff --git a/lldb/lldb.el b/lldb/lldb.el
index a2b71e5..de64b4f 100644
--- a/lldb/lldb.el
+++ b/lldb/lldb.el
@@ -37,11 +37,12 @@ This should be an executable on your path, or an absolute
file name."
:group 'realgud:lldb)
(declare-function realgud:lldb-track-mode 'realgud:lldb-track-mode)
-(declare-function realgud-command 'realgud:lldb-core)
+(declare-function realgud-command 'realgud:lldb-core)
(declare-function realgud:lldb-parse-cmd-args 'realgud:lldb-core)
(declare-function realgud:lldb-query-cmdline 'realgud:lldb-core)
-(declare-function realgud:run-process 'realgud-core)
-(declare-function realgud:flatten 'realgud-utils)
+(declare-function realgud:run-process 'realgud-core)
+(declare-function realgud:flatten 'realgud-utils)
+(declare-function realgud:remove-ansi-schmutz 'realgud-utils)
;; -------------------------------------------------------------------
;; The end.
@@ -62,7 +63,6 @@ buffers and source buffers which may contain marks and fringe
or
marginal icons is reset. See `loc-changes-clear-buffer' to clear
fringe and marginal icons.
"
-
(interactive)
(let* ((cmd-str (or opt-cmd-line (realgud:lldb-query-cmdline "lldb")))
(cmd-args (split-string-and-unquote cmd-str))
@@ -78,7 +78,8 @@ fringe and marginal icons.
)
(if cmd-buf
(with-current-buffer cmd-buf
- ; (realgud-command "set annotate 1" nil nil nil)
+ (set (make-local-variable 'realgud:lldb-file-remap))
+ (realgud:remove-ansi-schmutz)
)
)
)
diff --git a/realgud-lldb.el b/realgud-lldb.el
index c98ea17..4d0398d 100644
--- a/realgud-lldb.el
+++ b/realgud-lldb.el
@@ -2,7 +2,7 @@
;; Author: Rocky Bernstein
;; Version: 1.0
-;; Package-Requires: ((realgud "1.4.2") (cl-lib "0.5") (emacs "24"))
+;; Package-Requires: ((realgud "1.4.2") (emacs "24"))
;; URL: http://github.com/rocky/realgud-lldb
;; Compatibility: GNU Emacs 24.x
@@ -35,7 +35,7 @@
(require 'load-relative)
-(defgroup realgud-byebug nil
+(defgroup realgud-lldb nil
"Realgud interface to lldb"
:group 'realgud
:version "24.3")
diff --git a/test/regexp-helper.el b/test/regexp-helper.el
index 6c67de3..2660077 100644
--- a/test/regexp-helper.el
+++ b/test/regexp-helper.el
@@ -1,5 +1,5 @@
(require 'test-simple)
-(require 'realgud-buffer-command)
+(require 'realgud)
(eval-when-compile
(defvar helper-bps)
- [elpa] externals/realgud-lldb 006bda2 20/56: Update INSTALL.md, (continued)
- [elpa] externals/realgud-lldb 006bda2 20/56: Update INSTALL.md, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 386588a 17/56: Fix up packaging, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 2e397f0 31/56: typo, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb f35ace0 33/56: Small changes, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 8132538 06/56: Lots of fixups, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb b78e0ae 10/56: Doc corrections, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 512717d 37/56: Merge pull request #4 from danielmartin/add-until-command, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb c4918cb 34/56: Was using gdb regexp pats not lldb's, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb d6e9b70 29/56: Merge pull request #3 from realgud/DanSchoppe-fix, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb bf07222 42/56: Need to use b %X:%l not "break set name -l number, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 93cfd7d 26/56: Merge branch 'master' of github.com:realgud/realgud-lldb,
Rocky Bernstein <=
- [elpa] externals/realgud-lldb 84d3c0e 53/56: Small package-lint thing, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 7fdc224 44/56: Fill in realgud cmds, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 40d36fb 47/56: Regexps for breakpoint buffer. Small tweaks, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb b8c652c 55/56: Administrivia:, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 634eb8e 41/56: Add enable/disable, and backtrace commands, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 8adce8d 24/56: Make sure we load lldb, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 98bcbe4 54/56: Small tweak, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 4bfd53a 49/56: Emacs lint in preparation for Melpa release, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb dd1d4df 27/56: common.mk.in: avoid having to set ELCFLAGS, Rocky Bernstein, 2019/05/23
- [elpa] externals/realgud-lldb 8faf094 01/56: 1st cut at an external lldb plugin for realgud., Rocky Bernstein, 2019/05/23