unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#37484: [PATCH] Support GNU make error messages in compile mode.
@ 2019-09-22 20:28 Paul Smith
  2019-09-23 22:29 ` Paul Eggert
  0 siblings, 1 reply; 5+ messages in thread
From: Paul Smith @ 2019-09-22 20:28 UTC (permalink / raw)
  To: 37484

* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Match GNU make error messages.
* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data):
Test GNU make error message matching.
---
 lisp/progmodes/compile.el            | 6 ++++++
 test/lisp/progmodes/compile-tests.el | 6 ++++++
 2 files changed, 12 insertions(+)

diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index f0b34c702c..a98aa0c8e5 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -274,6 +274,12 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1))
     (ruby-Test::Unit
      "^[\t ]*\\[\\([^(].*\\):\\([1-9][0-9]*\\)\\(\\]\\)?:in " 1 2)
 
+    (gmake
+     ;; Set GNU make error messages as INFO level.
+     ;; It starts with the name of the make program which is variable,
+     ;; so don't try to match it.
+     ": \\*\\*\\* \\[\\(\\(.+?\\):\\([0-9]+\\): .+\\)\\]" 2 3 nil 0 1)
+
     (gnu
      ;; The first line matches the program name for
 
diff --git a/test/lisp/progmodes/compile-tests.el b/test/lisp/progmodes/compile-tests.el
index 0d4f7f2ff2..61e1cd110d 100644
--- a/test/lisp/progmodes/compile-tests.el
+++ b/test/lisp/progmodes/compile-tests.el
@@ -180,6 +180,12 @@
      1 0 31 "/usr/include/c++/3.3/backward/iostream.h")
     ("                 from test_clt.cc:1:"
      1 nil 1 "test_clt.cc")
+    ;; gmake
+    ("make: *** [Makefile:20: all] Error 2" 5 nil 20 "Makefile" 0)
+    ("make[4]: *** [sub/make.mk:19: all] Error 127" 8 nil 19 "sub/make.mk" 0)
+    ("gmake[4]: *** [sub/make.mk:19: all] Error 2" 9 nil 19 "sub/make.mk" 0)
+    ("gmake-4.3[4]: *** [make.mk:1119: all] Error 2" 13 nil 1119 "make.mk" 0)
+    ("Make-4.3: *** [make.INC:1119: dir/all] Error 2" 9 nil 1119 "make.INC" 0)
     ;; gnu
     ("foo.c:8: message" 1 nil 8 "foo.c")
     ("../foo.c:8: W: message" 1 nil 8 "../foo.c")
-- 
2.18.0






^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#37484: [PATCH] Support GNU make error messages in compile mode.
  2019-09-22 20:28 bug#37484: [PATCH] Support GNU make error messages in compile mode Paul Smith
@ 2019-09-23 22:29 ` Paul Eggert
  2019-10-05 13:44   ` Paul Smith
  0 siblings, 1 reply; 5+ messages in thread
From: Paul Eggert @ 2019-09-23 22:29 UTC (permalink / raw)
  To: Paul Smith; +Cc: 37484

Thanks, but when I tried that patch against GNU Emacs master, 'make 
check' failed with the diagnostics at the end of this email. Could you 
please look into that? Also, please note the following comment in 
compile.el, which may be an easier way for you to run the tests:

;; If you make any changes to `compilation-error-regexp-alist-alist',
;; be sure to run the ERT test in test/lisp/progmodes/compile-tests.el.
;; emacs -batch -l compile-tests.el -f ert-run-tests-batch-and-exit



Test compile-test-error-regexps backtrace:
   signal(ert-test-failed (((should msg) :form msg :value nil)))
   ert-fail(((should msg) :form msg :value nil))
   compile--test-error-line(("make: *** [Makefile:20: all] Error 2" 5 n
   mapc(compile--test-error-line (("Error on line 3 of t.f: Execution e
   #f(compiled-function () #<bytecode 0x5ef685>)()
   ert--run-test-internal(#s(ert--test-execution-info :test #s(ert-test
   ert-run-test(#s(ert-test :name compile-test-error-regexps :documenta
   ert-run-or-rerun-test(#s(ert--stats :selector ... :tests ... :test-m
   ert-run-tests((not (or (tag :expensive-test) (tag :unstable))) #f(co
   ert-run-tests-batch((not (or (tag :expensive-test) (tag :unstable)))
   ert-run-tests-batch-and-exit((not (or (tag :expensive-test) (tag :un
   eval((ert-run-tests-batch-and-exit '(not (or (tag :expensive-test) (
   command-line-1(("-L" ":." "-l" "ert" "-l" "lisp/progmodes/compile-te
   command-line()
   normal-top-level()
Test compile-test-error-regexps condition:
     (ert-test-failed
      ((should msg)
       :form msg :value nil))
    FAILED  1/2  compile-test-error-regexps (0.062248 sec)





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#37484: [PATCH] Support GNU make error messages in compile mode.
  2019-09-23 22:29 ` Paul Eggert
@ 2019-10-05 13:44   ` Paul Smith
  2019-10-05 13:59     ` Eli Zaretskii
  2019-10-05 19:34     ` Paul Eggert
  0 siblings, 2 replies; 5+ messages in thread
From: Paul Smith @ 2019-10-05 13:44 UTC (permalink / raw)
  To: Paul Eggert; +Cc: 37484

On Mon, 2019-09-23 at 15:29 -0700, Paul Eggert wrote:
> Thanks, but when I tried that patch against GNU Emacs master, 'make 
> check' failed with the diagnostics at the end of this email. Could you 
> please look into that? Also, please note the following comment in 
> compile.el, which may be an easier way for you to run the tests:

Oops.  The meaning of "POS" in the tests is not clearly defined (enough
for me to understand it).  Required a bit of trial and error.

I sent an update with git send-email... It seems to have created a new
bug 37632@debbugs.gnu.org though.  I'm not sure how to re-send a patch
so that it's associated with an existing bug?  I guess I should have
included the old bug as a CC or something...

Sorry for the confusion and required bug wrangling :(






^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#37484: [PATCH] Support GNU make error messages in compile mode.
  2019-10-05 13:44   ` Paul Smith
@ 2019-10-05 13:59     ` Eli Zaretskii
  2019-10-05 19:34     ` Paul Eggert
  1 sibling, 0 replies; 5+ messages in thread
From: Eli Zaretskii @ 2019-10-05 13:59 UTC (permalink / raw)
  To: psmith; +Cc: eggert, 37484

> From: Paul Smith <psmith@gnu.org>
> Date: Sat, 05 Oct 2019 09:44:52 -0400
> Cc: 37484@debbugs.gnu.org
> 
> I sent an update with git send-email... It seems to have created a new
> bug 37632@debbugs.gnu.org though.  I'm not sure how to re-send a patch
> so that it's associated with an existing bug?  I guess I should have
> included the old bug as a CC or something...

Yes.

No worries, I merged the two bugs.





^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#37484: [PATCH] Support GNU make error messages in compile mode.
  2019-10-05 13:44   ` Paul Smith
  2019-10-05 13:59     ` Eli Zaretskii
@ 2019-10-05 19:34     ` Paul Eggert
  1 sibling, 0 replies; 5+ messages in thread
From: Paul Eggert @ 2019-10-05 19:34 UTC (permalink / raw)
  To: Paul Smith; +Cc: 37484-done

Thanks for the updated patch. 'make check' worked for me, and I installed it 
into the Emacs master patch and am closing the bug report.





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-10-05 19:34 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-22 20:28 bug#37484: [PATCH] Support GNU make error messages in compile mode Paul Smith
2019-09-23 22:29 ` Paul Eggert
2019-10-05 13:44   ` Paul Smith
2019-10-05 13:59     ` Eli Zaretskii
2019-10-05 19:34     ` Paul Eggert

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).