Commit 62c299d7 authored by Kai Germaschewski's avatar Kai Germaschewski

kbuild: Make KBUILD_VERBOSE=0 work better under emacs

(slightly modified to unconditionally add the relative path to the subdir)

Rusty Russel wrote:

"M-x compile" in emacs stars a compilation and can jump to the next
error.  With KBUILD_VERSBOSE=0 (as I have in my env, great work Kai)
it can't figure out the directory, since it doesn't see the make[XXX]
markers.

This makes it work.
parent 8c83fc55
...@@ -517,6 +517,13 @@ ifneq ($(cmd_files),) ...@@ -517,6 +517,13 @@ ifneq ($(cmd_files),)
include $(cmd_files) include $(cmd_files)
endif endif
# Emacs compile mode works best with relative paths to find files (OK
# if verbose, as it tracks the make[1] entries and exits, etc.)
ifneq ($(KBUILD_VERBOSE),1)
filter-output = 2>&1 | sed 's \(^[^/][A-Za-z0-9_./-]*:[ 0-9]\) $(RELDIR)/\1 '
endif
# function to only execute the passed command if necessary # function to only execute the passed command if necessary
if_changed = $(if $(strip $? \ if_changed = $(if $(strip $? \
...@@ -536,7 +543,7 @@ if_changed_dep = $(if $(strip $? $(filter-out FORCE $(wildcard $^),$^)\ ...@@ -536,7 +543,7 @@ if_changed_dep = $(if $(strip $? $(filter-out FORCE $(wildcard $^),$^)\
$(filter-out $(cmd_$@),$(cmd_$(1)))),\ $(filter-out $(cmd_$@),$(cmd_$(1)))),\
@set -e; \ @set -e; \
$(if $($(quiet)cmd_$(1)),echo ' $($(quiet)cmd_$(1))';) \ $(if $($(quiet)cmd_$(1)),echo ' $($(quiet)cmd_$(1))';) \
$(cmd_$(1)); \ $(cmd_$(1)) $(filter-output); \
$(TOPDIR)/scripts/fixdep $(depfile) $@ $(TOPDIR) '$(cmd_$(1))' > $(@D)/.$(@F).tmp; \ $(TOPDIR)/scripts/fixdep $(depfile) $@ $(TOPDIR) '$(cmd_$(1))' > $(@D)/.$(@F).tmp; \
rm -f $(depfile); \ rm -f $(depfile); \
mv -f $(@D)/.$(@F).tmp $(@D)/.$(@F).cmd) mv -f $(@D)/.$(@F).tmp $(@D)/.$(@F).cmd)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment